Open files in VS Code and Cursor / Code and APIs

Generate Python docstrings in VS Code

Docstring Generator writes the docstring skeleton when you type """ on the line under a def or class and press Enter. It reads the real signature with a bundled parser, so parameters, type hints, defaults, the return type, yields and raises are filled in, with no Python install. After you change the signature, Update Docstring fixes the docstring and keeps the text you wrote. Zovo Pro (USD 19 once) does both jobs for every Python file of a workspace at once, with 3 free tries each.

Install in VS CodeMarketplace pageOpen VSX (Cursor, Windsurf, VSCodium)

Free, MIT license. Extension ID zovo.zovo-docstring-generator, version 0.2.1. Needs VS Code 1.90.0 or newer.

Left, three quotes typed under place_order with the Generate Docstring suggestion and its preview. Right, the inserted Google-style docstring with Args, Returns and Raises filled from the signature.
Left, three quotes typed under place_order with the Generate Docstring suggestion and its preview. Right, the inserted Google-style docstring with Args, Returns and Raises filled from the signature.

Steps in VS Code

  1. Install Docstring Generator from the Marketplace, or press Ctrl+P (Cmd+P on macOS) and run ext install zovo.zovo-docstring-generator.
  2. Pick a style with "Docstring: Choose Docstring Style". Google is the default. NumPy, Sphinx, Epytext and your own Mustache template are the others.
  3. Type """ on the line under a def or class and press Enter, or pick Generate Docstring from the suggestion. Ctrl+Shift+2 (Cmd+Shift+2 on Mac) does the same for the function at the cursor.
  4. Replace the placeholders with your own words. Parameters show their type and default, and Raises lists each raise in the body.
  5. When the signature changes, run "Docstring: Update Docstring (Signature Changed)" or use the light bulb on the def line. A renamed parameter keeps its text, a new one gets a placeholder, and a removed one with your text is marked [removed from the signature].
  6. For a whole file, run "Update All Docstrings in File" or "Add Missing Docstrings in File". Set zovoDoc.updateOnSave to update on every save.

Where Zovo Pro saves time

Generating and updating docstrings for one function or one file, all styles, custom templates, JSDoc for JavaScript and TypeScript, update on save and the Docstring Coverage Report are free, with no network calls and no sign-in.

On an old codebase with hundreds of undocumented functions, Add Missing Docstrings in Workspace gives every public function and class without a docstring one, in every Python file of the workspace or of one folder. First you see how many docstrings in how many files will change, and you can check each one in the Refactor Preview. One Undo takes it all back, and the files are changed but not saved. The other Pro tool is Update Stale Docstrings in Workspace, which updates every docstring that no longer matches its signature.

With Add Missing Docstrings in Workspace (Zovo Pro)

  1. Run "Docstring: Add Missing Docstrings in Workspace (Pro)..." from the Command Palette, or right-click a folder in the Explorer.
  2. Read the count, then pick Preview to check each change, or Apply.
  3. Review the unsaved files with Git, then save. Cancel or "nothing to change" uses no free try.

Add Missing Docstrings in Workspace works 3 times on your computer before it asks for a license, and a try counts only when you get a result. Opening a file shows no popup and no countdown.

Pay by card, USD 19 onceGitHub SponsorsPayPal

Zovo Pro costs USD 19 once. It is not a subscription, and it turns on the Pro tools in every Zovo extension, not only Docstring Generator. After a card payment (Stripe) your license key shows on the next page. In VS Code, run "Zovo Pro: Enter Zovo Pro license key" from the Command Palette and paste it. The key is checked on your computer, with no network call. With GitHub Sponsors, pick the "$19 one time" tier, then run "Zovo Pro: I already paid: unlock with GitHub Sponsors" and sign in with the same GitHub account. With PayPal, send USD 19 with "Zovo Pro" in the note and the key comes by email within a day.

A team of 5: USD 59 once, by card or by PayPal. Every rule and every Pro tool is on the Zovo Pro page.

Steps in Cursor, Windsurf or VSCodium

  1. Open the Extensions view with Ctrl+Shift+X (Cmd+Shift+X on macOS).
  2. Search for zovo.zovo-docstring-generator and click Install. Cursor, Windsurf and VSCodium install from Open VSX, where it is published as zovo/zovo-docstring-generator.
  3. If your editor has no gallery, download the .vsix from the Open VSX page and run "Extensions: Install from VSIX...".
  4. Then use it the same way as in VS Code.

What Docstring Generator handles

What it does not do

Other options

Install counts and Open VSX status were checked on 12 November 2026. Descriptions in quotes are the extensions' own.

Questions

Do I need Python installed?

No. The parser (tree-sitter) comes with the extension.

Will Update overwrite what I wrote?

No. The summary, examples and notes are not touched, a renamed parameter keeps its text, and each docstring keeps its own style.

Does it work for JavaScript and TypeScript?

Yes. Type /** above a function and pick JSDoc with types, or run Generate JSDoc.

Does it work in Cursor or Windsurf?

Yes. Cursor, Windsurf and VSCodium install extensions from Open VSX. Search for the extension in their Extensions view and install it there.

More about Docstring Generator

Read the Docstring Generator page for every feature and setting, or the source code on GitHub.

Zovo Pro and support

Zovo Pro: USD 19 once, every Zovo viewer. It turns on the Pro tools in this extension and in the other Zovo extensions you use. The free features stay free.

After a card payment your license key shows on the next page. Paste it with the command "Zovo Pro: Enter a key".

You can also support the work with no Pro:

Need your format supported?

Open a format request with a sample file, and I reply there whether it can be done. For USD 299 once, through this GitHub Sponsors tier, I add your file format or a missing feature to this extension, with tests, within 7 days.