Skip to content

feat: VS Code extension for inline annotations#179

Open
backnotprop wants to merge 3 commits intomainfrom
feat/vscode-extension
Open

feat: VS Code extension for inline annotations#179
backnotprop wants to merge 3 commits intomainfrom
feat/vscode-extension

Conversation

@backnotprop
Copy link
Owner

@backnotprop backnotprop commented Feb 24, 2026

Summary

  • Adds apps/vscode-extension/ — a VS Code extension for inline annotation markers using start/end <!-- @plannotator NNNN: text --> comments
  • Right-click context menu: "Add Annotation" and "Export Annotations"
  • Keyboard shortcut: Cmd+Alt+P (Mac) / Ctrl+Alt+P (others)
  • Auto-incrementing 4-digit IDs (0001, 0002, ...) with multi-line marker support
  • Export produces Plan Feedback markdown format, copied to clipboard
  • Configurable prefix via plannotator.annotationPrefix setting
  • Zero runtime dependencies, esbuild bundled to CJS
  • Adds dev:vscode and build:vscode root scripts

Closes #91

Test plan

  • Open apps/vscode-extension/ in VS Code, press F5 to launch Extension Development Host
  • Place cursor on a line, right-click → "Plannotator: Add Annotation"
  • Verify <!-- @plannotator 0001: --> inserted above with cursor positioned for typing
  • Select multiple lines → Add Annotation → verify start/end markers wrap the selection
  • Add 3 annotations → verify IDs increment: 0001, 0002, 0003
  • Test keyboard shortcut Cmd+Alt+P
  • Right-click → "Plannotator: Export Annotations" → verify Plan Feedback markdown copied to clipboard
  • Verify bun run build:vscode works from repo root

Publishing checklist

Assets

  • Extension icon — 256x256px PNG (no SVG), referenced as "icon" in package.json
  • apps/vscode-extension/README.md — this is what shows on the marketplace listing
  • apps/vscode-extension/CHANGELOG.md (optional but recommended)
  • Screenshots/GIFs for the README showing add annotation + export flow

package.json updates

  • Bump version (currently 0.0.1 — decide: sync with root or independent versioning)
  • Add "icon": "icon.png"
  • Add "homepage" URL
  • Add "bugs" URL
  • Add "galleryBanner" (optional, customizes marketplace page colors)
  • Review "keywords" for discoverability

Publisher account

CI/CD — extend .github/workflows/release.yml

  • Add vscode-publish job (parallel to existing npm-publish)
  • Build: bun run build:vscode
  • Package: npx @vscode/vsce package --no-dependencies (already in scripts)
  • Publish: npx @vscode/vsce publish -p $VSCE_PAT
  • Attach .vsix to GitHub Release as artifact
  • Respect existing DRY_RUN flag for dry-run mode
  • Decide: publish on every v* tag, or separate vscode-v* tags

Pre-publish validation

  • vsce package succeeds with no warnings
  • All README images use HTTPS URLs (no SVG except trusted badge providers)
  • .vscodeignore excludes src/, node_modules/, config files (already done)
  • Extension activates and works from packaged .vsix (install via Extensions → Install from VSIX)

🤖 Generated with Claude Code

backnotprop and others added 3 commits February 24, 2026 14:43
Simple extension that inserts <!-- @plannotator: --> comment markers
in any file via right-click context menu or Cmd+Alt+A keyboard shortcut.
No dialogs — inserts template and positions cursor for typing.

Closes #91

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Export Annotations: right-click command that scans file for annotation
  markers, extracts context, and copies Plan Feedback markdown to clipboard
- Replace line number refs with start/end marker pairs using auto-incrementing
  IDs (0001, 0002, ...) — no more line drift when annotations are added
- Single-line: start marker only, context is next code line
- Multi-line: start/end markers wrap the selection
- Nested annotations supported via unique IDs
- Change keybinding from Cmd+Alt+A to Cmd+Alt+P
- Remove editorHasSelection requirement from context menu

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ections

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Proposal for IDE-Based Control and Interactive Code Revision

1 participant