README.md
March 10, 2026 · View on GitHub
What it does?
Kutabe generates docstrings and doc comments for functions and classes directly in the editor.
It supports Python, TypeScript, JavaScript, and Rust out of the box.
Features
- Keyboard Shortcut - place cursor inside any function or class, press
Ctrl+Alt+D(⌘⌥Don macOS), and the docstring is inserted automatically. - CodeLens - a
✎ Generate Docstringlens appears above every undocumented symbol. - Context menu - right-click in the editor and choose Kutabe: Generate Docstring.
- Multiple styles - Google, NumPy, and Sphinx for Python; JSDoc and TSDoc for TypeScript/JavaScript; Rustdoc for Rust.
- Type-aware - parameter types and return types are extracted from the source code (type hints, TypeScript annotations, Rust signatures) and included in the generated doc.
Supported Languages
| Language | Styles |
|---|---|
| Python | google (default), numpy, sphinx |
| TypeScript / JavaScript | jsdoc (default), tsdoc |
| Rust | rustdoc |
Usage
- Open a file in a supported language.
- Place the cursor anywhere inside a function or class.
- Press
Ctrl+Alt+D(or⌘⌥Don macOS), or:- Click the
✎ Generate DocstringCodeLens above the symbol. - Right-click → Kutabe: Generate Docstring.
- Click the
Python example (Google style):
def greet(name: str, greeting: str = "Hello") -> str:
"""Summary.
Args:
name (str): Description.
greeting (str): Description.
Returns:
str: Description.
"""
return f"{greeting}, {name}!"
TypeScript example (JSDoc style):
/**
* Summary.
*
* @param {number} a - Description.
* @param {number} b - Description.
*
* @returns {number} Description.
*/
function add(a: number, b: number): number {
return a + b;
}
Rust example (Rustdoc style):
/// Summary.
///
/// # Arguments
///
/// * `a` ([`i32`]) - Description.
/// * `b` ([`i32`]) - Description.
///
/// # Returns
///
/// [`i32`] - Description.
fn add(a: i32, b: i32) -> i32 {
a + b
}
Configuration
Settings are available under File → Preferences → Settings → Kutabe.
| Setting | Default | Options | Description |
|---|---|---|---|
kutabe.python.style | google | google, numpy, sphinx | Docstring style for Python |
kutabe.typescript.style | jsdoc | jsdoc, tsdoc | Doc comment style for TypeScript/JavaScript |
kutabe.rust.style | rustdoc | rustdoc | Doc comment style for Rust |
License
Kutabe is released under the MIT License.
