UniAI Docs

CLI command reference

One-page overview of every top-level UniAI CLI command. For full usage, run `uniai <command> --help`.

The UniAI CLI mirrors almost everything the Web UI can do (create issues, assign agents, start the daemon, and more). This page lists every top-level command with a one-line description. For the full set of flags and examples, run uniai <command> --help.

Getting authenticated

Run this the first time you use the CLI to obtain a personal access token (PAT):

uniai login

Your browser opens automatically. After you approve in the web app, the CLI saves the PAT (prefixed with mul_) to ~/.multica/config.json. Every subsequent command authenticates with that PAT.

For CI or headless environments, skip the browser flow: create a PAT in the web app under Settings → Personal Access Tokens, then run uniai login --token <mul_...> to supply it directly.

For the difference between token types, see Authentication and tokens.

Auth and setup

CommandPurpose
uniai loginLog in and save a PAT
uniai auth statusShow current login status, user, and workspace
uniai auth logoutClear the local PAT
uniai setup cloudOne-shot setup for UniAI Cloud (login + install daemon)

Workspaces and members

CommandPurpose
uniai workspace listList every workspace you can access
uniai workspace get <slug>Show details for one workspace
uniai workspace member listList members of the current workspace
uniai workspace update <id> --name "..." [--description "..."] [--context "..."] [--issue-prefix "..."]Update workspace metadata (admin/owner). Long fields accept --description-stdin / --context-stdin.

Issues and projects

list commands (uniai issue list, autopilot list, project list, etc.) print short, copy-paste-ready IDs by default — issue keys like UNI-123 for issues, short UUID prefixes for the rest. The <id> argument on the follow-up commands below accepts either the short ID or the full UUID, so the typical flow is uniai issue list → copy the key → uniai issue get UNI-123. Pass --full-id to a list command when you need the canonical UUID.

CommandPurpose
uniai issue listList issues (prints copy-paste-ready issue keys)
uniai issue get <id>Show a single issue (accepts an issue key or a UUID)
uniai issue create --title "..."Create a new issue
uniai issue update <id> ...Update an issue (status, priority, assignee, etc.)
uniai issue assign <id> --to <name>Assign to a member, agent, or squad (assigning to an agent triggers a run)
uniai issue status <id> <status>Shortcut to change status
uniai issue search <query>Keyword search
uniai issue children <id>List sub-issues grouped by stage
uniai issue pull-requests <id>List linked pull requests and their status
uniai issue runs <id>Show agent runs on an issue
uniai issue run-messages <task-id>Show messages for one execution
uniai issue usage <id>Show aggregated token usage for an issue
uniai issue rerun <id>Re-enqueue a fresh task for the issue's current agent assignee
uniai issue cancel-task <task-id>Cancel a queued or running task
uniai issue comment <id> ...Nested: view / post comments
uniai issue comment resolve/unresolve <comment-id>Mark a comment thread resolved or unresolved
uniai issue subscriber <id> ...Nested: subscribe / unsubscribe
uniai issue metadata <id> ...Nested: read / write issue metadata
uniai issue label <id> ...Nested: manage labels on an issue
uniai project list/get/create/update/delete/statusProject CRUD
uniai label list/create/update/deleteWorkspace label CRUD

Agents and skills

CommandPurpose
uniai agent listList the workspace's agents
uniai agent get <slug>Show an agent's configuration
uniai agent create ...Create an agent
uniai agent update <slug> ...Update an agent
uniai agent archive <slug>Archive
uniai agent restore <slug>Restore an archived agent
uniai agent tasks <slug>Show an agent's task history
uniai agent avatar <slug>Upload an agent avatar
uniai agent env <slug> ...Read or replace an agent's custom environment variables
uniai agent skills ...Nested: attach / detach skills
uniai skill list/get/create/update/deleteSkill CRUD
uniai skill import ...Import a skill from GitHub, ClawHub, or the local machine
uniai skill files ...Nested: manage a skill's files

Skill import conflicts

uniai skill import --url <url> defaults to --on-conflict fail. If a skill with the same name already exists, the command exits with a structured conflict result and does not change the workspace.

Use --on-conflict overwrite when you created the existing skill and want to replace its content while preserving its ID and agent bindings. Use --on-conflict rename to import a copy with an automatic suffix such as -2. Use --on-conflict skip to leave the existing skill untouched and report skipped.

uniai skill import --url https://skills.sh/acme/repo/review-helper
uniai skill import --url https://skills.sh/acme/repo/review-helper --on-conflict overwrite
uniai skill import --url https://skills.sh/acme/repo/review-helper --on-conflict rename
uniai skill import --url https://skills.sh/acme/repo/review-helper --on-conflict skip

Squads

CommandPurpose
uniai squad listList squads in the workspace
uniai squad get <id>Show a single squad
uniai squad create --name "..." --leader <agent>Create a squad (owner / admin)
uniai squad update <id> ...Update name, description, instructions, leader, or avatar
uniai squad delete <id>Archive (soft-delete) — transfers assigned issues to the leader
uniai squad member list/add/remove/set-role <squad-id>Manage squad members and update roles in place
uniai squad activity <issue-id> <action|no_action|failed> --reason "..."Used by squad leader agents to record an evaluation per turn

See Squads for the full model.

Autopilots

CommandPurpose
uniai autopilot listList every autopilot in the workspace
uniai autopilot get <id>Show a single autopilot
uniai autopilot create ...Create an autopilot
uniai autopilot update <id> ...Update
uniai autopilot delete <id>Delete
uniai autopilot runs <id>Show run history
uniai autopilot trigger <id>Trigger a run manually
uniai autopilot trigger-add/update/delete <id>Manage schedule or webhook triggers
uniai autopilot trigger-rotate-url <id> <trigger-id>Rotate a webhook trigger URL

uniai autopilot create/update also accepts --subscriber to set default subscribers for issues created by a create_issue autopilot; update accepts --clear-subscribers to remove them.

Daemon and runtimes

CommandPurpose
uniai daemon startStart the daemon (background by default; add --foreground to run in the foreground)
uniai daemon stopStop the daemon
uniai daemon restartRestart the daemon
uniai daemon statusCheck whether the daemon is online and its concurrency
uniai daemon logsView daemon logs
uniai runtime listList runtimes in the current workspace
uniai runtime usageShow resource usage
uniai runtime activityRecent activity log
uniai runtime update <id> ...Initiate a CLI update on a runtime
uniai runtime delete <id> [--cascade]Delete a runtime, optionally archiving bound agents
uniai runtime profile ...Manage custom runtime profiles and local path overrides

Miscellaneous

CommandPurpose
uniai repo checkout <url>Clone a repo locally for agents to use
uniai configView or edit local CLI configuration
uniai versionPrint the CLI version
uniai updateUpgrade the CLI to the latest release
uniai attachment download <id>Download an attachment from an issue or comment

Getting full flags

Every command supports --help:

uniai issue create --help
uniai agent update --help

v2 will ship a dedicated detailed reference page for each command.

Next steps