We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.

This lesson's interactive features are locked, please to keep using them

Skill Permissions

Just like tools, skill permissions can be controlled via opencode.jsonc:

{
  "$schema": "https://opencode.ai/config.json",
  "permissions": [
    { "action": "skill", "resource": "*", "effect": "allow" },
    { "action": "skill", "resource": "internal-*", "effect": "deny" },
    { "action": "skill", "resource": "experimental-*", "effect": "ask" },
  ],
}

The modes are the same, and wildcard rules work the same way:

  • allow: the skill loads immediately
  • ask: OpenCode asks before loading it
  • deny: the skill is hidden from the agent and inaccessible to it

You can also give one agent its own skill rules:

{
  "$schema": "https://opencode.ai/config.json",
  "agents": {
    "plan": {
      "permissions": [
        { "action": "skill", "resource": "*", "effect": "deny" },
        { "action": "skill", "resource": "internal-*", "effect": "allow" },
      ],
    },
  },
}

Rules are ordered, so the narrower internal-* allow wins because it comes after the wildcard deny.

Assignment

Tell OpenCode to run and submit the CLI tests from the project root.