原生的编程 Agent 工作台。
直接驱动官方的 Claude Code 和 Codex,用你自己的账号登录。其他模型交给内置 Agent,兼容 OpenAI 与 Anthropic 接口。桌面端、IDE 插件和手机,背后是同一套 Rust 引擎。
下载版本 2.0.8

修复 /trips 深色模式下的空状态,再让 @codex 给它画一张插图。
已完成3 分钟 41 秒
思考
截图里深色卡片上是深色文字,卡片还固定了高度,把 Plan a trip 截掉了。我来改样式,插图同时交给 Codex 画。
搜索EmptyState
读取EmptyState.tsx, EmptyState.module.css, tokens.css
更新待办0/5
卡片手写了文字颜色,高度也固定在 196 px。两处都改成主题 token。
编辑EmptyState.module.css, EmptyState.tsx+6−5
更新待办2/5
展示组件对比度检查
标题、正文和按钮在两种主题下都通过了 AA。
插图交给 Codex,修复让 Antigravity 审一遍。
Trips 空页面的插图gpt-6.1-solXHigh已完成52 秒已保存 public/illustrations/trips-empty.webp(1536×1024),并放到了 EmptyState.tsx 的标题上方。
审查空状态的修复Gemini 4 ArgonHigh已完成1 分钟 24 秒一个小问题:次要按钮在深色背景上没有可见的焦点环。
更新待办3/5
Places、Saved 和 Search 写死了同样的颜色,这几处交给副手。
DeepSeek V4.1 Flash接手把 token 修复同步到其他空状态Max31 秒
搜索#1c1c1e
读取Places.tsx
编辑Places.module.css
编辑Saved.module.css
编辑Search.module.css
运行pnpm vitest run src/places src/saved src/search2.1 秒
交回Places、Saved 和 Search 已改用主题 token,9 个测试通过。6 步 31 秒
编辑EmptyState.module.css+3
更新待办4/5
运行pnpm vitest run src2.4 秒
$ pnpm vitest run src
RUN v4.1.2 /Users/maya/atlas
✓ src/components/EmptyState.test.tsx (4 tests) 41ms
✓ src/places/Places.test.tsx (3 tests) 37ms
✓ src/saved/Saved.test.tsx (3 tests) 29ms
✓ src/search/Search.test.tsx (3 tests) 33ms
✓ src/trips/Trips.test.tsx (3 tests) 52ms
Test Files 5 passed (5)
Tests 16 passed (16)
Duration 1.94s顺便录一段切换主题的过程,两种主题我都看看。
运行node scripts/capture.mjs /trips --themes dark,light --video3.1 秒
$ node scripts/capture.mjs /trips --themes dark,light --video
展示图片trips-themes.png
展示视频trips-theme.mp4
更新待办5/5
Trips 空状态的对比度深色浅色
| 修改前 | 修改后 | ||
|---|---|---|---|
| Aa标题 | 1.2:1 | Aa15.1:1 | AAA |
| Aa正文 | 1.6:1 | Aa7.4:1 | AAA |
| Aa按钮 | 1.2:1 | Aa9.8:1 | AAA |

Trips 的空状态在两种主题下都能正常显示了:文字改用主题 token,卡片随内容撑开,Plan a trip 不再被截掉。Codex 画的插图放在标题上方。
副手把同样的修复同步到了 Places、Saved 和 Search,Antigravity 提的那个小问题,次要按钮的焦点环,也已补上。pnpm vitest run src 通过 16 个测试。
AcpiraClaude CodeCodexAntigravityGrokKimi CodeDSHDevinOpenCodePi

有什么要改的?@ 引用文件
上下文
已用 31%62,016 / 200,000
系统提示词2,274
工具定义5,997
说明文件1,846
技能1,206
MCP2,774
对话47,919
支持平台
桌面端和各 IDE 插件运行同一套引擎,共用 ~/.acpira 里的会话、账号与设置。手机端驱动的是你电脑上的引擎。
桌面端
