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
--helpboolean—Show 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>string—User to check (mutually exclusive with --service-account/--group)
--service-account <id>string—Service account to check (mutually exclusive with --user/--group)
--group <group_id>string—Group to check directly (mutually exclusive with --user/--service-account)
--permission <perm>string—Permission to check (e.g., chat:write, jobs:admin)
--project <project_id>string—Optional project scope for the check
--resource-type <type>string—Optional resource type: orgfs, orgdocs, envdb
--resource <id>string—Optional resource id/path (required when --resource-type used)
--action <action>string—Optional 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-account sa_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>string—User to explain (mutually exclusive with --service-account/--group)
--service-account <id>string—Service account to explain
--group <group_id>string—Group to explain directly
--permission <perm>string—Permission to explain
--project <project_id>string—Optional project scope
--resource-type <type>string—Optional resource type: orgfs, orgdocs, envdb
--resource <id>string—Optional resource id/path
--action <action>string—Optional 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-account sa_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-account <id>|--group <id>)

Examples:

eve access memberships --org org_xxx --user user_abc
eve access memberships --org org_xxx --service-account sa_abc
eve access memberships --org org_xxx --group grp_abc

eve access roles​

List, create, or inspect platform roles.

eve access roles <list|show|create|update|delete> [--org <org_id>] [flags]
FlagTypeDefaultDescription
--org <org_id>stringProfile defaultScope organization
--name <name>string—Role name
--description <text>string—Human-readable role description

Examples:

eve access roles list --org org_xxx
eve access roles create --org org_xxx --name reviewer --description "Can review jobs"
eve access roles show reviewer --org org_xxx

eve access bind​

Bind a role to a principal.

FlagTypeDefaultDescription
--org <org_id>stringProfile defaultTarget organization
--role <name>string—Role name
--user <user_id>string—Bind to a user
--service-account <id>string—Bind to a service account
--group <group_id>string—Bind to an access group

Examples:

eve access bind --org org_xxx --role reviewer --user user_abc
eve access bind --org org_xxx --role ci-bot --service-account sa_xyz

eve access unbind​

Remove a principal-to-role binding.

FlagTypeDefaultDescription
--org <org_id>stringProfile defaultTarget organization
--role <name>string—Role name
--user <user_id>string—Unbind from user
--service-account <id>string—Unbind from service account
--group <group_id>string—Unbind from access group

Examples:

eve access unbind --org org_xxx --role reviewer --user user_abc
eve access unbind --org org_xxx --role ci-bot --service-account sa_xyz

eve access bindings​

List effective and explicit bindings for a role or principal.

FlagTypeDefaultDescription
--org <org_id>stringProfile defaultTarget organization
--role <name>string—Optional role filter
--service-account <id>string—Optional principal filter
--user <id>string—Optional principal filter
--group <id>string—Optional principal filter

Examples:

eve access bindings --org org_xxx
eve access bindings --org org_xxx --role reviewer

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 users​

List platform users with org and project memberships (system admin).

eve admin users [--json]

Output includes user email, display name, admin status, org memberships, project memberships, and creation date.

Examples:

eve admin users
eve admin users --json

eve admin invite​

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

FlagTypeDefaultDescription
--email <email>string—User email address (required)
--github <username>string—GitHub 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 admin access-requests​

List or act on pending self-service access requests.

eve admin access-requests <list|approve|reject> [request_id] [options]
FlagTypeDefaultDescription
--org <org_id>stringProfile defaultOrganization scope
--request-id <id>string—Request identifier for approve/reject
--limit <n>number20Max items
--offset <n>number0Page offset
--reason <text>string—Rejection reason

Examples:

eve admin access-requests list --org org_xxx
eve admin access-requests approve req_xxx
eve admin access-requests reject req_xxx --reason "Invalid identity proof"

eve admin pricing​

View model pricing and exchange-rate settings (admin scope).

eve admin pricing [--org <org_id>]

eve admin balance​

Show organization or platform wallet balances (admin scope).

eve admin balance [--org <org_id>]

eve admin usage​

View usage statistics for billing and quota analysis (admin scope).

eve admin usage [--org <org_id>] [--window <duration>] [--json]

eve admin receipts​

List or fetch billing receipts for an organization (admin scope).

eve admin receipts --org org_xxx [--limit <n>] [--offset <n>]

eve admin models​

Manage platform model enablement and provider configuration.

eve admin models <list|enable|disable> [flags]

Examples:

eve admin models list
eve admin models enable claude-3-7-sonnet
eve admin models disable gpt-4.1-nano

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>string—Alias 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, and sync pack-defined workflows through the manifest endpoint when present.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--ref <ref>string—Git 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

When x-eve.packs are resolved, eve agents sync now also uploads merged workflow definitions (workflows) and merged x_eve fragments (for example profiles) to the project manifest.

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>string—Environment 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>string—Environment 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>string—Environment 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>string—Environment name (optional filter)

Examples:

eve api refresh app --env staging

eve api examples​

Print curl templates from the cached API spec.

FlagTypeDefaultDescription
--env <name>string—Environment 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>string—Environment name (optional source)
--json <payload>string—JSON body inline or @file
--data <payload>string—Alias for --json (curl-style)
-d <payload>string—Shorthand alias for --json
--jq <expr>string—Filter JSON output with jq
--graphql <query>string—GraphQL query inline or @file
--variables <json>string—JSON variables for GraphQL query
--token <token>string—Override 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>string—User id for SSH login
--ssh-key <path>stringProfile default_ssh_keyPath to SSH private key (when omitted, the CLI auto-discovers keys in ~/.ssh/, preferring id_ed25519, then id_ecdsa, then id_rsa)
--ttl <days>numberServer configuredToken TTL in days (1-90)
--password <pass>string—Supabase password (triggers Supabase login)
--supabase-url <url>string—Supabase URL
--supabase-anon-key <key>string—Supabase 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

If auto-discovery is used, the CLI prints which SSH key succeeded.

eve auth logout​

Clear stored credentials.

eve auth logout

eve auth status​

Check authentication status.

eve auth status

eve auth request-access​

Submit or check self-service access requests.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization to request access for
--email <email>string—Requesting user email
--ssh-key <path>string~/.ssh/id_ed25519.pubSSH public key for bootstrap
--nostr-pubkey <hex>string—Nostr identity key
--role <role>stringmemberRequested organization role
--status <request_id>string—Poll request status (optional)
--waitbooleanfalsePoll until request is processed

Examples:

eve auth request-access --org org_xxx --email you@example.com
eve auth request-access --org org_xxx --ssh-key ~/.ssh/id_ed25519.pub
eve auth request-access --org org_xxx --nostr-pubkey 9a...
eve auth request-access --status req_xxx

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>string—Target user email (created if missing)
--org <org_id>string—Org scope for membership and permission checks
--project <id>string—Project 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 create-service-account​

Create a service account for CI/CD automation.

FlagTypeDefaultDescription
--org <org_id>string—Organization for the service account
--name <name>string—Service account name
--role <role>stringmemberService account role
--description <text>string—Optional description

Examples:

eve auth create-service-account --org org_xxx --name "ci-bot"
eve auth create-service-account --org org_xxx --name "release-bot" --role admin

eve auth list-service-accounts​

List service accounts for an organization.

FlagTypeDefaultDescription
--org <org_id>stringProfile defaultOrganization to list from
--limit <n>number100Maximum rows
--offset <n>number0Paging offset
--include-disabledbooleanfalseInclude disabled service accounts

Examples:

eve auth list-service-accounts --org org_xxx
eve auth list-service-accounts --org org_xxx --limit 20

eve auth revoke-service-account​

Revoke and delete a service account.

FlagTypeDefaultDescription
--org <org_id>stringProfile defaultOrganization containing account
--service-account-id <id>string—Service account ID
--forcebooleanfalseSkip confirmation prompt

Examples:

eve auth revoke-service-account --org org_xxx --service-account-id sa_xxx
eve auth revoke-service-account --service-account-id sa_xxx --force

eve auth bootstrap​

Bootstrap the first admin user with flexible security modes.

FlagTypeDefaultDescription
--email <email>string—Admin 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>string—Display 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>string—Set as org-level secrets
--project <id>string—Set 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 user​

Look up user profiles and memberships.

eve user <show> [user_id|me] [--json]

eve user show​

Show a user profile with org and project memberships. Defaults to me when no user_id is provided.

FlagTypeDefaultDescription
--jsonbooleanfalseOutput machine-readable JSON

Examples:

eve user show me
eve user show usr_abc123
eve user show me --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>string—Git SHA (required). Non-SHA refs resolve against the repo in --repo-dir or cwd.
--manifest-hash <hash>string—Manifest hash (required)
--services <list>string—Comma-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>number—Number of results
--offset <n>number—Skip 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>number—Number of results
--offset <n>number—Skip first n results

Examples:

eve build runs build_xxx

eve build logs​

Show build logs.

FlagTypeDefaultDescription
--run <id>stringLatestSpecific run ID
--followbooleanfalseStream logs in real time

Examples:

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

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>string—Project ID (legacy simulate path)
--provider <name>stringslackProvider name
--team-id <id>string—Slack team ID
--channel-id <id>string—Channel ID
--user-id <id>string—User ID
--thread-id <id>string—Thread ID override (--thread-key alias supported)
--external-email <email>string—External identity email hint for routing
--dedupe-key <key>string—Deterministic deduplication key
--event-type <type>string—Provider event type override
--metadata <json>string—Legacy metadata JSON (external_email supported)

Examples:

eve chat simulate --team-id T123 --text "hello"
eve chat simulate --team-id T123 --text "hello" --external-email user@example.com
eve chat simulate --project proj_xxx --team-id T123 --text "hello" # legacy path

When --project is set, the CLI uses the legacy project simulate endpoint. Without --project, it uses the gateway simulate endpoint (/gateway/providers/simulate).


Inspect cross-project app links. App links let one Eve project consume another project's declared APIs or event stream through manifest-managed grants, subscriptions, injected tokens, and optional CLI images.

eve app-links <subcommand> [options]

List exports, subscriptions, and grants for a project.

eve app-links list --project proj_consumer
eve app-links list proj_consumer --json

Dry-run the app-link declarations in a manifest before syncing.

FlagTypeDefaultDescription
--project <id>stringcontextConsumer project
--file <path>string.eve/manifest.yamlManifest to evaluate
--env <name>string—Environment-specific plan
--jsonbooleanfalseJSON output
eve app-links plan --project proj_consumer --file .eve/manifest.yaml

Explain why a subscription is ready, missing, revoked, or invalid.

eve app-links explain --project proj_consumer --alias billing
eve app-links explain --consumer proj_consumer --producer proj_api --api public

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>string—Environment name
--url <postgres-url>string—Direct 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>string—Environment 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>string—Environment name
--url <postgres-url>string—Direct Postgres connection
--sql <statement>string—SQL to run (inline)
--file <path>string—Read SQL from file
--params <json>string—JSON 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] [--skip-snapshot] [--project <id>]

eve db wipe​

Alias for reset with --no-migrate.

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

eve db destroy​

Destroy a managed environment database.

eve db destroy --env <name> --force [--skip-snapshot] [--project <id>]

eve db snapshot​

Create, inspect, delete, or download database snapshots.

Snapshot create:

eve db snapshot --env <name> [--retention <policy>] [--project <id>]

Snapshot show:

eve db snapshot show <snapshot_id> [--env <name>] [--project <id>]

Snapshot delete:

eve db snapshot delete <snapshot_id> [--env <name>] --force [--project <id>]

Snapshot download URL:

eve db snapshot download <snapshot_id> --output <path> [--env <name>] [--project <id>]

eve db snapshots​

List snapshots for an environment.

FlagTypeDefaultDescription
--env <name>string—Environment name
--status <state>string—Filter snapshots by status
--limit <n>integerAPI defaultMaximum snapshots to return
--project <id>stringProfile defaultProject ID
eve db snapshots --env <name> [--status <state>] [--limit <n>] [--project <id>]

eve db restore​

Restore an environment database from a snapshot.

FlagTypeDefaultDescription
--env <name>string—Target environment to restore
--snapshot <id>string—Snapshot ID to restore from
--forcebooleanfalseRequired confirmation flag
--source-env <name>string—Optional source environment for cross-env restore
--source-project <id>string—Optional source project for cross-project restore
--skip-safety-snapshotbooleanfalseSkip pre-restore safety snapshot
--project <id>stringProfile defaultProject ID
eve db restore --env <name> --snapshot <id> --force [--source-env <name>] [--source-project <id>] [--skip-safety-snapshot] [--project <id>]

eve db backup-status​

Show backup schedule and snapshot protection settings for an environment.

eve db backup-status --env <name> [--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>string—Document path (required)
--file <path>string—Read content from file
--stdinbooleanfalseRead content from stdin
--project <id>string—Project ID to associate
--metadata <json>string—Document metadata JSON
--review-in <dur>string—Set review_due from now (e.g., 30d)
--review-due <iso>string—Set explicit review_due timestamp
--expires-in <dur>string—Set expires_at from now (e.g., 14d)
--expires-at <iso>string—Set explicit expires_at timestamp
--lifecycle-status <s>string—Lifecycle 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>] [--tree] [--json]

Full-text search documents.

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

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 docs patch​

Surgical document edits using search/replace operations.

eve docs patch --org <org_id> --path <doc_path> --replace "search" "replacement"
eve docs patch --org <org_id> --path <doc_path> --append "content"
eve docs patch --org <org_id> --path <doc_path> --insert-after "anchor" "content"
eve docs patch --org <org_id> --path <doc_path> --operations '<json>'
FlagTypeDefaultDescription
--replace <search> <replace>string—Search and replace text
--append <content>string—Append content to end of document
--insert-after <anchor> <content>string—Insert content after anchor text
--operations <json>string—Raw JSON array of patch operations

Simple flags and --operations are mutually exclusive. Returns the updated document with current_version and content_hash.

Examples:

eve docs patch --org org_xxx --path /wiki/state.yaml --replace "health: green" "health: amber"
eve docs patch --org org_xxx --path /wiki/state.yaml --insert-after "signals:" $'\n - paging active'

eve docs diff​

Show changes between document versions.

eve docs diff --org <org_id> --path <doc_path> [--from <n>] [--to <n>] [--unified]
FlagTypeDefaultDescription
--from <n>numberlatest-1Starting version number
--to <n>numberlatestEnding version number
--unifiedbooleanfalseForce unified diff format
--jsonbooleanfalseMachine-readable output

Examples:

eve docs diff --org org_xxx --path /wiki/state.yaml                    # Latest vs previous
eve docs diff --org org_xxx --path /wiki/state.yaml --from 1 --to 5 # Specific range

eve docs list --tree​

Render document hierarchy as a tree.

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

--tree renders a human-readable directory tree. --tree --json returns nested JSON nodes with name, type (directory/document), and path (for documents).

Examples:

eve docs list --org org_xxx --path /wiki --tree
# └── wiki/
# ├── operating-model/
# │ ├── mission.md
# │ └── outcomes/
# │ └── first-deploy.md
# └── world-model/
# └── state.yaml

eve docs search (enhanced)​

Search now supports path prefix filtering and context lines.

FlagTypeDefaultDescription
--path <prefix>string—Restrict results to path prefix
--context <n>number—Include N surrounding lines from each match

Examples:

eve docs search --org org_xxx --query "error rate" --path /world-model --context 3

eve docs write-dir​

Bulk write documents from a local directory.

eve docs write-dir --org <org_id> --source <dir> [--path-prefix <prefix>]

Maps each file in --source to a document path under --path-prefix. Hidden files (dotfiles) are skipped.

eve docs sync​

Synchronize a local directory with org documents.

eve docs sync --org <org_id> --source <dir> --path-prefix <prefix> [--dry-run] [--delete]
FlagTypeDefaultDescription
--dry-runbooleanfalseReport changes without mutating
--deletebooleanfalseRemove remote docs not found locally

--delete is never the default — remote documents are only removed when explicitly requested. Always use --dry-run first.

eve docs watch​

Stream document change events as NDJSON.

eve docs watch --org <org_id> [--path <prefix>] [--since now|5m|<iso>] [--project <id>]

Polls the events API for system.doc.created, system.doc.updated, and system.doc.deleted events. Filters by --path prefix. Outputs one JSON object per line.

Examples:

eve docs watch --org org_xxx --path /world-model --since now
# {"type":"system.doc.updated","path":"/world-model/state.yaml","version":42,"updated_at":"...","content_hash":"..."}

eve cloud-fs​

Mount, browse, and search external cloud file systems connected through Eve integrations. Google Drive is the first supported provider.

eve cloud-fs <list|mount|unmount|show|update|ls|search> [options]
SubcommandPurpose
listList mounts for the current org, optionally filtered by project
mountCreate a provider folder mount
unmount / remove / deleteRemove a mount
showShow mount metadata and watch/index settings
updateChange label, access mode, or auto-index behavior
ls / browseBrowse files at a path
searchSearch files across mounted folders

Common flags:

FlagDescription
--org <id>Organization scope
--project <id>Project scope for project-level mounts or filtering
--provider <name>Provider for new mounts, for example google-drive
--folder-id <id>Provider folder ID to mount
--label <text>Human-readable mount label
--mode <mode>read_only, write_only, or read_write
--auto-index <bool>Whether files should be indexed into org docs
--mount <id>Mount ID for browse/search
eve cloud-fs list --org org_xxx
eve cloud-fs mount --org org_xxx --provider google-drive --folder-id 0ABxxx --label "Shared Drive"
eve cloud-fs ls /Reports --org org_xxx --mount cfm_xxx
eve cloud-fs search "Q4 report" --org org_xxx

eve domain​

Manage custom domains for Eve-deployed apps. Domains are declared in the manifest under x-eve.ingress.domains and registered during eve project sync.

eve domain <subcommand> [options]

Supported subcommands: list, verify, status, transfer, unbind, and remove.

eve domain list​

List custom domains for a project.

FlagTypeDefaultDescription
--projectstringcontextProject ID
--jsonbooleanfalseJSON output
eve domain list --project proj_xxx
# HOSTNAME SERVICE STATUS VERIFIED
# limelee.com web active 2026-03-28
# www.limelee.com web pending_dns -

eve domain verify​

Check DNS resolution and show activation status. If DNS is verified, the domain transitions toward active.

FlagTypeDefaultDescription
--projectstringcontextProject ID
eve domain verify limelee.com --project proj_xxx
# Domain: limelee.com
# Status: active
# ✓ Domain is active and serving traffic
# URL: https://limelee.com

When DNS isn't ready, shows instructions:

  • Apex domains (e.g., limelee.com): add an A record to the platform ingress IP
  • Subdomains (e.g., www.limelee.com): add a CNAME to the platform ingress hostname

eve domain status​

Show detailed domain information.

FlagTypeDefaultDescription
--projectstringcontextProject ID
eve domain status limelee.com --project proj_xxx
# Domain: limelee.com
# Status: active
# Service: web
# Environment: env_xxx
# Ingress: prod-web-cd-limelee-com
# Verified: 2026-03-28T10:15:00.000Z

eve domain transfer​

Move a hostname binding to another environment in the same project. The database ownership changes immediately; deploy the losing and winning environments to reconcile Kubernetes Ingress resources.

FlagTypeDefaultDescription
--to <env>string—Target environment
--projectstringcontextProject ID
--jsonbooleanfalseJSON output
eve domain transfer api.example.com --to staging --project proj_xxx

eve domain unbind​

Clear a hostname's environment binding without removing the domain record. The next deploy can claim it again according to the manifest.

FlagTypeDefaultDescription
--projectstringcontextProject ID
--jsonbooleanfalseJSON output
eve domain unbind api.example.com --project proj_xxx

eve domain remove​

Remove a custom domain. The K8s Ingress is garbage-collected on next deploy.

FlagTypeDefaultDescription
--projectstringcontextProject ID
--jsonbooleanfalseJSON output
eve domain remove www.limelee.com --project proj_xxx
# ✓ Removed custom domain: www.limelee.com

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>string—Environment name (e.g., staging, production, test)
--type <type>string—Environment type: persistent or temporary (required)
--namespace <ns>string—K8s namespace (optional)
--db-ref <ref>string—Database 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 suspend​

Suspend environment reconciliation and stop auto-deploys.

FlagTypeDefaultDescription
<env>string—Environment name
--project <id>stringProfile defaultProject ID

Examples:

eve env suspend staging

eve env resume​

Resume a suspended environment.

FlagTypeDefaultDescription
<env>string—Environment name
--project <id>stringProfile defaultProject ID

Examples:

eve env resume staging

eve env health​

Check environment readiness status without logs.

FlagTypeDefaultDescription
<project>string—Project ID or slug
<env>string—Environment name
--jsonbooleanfalseOutput machine-readable JSON

Examples:

eve env health proj_xxx staging
eve env health proj_xxx staging --json

eve env deploy​

Deploy to an environment.

FlagTypeDefaultDescription
<env>string—Environment name
--ref <sha>string—Git SHA (choose one: --ref or --release-tag)
--release-tag <tag>string—Deploy an existing release by tag
--directbooleanfalseBypass pipeline and do direct deploy
--inputs <json>string—JSON inputs for the deployment
--image-tag <tag>string—Use 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>string—Environment name
--release <ref>string—Release 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>string—Environment 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>string—Project ID or slug
<env>string—Environment name
--events <n>number—Limit 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>string—Project ID or slug
<env>string—Environment name
<service>string—Service name from manifest
--since <seconds>number—Seconds since now
--tail <n>number—Tail line count
--grep <text>string—Filter lines containing text
--pod <name>string—Specific pod name
--container <name>string—Specific 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>string—Environment 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 endpoint​

Register, inspect, and diagnose private endpoints backed by Tailscale. Endpoints make internal services reachable from the Eve cluster over a Tailscale connection.

eve endpoint <subcommand> [options]

eve endpoint add​

Register a new private endpoint.

FlagTypeDefaultDescription
--name <name>string—Endpoint name (required)
--tailscale-hostname <fqdn>string—Tailscale fully-qualified hostname (required)
--port <port>number—Port number 1-65535 (required)
--org <org_id>stringProfile defaultOrganization scope
--health-path <path>string—Health check path (use none to disable)

Examples:

eve endpoint add --name my-llm --tailscale-hostname my-host.ts.net --port 8080 --org org_xxx
eve endpoint add --name gpu-api --tailscale-hostname gpu.ts.net --port 443 --health-path /healthz

On success the command prints the cluster URL and a suggested eve secrets set command for wiring it into your services.

eve endpoint list​

List private endpoints for an org.

FlagTypeDefaultDescription
--org <org_id>stringProfile defaultOrganization scope

Examples:

eve endpoint list --org org_xxx

eve endpoint show​

Show details for a single endpoint.

FlagTypeDefaultDescription
--verbosebooleanfalseRun and display a live health check

Examples:

eve endpoint show my-llm --org org_xxx
eve endpoint show my-llm --org org_xxx --verbose

eve endpoint remove​

Remove a registered endpoint.

eve endpoint remove my-llm --org org_xxx

eve endpoint health​

Run a health check against a registered endpoint.

eve endpoint health my-llm --org org_xxx

eve endpoint diagnose​

Run diagnostics on an endpoint (connectivity, DNS resolution, health probe).

eve endpoint diagnose my-llm --org org_xxx

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>string—Filter by event type (e.g., github.push, app.deploy.complete)
--source <source>string—Filter by source (e.g., github, cron, app)
--status <status>string—Filter by status: pending, processed, failed
--limit <n>number—Number of results
--offset <n>number—Skip 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>string—Project ID (required)
--type <type>string—Event type (e.g., app.build.complete)
--source <source>string—Event source (e.g., app, ci, manual)
--env <name>string—Environment name
--ref-branch <branch>string—Git branch reference
--ref-sha <sha>string—Git commit SHA
--actor-type <type>stringuserActor kind (user, system, app)
--actor-id <id>string—Actor identifier
--dedupe-key <key>string—Idempotency key for deduplicating events
--mutation-id <id>string—External mutation identifier
--request-id <id>string—Upstream request identifier
--payload <json>string—JSON 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 --ref-branch main --payload '{"version":"1.2.3"}'

eve fs​

Manage org filesystem sync links, share links, public path prefixes, and diagnostics.

eve fs <sync|share|shares|revoke|publish|public-paths> [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] [--include <glob>] [--exclude <glob>] [--remote-path <path>] [--device-name <name>]
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 \
--include "docs/**" --exclude ".git/**" --device-name laptop-01
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 fs share​

Create a time-limited share URL for an org filesystem path.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization scope
--expires <duration>stringServer defaultExpiry duration (for example 1h, 7d)
--label <text>string—Human-readable label
--jsonbooleanfalseOutput full share payload as JSON

Examples:

eve fs share /test/scenario-26.md --org org_xxx --expires 1h
eve fs share /docs/roadmap.md --org org_xxx --label "External review"
eve fs share /docs/roadmap.md --org org_xxx --json

eve fs shares​

List active share tokens for an org.

eve fs shares --org org_xxx [--json]

eve fs revoke​

Revoke an active share token.

eve fs revoke <token> --org org_xxx [--json]

eve fs publish​

Publish a path prefix for tokenless public access.

FlagTypeDefaultDescription
--org <id>stringProfile defaultOrganization scope
--label <text>string—Human-readable label for the published prefix
--jsonbooleanfalseOutput result as JSON

Examples:

eve fs publish /test/ --org org_xxx --label "Public test area"
eve fs publish /assets/ --org org_xxx --json

eve fs public-paths​

List currently published public path prefixes.

eve fs public-paths --org org_xxx [--json]

eve github​

Configure and verify project-level GitHub webhook integration.

eve github <setup|status|test> [--project <id>]

eve github setup​

Generate or rotate webhook configuration for a project. Attempts to auto-create/update the webhook using gh when available; otherwise prints manual instructions.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--regeneratebooleanfalseRotate webhook secret

Examples:

eve github setup --project proj_xxx
eve github setup --project proj_xxx --regenerate

eve github status​

Show whether GitHub webhook integration is configured for the project.

eve github status --project proj_xxx

eve github test​

Emit a test GitHub event for trigger validation.

eve github test --project proj_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/eve-horizon/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 ingest​

Upload files for ingest processing and inspect ingest lifecycle records.

eve ingest <file>
eve ingest <create|list|show> [args] [options]

eve ingest create​

Create an ingest record, upload the file to the returned presigned URL, and confirm processing.

FlagTypeDefaultDescription
[file]string—Path to local file to ingest
--project <id>stringProfile defaultProject ID
--title <text>string—Optional user-facing title
--description <text>string—Optional description/context
--instructions <text>string—Optional processing guidance
--tags <a,b>string—Comma-separated tags
--mime-type <type>stringInferred from file extensionOverride MIME type
--source-channel <name>stringcliSource marker for downstream processing
--jsonbooleanfalseOutput response as JSON

eve ingest <file> is shorthand for eve ingest create <file>.

MIME types are inferred from file extension when --mime-type is not provided. Supported inference now covers:

  • Text: md, txt, csv, html, htm
  • Structured data: json, yaml, yml, xml
  • Documents: pdf, doc, docx, rtf
  • Images: png, jpg, jpeg, gif, webp, svg, tif, tiff
  • Audio: mp3, wav, m4a, aac, ogg, opus, flac, wma, amr, m4b, m4r, oga
  • Video: mp4, mkv, mov, avi, wmv, webm, flv, m4v, mpeg, mpg, 3gp, ogv

eve ingest list​

List ingest records for a project.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--status <status>string—Filter by ingest status
--limit <n>numberAPI defaultMax items
--offset <n>numberAPI defaultSkip first n items
--jsonbooleanfalseOutput response as JSON

eve ingest show​

Show details for a single ingest record.

FlagTypeDefaultDescription
[ingest_id]string—Ingest record ID
--project <id>stringProfile defaultProject ID
--jsonbooleanfalseOutput response as JSON

Examples:

eve ingest ./docs/spec.md
eve ingest create ./audio/meeting.mp3 --title "Weekly sync" --tags notes,meeting
eve ingest list --status processing
eve ingest show ing_abc123 --json

eve identity​

Identity linking helpers for external providers.

eve identity <link>

Create a link token for the current user and provider/org pair.

FlagTypeDefaultDescription
[provider]string—Provider name (currently slack)
--org <id>stringProfile defaultOrganization ID

Examples:

eve identity link slack --org org_xxx
eve identity link slack --org org_xxx --json

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​

Manage Slack integration setup (connect or install-url).

FlagTypeDefaultDescription
--org <id>string—Organization ID
--team-id <id>string—Slack team ID
--token <token>string—Slack access token (stored in tokens_json)
--tokens-json <json>string—Raw tokens_json payload
--status <status>stringactiveIntegration status
--ttl <duration>string—Expiry for install link (e.g., 24h, 7d, 3600)

The install-url subcommand generates a shareable, time-limited install link. The recipient does not need an Eve login -- they click the link and approve the Slack app. Use --ttl to control how long the link stays valid.

Examples:

eve integrations list --org org_xxx
eve integrations slack connect --org org_xxx --team-id T123 --token xoxb-...
eve integrations slack install-url --org org_xxx
eve integrations slack install-url --org org_xxx --ttl 7d

eve integrations test​

Test an integration.

eve integrations test <integration_id>

eve integrations update​

Patch integration settings with a single key=value entry.

FlagTypeDefaultDescription
<integration_id>string—Integration ID
--org <id>stringProfile defaultOrganization ID
--setting <key=value>string—Setting update (for example admin_channel_id=C12345)

Examples:

eve integrations update int_xxx --org org_xxx --setting admin_channel_id=C12345

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>string—Work description/prompt (required)
--title <text>stringAuto-generatedTitle
--parent <id>string—Parent 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>string—Comma-separated labels
--assignee <id>string—Assign to agent/user
--defer-until <date>string—Hide until date (ISO 8601)
--due-at <date>string—Deadline (ISO 8601)
--env <name>string—Environment name for persistent execution
--execution-mode <mode>string—Execution mode: persistent, ephemeral

Harness selection:

FlagTypeDefaultDescription
--harness <name>string—Preferred harness, e.g., mclaude
--profile <name>string—Harness profile name
--variant <name>string—Harness variant preset
--model <name>string—Model override for harness
--reasoning <level>string—Reasoning effort: low, medium, high, x-high

Scheduling hints:

FlagTypeDefaultDescription
--worker-type <type>string—Worker type preference
--permission <policy>string—Permission policy: default, auto_edit, yolo
--timeout <seconds>number—Execution timeout
--resource-class <rc>string—Compute 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>string—Target ref (branch, tag, or SHA)
--git-ref-policy <policy>string—auto, env, project_default, explicit
--git-branch <branch>string—Branch to create/checkout
--git-create-branch <mode>string—never, if_missing, always
--git-commit <policy>string—never, manual, auto, required
--git-commit-message <text>string—Commit message template
--git-push <policy>string—never, on_success, required
--git-remote <remote>stringoriginRemote to push to

Workspace options:

FlagTypeDefaultDescription
--workspace-mode <mode>stringjobjob, session, isolated
--workspace-key <key>string—Workspace 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>string—Org filter for --all
--phase <phase>string—Filter by phase
--assignee <id>string—Filter by assignee
--priority <n>number—Filter by priority
--since <time>string—Filter 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>number—Skip 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>string—Transition phase (validated)
--priority <n>number—Set priority (0-4)
--assignee <id>string—Set assignee
--title <text>string—Update title
--description <text>string—Update description
--labels <a,b,c>string—Set labels
--defer-until <date>string—Set defer date
--due-at <date>string—Set due date
--review <type>string—Set review requirement
--git-ref <ref>string—Target ref
--git-ref-policy <policy>string—auto, env, project_default, explicit
--git-branch <branch>string—Branch to create/checkout
--git-create-branch <mode>string—never, if_missing, always
--git-commit <policy>string—never, manual, auto, required
--git-commit-message <text>string—Commit message template
--git-push <policy>string—never, on_success, required
--git-remote <remote>stringoriginRemote to push to
--workspace-mode <mode>stringjobjob, session, isolated
--workspace-key <key>string—Workspace 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>string—Completion reason
eve job close MyApp-abc123 --reason "Completed"

eve job cancel​

Mark job as cancelled.

FlagTypeDefaultDescription
--reason <text>string—Cancellation 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>string—Harness 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>string—Release 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>number—Return logs after sequence number

eve job submit​

Submit job for review.

FlagTypeDefaultDescription
--summary <text>string—Submission summary (required)
--status <status>stringsucceededSubmission status: succeeded or failed
--result-json <json>stringnoneOptional structured result payload
--agent-id <id>stringcli-userAgent ID

eve job approve​

Approve a job in review.

FlagTypeDefaultDescription
--comment <text>string—Approval comment
--reviewer-id <id>stringcli-userReviewer ID

eve job reject​

Reject a job in review (creates new attempt).

FlagTypeDefaultDescription
--reason <text>string—Rejection 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>string—Path 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>string—Path 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
note

eve local up now handles public registry pulls more defensively: it attempts Docker auth for ECR Public automatically (via AWS CLI when available), retries rate-limited registry requests, and surfaces explicit auth guidance when image pulls fail with 401/403.

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]string—api, orchestrator, worker, gateway, agent-runtime, auth, postgres, mailpit, sso
--followbooleanfalseFollow logs in real time
--tail <n>number50Show last n lines
--since <duration>string—Show 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]

Standard categories: learnings, decisions, conventions, context, runbooks, user. The user category stores user-specific preferences and interaction history for personalized agent behavior.

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 org​

Manage organizations. Organizations group projects and users, including membership request workflows.

eve org <subcommand> [options]

eve org list​

List all organizations.

FlagTypeDefaultDescription
--limit <n>number10Number of results
--offset <n>number—Skip 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>string—Organization slug (used in URLs)
--id <id>string—Organization 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>string—Email 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 org membership-requests​

List, approve, or deny pending membership requests.

FlagTypeDefaultDescription
listsubcommand—List requests (--status <status> optional)
approve <request_id>subcommand—Approve request (--role optional, --email optional)
deny <request_id>subcommand—Deny request
--org <id>stringProfile defaultOrganization ID
--status <status>string—Filter list by status
--role <role>stringmemberApproval role (member or admin)
--email <email>string—Optional email to attach on approval

Examples:

eve org membership-requests list --org org_xxx
eve org membership-requests list --org org_xxx --status pending
eve org membership-requests approve req_xxx --org org_xxx --role admin
eve org membership-requests deny req_xxx --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.

Effective config stats include merged agents, teams, chat routes, and x_eve.profiles counts.

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>string—Git SHA (required). Non-SHA refs resolve against the repo in --repo-dir or cwd.
--env <env>string—Target environment
--project <id>stringProfile defaultProject ID
--waitbooleanfalseWait for completion
--timeout <n>number—Max wait time (seconds)
--inputs <json>string—JSON inputs for the pipeline
--only <step>string—Run 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>number—Skip 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>string—Show 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>string—Set org override
--project <id>string—Set project override
--api-url <url>string—Set 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>string—API base URL
--org <id>string—Default organization ID
--project <id>string—Default project ID
--harness <name>string—Default harness (e.g., mclaude:fast)
--supabase-url <url>string—Supabase URL (for cloud auth)
--supabase-anon-key <key>string—Supabase anon key
--default-email <email>string—Default email for auth login
--default-ssh-key <path>string—Default 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>string—Default organization ID
--project <id>string—Default project ID
--api-url <url>string—API base URL
--harness <name>string—Default harness
--supabase-url <url>string—Supabase URL
--supabase-anon-key <key>string—Supabase anon key
--default-email <email>string—Default email for auth login
--default-ssh-key <path>string—Default 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>number—Number of results
--offset <n>number—Skip 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>string—Project name (required)
--repo-url <url>string—Git repository URL (optional, can be set later)
--org <id>stringProfile defaultOrganization ID
--branch <branch>stringmainDefault branch
--slug <slug>string—Short 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>string—Show only this profile
--env <name>string—Show 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>string—Email 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 providers​

List registered AI providers, inspect provider details, and discover available models.

eve providers <list|show|models> [options]

eve providers list​

List all registered AI providers.

eve providers list
eve providers list --json

eve providers show​

Show details for a specific provider (base URL, auth configuration, harness mappings, discovery settings).

eve providers show anthropic
eve providers show openai --json

eve providers models​

Discover available models from a provider.

eve providers models anthropic
eve providers models openai --json

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>string—Release 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>string—Organization ID
--user <id>string—User ID
--type <type>string—env_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>string—Organization ID
--user <id>string—User ID

eve secrets show​

Show a masked secret value.

FlagTypeDefaultDescription
--systembooleanfalseSystem scope (admin only)
--project <id>stringProfile defaultProject ID
--org <id>string—Organization ID
--user <id>string—User ID

eve secrets delete​

Delete a secret.

FlagTypeDefaultDescription
--systembooleanfalseSystem scope (admin only)
--project <id>stringProfile defaultProject ID
--org <id>string—Organization ID
--user <id>string—User 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>string—Organization ID
--user <id>string—User 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>string—Keys to ensure (allowlist only)

eve secrets export​

Export safe secrets for external configuration.

FlagTypeDefaultDescription
--project <id>stringProfile defaultProject ID
--keys <k1,k2>string—Keys 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 pack definitions and additional sources.

eve skills <subcommand> [source]

eve skills install​

Install skills. When run without an explicit source, the command processes both pack-based and skills.txt-based skills:

  1. Install from x-eve.packs in .eve/manifest.yaml (validated against .eve/packs.lock.yaml).
  2. Install from skills.txt (handles additional sources such as external skillpacks and private-skills/ that packs do not include).
  3. When an explicit source argument is provided, install directly from that source.
FlagTypeDefaultDescription
[source]string—URL, GitHub repo (owner/repo), or local path
--skip-installedbooleanfalseSkip skills that are already installed (applies to skills.txt entries)

Examples:

eve skills install https://github.com/org/skillpack
eve skills install org/skillpack
eve skills install ./local/skills
eve skills install # install from x-eve.packs + 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>string—ISO 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.

If dependencies are degraded (for example database connectivity issues), this command can return a degraded status with diagnostic fields instead of a hard request failure.

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>string—Filter by organization ID
--project <id>string—Filter by project ID
--phase <phase>string—Filter by job phase
--limit <n>number50Number of results
--offset <n>number—Skip 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>string—Filter by organization ID
--project <id>string—Filter by project ID
--limit <n>number50Number of results
--offset <n>number—Skip 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>string—Thread 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>string—Filter by scope (e.g., org)
--key-prefix <pfx>string—Filter 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. Each message displays a delivery status indicator when available (delivered, pending, or failed with error detail).

FlagTypeDefaultDescription
--since <duration>string—Time window: 5m, 1h, 30s, 2d, or ISO timestamp
--limit <n>number—Max messages to return
--jsonbooleanfalseOutput as JSON (includes delivery_status, delivery_error, delivered_at fields)

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>string—Message body (required)
--actor-type <type>stringuserActor type
--actor-id <id>string—Actor identifier
--job-id <id>string—Associated 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 via SSE.

eve thread follow thr_xxx

eve thread distill​

Distill thread messages into durable docs/memory.

FlagTypeDefaultDescription
--to <path>string—Explicit destination doc path
--agent <slug>string—Agent namespace for inferred path
--category <name>string—Memory category: learnings, decisions, runbooks, context, conventions
--key <key>string—Memory key for inferred path
--prompt <text>string—Distillation prompt override
--autobooleanfalseSkip if below threshold
--threshold <n>number—Minimum message count for --auto
--interval <dur>string—Advisory 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>string—Delivery endpoint URL (required)
--events <list>string—Comma-separated event types to subscribe to (required)
--secret <secret>string—HMAC signing secret, min 16 chars (required)
--filter <json>string—Optional JSON filter object
--project <id>string—Scope 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>string—Event 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 traces​

Query request traces for a project. Use this when you have a request ID from logs, a trace ID from instrumentation, or you need recent error traces for a service or route.

eve traces query [--project <id>] [--service <name>] (--request-id <id>|--trace-id <id>|--since <duration>|--error|--route <route>) [--json]
FlagDescription
--project <id>Project to query
--service <name>Optional service filter
--request-id <id>Find the trace associated with a request
--trace-id <id>Load a specific trace
--since <duration>Search recent traces, for example 15m or 1h
--route <route>Filter by route name/path
--errorReturn error traces
--p99Include latency percentile summary when available
--limit <n>Limit result count
--no-cacheBypass cached trace query results
eve traces query --project proj_xxx --request-id req_abc
eve traces query --project proj_xxx --service api --since 15m --error
eve traces query --project proj_xxx --route /api/admin/ingest --p99

eve notifications​

Send project-scoped notifications through a configured provider. Slack is the supported provider.

eve notifications send --project <project> --channel <channel> --message <text> [--integration-id <id>]
FlagDescription
--project <id>Project scope
--channel <name-or-id>Slack channel
--message <text>Message body
--thread <id>Optional provider thread ID
--integration-id <id>Specific integration to use
--provider slackProvider, currently fixed to Slack
--jsonJSON output
eve notifications send --project proj_xxx --channel '#ops' --message 'Deploy finished'

eve tcp-ingress​

Probe public L4 TCP listeners declared with x-eve.tcp_ingress. The command resolves the listener from eve env diagnose and opens a TCP socket from the CLI host.

eve tcp-ingress test <project> <env> --listener <name> [--timeout <seconds>] [--json]
FlagDescription
--project <id>Project ID, if not passed positionally or via profile
--env <name>Environment name, if not passed positionally
--listener <name>Listener name from the manifest
--timeout <seconds>Probe timeout, default 5
--jsonJSON output
eve tcp-ingress test proj_xxx staging --listener a1-gt06
eve tcp-ingress test proj_xxx staging --listener a1-gt06 --timeout 10 --json

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>string—Input payload (JSON string)
--env-override KEY=VALUErepeatable—Privileged environment override for step jobs
--project <id>stringProfile defaultProject ID

Examples:

eve workflow run qa-review --input '{"task":"audit"}'
eve workflow run qa-review --env-override INCIDENT_ID=INC-123
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>string—Input payload (JSON string)
--env-override KEY=VALUErepeatable—Privileged environment override for step jobs
--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

eve workflow retry​

Retry failed or selected portions of a terminal workflow DAG.

FlagTypeDefaultDescription
--failedbooleanfalseRetry only failed/cancelled steps
--from <step>string—Retry from a named step and downstream dependents
eve workflow retry <root-job-id> --failed
eve workflow retry <root-job-id> --from publish