Apollo CLI (apollo) 将您的整个工作空间带到终端。管理任务、查询发布、检查项目状态、搜索知识库、记笔记、复习闪卡,以及与 Apollo Brain 对话 — 无需离开编辑器或终端。
CLI 面向三类用户设计:开发者(常驻终端)、脚本/CI(需要结构化输出)和 Claude Code(作为 AI 辅助工作流的技能)。
npm install -g @apollo/cli
# Clone the repo and link locally
cd apollo/cli
npm install
npx tsc
npm install -g .
安装完成后,验证是否正常运行:
快速开始
# 1. Authenticate
apollo login
# 2. See your tasks
apollo task mine
# 3. Mark a task as done
apollo task done "fix auth bug"
# 4. Search the knowledge base
apollo kb search "deployment" -p "Apollo"
# 5. Create a personal note
apollo note create -t "Meeting notes" --content "Key decisions: ..."
# 6. Check flashcards due for review
apollo flashcard due
# 7. Ask Apollo Brain a question
apollo ai "What tasks are blocked right now?"
# 8. Personal dashboard
apollo status
CLI 使用基于浏览器的登录流程(类似于 gh auth login 或 aws sso login):
开始登录
运行 apollo login。CLI 会在 localhost:9876 启动一个临时本地服务器。
浏览器打开
浏览器会打开 apol.dev/cli-auth,您可以通过常规的 Apollo 登录方式进行认证。
Token 已保存
认证完成后,token 会保存到 ~/.apollo/config.json。本地服务器会自动关闭。
Token 管理
| 命令 | 描述 |
|---|
apollo login | 通过浏览器认证 |
apollo logout | 清除已保存的凭据 |
apollo whoami | 显示当前用户和认证状态 |
CI / 自动化
对于非交互式环境(CI 流水线、Claude Code),设置 APOLLO_TOKEN 环境变量:
export APOLLO_TOKEN="your-supabase-jwt-token"
apollo task list --json
设置 APOLLO_TOKEN 后,CLI 会跳过所有交互式提示。
全局 Flags
以下 flags 适用于所有命令:
--json # Output raw JSON (for scripts and Claude Code)
--no-color # Disable colored output
输出模式
CLI 会根据上下文自动调整输出方式:
| 模式 | 触发条件 | 行为 |
|---|
| Pretty | 交互式终端 (TTY) | 彩色表格、加载动画、图标 |
| Plain | 管道输出(非 TTY) | 纯文本,无 ANSI 代码 |
| JSON | --json flag | 用于解析的原始结构化数据 |
通过 process.stdout.isTTY 自动检测。您无需手动配置。
模糊名称解析
每个接受资源引用的命令都支持多种格式:
| 输入 | 解析方式 |
|---|
550e8400-... | 直接传递 UUID |
"Fix authentication bug" | 精确名称匹配(不区分大小写) |
"fix auth" | 模糊匹配 — 如果只有一个明确匹配则自动解析 |
"deploy" | 存在歧义 — 提示您从候选项中选择 |
me | 特殊值:解析为已认证的用户(用于 --assignee) |
当模糊匹配存在歧义时,CLI 会显示候选项:
Multiple matches for "deploy":
1. Deploy staging environment
2. Deploy monitoring stack
3. Deploy CLI to npm
Select [1-3]:
在 --json 模式下,歧义匹配会返回包含候选项的错误,而不是显示交互式提示。
CLI 的所有状态保存在 ~/.apollo/ 中:
~/.apollo/
├── config.json # Auth tokens, default project, preferences
└── cache/ # Resolver cache (auto-managed)
命令分组