Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/rpamis-comet-b5da25
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, productivity, agent-orchestration
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Shell scripts
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/comet
What's inside
- Skill name
comet- Description
- Comet — OpenSpec + Superpowers dual-star development workflow. Start with /comet for automatic phase detection and dispatch to subcommands. Five phases: open → design → build → verify → archive.
- License
- MIT
- Instructions
- 279 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
- Instructions read files in your home folder (~/.ssh, ~/.aws…)
Agent Skills spec issues
- name: "comet" does not match folder "comet-classic-039"
Files (17)
- SKILL.md
- auto-transition.md · reference/
- comet-yaml-fields.md · reference/
- context-recovery.md · reference/
- debug-gate.md · reference/
- decision-point.md · reference/
- dirty-worktree.md · reference/
- file-structure.md · reference/
- subagent-dispatch.md · reference/
- comet-phase-guard.md · rules/
- comet-archive.sh · scripts/
- comet-env.sh · scripts/
- comet-guard.sh · scripts/
- comet-handoff.sh · scripts/
- comet-hook-guard.sh · scripts/
- comet-state.sh · scripts/
- comet-yaml-validate.sh · scripts/
SKILL.md (first lines)
# Comet — OpenSpec + Superpowers Dual-Star Development Workflow
OpenSpec and Superpowers orbit the same goal like a binary star system.
```
OpenSpec handles WHAT — outline, proposal, spec lifecycle, archive
Superpowers handles HOW — technical design, planning, execution, closing
```
**Core principle: brainstorming cannot be skipped. Every change must undergo deep design (except hotfix and tweak presets).**
---
## Decision Core
Agents need only read this section for decision-making. Refer to the Reference Appendix as needed.
### Output Language Rule
Use the language of the user request that triggered this workflow as the default output language. When resuming an existing change with a clear dominant artifact language, preserve that language unless the user explicitly asks to switch.
### Automatic Phase Detection
**Step 0: Active Change Discovery and Intent Detection**
1. Detect presets first; if hotfix/tweak matches, invoke the corresponding preset skill directly and do not enter the normal open branch
2. When no preset matches, run `openspec list --json` to get all active changes
**Preset detection has highest priority**:
- User explicitly describes a bug fix / hotfix + meets hotfix conditions → directly invoke `/comet-hotfix`
- User explicitly describes copy/config/docs/prompt small adjustment + meets tweak conditions → directly invoke `/comet-tweak`
- No preset match → follow the table below
| Active changes | User input | Behavior |
|----------------|------------|----------|
| None | non-preset input | → Invoke `/comet-open` |
| Exactly 1 | `/comet <description>` | → **Ask**: continue this change or create a new change |
| Multiple | `/comet <description>` | → **Ask**: continue existing or create new; if continuing, list changes for selection |
| Exactly 1 | `/comet` with no description | → Auto-select, enter Step 1 |
| Multiple | `/comet` with no description | → List changes for user selection |
<IMPORTANT>
When the user chooses "create a new change", **must invoke `/comet-open`**. Do not call `/opsx:new` directly.
`/comet-open` performs dual initialization: OpenSpec artifacts (created by internal `/opsx:new`) plus `.comet.yaml` state file.
Calling `/opsx:new` directly leaves `.comet.yaml` missing and breaks later phase detection.
</IMPORTANT>
**Step 1: Read `.comet.yaml` state metadata**
Prefer reading `openspec/changes/<name>/.comet.yaml`. If not available, fall back to `openspec status --change "<name>" --json`, `tasks.md`, and `docs/superpowers/` file checks.
**Resume rules**:
- On every context resume, rerun Step 0 and Step 1; do not trust conversation history for phase detection
- If there is an active change and the worktree has uncommitted changes, handle them through `comet/reference/dirty-worktree.md`. That protocol defines checks, attribution, and prohibitions; this file does not repeat them
- If `phase: build`, first check `build_pause`, `plan`, `build_mode`, and `isolation` (see details below):
- If `build_pause: plan-ready` but `isolation` and `build_mode` are already set, treat as stale pause: first output `[COMET] Detected stale pause (build_pause=plan-ready but isolation/build_mode already set), auto-clearing and continuing`, then run `"$COMET_BASH" "$COMET_STATE" set <name> build_pause null`, then read the next unchecked task from tasks.md and resume execution per `build_mode`
- If `build_pause: plan-ready` and the plan file exists, but `isolation` or `build_mode` is not yet set, return to the `/comet-build` plan-ready resume point, prompt the user to choose isolation and execution method, and do not regenerate the plan
- If `build_pause: plan-ready` but the plan file is missing, return to `/comet-build` to handle corrupted state or regenerate the plan
- If `build_mode`, `isolation`, or `tdd_mode` is unset, return to the corresponding `/comet-build` step to supplement before executing
- If all are set, read the next unchecked task from tasks.md and continue:
- If `build_mode: subagent-driven-development`, do not execute tasks directly in the main window; return to `/comet-build`'s background subagent dispatch rules, main window only coordinates
- Other execution modes follow `/comet-build`'s corresponding rules
- If `phase: verify` and `verify_result: fail`, enter the verification failure decision blocking point: pause and ask the user to fix or accept deviation; only after the user chooses fix, run `"$COMET_BASH" "$COMET_STATE" transition <name> verify-fail` and invoke `/comet-build`
- If `phase: open` but proposal/design/tasks are complete, first run `"$COMET_BASH" "$COMET_GUARD" <change-name> open --apply` to repair state, then continue detection
- If `phase: archive`, only invoke `/comet-archive`; `/comet-archive` must first wait for final archive confirmation. After archive succeeds, the change moves to the archive directory, so do not run guard against the old active directory
**Step 2: Phase Determination** (check in order, first match wins)
1. `archived: true` or change moved to archive → Workflow complete
2. `verify_result: pass` and `archived` is not `true` → Invoke `/comet-archive` (first perform final archive confirmation)
3. `verify_result: fail` → Enter verification failure decision blocking point (pause and ask fix or accept deviation; only after user chooses fix, run `verify-fail` then `/comet-build`)
4. `phase: verify` or tasks.md all checked → Invoke `/comet-verify`
5. `phase: build` or has Design Doc but plan/execution incomplete → Route by workflow: `hotfix` → `/comet-hotfix`, `tweak` → `/comet-tweak`, `full` → `/comet-build`
6. `phase: design` or has change but no Design Doc → Invoke `/comet-design`
7. `phase: open` or active change exists but `.comet.yaml` is missing → Invoke `/comet-open`
8. No active change → Invoke `/comet-open`
If metadata conflicts with file state, use verifiable file state as source of truth and correct `.comet.yaml` before continuing.
### Preset Upgrade Criteria
**hotfix → full** (upgrade if any condition met):
- Change involves **3+ files**
- Architecture changes (new modules, new interfaces, new dependencies)
- Database schema changes
- Fix introduces new public API
- Fix scope exceeds a single function/module
**tweak → full** (upgrade if any condition met):
- Change involves **5+ files**
- Cross-module coordination required
- **5+** new test cases needed
- Config item additions or deletions (not value changes)
- New capability needed
- Delta spec needed (existing spec affected)
### Error Handling Quick Reference
| Scenario | Handling |
|----------|----------|
| `openspec list --json` fails | Check if openspec is installed, prompt user to run `openspec init` |
| Sub-skill unavailable | Stop workflow, prompt to install or enable the corresponding skill |
| `.comet.yaml` malformed or missing | Use file state as source of truth, correct with `"$COMET_BASH" "$COMET_STATE" set` then continue |
| Build/test fails | Return to build phase for fixes, do not enter verify |
| Incomplete change directory structure | Fill missing files according to `comet-open` artifact requirements |
### Phase Transitions
<IMPORTANT>
A single `/comet` invocation starts from the detected phase and advances to the next phase when exit conditions are met.
Flow chain: open → design → build → verify → archive
**Continuous execution requirement**: starting from the detected phase, the agent automatically continues through all later phases. But **auto-advancing only applies at transition points without user decisions**. When encountering user decision points, **must use the current platform's available user input/confirmation mechanism to pause and wait for the user's explicit response**. Must not use recommendation rules, defaults, or historical preferences to substitute for user confirmation, and must not just output a text prompt and then continue executing.
**Distinguish phase advancement vs automatic handoff**: each sub-skill runs phase guard `--apply` before exit to advance the `.comet.yaml` `phase` field. This step **always happens** and is not controlled by `auto_transition`. After that, the sub-skill runs `"$COMET_BASH" "$COMET_STATE" next <name>` to resolve the next action: when `auto_transition` is not `false`, output is `NEXT: auto` (auto-invoke next skill); when `auto_transition` is `false`, output is `NEXT: manual` (do not invoke next skill, show a manual run hint). Therefore `auto_transition` **only controls next skill invocation, not phase advancement**. Regardless of `auto_transition`, user decision points below remain blocking.
**Decision points are blocking points**: whenever reaching any of the following nodes, the current `/comet` invocation must stop, and follow the `comet/reference/decision-point.md` protocol to obtain the user's explicit choice. Only after the user explicitly chooses can the corresponding state fields be written and operations executed, then auto-advance resumes.From rpamis/comet, MIT.
More from rpamis/comet
- 0.808score
comet-native
rpamis
Comet Native workflow.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.808score
comet
rpamis
Comet workflow entry.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.807score
comet
rpamis
Use when 用户要启动或恢复 Comet 工作流,需要根据 active change、.comet.yaml、hotfix/tweak 意图路由到对应阶段 Skill。
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-hotfix
rpamis
Use the Classic preset to repair a localized defect.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-classic
rpamis
Comet Classic workflow entry.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-design
rpamis
Complete the Classic technical design and obtain user confirmation.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-tweak
rpamis
Use the Classic preset for a lightweight adjustment within one change.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-build
rpamis
Plan, implement, and accept Classic tasks.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-memory
rpamis
Use when Comet must decide whether a bounded semantic review packet contains a personal memory worth creating, updating, forgetting, or skipping.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-open
rpamis
Create a Classic change, clarify its requirements, and obtain user confirmation.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-archive
rpamis
Archive and deliver a Classic change.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-verify
rpamis
Verify a Classic change and record the results.
SkillAFreshness: A★ 3.2KClaude Code +9
Signals
- Stars
- 3,229
- Forks
- 306
- Open issues
- 16
- Last commit (this folder)
- Jul 6, 2026 (3 months ago)
- Last release
- Oct 23, 2026 (6 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/rpamis/comet
- Website
- docs.comet.rpamis.com
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from rpamis
- 0.808score
comet-native
rpamis
Comet Native workflow.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.808score
comet
rpamis
Comet workflow entry.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.807score
comet
rpamis
Use when 用户要启动或恢复 Comet 工作流,需要根据 active change、.comet.yaml、hotfix/tweak 意图路由到对应阶段 Skill。
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-hotfix
rpamis
Use the Classic preset to repair a localized defect.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-design
rpamis
Complete the Classic technical design and obtain user confirmation.
SkillAFreshness: A★ 3.2KClaude Code +9 - 0.803score
comet-build
rpamis
Plan, implement, and accept Classic tasks.
SkillAFreshness: A★ 3.2KClaude Code +9
Cite this page
comet skill. Agent Mart. https://agentmart.dev/skills/rpamis-comet-b5da25 (last updated 2026-10-24)