agent-orchestrator/backend/internal/skillassets/using-ao/commands/project.md

4.1 KiB

ao project

Manage projects: register repos, inspect, configure per-project settings, and remove.

Syntax

ao project <subcommand> [args] [flags]

Subcommands


ao project add

Register a local git repo as a project so sessions can be spawned in it. The path must be an existing git repository on disk. With --as-workspace, the path may be a parent folder containing direct child git repositories; AO initializes/adopts the parent as the root repo and gitignores children.

Syntax:

ao project add [flags]

Flags:

Flag Meaning Default / Required
--as-workspace Register a parent folder as a workspace project (root-as-repo plus direct child repos) -
--id string Project id Derived by the daemon from the path
--name string Display name -
--orchestrator-agent string Default orchestrator session agent -
--path string Absolute path to the local git repo Required
--worker-agent string Default worker session agent -

Examples:

# Register a repo as a project
ao project add --path /Users/harshit/Downloads/side-quests/agent-orchestrator --name "agent-orchestrator"
# Register a workspace (parent folder containing multiple repos)
ao project add --path /Users/harshit/Downloads/side-quests --as-workspace --name "side-quests"

ao project ls

List registered projects. Aliases: ls, list.

Syntax:

ao project ls [flags]

Flags:

Flag Meaning Default / Required
--json Output projects as JSON -

Examples:

# List all registered projects
ao project ls

ao project get

Fetch one registered project.

Syntax:

ao project get <id> [flags]

Flags:

Flag Meaning Default / Required
--json Output project as JSON -

Examples:

# Get details for the agent-orchestrator project
ao project get agent-orchestrator

ao project rm

Remove a registered project. Aliases: rm, remove, delete.

Syntax:

ao project rm <id> [flags]

Flags:

Flag Meaning Default / Required
--json Output removal result as JSON -
-y, --yes Skip confirmation prompt -

Examples:

# Remove a project (with confirmation)
ao project rm agent-orchestrator
# Remove without prompt
ao project rm agent-orchestrator -y

ao project set-config

Replace a project's per-project config (branch, session prefix, env, symlinks, post-create, agent model/permissions, role overrides). The config is resolved when a session spawns. Set fields via flags, pass the whole object with --config-json, or --clear to remove all config.

Syntax:

ao project set-config <id> [flags]

Flags:

Flag Meaning Default / Required
--clear Clear all config -
--config-json string Full config as a JSON object (overrides field flags) -
--default-branch string Base branch new session worktrees are created from -
--env stringArray Env var KEY=VALUE forwarded into sessions (repeatable) -
--json Output the updated project as JSON -
--model string Agent model override (e.g. claude-opus-4-5) -
--orchestrator-agent string Harness override for orchestrator sessions -
--permission string Permission mode: default, accept-edits, auto, bypass-permissions -
--post-create stringArray Command to run after workspace creation (repeatable) -
--session-prefix string Displayed session-id prefix -
--symlink stringArray Repo-relative path to symlink into workspaces (repeatable) -
--worker-agent string Harness override for worker sessions -

Examples:

# Set default branch and model for a project
ao project set-config agent-orchestrator --default-branch main --model claude-opus-4-5
# Set an env var and a post-create command
ao project set-config agent-orchestrator --env "NODE_ENV=development" --post-create "npm install"