面向国产大模型的终端编程 Agent

高度适配国产模型 · 极致省钱

高度适配国产模型,极致省钱。Anthropic / OpenAI 双传输覆盖 DeepSeek、Kimi、Qwen、GLM、MiniMax、豆包等模型端点;provider 与 transport 解耦,供应商适配跨协议复用。Append-only 历史与会话内稳定系统提示词提高重复上下文的前缀缓存复用,降低 token 成本。

3 分钟开始使用
国产模型深度适配 Anthropic / OpenAI 双协议 Append-only 前缀缓存
nova-code — 国产模型会话(示例)
缓存命中 96%· 本轮花费 ¥0.02· /usage 查看明细
从看到做到

三步跑起第一轮任务

不必先读完整手册。Node.js 20 及以上环境里,全局安装后在项目目录运行 nova 即可。

需要更多配置?查看完整使用手册 →
01

安装 CLI

复制上面的命令,在终端完成全局安装。

02

进入项目启动

切到你的代码目录,运行 nova

03

填 Key,开始任务

首次向导只询问 DeepSeek API Key,随后直接描述要完成的改动。

一分钟看懂

真实会话,一镜到底

从一句自然语言到跑通改动——看 Nova-Code 在终端里如何规划、调用工具、命中缓存、守住沙箱。

nova-code — 演示录屏
三件最在乎的事

省钱、安全、灵活——不是堆功能,是一套架构

终端 AI 编程工具,开发者最在意的三件事——Nova 把它们做进了架构底层。

01 · 省钱

为前缀缓存而设计 prefix cache

Anthropic 与 OpenAI 两条传输分支共享统一的 Agent 循环、重试与用量链路。消息历史采用 append-only,系统提示词在会话 epoch 内保持稳定,尽量扩大相邻请求可复用的公共前缀。

稳定前缀 面向缓存复用设计
02 · 安全

操作系统级沙箱 seatbelt / bwrap

沙箱默认关闭;启用后,bash 与后台任务等子进程的文件写入由 Seatbelt / bubblewrap 限制在工作区及显式允许目录。读取与网络默认开放,也可按需进一步收紧。

一行开启 权限引擎之上的纵深防御
03 · 灵活

一个 .md 文件就是一项能力 declarative

放一个带 frontmatter 的 Markdown,它立刻变成运行时能力:子代理、斜杠命令、技能。不改源码、不重编译,提交到 Git 即团队共享。

Markdown 即可声明扩展
Design pillars

五根设计支柱,长在一套干净架构上

统一的 Hook 扩展点、严格的依赖方向、全链路类型校验——核心引擎不绑定任何模型 SDK 与 UI。

Append-only 架构

cache-friendly request prefixes
规范历史由单一 appendMessage 以 append-only 方式治理。压缩不截断历史,只追加一个 <compacted> 边界;模型视图从最新边界开始,系统提示词在同一会话 epoch 内保持稳定,帮助相邻请求保留公共前缀。

纵深防御

every layer assumes failure
模型输出可能中断,系统为常见失败提供恢复路径:max_tokens 在配置预算内触发续写;每个 tool_use 都会补齐配对的 tool_result;常见路径字段别名会在校验前归一化。
truncation 续写tool_result 兜底read-before-editmtime 漂移检测

Agent 化一切

sub-agents as first-class
子代理是核心原语:explore / plan 只读、general-purpose 全能,双层强制权限。/goal 用独立校验子代理跑真实测试,输出 VERDICT: MET 才收工。
3 种内置类型goal 自动纠错AI 风险分级实时进度流

真实代码智能

LSP, not grep
极少数将完整 LSP 作为一等工具内置的开源 Agent。自建 JSON-RPC 传输、多语言服务多路复用,提供 IDE 级的跳转定义、类型悬停、引用查找与工作区符号——模型无需靠正则猜文件位置。

OS 级写入隔离,按需开启

opt-in defense in depth
封装 Seatbelt 与 bubblewrap 于内核层:默认关闭,启用后约束子进程的文件写入范围;读取默认开放,网络默认不受限,均可按配置收紧。平台或依赖不支持时会降级为非沙箱执行,可通过 /sandbox 查看实际状态。
声明式扩展

放一个 Markdown,就多一项能力

带 frontmatter 的 .md 文件可声明子代理、斜杠命令与技能;Hook、MCP、LSP 和插件也通过配置接入,并共享同一套权限边界。

  • 子代理、斜杠命令、技能——同一套模式定义
  • 兼容 Claude Code 的生命周期 Hook 与 MCP 桥接
  • 提交到 Git 即团队共享,不改源码、不重新编译
.nova/agents/reviewer.md subagent
---
name: reviewer
description: 只读代码审查,输出 file:line 格式的问题
tools: [read, grep, glob, lsp]
readOnly: true
---
你是只读代码审查子代理。逐文件审查 diff,
按 file:line 格式报告问题,不要修改任何文件……
开发体验

不只是 CLI,更像一个开发平台

多会话热切换

/resume 交互式挑选历史会话,完整迁移 Agent 状态;/clear 开新会话而不丢旧的。

快照 + /rewind

写前 SHA-256 内容寻址快照。回滚同时还原对话与文件,并自动检测外部改动冲突。

Cron 调度

Agent 自建定时任务,支持 5m 间隔或 cron 表达式,/resume 时自动重新装载。

任务依赖图

跨会话持久化的任务图,带 blockedBy 依赖边,多个任务可并发进行中。

插件生态

nova plugin install 兼容 Claude Code 插件格式:命令、子代理、技能、Hook、MCP、LSP。

Headless JSONL 评测

nova -p "…" --output-format jsonl 在 CI 里跑完整 Agent 循环,复用同一套 hook 与工具栈。

同类对比

把可靠性当成第一等的事

以下聚焦 Nova 当前实现的可靠性设计;同类工具持续演进,具体能力以各自最新版本为准。

能力Nova-CodeClaude CodeAiderCline
LSP 代码智能✓ 一等工具仅 grep仅 grep外部
Goal 自动纠错循环✓ Agent 化校验
快照 + 回滚✓ 历史 + 文件
max_tokens 恢复✓ 自动续写硬报错硬报错
Append-only 前缀缓存✓ 缓存友好部分N/AN/A
OS 级沙箱✓ 开源闭源
会话热切换✓ 完整状态迁移仅 --continue
Nova-Code logo

准备好跑第一轮任务了吗

Node.js 20 及以上即可安装。首次启动只需填写 DeepSeek API Key,然后在你的项目目录里直接描述任务。

先看看 GitHub 源码与版本说明 →