This was written agentically; verify its assertions:
Why
Agent-kit's operator surface is its skills (/parallel-issues, /pr-to-green, /review-remote-pr, /onboard-repo). OpenCode has native SKILL.md support (a skill tool) and a Claude-compatible discovery path — so most of the work is placement and invocation ergonomics, not translation.
What
- Skills discovery: make the built plugin's
agentkit/skills/*/SKILL.md tree visible to OpenCode. Verified options, decided at implementation with a test: ship .opencode/skills/<name>/SKILL.md entries in the built artifact, or document a Claude-compatible path (.claude/skills/) the installer symlinks. Constraint check: skill name must be lowercase-alphanumeric-hyphen ≤64 and match its directory; agent-kit skill frontmatter (name, description) must satisfy OpenCode's required fields (description ≤1024) — add a lint if any skill violates them.
- Commands: ship
.opencode/commands/ definitions for the four operator skills, each template instructing invocation of the corresponding skill via the native skill tool with $ARGUMENTS passed through (e.g. /parallel-issues 301 305 307 --yolo). Frontmatter agent left to the default build agent unless a slice-6 worker agent is warranted.
- Flag fidelity: templates must pass arguments verbatim — the skills' own flag parsing (
--yolo, --fast-mode, --auto-review, --auto-serialize) stays authoritative.
- README: how a user invokes each command in the TUI.
Acceptance
Blocked by the contract-injection slice (S3).
🤖 Co-authored by Claude Fable 5.
This was written agentically; verify its assertions:
Why
Agent-kit's operator surface is its skills (
/parallel-issues,/pr-to-green,/review-remote-pr,/onboard-repo). OpenCode has native SKILL.md support (askilltool) and a Claude-compatible discovery path — so most of the work is placement and invocation ergonomics, not translation.What
agentkit/skills/*/SKILL.mdtree visible to OpenCode. Verified options, decided at implementation with a test: ship.opencode/skills/<name>/SKILL.mdentries in the built artifact, or document a Claude-compatible path (.claude/skills/) the installer symlinks. Constraint check: skillnamemust be lowercase-alphanumeric-hyphen ≤64 and match its directory; agent-kit skill frontmatter (name,description) must satisfy OpenCode's required fields (description≤1024) — add a lint if any skill violates them..opencode/commands/definitions for the four operator skills, eachtemplateinstructing invocation of the corresponding skill via the nativeskilltool with$ARGUMENTSpassed through (e.g./parallel-issues 301 305 307 --yolo). Frontmatteragentleft to the default build agent unless a slice-6 worker agent is warranted.--yolo,--fast-mode,--auto-review,--auto-serialize) stays authoritative.Acceptance
skilltool lists the agent-kit skills with correct name/description pairs/parallel-issues-equivalent command reaches the skill with arguments intact (transcript evidence in PR)Blocked by the contract-injection slice (S3).
🤖 Co-authored by Claude Fable 5.