Skip to main content

CLI Reference (Complete)

The eve CLI is the single entry point to the Eve Horizon platform. Every operation — bootstrapping a project, creating jobs, deploying environments, managing secrets, coordinating agent teams — flows through this tool. Both humans and AI agents use the same commands, making the CLI the shared language of the entire system.

eve <command> [subcommand] [options]

This page documents every command, every subcommand, every flag, and every example. Use your browser's search (Ctrl+F / Cmd+F) or the sidebar to jump to a specific command.


Global options

These flags work with any command and override profile defaults for the current invocation.

FlagTypeDefaultDescription
--helpbooleanShow help for the current command or subcommand
--api-url <url>stringProfile defaultOverride the API base URL
--profile <name>stringActive profileUse a named repo-local profile
--org <id>stringProfile defaultOverride default organization ID
--project <id>stringProfile defaultOverride default project ID
--jsonbooleanfalseOutput as machine-readable JSON

eve access

Manage access control: check permissions, manage roles/bindings, and sync policy-as-code from .eve/access.yaml.

eve access <subcommand> [options]

eve access can

Check if a principal can perform an action.

FlagTypeDefaultDescription
--org <org_id>stringProfile defaultOrg scope
--user <user_id>stringUser to check (mutually exclusive with --service-principal/--group)
--service-principal <sp_id>stringService principal to check (mutually exclusive with --user/--group)
--group <group_id>stringGroup to check directly (mutually exclusive with --user/--service-principal)
--permission <perm>stringPermission to check (e.g., chat:write, jobs:admin)
--project <project_id>stringOptional project scope for the check
--resource-type <type>stringOptional resource type: orgfs, orgdocs, envdb
--resource <id>stringOptional resource id/path (required when --resource-type used)
--action <action>stringOptional action: read, write, admin

Examples:

eve access can --org org_xxx --user user_abc --permission chat:write
eve access can --org org_xxx --user user_abc --project proj_xxx --permission jobs:admin
eve access can --org org_xxx --service-principal sp_xxx --permission jobs:read
eve access can --org org_xxx --user user_abc --permission orgfs:read \
--resource-type orgfs --resource /groups/pm/spec.md --action read

eve access explain

Explain the permission resolution chain.

FlagTypeDefaultDescription
--org <org_id>stringProfile defaultOrg scope
--user <user_id>stringUser to explain (mutually exclusive with --service-principal/--group)
--service-principal <sp_id>stringService principal to explain
--group <group_id>stringGroup to explain directly
--permission <perm>stringPermission to explain
--project <project_id>stringOptional project scope
--resource-type <type>stringOptional resource type: orgfs, orgdocs, envdb
--resource <id>stringOptional resource id/path
--action <action>stringOptional action: read, write, admin

Examples:

eve access explain --org org_xxx --user user_abc --permission jobs:admin
eve access explain --org org_xxx --user user_abc --project proj_xxx --permission jobs:admin
eve access explain --org org_xxx --service-principal sp_xxx --permission jobs:read

eve access groups

Manage access groups and members.

eve access groups <create|list|show|update|delete|members> [args]

Examples:

eve access groups create "Product Management" --org org_xxx --slug pm-team
eve access groups list --org org_xxx
eve access groups members add pm-team --org org_xxx --user user_abc
eve access groups members list pm-team --org org_xxx

eve access memberships

Inspect memberships, effective bindings, and effective scopes for a principal.

eve access memberships --org <org_id> (--user <id>|--service-principal <id>|--group <id>)

Examples:

eve access memberships --org org_xxx --user user_abc
eve access memberships --org org_xxx --service-principal sp_abc
eve access memberships --org org_xxx --group grp_abc

eve access validate

Validate an .eve/access.yaml file (schema + semantic checks).

FlagTypeDefaultDescription
--file <path>string.eve/access.yamlPath to access YAML file
--jsonbooleanfalseOutput validation result as JSON

Examples:

eve access validate
eve access validate --file custom/access.yaml
eve access validate --json

eve access plan

Show changes needed to sync access.yaml to an org (dry run).

FlagTypeDefaultDescription
--file <path>string.eve/access.yamlPath to access YAML file
--org <org_id>stringProfile defaultOrg to plan against
--jsonbooleanfalseOutput plan as machine-readable JSON

Examples:

eve access plan --org org_xxx
eve access plan --file .eve/access.yaml --org org_xxx --json

eve access sync

Apply access.yaml to an org (create/update roles and bindings).

FlagTypeDefaultDescription
--file <path>string.eve/access.yamlPath to access YAML file
--org <org_id>stringProfile defaultOrg to sync to
--yesbooleanfalseSkip confirmation prompt
--prunebooleanfalseDelete roles/bindings that exist in the org but not in the YAML
--jsonbooleanfalseOutput sync result as JSON

Examples:

eve access sync --org org_xxx
eve access sync --org org_xxx --yes
eve access sync --org org_xxx --prune --yes
eve access sync --file .eve/access.yaml --org org_xxx --json

eve admin

Administrative commands for user, identity, and platform operations.

eve admin <subcommand> [options]

eve admin invite

Invite a user by registering their GitHub SSH keys and adding them to an org.

FlagTypeDefaultDescription
--email <email>stringUser email address (required)
--github <username>stringGitHub username to fetch SSH keys from
--role <role>stringmemberOrg role: owner, admin, member
--org <org_id>stringProfile defaultOrganization to add user to

Examples:

eve admin invite --email user@example.com --github octocat
eve admin invite --email user@example.com --github octocat --role admin --org org_xxx

eve admin ingress-aliases

Inspect and reclaim ingress alias claims (system admin).

eve admin ingress-aliases <list|reclaim> [options]

List options: --alias <name>, --project <id>, --environment <id|null>, --limit <n>, --offset <n>

Reclaim usage: eve admin ingress-aliases reclaim <alias> --reason "<text>"

Examples:

eve admin ingress-aliases list --project proj_xxx
eve admin ingress-aliases reclaim eve-pm --reason "Reserved org rename"

eve agents

Inspect agent policy config and harness capabilities for orchestration. Default profile: primary-orchestrator.

eve agents <config|sync|runtime-status> [options]

eve agents config

Show agent policy (profiles/councils) and harness availability.

FlagTypeDefaultDescription
--path <dir>stringcwdRepository root to inspect
--repo-dir <dir>stringAlias for --path
--no-harnessesbooleanfalseSkip harness availability lookup

Examples:

eve agents config
eve agents config --json
eve agents config --path ../my-repo

eve agents sync

Sync agents.yaml/teams.yaml/chat.yaml to the API.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--ref <ref>stringGit ref to sync (required unless --local)
--localbooleanfalseAllow local sync (only for localhost/lvh.me API)
--allow-dirtybooleanfalseAllow syncing a dirty working tree
--repo-dir <path>stringcwdRepository root
--force-nonlocalbooleanfalseAllow --local against non-local API URL

Examples:

eve agents sync --project proj_xxx --ref main
eve agents sync --project proj_xxx --ref HEAD
eve agents sync --project proj_xxx --local --allow-dirty

eve agents runtime-status

Show agent runtime status for an org.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID

Examples:

eve agents runtime-status --org org_xxx
eve agents runtime-status --json

eve analytics

View org-wide analytics: job counts, pipeline success rates, and environment health.

eve analytics <subcommand> [options]

eve analytics summary

Org-wide activity summary (jobs, pipelines, environments).

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--window <duration>string7dTime window (e.g., 7d, 24h, 30d)
--jsonbooleanfalseOutput raw JSON

Examples:

eve analytics summary --org org_xxx
eve analytics summary --org org_xxx --window 30d
eve analytics summary --org org_xxx --json

eve analytics jobs

Job breakdown for the given time window.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--window <duration>string7dTime window
--jsonbooleanfalseOutput raw JSON

Examples:

eve analytics jobs --org org_xxx
eve analytics jobs --org org_xxx --window 24h --json

eve analytics pipelines

Pipeline success rates and durations.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--window <duration>string7dTime window
--jsonbooleanfalseOutput raw JSON

Examples:

eve analytics pipelines --org org_xxx
eve analytics pipelines --org org_xxx --window 30d

eve analytics env-health

Current environment health snapshot.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--jsonbooleanfalseOutput raw JSON

Examples:

eve analytics env-health --org org_xxx
eve analytics env-health --org org_xxx --json

eve api

Explore project API sources and call them with Eve auth.

eve api <subcommand> [options]

eve api list

List API sources for a project.

FlagTypeDefaultDescription
<project>stringProfile defaultProject ID
--env <name>stringEnvironment name (optional filter)

Examples:

eve api list
eve api list proj_xxx --env staging

eve api show

Show details for a single API source.

FlagTypeDefaultDescription
--env <name>stringEnvironment name (optional filter)

Examples:

eve api show app
eve api show app proj_xxx --env staging

eve api spec

Show cached API spec (OpenAPI/GraphQL).

FlagTypeDefaultDescription
--env <name>stringEnvironment name (optional filter)

Examples:

eve api spec app
eve api spec app proj_xxx --env staging

eve api refresh

Refresh cached API spec.

FlagTypeDefaultDescription
--env <name>stringEnvironment name (optional filter)

Examples:

eve api refresh app --env staging

eve api examples

Print curl templates from the cached API spec.

FlagTypeDefaultDescription
--env <name>stringEnvironment name (optional filter)

Examples:

eve api examples app
eve api examples app --env staging

eve api call

Call an API endpoint with Eve auth.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--env <name>stringEnvironment name (optional source)
--json <payload>stringJSON body inline or @file
--data <payload>stringAlias for --json (curl-style)
-d <payload>stringShorthand alias for --json
--jq <expr>stringFilter JSON output with jq
--graphql <query>stringGraphQL query inline or @file
--variables <json>stringJSON variables for GraphQL query
--token <token>stringOverride auth token
--print-curlbooleanfalsePrint curl command instead of executing

Examples:

eve api call app GET /notes --jq ".items"
eve api call app POST /notes --json '{"title":"Hello"}'
eve api call app POST /notes --data '{"title":"Hello"}'
eve api call graphql POST /graphql --graphql "{ notes { id } }"

eve api generate

Export the API OpenAPI spec from the server.

FlagTypeDefaultDescription
--out <dir>stringdocs/systemOutput directory

Examples:

eve api generate
eve api generate --out ./tmp/openapi

eve api diff

Diff generated OpenAPI spec against the repo copy.

FlagTypeDefaultDescription
--exit-codebooleanfalseExit non-zero when drift detected
--out <dir>stringdocs/systemDirectory containing expected spec

Examples:

eve api diff --exit-code

eve auth

Authenticate with Eve Horizon. Auth is optional for local development but required for cloud deployments. Credentials are stored globally per API URL.

eve auth <login|logout|status|whoami|bootstrap|sync|creds|token|mint|permissions>

eve auth login

Login via GitHub SSH challenge (default) or Supabase (legacy).

FlagTypeDefaultDescription
--email <email>stringProfile default_emailEmail address for SSH login
--user-id <id>stringUser id for SSH login
--ssh-key <path>stringProfile default_ssh_key, then ~/.ssh/id_ed25519Path to SSH private key
--ttl <days>numberServer configuredToken TTL in days (1-90)
--password <pass>stringSupabase password (triggers Supabase login)
--supabase-url <url>stringSupabase URL
--supabase-anon-key <key>stringSupabase anon key

Examples:

eve auth login --email user@example.com
eve auth login --email user@example.com --ttl 30
eve auth login # uses profile defaults if set
eve auth login --ssh-key ~/.ssh/id_rsa

eve auth logout

Clear stored credentials.

eve auth logout

eve auth status

Check authentication status.

eve auth status

eve auth whoami

Show current user info.

eve auth whoami

eve auth token

Print the current access token to stdout for sharing with reviewers or use in scripts.

FlagTypeDefaultDescription
--printbooleantrueExplicitly request token print (default behavior)

Examples:

eve auth token
TOKEN=$(eve auth token)
curl -H "Authorization: Bearer $(eve auth token)" https://api.example.com
eve auth token | pbcopy # Copy to clipboard

eve auth mint

Mint a user token (admin-only, no SSH login required).

FlagTypeDefaultDescription
--email <email>stringTarget user email (created if missing)
--org <org_id>stringOrg scope for membership and permission checks
--project <id>stringProject scope for membership and permission checks
--role <role>stringmemberRole to assign: member, admin
--ttl <days>numberServer configuredToken TTL in days (1-90)

Examples:

eve auth mint --email app-bot@example.com --org org_xxx
eve auth mint --email app-bot@example.com --project proj_xxx
eve auth mint --email app-bot@example.com --project proj_xxx --role admin
eve auth mint --email bot@example.com --org org_xxx --ttl 90

eve auth bootstrap

Bootstrap the first admin user with flexible security modes.

FlagTypeDefaultDescription
--email <email>stringAdmin email address (required for bootstrap)
--token <token>string$EVE_BOOTSTRAP_TOKENBootstrap token (required in secure mode)
--ssh-key <path>string~/.ssh/id_ed25519.pubPath to SSH public key
--display-name <name>stringDisplay name for the admin user
--statusbooleanfalseCheck bootstrap status instead of bootstrapping

Bootstrap modes (configured server-side via BOOTSTRAP_MODE):

  • auto-open — Token not required during initial window (default for new installs)
  • recovery — Like auto-open, but for disaster recovery scenarios
  • secure — Token always required (recommended for production)
  • closed — Bootstrap disabled (use database seeding instead)

Examples:

eve auth bootstrap --status
eve auth bootstrap --email admin@example.com
eve auth bootstrap --email admin@example.com --token secret123
EVE_BOOTSTRAP_TOKEN=secret123 eve auth bootstrap --email admin@example.com
eve auth bootstrap --email admin@example.com --ssh-key ~/.ssh/id_rsa.pub

eve auth sync

Extract OAuth tokens from host and set as Eve secrets.

FlagTypeDefaultDescription
--claudebooleanfalseOnly extract Claude/Anthropic tokens
--codexbooleanfalseOnly extract Codex/OpenAI tokens
--org <id>stringSet as org-level secrets
--project <id>stringSet as project-level secrets
--dry-runbooleanfalseShow what would be set without actually setting

Scope priority: --project > --org > user (default). Default scope is user-level, so credentials are available to all your jobs.

Examples:

eve auth sync                        # Sync to user-level (default)
eve auth sync --org org_xxx # Sync to org-level
eve auth sync --project proj_xxx # Sync to project-level
eve auth sync --dry-run # Preview without syncing

eve auth creds

Show local AI tool credentials (Claude Code, Codex/Code) without syncing.

FlagTypeDefaultDescription
--claudebooleanfalseOnly check Claude/Anthropic credentials
--codexbooleanfalseOnly check Codex/OpenAI credentials

Examples:

eve auth creds
eve auth creds --claude
eve auth creds --json

eve auth permissions

Show the permission matrix (which permissions each role has).

Examples:

eve auth permissions
eve auth permissions --json

eve build

Manage builds. Builds are first-class primitives for container image creation (specs, runs, artifacts).

eve build <subcommand> [options]

eve build create

Create a new build spec.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--ref <sha>stringGit SHA (required). Non-SHA refs resolve against the repo in --repo-dir or cwd.
--manifest-hash <hash>stringManifest hash (required)
--services <list>stringComma-separated service names to build
--repo-dir <path>stringcwdResolve --ref against this repo instead of cwd

Examples:

eve build create --ref 0123456789abcdef0123456789abcdef01234567 --manifest-hash mfst_123
eve build create --project proj_xxx --ref 0123456789abcdef0123456789abcdef01234567 \
--manifest-hash mfst_123 --services api,web
eve build create --project proj_xxx --ref main --repo-dir ./my-app --manifest-hash mfst_123

eve build list

List build specs for a project.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--limit <n>numberNumber of results
--offset <n>numberSkip first n results

Examples:

eve build list
eve build list --project proj_xxx --limit 20

eve build show

Show build spec details.

eve build show build_xxx

eve build run

Start a build run for an existing build spec.

eve build run build_xxx

eve build runs

List runs for a build spec.

FlagTypeDefaultDescription
--limit <n>numberNumber of results
--offset <n>numberSkip first n results

Examples:

eve build runs build_xxx

eve build logs

Show build logs.

FlagTypeDefaultDescription
--run <id>stringLatestSpecific run ID

Examples:

eve build logs build_xxx
eve build logs build_xxx --run brun_yyy

eve build artifacts

List build artifacts (images produced).

eve build artifacts build_xxx

eve build diagnose

Show full build state (spec, runs, artifacts, logs).

eve build diagnose build_xxx

eve build cancel

Cancel an active build run.

eve build cancel build_xxx

eve chat

Chat tooling for gateway testing.

eve chat <subcommand> [options]

eve chat simulate

Simulate an inbound chat message.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--provider <name>stringslackProvider name
--team-id <id>stringSlack team ID
--channel-id <id>stringChannel ID
--user-id <id>stringUser ID
--thread-key <key>stringThread key override
--metadata <json>stringExtra metadata JSON

Examples:

eve chat simulate --project proj_xxx --team-id T123 --text "hello"

eve db

Inspect and query environment databases with Eve auth + RLS.

eve db <subcommand> [options]

eve db schema

Show database schema for an environment.

FlagTypeDefaultDescription
--env <name>stringEnvironment name
--url <postgres-url>stringDirect Postgres connection
--project <id>stringProfile defaultProject ID

Examples:

eve db schema --env staging
eve db schema --url postgres://app:secret@localhost:5432/myapp

eve db rls

Show RLS policies or scaffold helper SQL.

FlagTypeDefaultDescription
--env <name>stringEnvironment name (required for inspect mode)
--with-groupsbooleanfalseGenerate app.current_group_ids()/app.has_group() helper SQL (init mode)
--out <path>stringdb/rls/helpers.sqlOutput file for init mode
--forcebooleanfalseOverwrite output file when it already exists

Examples:

eve db rls --env staging
eve db rls init --with-groups

eve db sql

Run parameterized SQL as the calling user.

FlagTypeDefaultDescription
--env <name>stringEnvironment name
--url <postgres-url>stringDirect Postgres connection
--sql <statement>stringSQL to run (inline)
--file <path>stringRead SQL from file
--params <json>stringJSON array/object of parameters
--writebooleanfalseAllow writes (requires db.write scope)

Examples:

eve db sql --env staging --sql "select * from notes"
eve db sql --url postgres://app:secret@localhost:5432/myapp --sql "select 1"
eve db sql --env staging --file ./query.sql --params "[1]"

eve db migrate

Apply pending migrations.

eve db migrate --env staging
eve db migrate --url postgres://app:secret@localhost:5432/myapp

eve db migrations

List applied migrations.

eve db migrations --env <name>|--url <postgres-url> [--project <id>]

eve db reset

Reset schema and optionally re-apply migrations.

eve db reset --env <name>|--url <postgres-url> --force [--no-migrate] [--project <id>]

eve db wipe

Alias for reset with --no-migrate.

eve db wipe --env <name>|--url <postgres-url> --force [--project <id>]

eve docs

Manage org documents (versioned).

eve docs <subcommand> [options]

eve docs write

Create or update an org document.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--path <path>stringDocument path (required)
--file <path>stringRead content from file
--stdinbooleanfalseRead content from stdin
--project <id>stringProject ID to associate
--metadata <json>stringDocument metadata JSON
--review-in <dur>stringSet review_due from now (e.g., 30d)
--review-due <iso>stringSet explicit review_due timestamp
--expires-in <dur>stringSet expires_at from now (e.g., 14d)
--expires-at <iso>stringSet explicit expires_at timestamp
--lifecycle-status <s>stringLifecycle status override

Examples:

eve docs write --org org_xxx --path /pm/features/FEAT-123.md --file ./feat.md
eve docs write --org org_xxx --path /agents/reviewer/memory/learnings/auth.md \
--file ./auth.md --review-in 30d

eve docs read

Read a document (optionally pinned to a version).

eve docs read --org <org_id> --path <doc_path> [--version <n>]

Examples:

eve docs read --org org_xxx --path /pm/features/FEAT-123.md --version 3

eve docs show

Show document metadata (verbose includes version info).

eve docs show --org <org_id> --path <doc_path> [--verbose]

eve docs list

List documents by path prefix.

eve docs list --org <org_id> [--path <prefix>]

Full-text search documents.

eve docs search --org <org_id> --query <text> [--limit <n>] [--mode text|semantic|hybrid]

eve docs stale

List stale documents by review_due age.

eve docs stale --org <org_id> [--overdue-by 7d] [--prefix <path>] [--limit <n>]

Examples:

eve docs stale --org org_xxx --overdue-by 7d

eve docs review

Mark a document reviewed and set next review date.

eve docs review --org <org_id> --path <doc_path> --next-review <duration|iso>

Examples:

eve docs review --org org_xxx --path /agents/reviewer/memory/learnings/auth.md --next-review 30d

eve docs versions

List document versions.

eve docs versions --org <org_id> --path <doc_path> [--limit <n>] [--offset <n>]

Examples:

eve docs versions --org org_xxx --path /pm/features/FEAT-123.md

eve docs query

Structured metadata query.

eve docs query --org <org_id> [--path-prefix <prefix>] --where "metadata.foo eq bar"

Examples:

eve docs query --org org_xxx --where "metadata.feature_status in draft,review"

eve docs delete

Delete a document.

eve docs delete --org <org_id> --path <doc_path>

eve env

Manage environments for projects. Environments are deployment targets (staging, production, test).

eve env <subcommand> [options]

eve env list

List environments for a project.

FlagTypeDefaultDescription
<project>stringProfile defaultProject ID or slug

Examples:

eve env list
eve env list proj_xxx

eve env show

Show details of an environment.

eve env show proj_xxx staging
eve env show my-project production

eve env create

Create an environment.

FlagTypeDefaultDescription
<name>stringEnvironment name (e.g., staging, production, test)
--type <type>stringEnvironment type: persistent or temporary (required)
--namespace <ns>stringK8s namespace (optional)
--db-ref <ref>stringDatabase reference (optional)
--project <id>stringProfile defaultProject ID

Examples:

eve env create staging --type=persistent
eve env create test --type=persistent --namespace=eve-test

eve env deploy

Deploy to an environment.

FlagTypeDefaultDescription
<env>stringEnvironment name
--ref <sha>stringGit SHA (choose one: --ref or --release-tag)
--release-tag <tag>stringDeploy an existing release by tag
--directbooleanfalseBypass pipeline and do direct deploy
--inputs <json>stringJSON inputs for the deployment
--image-tag <tag>stringUse a specific image tag for deploy (direct only)
--repo-dir <path>stringcwdResolve --ref against this repo instead of cwd
--skip-preflightbooleanfalseSkip deploy image preflight checks
--project <id>stringProfile defaultProject ID or slug
--watchbooleantruePoll deployment status until ready
--timeout <seconds>number120Watch timeout in seconds

Examples:

eve env deploy staging --ref 0123456789abcdef0123456789abcdef01234567
eve env deploy staging --release-tag v1.2.3
eve env deploy staging --ref 0123456789abcdef0123456789abcdef01234567 --direct
eve env deploy staging --ref main --repo-dir ./my-app

eve env rollback

Roll back an environment to a known release.

FlagTypeDefaultDescription
<env>stringEnvironment name
--release <ref>stringRelease ID, release tag, or "previous"
--project <id>stringProfile defaultProject ID
--skip-preflightbooleanfalseSkip deploy image preflight checks

Examples:

eve env rollback staging --release previous
eve env rollback staging --release rel_xxx --project proj_xxx

eve env reset

Reset an environment (cancel runs, teardown workloads, redeploy release).

FlagTypeDefaultDescription
<env>stringEnvironment name
--release <ref>stringCurrent releaseOptional release override
--project <id>stringProfile defaultProject ID
--forcebooleanfalseRequired for non-production persistent envs
--danger-reset-productionbooleanfalseRequired for production envs
--skip-preflightbooleanfalseSkip deploy image preflight checks

Examples:

eve env reset staging --force
eve env reset production --danger-reset-production --release v1.2.3

eve env recover

Analyze environment issues and suggest the next recovery command.

eve env recover proj_xxx staging

eve env diagnose

Diagnose environment deployments (k8s-only).

FlagTypeDefaultDescription
<project>stringProject ID or slug
<env>stringEnvironment name
--events <n>numberLimit number of recent events

Examples:

eve env diagnose proj_xxx staging
eve env diagnose proj_xxx staging --events 20

eve env services

Show per-service pod status summary (k8s-only).

eve env services proj_xxx staging

eve env logs

Fetch logs for a service in an environment (k8s-only).

FlagTypeDefaultDescription
<project>stringProject ID or slug
<env>stringEnvironment name
<service>stringService name from manifest
--since <seconds>numberSeconds since now
--tail <n>numberTail line count
--grep <text>stringFilter lines containing text
--pod <name>stringSpecific pod name
--container <name>stringSpecific container name
--previousbooleanfalseUse previous container logs
--all-podsbooleanfalseFetch logs for all matching pods

Examples:

eve env logs proj_xxx staging api --tail 200
eve env logs proj_xxx staging api --since 3600 --grep ERROR
eve env logs proj_xxx staging api --all-pods

eve env delete

Delete an environment.

FlagTypeDefaultDescription
<name>stringEnvironment name to delete
--project <id>stringProfile defaultProject ID
--forcebooleanfalseSkip confirmation prompt
--danger-delete-productionbooleanfalseRequired for production envs

Examples:

eve env delete test
eve env delete staging --project=proj_xxx
eve env delete old-env --force

eve event

Emit and inspect events. Apps use this to participate in the Event Ecosystem.

eve event <subcommand> [options]

eve event list

List events for a project.

FlagTypeDefaultDescription
<project>stringProfile defaultProject ID or slug
--type <type>stringFilter by event type (e.g., github.push, app.deploy.complete)
--source <source>stringFilter by source (e.g., github, cron, app)
--status <status>stringFilter by status: pending, processed, failed
--limit <n>numberNumber of results
--offset <n>numberSkip first n results

Examples:

eve event list
eve event list --type app.deploy.complete --source app

eve event show

Show event details.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID

Examples:

eve event show evt_xxx
eve event show evt_xxx --project proj_yyy

eve event emit

Emit an event to trigger pipelines or notify other services.

FlagTypeDefaultDescription
--project <id>stringProject ID (required)
--type <type>stringEvent type (e.g., app.build.complete)
--source <source>stringEvent source (e.g., app, ci, manual)
--env <name>stringEnvironment name
--branch <branch>stringGit branch reference
--sha <sha>stringGit commit SHA
--payload <json>stringJSON payload with event data

Examples:

eve event emit --project proj_xxx --type app.build.complete --source app
eve event emit --project proj_xxx --type deploy.finished --source ci \
--env production --payload '{"version":"1.2.3"}'

eve fs

Manage org filesystem sync links, events, and diagnostics.

eve fs sync <subcommand> [options]

eve fs sync

Org filesystem sync operations.

eve fs sync <init|status|logs|pause|resume|disconnect|mode|conflicts|resolve|doctor> [options]
SubcommandFlags
init--org <id> --local <path> [--mode two-way|push-only|pull-only]
status--org <id>
logs--org <id> [--after <seq>] [--limit <n>] [--follow]
pause--org <id> [--link <link_id>]
resume--org <id> [--link <link_id>]
disconnect--org <id> [--link <link_id>]
mode--org <id> --set <two-way|push-only|pull-only> [--link <link_id>]
conflicts--org <id> [--open-only]
resolve--org <id> --conflict <id> --strategy <pick-remote|pick-local|manual>
doctor--org <id>

Examples:

eve fs sync init --org org_xxx --local ~/Eve/acme --mode two-way
eve fs sync status --org org_xxx
eve fs sync logs --org org_xxx --follow
eve fs sync mode --org org_xxx --set pull-only
eve fs sync doctor --org org_xxx

eve harness

Inspect available harnesses, variants, and auth status.

eve harness <subcommand> [options]

eve harness list

List available harnesses.

FlagTypeDefaultDescription
--capabilitiesbooleanfalseShow model/reasoning capability hints

Examples:

eve harness list
eve harness list --capabilities

eve harness get

Get harness details and auth requirements.

eve harness get mclaude

eve init

Initialize a new Eve Horizon project from a template. Downloads the starter template, strips git history, initializes a fresh repo, and installs skills. After init, start your AI coding agent and run the eve-new-project-setup skill to complete configuration.

FlagTypeDefaultDescription
[directory]string.Target directory
--template <url>stringhttps://github.com/incept5/eve-horizon-starterTemplate repository URL
--branch <branch>stringmainBranch to use
--skip-skillsbooleanfalseSkip automatic skill installation

Examples:

eve init
eve init my-project
eve init my-project --template https://github.com/myorg/my-template
eve init . --branch develop

eve integrations

Manage chat integrations (Slack) for an organization.

eve integrations <subcommand> [options]

eve integrations list

List integrations for an org.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID

eve integrations slack

Connect a Slack workspace (stub OAuth).

FlagTypeDefaultDescription
--org <id>stringOrganization ID
--team-id <id>stringSlack team ID
--token <token>stringSlack access token (stored in tokens_json)
--tokens-json <json>stringRaw tokens_json payload
--status <status>stringactiveIntegration status

Examples:

eve integrations list --org org_xxx
eve integrations slack connect --org org_xxx --team-id T123 --token xoxb-...

eve integrations test

Test an integration.

eve integrations test <integration_id>

eve job

Manage jobs. Jobs are units of work executed by AI agents against a project's repo.

Phase lifecycle: idea > backlog > ready > active > review > done (or cancelled). Jobs default to ready phase, making them immediately schedulable.

eve job <subcommand> [options]

eve job create

Create a new job.

Core options:

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--description <text>stringWork description/prompt (required)
--title <text>stringAuto-generatedTitle
--parent <id>stringParent job ID (for sub-jobs)
--type <type>stringtaskIssue type: task, bug, feature, epic, chore
--priority <0-4>number2Priority P0-P4
--phase <phase>stringreadyInitial phase
--review <type>stringnoneReview requirement: none, human, agent
--labels <a,b,c>stringComma-separated labels
--assignee <id>stringAssign to agent/user
--defer-until <date>stringHide until date (ISO 8601)
--due-at <date>stringDeadline (ISO 8601)
--env <name>stringEnvironment name for persistent execution
--execution-mode <mode>stringExecution mode: persistent, ephemeral

Harness selection:

FlagTypeDefaultDescription
--harness <name>stringPreferred harness, e.g., mclaude
--profile <name>stringHarness profile name
--variant <name>stringHarness variant preset
--model <name>stringModel override for harness
--reasoning <level>stringReasoning effort: low, medium, high, x-high

Scheduling hints:

FlagTypeDefaultDescription
--worker-type <type>stringWorker type preference
--permission <policy>stringPermission policy: default, auto_edit, yolo
--timeout <seconds>numberExecution timeout
--resource-class <rc>stringCompute SKU (e.g., job.c1, job.c2)

Inline execution:

FlagTypeDefaultDescription
--claimbooleanfalseCreate and immediately claim the job
--agent <id>string$EVE_AGENT_IDAgent ID for claim

Git controls:

FlagTypeDefaultDescription
--git-ref <ref>stringTarget ref (branch, tag, or SHA)
--git-ref-policy <policy>stringauto, env, project_default, explicit
--git-branch <branch>stringBranch to create/checkout
--git-create-branch <mode>stringnever, if_missing, always
--git-commit <policy>stringnever, manual, auto, required
--git-commit-message <text>stringCommit message template
--git-push <policy>stringnever, on_success, required
--git-remote <remote>stringoriginRemote to push to

Workspace options:

FlagTypeDefaultDescription
--workspace-mode <mode>stringjobjob, session, isolated
--workspace-key <key>stringWorkspace key for session mode

Examples:

eve job create --description "Fix the login bug in auth.ts"
eve job create --description "Add dark mode" --priority 1 --harness mclaude
eve job create --parent MyApp-abc123 --description "Implement tokens" --claim
eve job create --description "Feature branch work" \
--git-branch feature/new-api --git-push on_success

eve job list

List jobs in a project.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--allbooleanfalseAdmin mode: list across projects
--org <id>stringOrg filter for --all
--phase <phase>stringFilter by phase
--assignee <id>stringFilter by assignee
--priority <n>numberFilter by priority
--since <time>stringFilter jobs created after time (e.g., 1h, 30m, 2d, or ISO timestamp)
--stuckbooleanfalseShow only jobs stuck in active phase (no progress for 5+ min)
--stuck-minutes <n>number5Minutes threshold for stuck detection
--limit <n>number50Number of results
--offset <n>numberSkip first n results

Examples:

eve job list --phase active
eve job list --since 1h
eve job list --stuck
eve job list --all --org org_xxx

eve job ready

Show schedulable jobs (ready phase, not blocked, not deferred).

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--limit <n>number10Number of results

eve job blocked

Show jobs blocked by dependencies.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID

eve job show

Get job details.

FlagTypeDefaultDescription
--verbosebooleanfalseInclude attempt details, exit codes, durations

Examples:

eve job show MyApp-abc123
eve job show MyApp-abc123 --verbose

eve job current

Get the current job context (defaults to $EVE_JOB_ID).

FlagTypeDefaultDescription
--treebooleanfalseRender job hierarchy instead of JSON

Examples:

eve job current
eve job current MyApp-abc123 --tree

eve job diagnose

Comprehensive job debugging (state, attempts, timeline, logs, recommendations).

eve job diagnose MyApp-abc123

eve job tree

Show job hierarchy (parent + children).

eve job tree MyApp-abc123

eve job update

Update job fields.

FlagTypeDefaultDescription
--phase <phase>stringTransition phase (validated)
--priority <n>numberSet priority (0-4)
--assignee <id>stringSet assignee
--title <text>stringUpdate title
--description <text>stringUpdate description
--labels <a,b,c>stringSet labels
--defer-until <date>stringSet defer date
--due-at <date>stringSet due date
--review <type>stringSet review requirement
--git-ref <ref>stringTarget ref
--git-ref-policy <policy>stringauto, env, project_default, explicit
--git-branch <branch>stringBranch to create/checkout
--git-create-branch <mode>stringnever, if_missing, always
--git-commit <policy>stringnever, manual, auto, required
--git-commit-message <text>stringCommit message template
--git-push <policy>stringnever, on_success, required
--git-remote <remote>stringoriginRemote to push to
--workspace-mode <mode>stringjobjob, session, isolated
--workspace-key <key>stringWorkspace key for session mode

Examples:

eve job update MyApp-abc123 --git-branch feature/work --git-push on_success
eve job update MyApp-abc123 --workspace-mode session --workspace-key session:123

eve job close

Mark job as done.

FlagTypeDefaultDescription
--reason <text>stringCompletion reason
eve job close MyApp-abc123 --reason "Completed"

eve job cancel

Mark job as cancelled.

FlagTypeDefaultDescription
--reason <text>stringCancellation reason
eve job cancel MyApp-abc123 --reason "Superseded by new approach"

eve job dep

Manage job dependencies.

SubcommandDescription
add <from> <to>Add dependency: from depends on to
remove <from> <to>Remove dependency
list <job-id>Show dependencies and dependents

Examples:

eve job dep add MyApp-abc123 MyApp-def456
eve job dep list MyApp-abc123

eve job claim

Claim a job for execution (creates attempt, transitions to active).

FlagTypeDefaultDescription
--agent <id>string$EVE_AGENT_ID or cli-userAgent identifier
--harness <name>stringHarness to use (overrides job harness)
tip

This is typically called by the scheduler or by agents creating sub-jobs. For normal workflows, jobs are auto-scheduled when ready.

eve job release

Release a claimed job (ends attempt, returns to ready).

FlagTypeDefaultDescription
--agent <id>string$EVE_AGENT_ID or cli-userAgent identifier
--reason <text>stringRelease reason

eve job attempts

List execution attempts for a job.

eve job attempts MyApp-abc123

eve job logs

View execution logs for a job attempt.

FlagTypeDefaultDescription
--attempt <n>numberLatestAttempt number
--after <seq>numberReturn logs after sequence number

eve job submit

Submit job for review.

FlagTypeDefaultDescription
--summary <text>stringSubmission summary (required)
--agent-id <id>stringcli-userAgent ID

eve job approve

Approve a job in review.

FlagTypeDefaultDescription
--comment <text>stringApproval comment
--reviewer-id <id>stringcli-userReviewer ID

eve job reject

Reject a job in review (creates new attempt).

FlagTypeDefaultDescription
--reason <text>stringRejection reason (required)
--reviewer-id <id>stringcli-userReviewer ID

eve job result

Get job execution result.

FlagTypeDefaultDescription
--format <mode>stringtextOutput format: text, json, full
--attempt <n>numberLatestAttempt number

Examples:

eve job result MyApp-abc123

eve job wait

Wait for job completion, polling until done.

FlagTypeDefaultDescription
--timeout <seconds>number300Max wait time
--quietbooleanfalseSuppress progress output
--verbosebooleanfalseShow phase/status transitions
--jsonbooleanfalseOutput JSON summary

Examples:

eve job wait MyApp-abc123
eve job wait MyApp-abc123 --timeout 600

eve job follow

Stream job logs in real-time (SSE).

FlagTypeDefaultDescription
--rawbooleanfalseShow raw log entries
--no-resultbooleanfalseDon't fetch final result when done

Examples:

eve job follow MyApp-abc123

eve job watch

Combined status polling + log streaming.

eve job watch MyApp-abc123

eve job runner-logs

Stream runner pod logs (kubectl required).

eve job runner-logs MyApp-abc123

eve job batch

Create a batch job graph from a JSON definition.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--file <path>stringPath to JSON batch definition (required)
--jsonbooleanfalseOutput raw JSON response

Examples:

eve job batch --project proj_xxx --file batch.json
eve job batch --file batch.json --json

eve job batch-validate

Validate a batch job graph definition without creating jobs.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--file <path>stringPath to JSON batch definition (required)
--jsonbooleanfalseOutput raw JSON response

Examples:

eve job batch-validate --project proj_xxx --file batch.json

eve kv

Manage agent KV state with optional TTL.

eve kv <set|get|list|mget|delete> [options]

eve kv set

Set a KV value.

eve kv set --org <org_id> --agent <slug> --key <key> --value <json-or-string> [--namespace <ns>] [--ttl <seconds>]

eve kv get

Get a KV value.

eve kv get --org <org_id> --agent <slug> --key <key> [--namespace <ns>]

eve kv list

List keys in a namespace.

eve kv list --org <org_id> --agent <slug> [--namespace <ns>] [--limit <n>]

eve kv mget

Batch get keys.

eve kv mget --org <org_id> --agent <slug> --keys a,b,c [--namespace <ns>]

eve kv delete

Delete a KV value.

eve kv delete --org <org_id> --agent <slug> --key <key> [--namespace <ns>]

Examples:

eve kv set --org org_xxx --agent reviewer --key last_commit \
--value '"abc123"' --ttl 86400
eve kv mget --org org_xxx --agent reviewer --keys last_commit,focus_area

eve local

Local development environment management. Manages a local k3d Kubernetes cluster running the Eve platform. Requires Docker Desktop; k3d and kubectl are auto-managed by the CLI.

eve local <up|down|status|reset|logs|health> [options]

eve local up

Create/prepare local cluster and deploy Eve services.

FlagTypeDefaultDescription
--skip-deploybooleanfalseCreate cluster only, skip deploy step
--skip-healthbooleanfalseSkip waiting for API health
--timeout <sec>number300Health wait timeout in seconds
--version <tag>stringlatestPlatform image version
--verbosebooleanfalsePrint detailed command output

Examples:

eve local up
eve local up --version 0.1.70
eve local up --skip-deploy
eve local up --timeout 600

eve local down

Stop local stack resources, or destroy cluster entirely.

FlagTypeDefaultDescription
--destroybooleanfalseDelete k3d cluster and persistent data
--forcebooleanfalseSkip confirmation prompts

Examples:

eve local down
eve local down --destroy --force

eve local status

Show cluster state, service readiness, and URLs.

FlagTypeDefaultDescription
--watchbooleanfalseRefresh every 5 seconds
--jsonbooleanfalseMachine-readable JSON output

Examples:

eve local status
eve local status --watch
eve local status --json

eve local reset

Destroy and recreate local stack.

FlagTypeDefaultDescription
--forcebooleanfalseSkip confirmation prompts
eve local reset --force

eve local logs

Stream or dump logs from local stack services.

FlagTypeDefaultDescription
[service]stringapi, orchestrator, worker, gateway, agent-runtime, auth, postgres, mailpit, sso
--followbooleanfalseFollow logs in real time
--tail <n>number50Show last n lines
--since <duration>stringShow logs since duration (e.g., 5m, 1h)

Examples:

eve local logs
eve local logs api --follow
eve local logs worker --tail 200

eve local health

Quick health check (exit code 0 when healthy).

Examples:

eve local health
eve local health --json

eve manifest

Validate project manifests for schema and required secrets.

eve manifest <subcommand> [options]

eve manifest validate

Validate a manifest (schema + secrets).

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--path <path>string.eve/manifest.yamlPath to manifest
--latestbooleanfalseValidate latest synced manifest instead of local file
--validate-secretsbooleanfalseValidate required secrets (from manifest)
--strictbooleanfalseFail validation if required secrets are missing

Examples:

eve manifest validate
eve manifest validate --project proj_xxx
eve manifest validate --latest --project proj_xxx

eve memory

Manage canonical agent memory namespaces backed by org docs.

eve memory <set|get|list|delete|search> [options]

eve memory set

Create or update a memory entry.

eve memory set --org <org_id> (--agent <slug>|--shared) --category <name> --key <key> (--file <path>|--stdin|--content <text>)

eve memory get

Read a memory entry by key.

eve memory get --org <org_id> (--agent <slug>|--shared) --key <key> [--category <name>]

eve memory list

List memory entries by namespace/category.

eve memory list --org <org_id> (--agent <slug>|--shared) [--category <name>] [--tags a,b] [--limit <n>]

eve memory delete

Delete a memory entry.

eve memory delete --org <org_id> (--agent <slug>|--shared) --category <name> --key <key>

Search memory across agent/shared namespaces.

eve memory search --org <org_id> --query <text> [--agent <slug>] [--limit <n>]

Examples:

eve memory set --org org_xxx --agent reviewer --category learnings \
--key auth-retry --file ./finding.md --tags auth,security
eve memory set --org org_xxx --shared --category conventions \
--key api-style --file ./style.md
eve memory list --org org_xxx --agent reviewer --category learnings
eve memory search --org org_xxx --query "authentication retry"

eve migrate

Migration helpers for upgrading config formats.

eve migrate <subcommand>

eve migrate skills-to-packs

Generate AgentPack config from skills.txt.

Examples:

eve migrate skills-to-packs
eve migrate skills-to-packs > packs-fragment.yaml

eve ollama

Manage inference targets, installs, models, aliases, and platform-managed availability.

eve ollama <subcommand> [options]

eve ollama targets

List inference targets.

eve ollama targets [--scope-kind <platform|org|project>] [--scope-id <id>] [--json]

eve ollama target

Manage a single target (add, rm, test).

SubcommandFlags
add--name <name> --base-url <url> [--scope-kind <kind>] [--scope-id <id>] [--target-type <type>] [--transport-profile <profile>] [--api-key-ref <secret-ref>]
rm<target-id>
test<target-id>

eve ollama models

List canonical inference models.

eve ollama models [--json]

eve ollama model

Create canonical inference model.

eve ollama model add --canonical <id> --provider <name> --slug <provider-model-slug>

eve ollama aliases

List alias routes.

eve ollama aliases [--scope-kind <kind>] [--scope-id <id>] [--json]

eve ollama alias

Set or remove alias route.

SubcommandFlags
set--alias <name> --target-id <target-id> --model-id <model-id> [--scope-kind <kind>] [--scope-id <id>]
rm--alias <name> [--scope-kind <kind>] [--scope-id <id>]

eve ollama installs

List target-model installs.

eve ollama installs [--target-id <id>] [--model-id <id>] [--json]

eve ollama install

Install or remove model availability on a target.

SubcommandFlags
add--target-id <target-id> --model-id <model-id> [--requires-warm-start true|false] [--min-target-capacity <n>]
rm--target-id <target-id> --model-id <model-id>

eve ollama assignments

Inspect target assignment/load and queue depth.

eve ollama assignments [--scope-kind <platform|org|project>] [--scope-id <id>] [--json]

eve ollama route-policies

List route policies by scope.

eve ollama route-policies [--scope-kind <platform|org|project>] [--scope-id <id>] [--json]

eve ollama route-policy

Set or remove a route policy.

SubcommandFlags
set--scope-kind <kind> [--scope-id <id>] --preferred-target-id <target-id> [--fallback-to-alias-target true|false]
rm--scope-kind <kind> [--scope-id <id>]

eve ollama managed

List, publish, and unpublish platform-managed catalog models.

SubcommandFlags
list[--json]
publish--canonical <id> --provider <name> --slug <provider_model_slug> --target-id <id> [--requires-warm-start true|false] [--enabled true|false] [--json]
unpublish--canonical <id> [--json]

Examples:

eve ollama target add --name local --base-url http://localhost:11434 \
--scope-kind platform --target-type external_ollama
eve ollama model add --canonical gpt-oss:120b --provider ollama --slug gpt-oss:120b
eve ollama install add --target-id itgt_xxx --model-id imod_xxx --min-target-capacity 1
eve ollama assignments --scope-kind platform
eve ollama managed list
eve ollama managed publish --canonical deepseek-r1 --provider ollama \
--slug deepseek-r1:latest --target-id itgt_xxx
eve ollama managed unpublish --canonical deepseek-r1

eve org

Manage organizations. Organizations group projects and users.

eve org <subcommand> [options]

eve org list

List all organizations.

FlagTypeDefaultDescription
--limit <n>number10Number of results
--offset <n>numberSkip first n results
--include-deletedbooleanfalseInclude soft-deleted orgs

eve org get

Get organization details.

eve org get org_xxx

eve org ensure

Create org if it doesn't exist, or return existing.

FlagTypeDefaultDescription
--slug <slug>stringOrganization slug (used in URLs)
--id <id>stringOrganization ID override (optional)

Examples:

eve org ensure "My Company" --slug myco

eve org update

Update organization.

eve org update <org_id> [--name <name>] [--deleted <bool>]

eve org delete

Soft-delete an organization.

eve org delete org_xxx

eve org members

Manage organization members (list, add, remove).

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--email <email>stringEmail for add
--role <role>stringmemberRole: member, admin, owner

Examples:

eve org members --org org_xxx
eve org members add user@example.com --role admin --org org_xxx
eve org members remove user_abc --org org_xxx

eve packs

Manage AgentPack lockfile and resolution.

eve packs <subcommand> [options]

eve packs status

Show resolved packs from lockfile, effective config stats, and drift detection.

FlagTypeDefaultDescription
--path <dir>stringcwdRepository root to inspect

Examples:

eve packs status
eve packs status --path ../my-repo

eve packs resolve

Resolve packs and merge configs (delegates to agents sync).

FlagTypeDefaultDescription
--dry-runbooleanfalsePreview resolution without writing lockfile
--path <dir>stringcwdRepository root to inspect

Examples:

eve packs resolve --dry-run
eve packs resolve

eve pipeline

Run and inspect pipelines defined in the project manifest.

eve pipeline <subcommand> [options]

eve pipeline list

List pipelines for a project.

FlagTypeDefaultDescription
<project>stringProfile defaultProject ID or slug

Examples:

eve pipeline list
eve pipeline list proj_xxx

eve pipeline show

Show pipeline definition.

eve pipeline show proj_xxx release
eve pipeline show my-project deploy

eve pipeline run

Run a pipeline.

FlagTypeDefaultDescription
--ref <sha>stringGit SHA (required). Non-SHA refs resolve against the repo in --repo-dir or cwd.
--env <env>stringTarget environment
--project <id>stringProfile defaultProject ID
--waitbooleanfalseWait for completion
--timeout <n>numberMax wait time (seconds)
--inputs <json>stringJSON inputs for the pipeline
--only <step>stringRun a single step (includes dependencies)
--repo-dir <path>stringcwdResolve --ref against this repo instead of cwd

Examples:

eve pipeline run deploy-test --ref 0123456789abcdef0123456789abcdef01234567 --env test
eve pipeline run deploy-test --ref 0123456789abcdef0123456789abcdef01234567 \
--env test --wait --timeout 120
eve pipeline run deploy-test --ref main --repo-dir ./my-app --env test

eve pipeline runs

List runs for a pipeline.

FlagTypeDefaultDescription
--limit <n>number10Number of results
--offset <n>numberSkip first n results

Examples:

eve pipeline runs deploy-test
eve pipeline runs deploy-test proj_xxx

eve pipeline show-run

Show a pipeline run.

eve pipeline show-run deploy-test prun_xxx

eve pipeline approve

Approve a pipeline run awaiting approval.

eve pipeline approve prun_xxx

eve pipeline cancel

Cancel a pipeline run.

eve pipeline cancel prun_xxx --reason "superseded"

eve pipeline logs

Show logs for a pipeline run.

FlagTypeDefaultDescription
--step <name>stringShow logs for a specific step only
--follow (-f)booleanfalseStream live logs via SSE
--project <id>stringProfile defaultProject ID

Examples:

eve pipeline logs deploy-test prun_xxx
eve pipeline logs deploy-test prun_xxx --step build
eve pipeline logs deploy-test prun_xxx --follow

eve profile

Manage repo-local CLI profiles. Profiles store defaults (API URL, org, project) so you don't have to specify them on every command.

Profiles live in .eve/profile.yaml inside the repo, so each project keeps its own defaults and switching profiles won't affect other checkouts.

eve profile <subcommand> [options]

eve profile list

List all profiles.

eve profile list

eve profile show

Show profile details.

eve profile show
eve profile show prod

eve profile use

Switch active profile (repo-local).

FlagTypeDefaultDescription
--org <id>stringSet org override
--project <id>stringSet project override
--api-url <url>stringSet API URL override
--clearbooleanfalseRemove local .eve/profile.yaml (clears all profiles)

Examples:

eve profile use staging --org org_xxx --project proj_yyy
eve profile use --clear

eve profile create

Create a new named profile (repo-local).

FlagTypeDefaultDescription
--api-url <url>stringAPI base URL
--org <id>stringDefault organization ID
--project <id>stringDefault project ID
--harness <name>stringDefault harness (e.g., mclaude:fast)
--supabase-url <url>stringSupabase URL (for cloud auth)
--supabase-anon-key <key>stringSupabase anon key
--default-email <email>stringDefault email for auth login
--default-ssh-key <path>stringDefault SSH key path for auth login

Examples:

eve profile create local --api-url http://localhost:4801
eve profile create prod --api-url https://api.example.com --org org_xxx

eve profile set

Update profile settings (repo-local).

FlagTypeDefaultDescription
--org <id>stringDefault organization ID
--project <id>stringDefault project ID
--api-url <url>stringAPI base URL
--harness <name>stringDefault harness
--supabase-url <url>stringSupabase URL
--supabase-anon-key <key>stringSupabase anon key
--default-email <email>stringDefault email for auth login
--default-ssh-key <path>stringDefault SSH key path for auth login

Examples:

eve profile set --org org_xxx --project proj_yyy
eve profile set staging --org org_xxx --project proj_yyy
eve profile set --default-email user@example.com

eve profile remove

Remove a named profile (repo-local).

eve profile remove staging

eve project

Manage projects. Projects link a git repo to an organization for running jobs.

eve project <subcommand> [options]

eve project list

List projects in an organization.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--limit <n>numberNumber of results
--offset <n>numberSkip first n results

eve project get

Get project details.

eve project get proj_xxx

eve project ensure

Create project if it doesn't exist, or return existing.

FlagTypeDefaultDescription
--name <name>stringProject name (required)
--repo-url <url>stringGit repository URL (optional, can be set later)
--org <id>stringProfile defaultOrganization ID
--branch <branch>stringmainDefault branch
--slug <slug>stringShort memorable slug (4-8 chars, e.g., MyProj)
--forcebooleanfalseRe-clone repo even if project exists

Examples:

eve project ensure --name my-app --slug MyApp
eve project ensure --name my-app --slug MyApp --repo-url https://github.com/org/repo
eve project ensure --name my-app --repo-url file:///path/to/repo --force

eve project update

Update project.

eve project update <project_id> [--name <name>] [--repo-url <url>] [--branch <branch>] [--deleted <bool>]

eve project sync

Sync manifest from local .eve/manifest.yaml to Eve API.

FlagTypeDefaultDescription
<project>stringProfile defaultProject ID
--path <path>string.eve/manifest.yamlPath to manifest
--validate-secretsbooleanfalseValidate manifest required secrets
--strictbooleanfalseFail sync if required secrets are missing

Examples:

eve project sync
eve project sync proj_xxx
eve project sync --path ./custom-manifest.yaml

eve project status

Show deployment status across all profiles with revision info, service URLs, and deploy age.

FlagTypeDefaultDescription
--profile <name>stringShow only this profile
--env <name>stringShow only this environment
--jsonbooleanfalseMachine-readable JSON output

Examples:

eve project status
eve project status --profile staging
eve project status --env sandbox --json

eve project members

Manage project members (list, add, remove).

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--email <email>stringEmail for add
--role <role>stringmemberRole: member, admin, owner

Examples:

eve project members --project proj_xxx
eve project members add user@example.com --role admin --project proj_xxx
eve project members remove user_abc --project proj_xxx

eve release

Manage and inspect releases.

eve release <subcommand> [options]

eve release resolve

Look up a release by tag and output its details.

FlagTypeDefaultDescription
<tag>stringRelease tag (e.g., v1.2.3)
--project <id>stringProfile default or .eve/manifest.yamlProject ID
--jsonbooleanfalseOutput as JSON

Examples:

eve release resolve v1.2.3
eve release resolve v1.2.3 --project proj_xxx
eve release resolve v1.2.3 --json

eve resources

Resolve resource URIs into content snapshots.

eve resources <subcommand> [options]

eve resources resolve

Resolve a resource URI (optionally without content).

eve resources resolve <uri> [--no-content]

eve resources ls

List resources under a URI prefix.

eve resources ls <uri-prefix>

eve resources cat

Output resource content.

eve resources cat <uri>

Examples:

eve resources resolve org_docs:/pm/features/FEAT-123.md
eve resources ls org_docs:/pm/features/
eve resources cat job_attachments:/myproj-a3f2dd12/plan.md

Unified org search across memory/docs/threads/attachments/events.

eve search --org <org_id> --query <text> [--sources memory,docs,threads,attachments,events] [--limit <n>] [--agent <slug>]

Examples:

eve search --org org_xxx --query "authentication retry"
eve search --org org_xxx --query "authentication retry" \
--sources memory,docs,threads --agent reviewer

eve secrets

Manage secrets at system/org/user/project scope. Values are never returned in plaintext.

eve secrets <subcommand> [options]

eve secrets set

Create or update a secret value.

FlagTypeDefaultDescription
--systembooleanfalseSystem scope (admin only)
--project <id>stringProfile defaultProject ID
--org <id>stringOrganization ID
--user <id>stringUser ID
--type <type>stringenv_var, file, github_token, ssh_key

eve secrets list

List secrets (metadata only).

FlagTypeDefaultDescription
--systembooleanfalseSystem scope (admin only)
--project <id>stringProfile defaultProject ID
--org <id>stringOrganization ID
--user <id>stringUser ID

eve secrets show

Show a masked secret value.

FlagTypeDefaultDescription
--systembooleanfalseSystem scope (admin only)
--project <id>stringProfile defaultProject ID
--org <id>stringOrganization ID
--user <id>stringUser ID

eve secrets delete

Delete a secret.

FlagTypeDefaultDescription
--systembooleanfalseSystem scope (admin only)
--project <id>stringProfile defaultProject ID
--org <id>stringOrganization ID
--user <id>stringUser ID

eve secrets import

Import env entries from an env file.

FlagTypeDefaultDescription
--file <path>string.envPath to env file
--systembooleanfalseSystem scope (admin only)
--project <id>stringProfile defaultProject ID
--org <id>stringOrganization ID
--user <id>stringUser ID

eve secrets validate

Validate manifest-required secrets for a project.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--keys <k1,k2>stringLatest manifestExplicit keys to validate

eve secrets ensure

Ensure safe secrets exist at project scope.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--keys <k1,k2>stringKeys to ensure (allowlist only)

eve secrets export

Export safe secrets for external configuration.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--keys <k1,k2>stringKeys to export (allowlist only)
--jsonbooleanfalseJSON output

Examples:

eve secrets set GITHUB_TOKEN ghp_xxx --project proj_xxx --type github_token
eve secrets show GITHUB_TOKEN --project proj_xxx
eve secrets validate --project proj_xxx
eve secrets ensure --project proj_xxx --keys GITHUB_WEBHOOK_SECRET
eve secrets export --project proj_xxx --keys GITHUB_WEBHOOK_SECRET

eve skills

Install skills from a URL, GitHub repo, or skills.txt manifest.

eve skills <subcommand> [source]

eve skills install

Install skill packs from a source or skills.txt manifest.

FlagTypeDefaultDescription
[source]stringURL, GitHub repo (owner/repo), or local path
--skip-installedbooleanfalseSkip skills that are already installed

Examples:

eve skills install https://github.com/org/skillpack
eve skills install org/skillpack
eve skills install ./local/skills
eve skills install # install from skills.txt
eve skills install --skip-installed

eve supervise

Long-poll for child job events and coordination messages. Used by lead agents to stay alive and react.

FlagTypeDefaultDescription
[job-id]string$EVE_JOB_IDParent job ID
--timeout <seconds>number30 (max: 120)Max wait in seconds
--since <cursor>stringISO cursor for incremental polling
--jsonbooleanfalseOutput as JSON

Examples:

eve supervise
eve supervise MyApp-abc123 --timeout 60
eve supervise --since 2026-02-08T19:00:00Z --json

eve system

System administration and health checks (admin scope required for most commands).

eve system <subcommand> [options]

eve system health

Quick health check of the API.

eve system health
eve system health --json

eve system status

Show comprehensive system status (admin only).

eve system status
eve system status --json

eve system jobs

List all jobs across all projects (admin view).

FlagTypeDefaultDescription
--org <id>stringFilter by organization ID
--project <id>stringFilter by project ID
--phase <phase>stringFilter by job phase
--limit <n>number50Number of results
--offset <n>numberSkip first n results

Examples:

eve system jobs
eve system jobs --phase active
eve system jobs --project proj_xxx

eve system envs

List all environments across all projects (admin view).

FlagTypeDefaultDescription
--org <id>stringFilter by organization ID
--project <id>stringFilter by project ID
--limit <n>number50Number of results
--offset <n>numberSkip first n results

Examples:

eve system envs
eve system envs --project proj_xxx

eve system logs

Fetch recent logs for a system service (admin only).

FlagTypeDefaultDescription
--tail <n>number100Number of log lines

Services: api, orchestrator, worker, agent-runtime, postgres

Examples:

eve system logs api
eve system logs agent-runtime --tail 200
eve system logs worker --tail 200

eve system pods

List pods across the cluster (admin only).

eve system pods

eve system events

List recent cluster events (admin only).

FlagTypeDefaultDescription
--limit <n>number50Max number of events

Examples:

eve system events
eve system events --limit 20

eve system config

Show deployment configuration summary (system admins only).

eve system config

eve system settings

Get or set system settings (admin only).

SubcommandDescription
get <key>Get specific setting
set <key> <value>Update setting value

Examples:

eve system settings
eve system settings get some-key
eve system settings set some-key some-value

eve system orchestrator

Manage orchestrator concurrency settings.

SubcommandDescription
statusShow concurrency status
set-concurrency <n>Set concurrency limit

Examples:

eve system orchestrator status
eve system orchestrator set-concurrency 8

eve thread

Manage org-scoped coordination threads for agent team communication.

eve thread <subcommand> [options]

eve thread create

Create an org thread.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--key <key>stringThread key (required)

Examples:

eve thread create --org org_xxx --key "project:review"

eve thread list

List threads in an org.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--scope <scope>stringFilter by scope (e.g., org)
--key-prefix <pfx>stringFilter by key prefix

Examples:

eve thread list --org org_xxx
eve thread list --org org_xxx --key-prefix "project:"

eve thread show

Show thread details.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID

Examples:

eve thread show thr_xxx --org org_xxx

eve thread messages

List messages in a coordination thread.

FlagTypeDefaultDescription
--since <duration>stringTime window: 5m, 1h, 30s, 2d, or ISO timestamp
--limit <n>numberMax messages to return
--jsonbooleanfalseOutput as JSON

Examples:

eve thread messages thr_xxx
eve thread messages thr_xxx --since 5m
eve thread messages thr_xxx --since 1h --limit 20 --json

eve thread post

Post a message to a coordination thread.

FlagTypeDefaultDescription
--body <text>stringMessage body (required)
--actor-type <type>stringuserActor type
--actor-id <id>stringActor identifier
--job-id <id>stringAssociated job ID

Examples:

eve thread post thr_xxx --body "hello team"
eve thread post thr_xxx --body '{"kind":"directive","body":"focus on auth"}'

eve thread follow

Follow a thread in real-time (polls every 3s).

eve thread follow thr_xxx

eve thread distill

Distill thread messages into durable docs/memory.

FlagTypeDefaultDescription
--to <path>stringExplicit destination doc path
--agent <slug>stringAgent namespace for inferred path
--category <name>stringMemory category: learnings, decisions, runbooks, context, conventions
--key <key>stringMemory key for inferred path
--prompt <text>stringDistillation prompt override
--autobooleanfalseSkip if below threshold
--threshold <n>numberMinimum message count for --auto
--interval <dur>stringAdvisory distillation interval metadata

Examples:

eve thread distill thr_xxx --org org_xxx \
--to /agents/shared/memory/decisions/sprint-42.md
eve thread distill thr_xxx --org org_xxx \
--agent reviewer --category decisions --key sprint-42

eve webhooks

Manage outbound webhook subscriptions and delivery logs.

eve webhooks <subcommand> [options]

eve webhooks create

Create a webhook subscription.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--url <url>stringDelivery endpoint URL (required)
--events <list>stringComma-separated event types to subscribe to (required)
--secret <secret>stringHMAC signing secret, min 16 chars (required)
--filter <json>stringOptional JSON filter object
--project <id>stringScope webhook to a specific project

Examples:

eve webhooks create --org org_xxx \
--url https://example.com/hook \
--events system.job.completed \
--secret my-secret-key-1234
eve webhooks create --org org_xxx \
--url https://example.com/hook \
--events "system.job.*" \
--secret my-secret-key-1234 \
--filter '{"agent_slug":"pm-*"}'

eve webhooks list

List webhook subscriptions for an org.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID

eve webhooks show

Show webhook subscription details.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID

Examples:

eve webhooks show wh_xxx --org org_xxx

eve webhooks deliveries

List delivery attempts for a webhook subscription.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--limit <n>number50Max results

eve webhooks test

Send a test webhook event.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID

eve webhooks delete

Delete a webhook subscription.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID

eve webhooks enable

Re-enable a disabled webhook subscription.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID

eve webhooks replay

Replay webhook deliveries for a subscription.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID
--from-event <id>stringEvent ID to start replay from (inclusive)
--to <iso>stringNowISO timestamp for end of replay window
--max-events <n>number5000 (max: 10000)Max events to scan
--dry-runbooleanfalseReturn summary without enqueuing deliveries

Examples:

eve webhooks replay wh_xxx --org org_xxx --from-event evt_123
eve webhooks replay wh_xxx --org org_xxx \
--to 2026-02-12T12:00:00Z --max-events 2000 --dry-run

eve webhooks replay-status

Fetch webhook replay status.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization ID

Examples:

eve webhooks replay-status wh_xxx rpl_xxx --org org_xxx

eve workflow

Inspect and invoke workflows defined in the project manifest.

eve workflow <subcommand> [options]

eve workflow list

List workflows for a project.

FlagTypeDefaultDescription
<project>stringProfile defaultProject ID or slug

Examples:

eve workflow list
eve workflow list proj_xxx

eve workflow show

Show workflow definition.

eve workflow show proj_xxx qa-review
eve workflow show my-project release-notes

eve workflow run

Invoke a workflow (fire-and-forget).

FlagTypeDefaultDescription
--input <json>stringInput payload (JSON string)
--project <id>stringProfile defaultProject ID

Examples:

eve workflow run qa-review --input '{"task":"audit"}'
eve workflow run proj_xxx release-notes --input '{"tag":"v1.2.3"}'

eve workflow invoke

Invoke a workflow and wait for result.

FlagTypeDefaultDescription
--input <json>stringInput payload (JSON string)
--no-waitbooleanfalseReturn immediately without waiting
--project <id>stringProfile defaultProject ID

Examples:

eve workflow invoke qa-review --input '{"task":"audit"}'
eve workflow invoke proj_xxx release-notes --no-wait

eve workflow logs

Show logs for a workflow job.

eve workflow logs job_abc123