Feature Request: Add configuration option to disable automatic Claude Code skills/commands sync #8780

Closed
opened 2026-02-16 18:10:49 -05:00 by yindo · 4 comments
Owner

Originally created by @yy1588133 on GitHub (Feb 7, 2026).

Originally assigned to: @thdxr on GitHub.

Problem Statement

Currently, OpenCode automatically discovers and loads skills and commands from Claude Code compatible directories:

Skills:

  • ~/.claude/skills/<name>/SKILL.md
  • .claude/skills/<name>/SKILL.md
  • ~/.agents/skills/<name>/SKILL.md (agents-compatible)
  • .agents/skills/<name>/SKILL.md (agents-compatible)

Commands:

  • .claude/commands/ (implied from docs)

While this compatibility is convenient for users migrating from Claude Code, there is no way to opt-out of this automatic synchronization for users who want to keep their OpenCode configuration separate.

Use Case

As a user who uses both Claude Code and OpenCode with different workflows, I would like to:

  1. Keep Claude Code's skills/commands separate from OpenCode
  2. Avoid polluting OpenCode's skill list with Claude-specific skills that may not be relevant
  3. Have explicit control over which skills/commands are available in each tool

Proposed Solution

Add a configuration option in opencode.json to disable Claude Code compatibility paths:

{
  "": "https://opencode.ai/config.json",
  "claude_compatibility": {
    "skills": false,
    "commands": false
  }
}

Or alternatively, a simpler boolean toggle:

{
  "sync_claude_config": false
}

Default behavior: true (maintain backward compatibility)

Current Workarounds

The only way to prevent this currently is to rename or remove the .claude/ directory, which is disruptive for users who actively use both tools.

Related Documentation


Would you consider adding this feature? Happy to discuss alternative approaches.

Originally created by @yy1588133 on GitHub (Feb 7, 2026). Originally assigned to: @thdxr on GitHub. ## Problem Statement Currently, OpenCode automatically discovers and loads skills and commands from Claude Code compatible directories: **Skills:** - `~/.claude/skills/<name>/SKILL.md` - `.claude/skills/<name>/SKILL.md` - `~/.agents/skills/<name>/SKILL.md` (agents-compatible) - `.agents/skills/<name>/SKILL.md` (agents-compatible) **Commands:** - `.claude/commands/` (implied from docs) While this compatibility is convenient for users migrating from Claude Code, there is **no way to opt-out** of this automatic synchronization for users who want to keep their OpenCode configuration separate. ## Use Case As a user who uses both Claude Code and OpenCode with different workflows, I would like to: 1. Keep Claude Code's skills/commands separate from OpenCode 2. Avoid polluting OpenCode's skill list with Claude-specific skills that may not be relevant 3. Have explicit control over which skills/commands are available in each tool ## Proposed Solution Add a configuration option in `opencode.json` to disable Claude Code compatibility paths: ```json { "": "https://opencode.ai/config.json", "claude_compatibility": { "skills": false, "commands": false } } ``` Or alternatively, a simpler boolean toggle: ```json { "sync_claude_config": false } ``` **Default behavior:** `true` (maintain backward compatibility) ## Current Workarounds The only way to prevent this currently is to rename or remove the `.claude/` directory, which is disruptive for users who actively use both tools. ## Related Documentation - [Agent Skills - OpenCode Docs](https://opencode.ai/docs/skills/) - [Commands - OpenCode Docs](https://opencode.ai/docs/commands/) - [Config Schema](https://opencode.ai/config.json) --- Would you consider adding this feature? Happy to discuss alternative approaches.
yindo closed this issue 2026-02-16 18:10:50 -05:00
Author
Owner

@github-actions[bot] commented on GitHub (Feb 7, 2026):

This issue might be a duplicate of existing issues. Please check:

  • #12432: OPENCODE_DISABLE_CLAUDE_CODE=1 also disable .agents/skills added in v1.1.50 - Related to disabling Claude Code compatibility
  • #12109: OpenCode started listing skills as commands with no option to disable this behavior - Addresses similar control needs
  • #11394: [FEATURE]: filter slash commands in config - Related to command configuration control
  • #10305: Import settings from Claude Code - Related to Claude Code configuration

Feel free to ignore if none of these address your specific case.

@github-actions[bot] commented on GitHub (Feb 7, 2026): This issue might be a duplicate of existing issues. Please check: - #12432: OPENCODE_DISABLE_CLAUDE_CODE=1 also disable .agents/skills added in v1.1.50 - Related to disabling Claude Code compatibility - #12109: OpenCode started listing skills as commands with no option to disable this behavior - Addresses similar control needs - #11394: [FEATURE]: filter slash commands in config - Related to command configuration control - #10305: Import settings from Claude Code - Related to Claude Code configuration Feel free to ignore if none of these address your specific case.
Author
Owner

@ariane-emory commented on GitHub (Feb 7, 2026):

Changing the shape of the configuration object is often a tough sell. :/

@ariane-emory commented on GitHub (Feb 7, 2026): Changing the shape of the configuration object is often a tough sell. :/
Author
Owner

@R44VC0RP commented on GitHub (Feb 7, 2026):

There's already an env var for this — set OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=true to skip .claude/skills/ and .agents/skills/ paths (see packages/opencode/src/flag/flag.ts:24-27).

For commands: .claude/commands/ compatibility doesn't exist yet. PR #6990 is open to add it but hasn't merged. So there's nothing to disable on the commands side.

If you want this controllable via opencode.json instead of env vars, that's a separate feature request — right now these Claude compatibility toggles are env-only. Would accept a PR to add config schema for it, but env var works today.

@R44VC0RP commented on GitHub (Feb 7, 2026): There's already an env var for this — set `OPENCODE_DISABLE_CLAUDE_CODE_SKILLS=true` to skip `.claude/skills/` and `.agents/skills/` paths (see `packages/opencode/src/flag/flag.ts:24-27`). For commands: `.claude/commands/` compatibility doesn't exist yet. PR #6990 is open to add it but hasn't merged. So there's nothing to disable on the commands side. If you want this controllable via `opencode.json` instead of env vars, that's a separate feature request — right now these Claude compatibility toggles are env-only. Would accept a PR to add config schema for it, but env var works today.
Author
Owner

@junsu-min-ilevit-com commented on GitHub (Feb 14, 2026):

Checking resolution

@junsu-min-ilevit-com commented on GitHub (Feb 14, 2026): Checking resolution
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: anomalyco/opencode#8780