A dedicated VS Code extension to preview and navigate OpenSpec projects without opening every .md file by hand.
Preview
Interactive task tree and themed tasks.md preview with live progress:
Per-change inline actions (run pending tasks / archive), active specs and archived changes:
Features
Dedicated sidebar (OpenSpec icon in the Activity Bar) with a navigable tree:
Active changes → each change shows its task progress (8/10 · 80%).
Artifacts: Proposal, Design, Tasks and spec deltas.
Active specs (per capability).
Archived (completed changes).
Rendered preview of any .md, themed to match the editor (light/dark).
Interactive tasks: toggle checkboxes from the tree or from the preview and the real tasks.md is rewritten.
Auto-refresh on file changes inside openspec/.
Monorepo support: detects multiple openspec/ folders in the workspace.
Per-change actions (inline buttons):
▶ Run pending tasks: appears when a change has incomplete tasks. Opens the integrated terminal in the project folder and writes the configured agent command (Claude Code by default). For safety it is not executed: you review and press Enter.
📦 Archive change: appears when all tasks are complete (or there are none). Asks for confirmation and runs openspec archive.
Languages
The extension is localized and follows the VS Code display language:
English (default)
Spanish (es) — automatically used when VS Code runs in Spanish.
Requirements
VS Code ^1.84.0.
A workspace containing an openspec/config.yaml file (activates the extension).
Optional: the openspec CLI on your PATH to archive changes.
Extension Settings
Setting
Default
Description
openspec.applyCommand
claude "/openspec:apply ${changeId}"
Agent command used to apply tasks. Variables: ${changeId}, ${cwd}.
openspec.archiveCommand
openspec archive ${changeId} -y
Command used to archive a change. Variables: ${changeId}, ${cwd}.
openspec.autoRunApply
false
When true, the apply command runs instantly instead of only being written to the terminal.