feat(atomcode): add project skills and commands - #1211
Conversation
Add AtomCode as a supported tool with its own command adapter. AtomCode is an open-source terminal AI coding assistant that uses the same Agent Skills spec as Claude Code. Changes: - New adapter: src/core/command-generation/adapters/atomcode.ts - File path: .atomcode/commands/opsx-<id>.md - Frontmatter: description only - Command references transformed from colon to hyphen format - Register adapter in index.ts, registry.ts, and config.ts - Update docs (supported-tools.md, cli.md) with AtomCode entry - Add 6 test cases for atomcodeAdapter - Add changeset for version tracking Closes Fission-AI#1210 Co-Authored-By: hu-qi, AtomCode (GLM-5.1) <huqi1024@gmail.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (10)
🚧 Files skipped from review as they are similar to previous changes (7)
Included review availability: Your plan provides up to 10 included reviews per hour; 5 remain after this review. 📝 WalkthroughWalkthroughAdds AtomCode as a supported OpenSpec tool. The change adds command generation, configuration, initialization and update coverage, documentation, and a minor Changesets entry. ChangesAtomCode Tool Integration
Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: 🔵 Low · up to The change adds AtomCode project commands and skills using the existing initialization and update flows. It is mergeable with owner awareness that an interrupted or concurrent update could temporarily leave a mixed set of generated files until the command is run again. Sequence Diagram(s)sequenceDiagram
participant User
participant OpenSpec
participant Registry as CommandAdapterRegistry
participant AtomCode as atomcodeAdapter
participant Project as .atomcode files
User->>OpenSpec: run init or update with atomcode
OpenSpec->>Registry: resolve atomcode adapter
Registry->>AtomCode: generate commands and skills
AtomCode->>Project: write .atomcode/commands and .atomcode/skills
Project-->>User: AtomCode workflow artifacts
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Full details: Linked Issues checkExplanation The changes satisfy issue Full details: Docstring CoverageExplanation No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 7 files. (3 skipped: 3 unsupported.) ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/cli.md`:
- Line 110: The supported tool IDs list in docs/cli.md is missing the tool ID
vibe, which causes documentation to be out of sync with the actual
implementation in src/core/config.ts that includes value vibe. Add vibe to the
comma-separated list of supported tool IDs (--tools) in alphabetical order with
the other tools to ensure documentation accurately reflects the supported
capabilities.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 3d9b8cb7-08b9-46bb-b701-aa50b0129647
📒 Files selected for processing (8)
.changeset/atomcode-support.mddocs/cli.mddocs/supported-tools.mdsrc/core/command-generation/adapters/atomcode.tssrc/core/command-generation/adapters/index.tssrc/core/command-generation/registry.tssrc/core/config.tstest/core/command-generation/adapters.test.ts
|
Note GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer. |
alfred-openspec
left a comment
There was a problem hiding this comment.
The AtomCode project command and skill paths, literal frontmatter behavior, optional arguments, invocation rewriting, and update preservation match the current upstream loader. Approved pending CI.
Status
LGTM after implementation and independent review. Runtime implementation
eabd20d4dpassed GitHub CI on Linux, macOS, and Windows, plus security checks. Follow-up8506dd063only corrects two parser comments; executable output is identical. Fresh CI passes on Linux, macOS, and Windows, and security checks pass. Ready for final human review. Not merged.Motivation
AtomCode users need OpenSpec's existing workflows installed in the directories their assistant reads. This adds a tool adapter and registration without introducing a new workflow system or dependency.
Closes #1210.
What it does
openspec init --tools atomcode, with project skills in.atomcode/skills/and/opsx-<id>commands in.atomcode/commands/.args: optional, matching AtomCode's literal custom-command parser. Passes invocation arguments through$ARGUMENTS.Proof it works
Notes
Merged main at
a0ddb60d0without rewriting the contributor's history. The parser harness stubs global configuration and plugin discovery; it is not a full interactive AtomCode/model session. The feature adds no runtime dependencies, workflow-file changes, website changes, or hosting configuration. The existing website is unchanged from upstream main.