Skip to main content
The difyctl help system covers four surfaces: the top-level overview, per-command and group help, guide topics, and a machine-readable form of all of them. All help prints to stdout and exits 0.

Get Help

Four invocations show the same top-level overview:
difyctl
difyctl help
difyctl --help
difyctl -h
The overview lists every command with its one-liner, three getting-started examples, the global flags, and the guide topics. For the same inventory with links into this reference, see the Command Index.

Help for One Command or Group

Append --help to any command, or put help in front of it:
difyctl run app --help
difyctl help run app
Per-command help shows the command’s description, usage line, arguments, flags with defaults, and examples. Name a command group instead of a command to list the group’s subcommands:
difyctl auth --help
COMMANDS
  auth devices list    List active sessions for the current bearer
  auth devices revoke  Revoke one or all session devices
  auth list            List all authenticated contexts (host + account pairs)
  auth login           Sign in to Dify via OAuth device flow
  auth logout          Log out of the active Dify host
  auth whoami          Print the active subject's identity
A name that matches neither a command, a topic, nor a group fails with unknown help topic: <name>, suggestions, and exit code 1.

Guide Topics

Long-form topics ship inside the CLI, read with difyctl help <topic>:
TopicWhat it covers
accountOnboarding guidance.
environmentThe CLI’s own descriptions of the DIFY_* environment variables.
agentThe cross-command contract for agents driving difyctl.
These topics are built into the CLI. For which variables difyctl actually reads, see Environment Variables.

Machine-Readable Help

Every help surface accepts -o json and -o yaml. The top-level form emits the complete command surface in one document:
difyctl help -o json
The document has four top-level keys: bin, contract (exit codes, output formats, the shape of error output, and cross-command rules), commands (one descriptor per command), and topics (the available guide topics by name, with each topic’s text read via difyctl help <topic>). Per-command help in JSON returns just that command’s descriptor:
difyctl auth whoami --help -o json
{
  "command": "auth whoami",
  "description": "Print the active subject's identity",
  "effect": "read",
  "args": [],
  "flags": [
    {
      "name": "json",
      "char": null,
      "type": "boolean",
      "default": false,
      "multiple": false,
      "options": null,
      "description": "emit JSON"
    }
  ],
  "examples": [
    "difyctl auth whoami",
    "difyctl auth whoami --json"
  ],
  "agentGuide": null
}
Each descriptor carries the command’s arguments and flags with types and defaults, an effect label (read, write, or destructive), and an agentGuide string where one exists. This is how coding agents discover difyctl.

Exit Codes

CodeMeaning
0Help printed
1Unknown help topic or command name
See Output Formats and Exit Codes for the full scheme.
Last modified on June 25, 2026