Skip to content

feat: add opencode skill install support#8

Open
jtdelia wants to merge 1 commit intomainfrom
feat/opencode-skill
Open

feat: add opencode skill install support#8
jtdelia wants to merge 1 commit intomainfrom
feat/opencode-skill

Conversation

@jtdelia
Copy link
Copy Markdown

@jtdelia jtdelia commented Apr 2, 2026

Adds dci skill opencode subcommand, which installs the DCI skill to ~/.config/opencode/skills/dci-cli/.

OpenCode discovers skills by directory convention using SKILL.md as the entry point — consistent with Claude, Kiro, and Gemini. No agent-specific config file needed.

@jtdelia jtdelia requested a review from apgiorgi as a code owner April 2, 2026 01:55
Copilot AI review requested due to automatic review settings April 2, 2026 01:55
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds OpenCode as a supported target for the existing dci skill installer flow, enabling installation into OpenCode’s expected config directory layout.

Changes:

  • Add opencode to the supported agent list for dci skill, targeting ~/.config/opencode/.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 695 to 700
{"claude", ".claude"},
{"codex", ".codex"},
{"kiro", ".kiro"},
{"gemini", ".gemini"},
{"opencode", ".config/opencode"},
}
Copy link

Copilot AI Apr 2, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The supported agent list is now updated to include opencode, but the test suite still hard-codes the agent list in TestInstallSkill (main_test.go) without opencode. This makes it easy for future additions to drift and leaves this new support unverified. Consider adding opencode to the test cases (and/or deriving the test list from the same source as the CLI command list) so the new install target is covered.

Copilot uses AI. Check for mistakes.
Copy link
Copy Markdown
Collaborator

@apgiorgi apgiorgi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the contribution, John!

Copy link
Copy Markdown
Collaborator

@apgiorgi apgiorgi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Two issues to address before merging.

main_test.goTestInstallSkill not updated: The agents slice in TestInstallSkill mirrors main.go and must be kept in sync. Add {"opencode", ".config/opencode"} to that slice (after the {"gemini", ".gemini"} entry, before the closing } at line 1079) to cover the new entry.

{"codex", ".codex"},
{"kiro", ".kiro"},
{"gemini", ".gemini"},
{"opencode", ".config/opencode"},
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OpenCode is the only entry using an XDG config path (.config/opencode) instead of a dotfile. Per project convention, add a brief inline comment explaining why — e.g.:

{"opencode", ".config/opencode"}, // OpenCode uses XDG config dir (~/.config), not a dotfile

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.

3 participants