eve-cli-primitives

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Eve CLI Primitives

Eve CLI 核心原语

Use this skill as the command map for Eve. Keep examples short and concrete.
将此技能作为Eve的命令参考手册。示例应简洁且具体。

Profiles (API Target + Defaults)

配置文件(API目标与默认设置)

bash
undefined
bash
undefined

Create and use a profile

创建并使用配置文件

eve profile create staging --api-url https://api.eve.example.com eve profile use staging
eve profile create staging --api-url https://api.eve.example.com eve profile use staging

Set defaults to avoid repeating flags

设置默认值以避免重复输入参数

eve profile set --default-email you@example.com --default-ssh-key ~/.ssh/id_ed25519 eve profile set --org org_xxx --project proj_xxx
eve profile set --default-email you@example.com --default-ssh-key ~/.ssh/id_ed25519 eve profile set --org org_xxx --project proj_xxx

Inspect current profile

查看当前配置文件

eve profile show
undefined
eve profile show
undefined

Authentication

身份验证

bash
eve auth login
eve auth status
eve auth logout
eve auth permissions
bash
eve auth login
eve auth status
eve auth logout
eve auth permissions

Sync local OAuth tokens for agent harnesses (optional)

为Agent harness同步本地OAuth令牌(可选)

eve auth sync
eve auth sync

Nostr challenge (API-level, no CLI command yet)

Nostr挑战(API层面,暂无CLI命令)

POST /auth/challenge {"provider": "nostr", "pubkey": "<hex>"}

POST /auth/challenge {"provider": "nostr", "pubkey": "<hex>"}

undefined
undefined

Orgs and Projects

组织与项目

bash
eve org list
eve org ensure my-org --slug myorg

eve project list
eve project ensure --name "My App" --slug my-app --repo-url git@github.com:me/my-app.git --branch main
bash
eve org list
eve org ensure my-org --slug myorg

eve project list
eve project ensure --name "My App" --slug my-app --repo-url git@github.com:me/my-app.git --branch main

Membership management

成员管理

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

**URL impact:** The org `--slug` and project `--slug` directly form your deployment URLs and K8s namespaces:
- URL: `{service}.{orgSlug}-{projectSlug}-{env}.{domain}` (e.g., `api.myorg-my-app-staging.eve.example.com`)
- Namespace: `eve-{orgSlug}-{projectSlug}-{env}` (e.g., `eve-myorg-my-app-staging`)

Choose slugs carefully — they are immutable after creation.
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 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

**URL影响**:组织`--slug`和项目`--slug`直接构成你的部署URL和K8s命名空间:
- URL格式:`{service}.{orgSlug}-{projectSlug}-{env}.{domain}`(示例:`api.myorg-my-app-staging.eve.example.com`)
- 命名空间格式:`eve-{orgSlug}-{projectSlug}-{env}`(示例:`eve-myorg-my-app-staging`)

请谨慎选择slug——创建后无法修改。

Environments and Deploys

环境与部署

bash
undefined
bash
undefined

Create a persistent environment

创建持久化环境

eve env create staging --project proj_xxx --type persistent
eve env create staging --project proj_xxx --type persistent

Inspect environments

查看环境列表

eve env list --project proj_xxx eve env show staging --project proj_xxx
eve env list --project proj_xxx eve env show staging --project proj_xxx

Deploy an environment (requires --ref with 40-char SHA or a ref resolved against --repo-dir)

部署环境(需提供--ref参数,值为40字符SHA或基于--repo-dir解析的引用)

eve env deploy staging --ref main --repo-dir .
eve env deploy staging --ref main --repo-dir .

When environment has a pipeline configured, the above triggers the pipeline.

当环境配置了流水线时,上述命令会触发流水线。

Use --direct to bypass pipeline and deploy directly:

使用--direct参数绕过流水线直接部署:

eve env deploy staging --ref main --repo-dir . --direct
eve env deploy staging --ref main --repo-dir . --direct

Pass inputs to pipeline:

向流水线传递输入参数:

eve env deploy staging --ref main --repo-dir . --inputs '{"key":"value"}'
eve env deploy staging --ref main --repo-dir . --inputs '{"key":"value"}'

Diagnostics

诊断工具

eve env diagnose proj_xxx staging eve env diagnose proj_xxx staging --request <req_id> # request-level integrated diagnose eve env logs proj_xxx staging <service> eve env logs proj_xxx staging <service> --follow # stream logs eve env logs proj_xxx staging <service> --filter route=/api/x --filter status=500 eve env delete proj_xxx staging

`--filter k=v` is repeatable; common keys: `route`, `status`, `level`, `request_id`. Use `--grep` for free-text matching, `--since`/`--tail` to bound the window.
eve env diagnose proj_xxx staging eve env diagnose proj_xxx staging --request <req_id> # 请求级集成诊断 eve env logs proj_xxx staging <service> eve env logs proj_xxx staging <service> --follow # 流式查看日志 eve env logs proj_xxx staging <service> --filter route=/api/x --filter status=500 eve env delete proj_xxx staging

`--filter k=v`参数可重复使用;常用键包括:`route`、`status`、`level`、`request_id`。使用`--grep`进行自由文本匹配,使用`--since`/`--tail`限定时间范围。

Jobs (Create + Observe)

任务(创建与监控)

bash
eve job create --description "Review auth flow"
eve job list --phase active
eve job show <job-id>
eve job follow <job-id>
eve job diagnose <job-id>
eve job result <job-id>
bash
eve job create --description "Review auth flow"
eve job list --phase active
eve job show <job-id>
eve job follow <job-id>
eve job diagnose <job-id>
eve job result <job-id>

Per-job harness + env overrides (Eden-style per-request brain selection)

按任务配置harness与环境覆盖(Eden风格的每请求brain选择)

eve job create --description "..."
--harness-override-file ./profile.json
--env-override OPENAI_API_KEY='${secret.OPENAI_KEY}'
--env-override MODEL_ENDPOINT=https://qwen.local

`--harness-override-file` takes a JSON object `{harness, model?, reasoning_effort?, variant?, temperature?}`. `--env-override KEY=VALUE` is repeatable, validates UPPER_SNAKE_CASE keys, and supports `${secret.KEY}` interpolation resolved at spawn time.
eve job create --description "..."
--harness-override-file ./profile.json
--env-override OPENAI_API_KEY='${secret.OPENAI_KEY}'
--env-override MODEL_ENDPOINT=https://qwen.local

`--harness-override-file`接收JSON对象`{harness, model?, reasoning_effort?, variant?, temperature?}`。`--env-override KEY=VALUE`参数可重复使用,会验证键是否为UPPER_SNAKE_CASE格式,并支持`${secret.KEY}`插值,在任务启动时解析。

Coordination (Supervise + Threads)

协作(监控与线程)

bash
eve supervise <job-id> --timeout 60
eve thread messages <thread-id> --since 10m
eve thread post <thread-id> --body '{"kind":"directive","body":"focus on auth"}'
eve thread follow <thread-id>
bash
eve supervise <job-id> --timeout 60
eve thread messages <thread-id> --since 10m
eve thread post <thread-id> --body '{"kind":"directive","body":"focus on auth"}'
eve thread follow <thread-id>

Agents + Chat

Agent与聊天

bash
undefined
bash
undefined

Sync agent/team/chat configuration from repo

从代码仓库同步agent/团队/聊天配置

eve agents sync --project proj_xxx --ref main --repo-dir .
eve agents sync --project proj_xxx --ref main --repo-dir .

Inspect resolved agent config (from latest sync)

查看解析后的agent配置(来自最新同步)

eve agents config --project proj_xxx --json
eve agents config --project proj_xxx --json

Simulate chat routing without Slack

在不依赖Slack的情况下模拟聊天路由

eve chat simulate --project proj_xxx --team-id T123 --channel-id C456 --user-id U789 --text "hello"
eve chat simulate --project proj_xxx --team-id T123 --channel-id C456 --user-id U789 --text "hello"

Set org default agent slug (fallback when no slug matches)

设置组织默认agent slug(当无匹配slug时的 fallback)

eve org update org_xxx --default-agent mission-control
undefined
eve org update org_xxx --default-agent mission-control
undefined

Packs (AgentPacks)

插件包(AgentPacks)

bash
eve packs status
eve packs resolve --dry-run
eve migrate skills-to-packs
Slack gateway commands (run inside Slack):
text
@eve <agent-slug> <command>
@eve agents list
@eve agents listen <agent-slug>
@eve agents unlisten <agent-slug>
@eve agents listening
Nostr commands (via DM to platform pubkey):
text
/agent-slug command text
agent-slug: command text
bash
eve packs status
eve packs resolve --dry-run
eve migrate skills-to-packs
Slack网关命令(在Slack内运行):
text
@eve <agent-slug> <command>
@eve agents list
@eve agents listen <agent-slug>
@eve agents unlisten <agent-slug>
@eve agents listening
Nostr命令(通过私信发送给平台公钥):
text
/agent-slug command text
agent-slug: command text

Secrets

密钥管理

bash
eve secrets list --project proj_xxx
eve secrets set API_KEY "value" --project proj_xxx
eve secrets delete API_KEY --project proj_xxx
eve secrets show API_KEY --project proj_xxx
eve secrets ensure --project proj_xxx --keys API_KEY
eve secrets export --project proj_xxx --keys API_KEY
bash
eve secrets list --project proj_xxx
eve secrets set API_KEY "value" --project proj_xxx
eve secrets delete API_KEY --project proj_xxx
eve secrets show API_KEY --project proj_xxx
eve secrets ensure --project proj_xxx --keys API_KEY
eve secrets export --project proj_xxx --keys API_KEY

System Admin (if authorized)

系统管理(需授权)

bash
eve system status
eve system jobs
eve system envs
eve system env-health --json
eve system env-cost --all
eve system logs api --tail 50
eve system pods
eve system events
eve system env-cost
returns month-to-date environment allocation snapshots from the admin API. It is a snapshot view, not a live OpenCost query; stale or unavailable estimates are labelled in the output.
bash
eve system status
eve system jobs
eve system envs
eve system env-health --json
eve system env-cost --all
eve system logs api --tail 50
eve system pods
eve system events
eve system env-cost
从管理API返回环境分配的当月快照。这是一个快照视图,而非实时OpenCost查询;输出中会标记过时或不可用的估算值。

Workflows

工作流

bash
eve workflow list
eve workflow run qa-review --input '{"task":"audit"}'
eve workflow invoke qa-review --input '{"task":"audit"}'
eve workflow run qa-review --input '{...}' --env-override MODEL=opus-4.5
eve workflow logs job_abc123
--env-override KEY=VALUE
is repeatable on
run
and
invoke
; values flow through to each step's job as
env_overrides
.
bash
eve workflow list
eve workflow run qa-review --input '{"task":"audit"}'
eve workflow invoke qa-review --input '{"task":"audit"}'
eve workflow run qa-review --input '{...}' --env-override MODEL=opus-4.5
eve workflow logs job_abc123
run
invoke
命令中,
--env-override KEY=VALUE
参数可重复使用;值会作为
env_overrides
传递到每个步骤的任务中。

Integrations (Slack, Nostr, GitHub)

集成(Slack、Nostr、GitHub)

bash
eve integrations list --org org_xxx
eve integrations slack connect --org org_xxx --team-id T123 --token xoxb-test
eve integrations test <integration_id> --org org_xxx
bash
eve integrations list --org org_xxx
eve integrations slack connect --org org_xxx --team-id T123 --token xoxb-test
eve integrations test <integration_id> --org org_xxx

Nostr integration (via API)

Nostr集成(通过API)

POST /integrations {"provider": "nostr", "account_id": "<platform-pubkey>", ...}

POST /integrations {"provider": "nostr", "account_id": "<platform-pubkey>", ...}

undefined
undefined

Pipelines and Workflows

流水线与工作流

bash
eve pipeline list
eve pipeline show <project> <name>
eve pipeline run <name> --ref <sha> --env <env> --repo-dir ./my-app

eve workflow list
eve workflow show <project> <name>
eve workflow run <project> <name> --input '{"k":"v"}' [--env-override KEY=VALUE]
eve workflow invoke <project> <name> --input '{"k":"v"}' [--env-override KEY=VALUE] [--no-wait]
eve workflow logs <job-id>
bash
eve pipeline list
eve pipeline show <project> <name>
eve pipeline run <name> --ref <sha> --env <env> --repo-dir ./my-app

eve workflow list
eve workflow show <project> <name>
eve workflow run <project> <name> --input '{"k":"v"}' [--env-override KEY=VALUE]
eve workflow invoke <project> <name> --input '{"k":"v"}' [--env-override KEY=VALUE] [--no-wait]
eve workflow logs <job-id>

Builds

构建

Builds are first-class primitives that track image construction from input (spec) to execution (run) to output (artifacts).
bash
undefined
构建是一等核心原语,用于跟踪从输入(规格)到执行(运行)再到输出(制品)的镜像构建过程。
bash
undefined

List builds for a project

列出项目的构建记录

eve build list [--project <id>]
eve build list [--project <id>]

Create a build spec

创建构建规格

eve build create --project <id> --ref <sha> --manifest-hash <hash>
eve build create --project <id> --ref <sha> --manifest-hash <hash>

Show build spec details

查看构建规格详情

eve build show <build_id>
eve build show <build_id>

Start a build run

启动构建运行

eve build run <build_id>
eve build run <build_id>

List runs for a build

列出构建的运行记录

eve build runs <build_id>
eve build runs <build_id>

View build logs

查看构建日志

eve build logs <build_id> [--run <run_id>]
eve build logs <build_id> [--run <run_id>]

List produced image artifacts (digests)

列出生成的镜像制品(摘要)

eve build artifacts <build_id>
eve build artifacts <build_id>

Full diagnostic dump (spec + runs + artifacts + logs)

完整诊断信息导出(规格+运行记录+制品+日志)

eve build diagnose <build_id>
eve build diagnose <build_id>

Cancel an active build

取消活跃的构建

eve build cancel <build_id>

Builds happen automatically during pipeline `build` steps. Use `eve build diagnose` to debug build failures.
eve build cancel <build_id>

构建会在流水线的`build`步骤中自动触发。使用`eve build diagnose`调试构建失败问题。

Traces (OTEL)

追踪(OTEL)

Agent-queryable trace store. Pair with
eve env diagnose --request <id>
and
eve env logs --filter request_id=<id>
for end-to-end request triage.
bash
eve traces query --request-id <id>                    # spans for a single request
eve traces query --trace-id <id>                      # spans for a known trace
eve traces query --service api --since 15m --error    # recent errors in a service
eve traces query --route /api/projects --p99          # p99 latency for a route
eve traces query --request-id <id> --json             # machine-readable
One of
--request-id
,
--trace-id
,
--since
,
--route
, or
--error
is required.
--no-cache
bypasses the trace cache.
可被Agent查询的追踪存储。配合
eve env diagnose --request <id>
eve env logs --filter request_id=<id>
进行端到端请求问题排查。
bash
eve traces query --request-id <id>                    # 单个请求的调用链
eve traces query --trace-id <id>                      # 已知追踪ID的调用链
eve traces query --service api --since 15m --error    # 服务近期的错误记录
eve traces query --route /api/projects --p99          # 路由的p99延迟
eve traces query --request-id <id> --json             # 机器可读格式
必须指定
--request-id
--trace-id
--since
--route
--error
中的一个参数。
--no-cache
参数会绕过追踪缓存。

Custom Domains

自定义域名

bash
eve domain list [--env <name>] [--project <id>]
eve domain verify <hostname>             # check DNS and show activation status
eve domain status <hostname>             # show domain status and owning env
eve domain transfer <hostname> --to <env>  # move ownership between envs
eve domain unbind <hostname>             # clear binding so next deploy claims it
eve domain remove <hostname>             # delete the domain entirely
bash
eve domain list [--env <name>] [--project <id>]
eve domain verify <hostname>             # 检查DNS并显示激活状态
eve domain status <hostname>             # 显示域名状态及所属环境
eve domain transfer <hostname> --to <env>  # 在环境间转移域名所有权
eve domain unbind <hostname>             # 清除绑定,以便下次部署时重新关联
eve domain remove <hostname>             # 彻底删除域名

System Health

系统健康

bash
eve system health
bash
eve system health

Harnesses (Optional)

Harness(可选)

bash
eve harness list
eve harness list --capabilities
eve harness get mclaude
eve agents config --json
bash
eve harness list
eve harness list --capabilities
eve harness get mclaude
eve agents config --json

Notes

注意事项

  • Use
    --project
    if no default project is set in the profile.
  • Integrations are org-scoped; use
    --org
    for integrations commands.
  • Prefer
    eve job ...
    (singular) for job commands.
  • 如果配置文件中未设置默认项目,请使用
    --project
    参数。
  • 集成是组织级别的;使用集成命令时需指定
    --org
    参数。
  • 任务命令优先使用
    eve job ...
    (单数形式)。