mirror of
https://github.com/Fission-AI/OpenSpec.git
synced 2026-09-14 20:16:53 +08:00
3f67debf65
* feat: change the frontmatter of the Codebuddy Slash Commands * fix: fix the issue mentioned by coderabbitai * feat: change the init.test * feat: change the init.test --------- Co-authored-by: neroyang <neroyang@tencent.com>
3.7 KiB
3.7 KiB
MODIFIED Requirements
Requirement: Slash Command Updates
The update command SHALL refresh existing slash command files for configured tools without creating new ones, and ensure the OpenCode archive command accepts change ID arguments.
Scenario: Updating slash commands for Antigravity
- WHEN
.agent/workflows/containsopenspec-proposal.md,openspec-apply.md, andopenspec-archive.md - THEN refresh the OpenSpec-managed portion of each file so the workflow copy matches other tools while preserving the existing single-field
descriptionfrontmatter - AND skip creating any missing workflow files during update, mirroring the behavior for Windsurf and other IDEs
Scenario: Updating slash commands for Claude Code
- WHEN
.claude/commands/openspec/containsproposal.md,apply.md, andarchive.md - THEN refresh each file using shared templates
- AND ensure templates include instructions for the relevant workflow stage
Scenario: Updating slash commands for CodeBuddy Code
- WHEN
.codebuddy/commands/openspec/containsproposal.md,apply.md, andarchive.md - THEN refresh each file using the shared CodeBuddy templates that include YAML frontmatter for the
descriptionandargument-hintfields - AND use square bracket format for
argument-hintparameters (e.g.,[change-id]) - AND preserve any user customizations outside the OpenSpec managed markers
Scenario: Updating slash commands for Cline
- WHEN
.clinerules/workflows/containsopenspec-proposal.md,openspec-apply.md, andopenspec-archive.md - THEN refresh each file using shared templates
- AND include Cline-specific Markdown heading frontmatter
- AND ensure templates include instructions for the relevant workflow stage
Scenario: Updating slash commands for Crush
- WHEN
.crush/commands/containsopenspec/proposal.md,openspec/apply.md, andopenspec/archive.md - THEN refresh each file using shared templates
- AND include Crush-specific frontmatter with OpenSpec category and tags
- AND ensure templates include instructions for the relevant workflow stage
Scenario: Updating slash commands for Cursor
- WHEN
.cursor/commands/containsopenspec-proposal.md,openspec-apply.md, andopenspec-archive.md - THEN refresh each file using shared templates
- AND ensure templates include instructions for the relevant workflow stage
Scenario: Updating slash commands for Factory Droid
- WHEN
.factory/commands/containsopenspec-proposal.md,openspec-apply.md, andopenspec-archive.md - THEN refresh each file using the shared Factory templates that include YAML frontmatter for the
descriptionandargument-hintfields - AND ensure the template body retains the
$ARGUMENTSplaceholder so user input keeps flowing into droid - AND update only the content inside the OpenSpec managed markers, leaving any unmanaged notes untouched
- AND skip creating missing files during update
Scenario: Updating slash commands for OpenCode
- WHEN
.opencode/command/containsopenspec-proposal.md,openspec-apply.md, andopenspec-archive.md - THEN refresh each file using shared templates
- AND ensure templates include instructions for the relevant workflow stage
- AND ensure the archive command includes
$ARGUMENTSplaceholder in frontmatter for accepting change ID arguments
Scenario: Updating slash commands for Windsurf
- WHEN
.windsurf/workflows/containsopenspec-proposal.md,openspec-apply.md, andopenspec-archive.md - THEN refresh each file using shared templates
- AND ensure templates include instructions for the relevant workflow stage