Skip to content

CLI overview

proagent <command> [options]

Commands

Profiles (equip existing coding agents)

CommandPurpose
detectDetect coding-agent harnesses and their capabilities
listList available professional profiles
inspect <profile>Inspect a professional profile (expertise, methods, rules)
equip <slug> [slug…]Equip the detected harness with one or more profiles
compile <slug> --target <id>Compile a profile for a specific harness
equip … --dry-runShow the compile plan without writing
equip … --target <id>Override harness detection
validate --profilesValidate every discoverable profile

Full details: Professional profiles.

Registry (unified artifact model)

One artifact model for every kind: profile · crew · agent · workflow · capability · skill · tool · mcp · prompt · hook · adapter · policy · template · extension. Loaders for profile/crew/agent land first; other kinds are schema-complete (metadata only).

CommandPurpose
search "<query>" [--type <kind>]Federated search: native catalog + allowed sources (skills.sh, npm, MCP registry, GitHub)
info <kind:id>Inspect one catalog artifact (metadata + content when a loader exists)
install <kind:id>Install an artifact — delegates to equip (profiles) / crew install (crews)
remove <kind:id>Remove an installed artifact from this repo
updateRe-resolve a stale proagents.lock
list --kind <k>List catalog items by kind (bare list stays the profile listing)
resolveCapability → implementation graph for proagents.yaml (--select c=kind:id pins a choice)
lockPersist the resolution as proagents.lock (checksummed, no timestamps)
compose <kind:id>…Validate a cross-kind composition (PA02x conflicts surface here)
setup [--harness <id>] [--dry-run]proagents.yaml → resolve → validate → equip/install — the end-to-end pipeline
validate --specEnd-to-end PA5xx validation of spec (+ lock when present)

Full details: Registry guide.

Agent building (progressive interview)

CommandPurpose
initStart (or resume) an agent-building session
statusKnowledge state, confidence and readiness
questionShow the next high-value questions (--all for every open question)
answer <id> "<text>"Answer a question and advance the interview
contextRetrieve scoped context for a task
context frameworksList available context frameworks
specGenerate the agent architecture specification
validateValidate the architecture (non-zero exit on errors) — or an explicit file: validate arch.json
buildGenerate deployable agent skills (.agents/skills/<agent>/)
agentsList agents in the generated architecture
inspectDump full session state (for agents/humans)
discoverSuggest registry items matching a query (or the session's intent)
improveShow or configure self-improvement
self-improveAlias of improve (--schedule <freq> maps to improve schedule <freq>)
benchmarkBenchmark generated agent systems (see below)
build --kind specEmit a proagents.yaml draft from the session's staged tooling

Global options

OptionPurpose
--jsonMachine-readable output on stdout
--quietSuppress decorations
--target <harness>Target harness for equip/compile (claude-code, codex, opencode, cursor, gemini-cli, copilot, openclaude, freebuff, generic-cli)
--intent "<text>"Provide intent without the interactive prompt
--context <path>Add a context source (repeatable / comma-separated)
--context-framework <id>Use a context framework (builtin, optional, or path/URL)
--agent <id>Target a specific agent (build/agents)
--output <dir>Build/spec output directory (default .agents/skills)
--non-interactiveNever prompt; emit questions for the caller
--self-improving <freq>daily / weekly / monthly / quarterly / manual
--improvement-policy <mode>propose / supervised / auto

Benchmark subcommands

proagent benchmark <subcommand> — deterministic-first benchmarking of generated agents. Full details: Benchmark system.

SubcommandPurpose
benchmark listList suites in .agents/benchmarks/
benchmark create <suite>Scaffold a suite
benchmark validate <suite>Validate cases, rubrics, judges, weights
benchmark run <suite>Execute: traces → deterministic checks → judges → consensus → score
benchmark run <suite> --runs NRepeated runs with flaky detection
benchmark run <suite> --agent <ref>Run against a reference agent (perfect/unsafe/flaky/cheating/…)
benchmark report <run-id>Human-readable report
benchmark baseline create <run-id>Store a run as suite baseline
benchmark regressions <run-id>Per-metric/case regression detection (non-zero exit on regressions)
benchmark compare <a> <b>Compare two runs
benchmark inspect <case>Show a case's checks and expectations
benchmark evaluatorsList deterministic evaluators

All support --json.

Registry groups

The Git-backed registry has two command groups — one per item kind. Both resolve local sources first — your repo's .proagent/profiles/ and .proagent/crews/ creations (where profile create / crew create scaffold), then a registry/profiles/ / registry/crews/ checkout — and fall back to the remote catalog (--repo owner/name --ref branch --token <gh-token>).

crew

CommandPurpose
crew listList registry crews in the catalog
crew show <id>Print a crew definition (workers, permissions, MCP)
crew validate <manifest.json|dir>Hydrate + validate a crew manifest (folder standard or inline); enforces PA043–PA048
crew install <id>Install a crew into the current repo (.agents/crews/<id>/ + .mcp.json)
crew install <id> --dry-runShow the install plan without writing
crew build <manifest.json>Install from a local manifest (builder output or folder-standard manifest.json)
crew create <profile…>Compose existing profiles into a custom crew folder in .proagent/crews/ (every member binds a profile)
crew publish <file>Direct catalog commit (contents:write)
crew submit <file>File a registry proposal issue (recommended)

crew create flags: --name, --id, --description, --role <member-role> (one per member, in argument order). publish/submit accept both folder-standard and inline JSON manifests — folder manifests are hydrated before validation.

profile

CommandPurpose
profile create <name>Scaffold a custom profile into .proagent/profiles/<slug>/ (--slug, --description)
profile listList registry profiles in the catalog
profile show <id>Print a profile manifest (hydrated)
profile install <id>Resolve + validate + equip from the catalog (same as equip)
profile validate <file.json>Validate a profile manifest (hydrates path-format sections)
profile publish <file.json>Direct catalog commit (contents:write)
profile submit <file.json>File a registry proposal issue (recommended)

Shortcuts: proagent equip = profile install, proagent list = profile list.

Typical session (human, interactive)

bash
proagent detect
proagent equip security-engineer
proagent inspect security-engineer
proagent validate --profiles

Or the agent-building path:

bash
proagent init --intent "I want an agent that reviews PRs for security issues"
proagent answer q_001 "It reviews diffs in our Node.js services and comments on PRs"
proagent status
proagent spec
proagent validate && proagent build

Typical session (agent, non-interactive)

See the JSON interface for the full machine contract.