跳转到主要内容
comet dashboard launches a local read-only browser dashboard that lets you visually inspect all OpenSpec changes in your project: active and archived changes, five-phase progress, artifact checklists, task summaries, verify status, next-step recommendations, and Git snapshots. It is read-only — it never modifies any files, so you can launch it safely at any time.
This page is the command reference for comet dashboard. To learn about the dashboard UI layout, artifact grouping, task donut charts, light/dark themes, and screenshots, see Dashboard overview.

Quick start

Run it from the root of a project that contains changes:
comet dashboard
By default it starts at http://localhost:4321 and automatically opens the browser. The terminal will show:
Comet Dashboard running at http://localhost:4321
Press Ctrl+C to stop.

Command options

comet dashboard [path] [options]
OptionDescription
[path]Project path (default .)
--port <port>HTTP port (default 4321, auto-increments if occupied)
--no-openDo not open the browser automatically
--jsonPrint a one-time snapshot and exit (does not start the server)
When —port is occupied, it automatically searches upward for an available port (up to 50 retries). —port 0 lets the system assign one. The port must be an integer from 0–65535, otherwise an error is raised.

Script / CI usage

Print a one-time JSON snapshot without starting the server:
comet dashboard . --json
Specify a port and skip auto-open (useful for remote development):
comet dashboard . --port 4399 --no-open

What the dashboard shows

The dashboard reads openspec/changes/ (active) and openspec/changes/archive/ (archived) in a read-only, best-effort manner: a single broken change won’t blank out the whole page (errors are isolated and skipped).

Project-level information

  • Project name, path, and generation time
  • Summary: number of active changes, archived count, verify failures, incomplete tasks, and dirty file count
  • Git snapshot: branch, HEAD, dirty file list, and recent commits

Per change

  • Name, status (active/archived), path, and update time
  • Workflow and phases (open/design/build/verify/archive) — shown as a lifecycle step bar
  • Task completion (completed/total, incomplete items, per-section) — shown as a donut chart
  • Artifacts grouped by source (OpenSpec / Superpowers / Comet), with presence status shown within each group (generated/not generated/not required)
  • Artifact presence (proposal, design, tasks, plan, verifyReport, cometYaml) + content preview (max 256 KiB, with file size and update time metadata)
  • Verify result (pending/pass/fail/unknown) and summary
  • Next step (active changes only): recommended slash commands and the reasoning
  • Risk items (info/warning/error levels + recovery suggestions)

Risk codes

Risk codeMeaning
MISSING_COMET_YAMLchange is missing .comet.yaml
UNKNOWN_PHASEphase is not recognized
TASKS_MISSINGtasks file is missing
TASKS_INCOMPLETEtasks are incomplete
VERIFY_FAILEDverify failed
VERIFY_PENDINGverify has not run yet
ARTIFACT_MISSINGa critical artifact is missing
ARCHIVE_METADATA_MISSINGarchive metadata is missing
GIT_DIRTY(project-level) the working tree has uncommitted changes

Auto-refresh and theme

The front end auto-refreshes every 30 seconds. There is also a manual refresh button, a search box, and tabs (active/archived/all). The artifact drawer includes a lightweight Markdown renderer. The top-right toolbar has a light/dark theme toggle: on first visit it follows the system preference (prefers-color-scheme); once you manually switch, the choice is persisted to localStorage. See Dashboard overview · Theme toggle.

Demo mode

Append ?demo to the URL to load demo data (without reading real changes), handy for previewing the UI:
http://localhost:4321/?demo

Security

  • The server binds only to 127.0.0.1 (localhost) and is not exposed externally.
  • Static file serving has path traversal protection.
  • Artifact previews have a size limit (256 KiB; larger ones are marked truncated).
  • The artifact drawer locks background scrolling when open (fixed positioning) to prevent layout shifts.

Next steps

最后修改于 2026年7月2日