Skip to content

feat: multi-agent commands & skill discovery (phase 2b, v0.17.0)#12

Merged
nicholastn1 merged 11 commits into
mainfrom
feat/multiagent-commands-2b
Jun 3, 2026
Merged

feat: multi-agent commands & skill discovery (phase 2b, v0.17.0)#12
nicholastn1 merged 11 commits into
mainfrom
feat/multiagent-commands-2b

Conversation

@nicholastn1

Copy link
Copy Markdown
Collaborator

Summary

Phase 2b — makes skills discoverable and workflows usable across all six harnesses (ADR-018). Builds on the multi-agent foundation from v0.16.0.

Changes

Skill discovery (frontmatter)

Every SKILL.md now opens with YAML name + description, so the model can auto-discover a skill by matching the task against its description — not just via explicit /name. Applied to all four skills (bug-reproduction, batch-operations, git-platform, update-api-documentation). This was the gap flagged in review of #10 (now fixed, not just documented).

Commands across harnesses — hybrid (ADR-018)

Harness How workflows are delivered
Claude .claude/commands/*.md (slash)
opencode .opencode/command/*.md (native copy)
Copilot .github/prompts/*.prompt.md (native copy)
Gemini, Cursor, Codex ## Workflows section in AGENTS.md (lists each workflow + use your native structured-question tool)

Emission is per selected harness and create-only (no junk, no clobber). --version --json now reports commands: true.

Why hybrid (not native files everywhere)

Per-agent transforms (Gemini TOML, Cursor skill+flag, Codex global prompts) are format-divergent and not runtime-verifiable here, so they were intentionally not generated. The AGENTS.md Workflows section makes the workflows usable on those agents without fragile generation. Rationale in ADR-018.

Deferred (recorded in ADR-018)

  • code-review / deep-context → skill-mode promotion (they still ship as commands).
  • Native command-file transforms for Gemini/Cursor/Codex.

Test plan

  • make build clean; bash -n all modules + binary; build in-sync
  • skill frontmatter validated (name matches dir, description present) on all 4
  • emit_agent_commands verified locally: opencode → 12 .md, Copilot → 12 .prompt.md, Codex → none
  • --version --json reports commands: true
  • CI green
  • After merge: tag v0.17.0 → release.yml

All SKILL.md files now carry YAML frontmatter so the model can auto-discover
skills by description across agents (not just explicit /name). ADR-018 item 4
done. First increment of phase 2b.
- skills: name/description frontmatter on all SKILL.md → auto-discovery on every
  agent (done earlier in this branch).
- commands (hybrid, ADR-018): opencode → .opencode/command/*.md, Copilot →
  .github/prompts/*.prompt.md (native copies of the canonical workflow prompts);
  Gemini/Cursor/Codex → new "## Workflows" section in AGENTS.md. Claude keeps
  .claude/commands/. Per selected harness, create-only.
- registry: emit_agent_commands + DOTCONTEXT_COMMANDS; init wires it in.
- --version --json: + commands:true. ADR-018 Accepted.
- bump 0.17.0 + CHANGELOG.

Deferred (recorded in ADR-018): code-review/deep-context → skill-mode promotion;
per-agent TOML/skill command transforms for Gemini/Cursor/Codex.
@coderabbitai

coderabbitai Bot commented Jun 3, 2026

Copy link
Copy Markdown

Review Change Stack

Warning

Review limit reached

@nicholastn1, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 45 minutes and 16 seconds. Learn how PR review limits work.

Your organization has run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 0a119179-99bd-4899-bdd8-6d06655f6672

📥 Commits

Reviewing files that changed from the base of the PR and between 98bd9c4 and 9dbbb1b.

📒 Files selected for processing (35)
  • .context/CONTEXT.md
  • .context/decisions/003-safe-update-behavior.md
  • .context/decisions/004-claude-code-integration.md
  • .context/decisions/005-askuserquestion-requirement.md
  • .context/decisions/014-automated-release-pipeline.md
  • .context/decisions/015-capability-discovery-and-update-awareness.md
  • .context/decisions/016-multi-agent-harness.md
  • .context/decisions/018-command-portability-and-invocation-modes.md
  • .github/ISSUE_TEMPLATE/bug_report.md
  • .github/ISSUE_TEMPLATE/config.yml
  • .github/ISSUE_TEMPLATE/feature_request.md
  • .github/PULL_REQUEST_TEMPLATE.md
  • .github/workflows/release.yml
  • CHANGELOG.md
  • CLAUDE.md
  • CONTRIBUTING.md
  • README.md
  • dotcontext
  • src/commands/doctor.sh
  • src/commands/help.sh
  • src/commands/init.sh
  • src/commands/update.sh
  • src/header.sh
  • src/setup/agents.sh
  • templates/.claude/commands/add-skill.md
  • templates/.claude/commands/code-review.md
  • templates/.claude/commands/deep-context.md
  • templates/.claude/commands/execute-prp.md
  • templates/.claude/commands/fix-bug.md
  • templates/.claude/commands/setup-context.md
  • templates/.claude/skills/batch-operations/SKILL.md
  • templates/.claude/skills/bug-reproduction/SKILL.md
  • templates/.claude/skills/git-platform/SKILL.md
  • templates/.claude/skills/update-api-documentation/SKILL.md
  • templates/AGENTS.md
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/multiagent-commands-2b

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

/add-skill produced the old format (# Skill: … with no YAML frontmatter), so
newly created skills wouldn't be auto-discoverable — inconsistent with the
frontmatter now required across agents. Updated the command to emit
name/description frontmatter (description front-loaded for discovery) and noted
the .agents/skills mirror for non-Claude agents.
Functional (commands were reading/writing the now-stub CLAUDE.md):
- setup-context: writes project instructions to AGENTS.md (was CLAUDE.md)
- fix-bug, execute-prp, deep-context, code-review: read AGENTS.md (canonical)
- doctor: Claude CLI missing → warn not fail; commands check is harness-aware
  (no false failure for valid non-Claude projects)

User-facing text:
- help.sh tagline/init desc/section header → multi-agent
- update.sh MCP prompt "for your agents"
- README: taglines, AGENTS.md canonical, 4-skill tree, per-harness commands row,
  conditional setup-context launch, per-agent notifications
- CLAUDE.md: tagline, init --agents / --version --features, template-init mapping,
  multi-agent integration section
- CONTEXT.md: tagline, AGENTS.md canonical entity, command entity

ADRs reconciled:
- ADR-003: drop --force (contradicted its own v2.0); doctor not "status" cmd
- ADR-004: note extended beyond Claude by 016/017/018 + Related
- ADR-005: cross-agent note ({{ASK}} via ADR-018) + Related
- ADR-015: multiagent/skills/hooks/commands now true; drop "(forthcoming)"
- ADR-016/018: fix dangling "ADR-005 v2.0" ref → ADR-018; status/History consistency
Leads with the most common contribution — adding a skill (SKILL.md frontmatter,
init/update wiring, .agents/.claude mirror, build) — then covers other
contributions, local dev, PR workflow, decision compliance, and the deploy model
(templates live on merge; CLI binary + release via tag-triggered release.yml;
merge != release). Includes issue/PR guidance and community expectations per
GitHub's contributing-guidelines recommendations.
- .github/ISSUE_TEMPLATE/: bug_report + feature_request (skill/harness-aware) + config (links to CONTRIBUTING)
- .github/PULL_REQUEST_TEMPLATE.md: summary/changes/type/checklist (incl. the make-build-in-sync reminder CI enforces) + test plan
Remove AI-writing tells (em-dash overuse, signposting, inline-header dashes,
rule-of-three, generic bookends) per the humanizer guide. Keeps the technical
content and tone; just reads less like generated text.
Squash-merges collapse history, so git-log-based notes were one line. Pull the
matching CHANGELOG.md section as the release body instead (fall back to git log
when absent), and keep the Full Changelog compare link. Docs/ADR-014 updated.
The release notes come from this section, so it must reflect everything shipping
in v0.17.0: phase 2b + the consistency fixes, doctor non-Claude fix, CONTRIBUTING,
issue/PR templates, humanized docs, and the CHANGELOG-based release notes.
…0.17.0

PR #10 merged after v0.16.0 with no release of its own, so the skill first ships
in v0.17.0; give it a proper entry instead of only a passing mention.
@nicholastn1 nicholastn1 merged commit df9e9d1 into main Jun 3, 2026
2 checks passed
@nicholastn1 nicholastn1 deleted the feat/multiagent-commands-2b branch June 3, 2026 18:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant