skills install writes the difyctl skill (a SKILL.md file) into the skill directories of the coding agents on your machine.
The skill deliberately lists no commands: it points the agent at difyctl help -o json --compact and per-command help, so it discovers the live command surface itself.
See the help reference for those discovery surfaces, and Install the difyctl Skill for the full integration.
Install the Skill#
This command is fully local: it needs no sign-in and never contacts a server.
Arguments#
dir: optional. Install into this single directory, bypassing agent detection. The skill lands at<dir>/SKILL.md. Cannot be combined with--agent.
Flags#
| Flag | Type | Default | Description |
|---|---|---|---|
-y, --yes | boolean | false | Write the skill. Without it, the command is a dry run: it lists where the skill would land and writes nothing. |
--agent | string, repeatable | none | Restrict the install to specific detected agents, using the names from Agent Detection. With no --agent, the skill installs into every detected agent. To install into several agents but not all, repeat the flag or pass a comma-separated list.Naming an agent that isn’t detected is a usage error. |
--stdout | boolean | false | Print the skill to stdout and write nothing. Cannot be combined with --yes, --agent, or dir. |
Examples#
Preview where the skill would be installed (dry run, the default):
Install into every detected agent:
Install into one agent only:
Install into several specific agents (repeat the flag or comma-separate):
Install into an explicit directory, for an agent the CLI doesn’t detect:
Print the skill without writing anything:
Agent Detection#
Detection checks whether each agent’s configuration directory exists. The CLI never probes PATH or launches anything. The skill is written to each agent’s documented user-level skill location:
| Agent | Detected when | Skill lands in |
|---|---|---|
claude-code | ~/.claude exists | ~/.claude/skills/difyctl/SKILL.md |
codex | ~/.codex exists | ~/.agents/skills/difyctl/SKILL.md |
opencode | ~/.config/opencode exists | ~/.config/opencode/skills/difyctl/SKILL.md |
cursor | ~/.cursor exists | ~/.cursor/skills/difyctl/SKILL.md |
pi | ~/.pi exists | ~/.pi/agent/skills/difyctl/SKILL.md |
An agent that’s installed but has never been launched may not have its configuration directory yet. Install into its skill directory explicitly with difyctl skills install <dir>.
Output#
A dry run lists the detected agents and the target paths, then tells you how to proceed:
With --yes, each write is confirmed:
When nothing is detected, the command explains the alternatives and exits 0:
The installed skill carries a version stamp matching the CLI that wrote it. Re-running skills install --yes after upgrading replaces the file with the current version. Re-running is always safe.
Exit Codes#
| Code | Meaning |
|---|---|
0 | Success, including a dry run and the nothing-detected case |
1 | Local failure, such as a target directory that isn’t writable |
2 | Usage error: --stdout combined with a write option, dir combined with --agent, or --agent naming an agent that isn’t detected |