@datalabrotterdam/诺瓦-艾-克利
与 DataLab 鹿特丹 的 Nova AI 进行代理编码: 在您的终端, 脚本中, 在您的编辑器中覆盖代理客户端协议
nova-ai 是一个编码代理 的精神 claude 财务报告和审定财务报表 codex,由
新爱尔它读取并编辑您的
代码,经您许可运行命令,询问何时决定,以及
为更长的工作保留任务列表。 一个特工,三个前端:
- 终端用户界面数字 :
nova-ai - 无头数字 :
nova-ai -p "…"用于脚本、 CI 和没有图形界面的机器 - 非加太国家代理人数字 :
nova-ai --acpzed、JetBrains、VS码和任何其他 代理客户协议 客户端
终端 UI 和无头模式通过同一协议与代理商交谈 编辑器使用,所以所有三个行为相同: 相同的工具,权限,会话, 内存, MCP 服务器和设置.
安装
你需要Nova AI API 密钥 (单位:千美元)拿一个),以及 为npm节点.js 22.19或更新. 没有节点js,使用a 独立二进制。 。 。 .
npm install -g @datalabrotterdam/nova-ai-cli
nova-ai login # opens a local page to enter the key; --no-browser asks in the terminal
nova-ai # start the terminal UI in your project
或者不安装: npx @datalabrotterdam/nova-ai-cli login,则
npx @datalabrotterdam/nova-ai-cli。 。 。 .
当一个新的版本在npm, nova-ai 在终端 UI 打开前询问 :
输入安装( E)npm install -g并重新启动, n 明天再问, s
跳过该版本。 在安装之前,状态线会不断提醒你,
财务报告和审定财务报表 /update 在同一会话中安装并重新启动. -p 财务报告和审定财务报表
--version 打印通知(在标准上,只在终端上)。 问 npm 在
每天最多一次; 阿尔法安装也跟随 alpha 频道.
NOVA_NO_UPDATE_CHECK=1 关上它(在CI中关闭).
nova-ai 安装本身时只使用
npm install -g; 与 npx 、 另一个软件包管理器或项目依赖
显示要运行的命令.
独立二进制
需要节点.js:每个 GitHub 发布 cLI有一个单一的可执行文件,其中包含运行时间和内部的所有依赖.
macOS 和 Linux :
curl -fsSL https://datalabrotterdam.nl/nova-ai/install.sh | bash
nova-ai login
视窗 PowerShell : irm https://datalabrotterdam.nl/nova-ai/install.ps1 | iex。 。 。 .
视窗 cmd : curl -fsSL https://datalabrotterdam.nl/nova-ai/install.cmd -o install.cmd && install.cmd && del install.cmd。 。 。 .
剧本选你的机器,检查一下 SHA256SUMS 财务报告和审定财务报表
在没有管理员权限的情况下安装它( e)~/.local/bin,或
%LOCALAPPDATA%\Programs\nova-ai) (中文(简体) ). 运行它们以更新 :
nova-ai 已经在您的路径上, 替换它, 或者说它是当前 。 选项 :
--channel alpha (单位:千美元)-Channel alpha 在宝座里, --version <v>, (中文(简体) ), --dir <folder>, (中文(简体) ), --force。在稳定发布有二进制之前,使用α通道.
有了软件包管理器,一旦稳定放出 (单位:千美元)如何发表:
brew install --cask datalab-rotterdam/tap/nova-ai # macOS
winget install DatalabRotterdam.NovaAI # Windows
或者自己下载一个档案,然后用
shasum -a 256 --ignore-missing -c SHA256SUMS数字 :
| x64 (韩语) | 装甲64 | |
|---|---|---|
| 马科斯 | nova-ai-darwin-x64.tar.gz | nova-ai-darwin-arm64.tar.gz |
| Linux (滑动) | nova-ai-linux-x64.tar.gz | nova-ai-linux-arm64.tar.gz |
| 窗口 | nova-ai-windows-x64.zip | nova-ai-windows-arm64.zip |
苹果硅麦克斯(M1和较新的)需要 arm64二进制公证
然而,使用浏览器下载的文件在 macOS 和 Windows 上被屏蔽;参见
财务问题。安装脚本不受影响.
二进制像 npm 安装,有两个不同:
- 更新 来源于 GitHub 释放: 即时和
/update下载 新版本, 请对照SHA256SUMS并替换 二进制并重新启动 。 这需要写入二进制文件夹的访问权限; 不 它让你有一个链接 发布.SHA256SUMS从同一个释放,所以 它检测到一个损坏的下载,而不是被篡改的发布. - 浏览器集成 需要 Node.js: 二进制带Nova AI
浏览器主机本身,浏览器以
nova-ai browser-host。 。 。 . 将二进制保留在原地,或者在移动后启动一次,所以 浏览器又找到了它 .
nova-ai [options] Interactive terminal UI
nova-ai -p [options] [prompt] Run one request headless (see nova-ai -p --help)
nova-ai --acp Agent Client Protocol over stdio (for editors)
nova-ai login [--no-browser] Connect your Nova AI account
nova-ai logout Remove the stored API key
Interactive options:
--resume <session-id> Continue a saved session
-c, --continue Continue the most recent session in this folder
--model <id> Use this model
终端用户界面
UI运行全屏(终端的替代屏幕,例如 less 或者说
vim),并让外壳的屏幕返回出口。 鼠标轮或
PgUp/PgDn 滚动记录, Esc 跳回最新输出,以及
当你读到一个答案时 要求的提示会被固定在上面
排队 拖放文本以选择它,然后单击(或按 Enter)以复制它;
Shift+rows 扩展选择, Esc 取消 . /copy 复制上一个
答话.
- 模式 (Shift+Tab): (中文(简体) )
agent- 进行工作;plan读代码,问 提出问题和建立任务清单,但没有任何改变;ask仅回答;autopilot在任务完成前一直工作,选择默认 问(核准还是问你). 自己的探员( A)~/.nova-ai/agents/<name>.agent.md, VS 代码的格式 扩展用途)是这些后的额外模式;/mode列出他们. - 权限: 在编辑或命令之前,您要为此选择一次 永远的,或否认。 Ctrl+K 开关之间 询问、接受编辑和绕行.
- 问题和任务: 代理可以问 1–4 多个选择问题 (附有说明、建议选项和你自己的答案) 多步骤工作现场核对表.
- 提示历史,
@file提到,/command完成, 大面条 作为紧凑的标记, Alt+V 粘贴图像( 对于接受的模型) 图片). 在Nova作品排队时输入的消息; QQ编辑它们 ./steer <text>到达下一个工具边界的运行回合.
| 密钥 | 行动 |
|---|---|
| 输入/ Shift+ 输入 | 发送/ 新行( Shift+) 输入终端支持 Kitty 键盘协议的地方: VS 代码, Kitty, Wez Term, Ghostty, foot, Alacritty, 最近的 iTerm2; Alt+ Enter, Ctrl+J 或后缀 \ (无处不在) |
| 英格兰 | 中断运行中的回合( 任务运行背景任务是否持续进行) |
| 缩写+C | 清除提示并取消活动转弯; 在2秒内再次按下退出( 打印) nova-ai --resume <id>(中文(简体) ) |
| 移动+ 标签 | 循环代理 / 询问 / 计划 / 自动驾驶和您自己的代理 |
| Ctrl+R / Ctrl+P / Ctrl+K 双相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相相 | 会话/ 模型/ 权限模式 |
| Ctrl+O / Ctrl+T 电源 | 思考和动词工具输出/工具检查员 |
| 备选+V | 粘贴剪贴板图像 |
斜线命令 : /help, (中文(简体) ), /model, (中文(简体) ), /effort (思考模式), /mode, (中文(简体) ), /permission, (中文(简体) ), /session, (中文(简体) ),
/resume, (中文(简体) ), /clear, (中文(简体) ), /compact, (中文(简体) ), /copy, (中文(简体) ), /rewind [n], (中文(简体) ), /queue, (中文(简体) ), /steer, (中文(简体) ), /usage (文字、会议标志和估计费用;状态行显示) ≈ €0.0123 一次价格模型回答,
/tools, (中文(简体) ), /tasks (观察或停止背景壳和代理人), /mcp, (中文(简体) ), /skills, (中文(简体) ), /shell 财务报告和审定财务报表 /agent (背景工作), /trust
财务报告和审定财务报表 /exit中。您自己的命令是 markdown 文件 ~/.nova-ai/commands/ 或者说
存储器 .nova-ai/commands/ (Claude代码格式,所以
.claude/commands 文件是提示, $ARGUMENTS 你怎么样
在命令之后键入,并在 / 菜单,连同您的
技能(/<skill-name> <request>)和您的 MCP 服务器的提示
(单位:千美元)/mcp__<server>__<prompt>) (中文(简体) ). 细节 :
src/tui/README.md。 。 。 .
无头
nova-ai -p "review the changed files"
git diff | nova-ai -p --output-format json "summarize this diff"
nova-ai -p --json --permission-mode accept-edits "fix the failing test"
nova-ai -p -c "and now add a changelog entry"
| 选项 | |
|---|---|
--output-format text|json|stream-json | text 打印答案; json 结尾处有一个对象(文本、工具、权限); stream-json (或 --jsonJSON(英语:JSON). 运行时的行数 : session.started, (中文(简体) ), message.delta, (中文(简体) ), tool.started编号 :tool.updated编号 :tool.finished, (中文(简体) ), permission, (中文(简体) ), queue.changed, (中文(简体) ), background.update, (中文(简体) ), result, (中文(简体) ), error |
--permission-mode | read-only (默认):任何需要批准的东西都会被拒绝,因为没有人可以批准. accept-edits:文件编辑被接受,命令仍然被拒绝. bypass-all:一切被接受. 拒绝规则总是赢. |
--resume <id>, (中文(简体) ), -c | 继续会话 |
--model, (中文(简体) ), --cwd | 模型和工作空间 |
--trust-workspace | 信任工作空间( 记得): 启动 MCP 服务器并应用它宣布的允许规则 |
--no-mcp | 忽略工作空间 MCP 配置 |
退出代码 : 0 成功吗, 1 配置或运行时间出错, 2 已经取消,
3 工具旋转安全限制, 130 中断 .
在CI中:一个 GitHub 动作(uses: Datalab-Rotterdam/nova-ai-cli@main)和一个GitLab
模板审查牵引请求,并将答案作为注释发布;见
文件/目录。 。 。 .
编辑器 (ACP)
配置 nova-ai --acp 作为定制代理。 对于Zed:
{
"agent_servers": {
"Nova AI": { "command": "npx", "args": ["-y", "@datalabrotterdam/nova-ai-cli", "--acp"] }
}
}
代理支持会话负载/列表/重置/叉/关闭/删除,模式, a
权限模式和模式选择器,权限请求一次/会话 /
总是选项、客户端文件系统和终端、窗体问题、计划、使用
和标题更新, MCP 服务器(stdio, HTTP, SSE), 图像提示, 和 3
登录方法(浏览器, NOVA_API_KEY,或 nova-ai login 在终端.
Nova 特性( 即时队列、 倒带、 收缩、 上下文使用、 ),
按会话设置、背景任务) _nova/… 扩展方法。 该代理也发布
独自一人作为
@datalabrotterdam/nova-ai-agent
(命令) nova-ai-agent),没有终端UI,仅用于集成
需要非加太集团。 一切记录在
文件/非加太国家。 。 。 .
安保模式
- 代理执行权限不是客户 每个前端 每个编辑都得到相同的策略; 客户端只能回答问题 被问到。 除了明确的"允许"以外,其他任何东西都算作"拒绝".
- 拒绝规则获胜,也用于绕行模式和只读工具.
- 仓库不能自己批准. 允许工作空间的规则
.nova-ai/settings*.json,及其声明的 MCP 服务器(.mcp.json),仅限 在您相信工作空间后生效( 在启动时被问及一次,/trust, (中文(简体) ), 或者说--trust-workspace) (中文(简体) ). 信托决定存储于~/.nova-ai永远 在仓库。 一个寄存器也无法设置权限模式 . - "永远允许" 保存精确的规则 用于您的命令或路径
私营
~/.nova-ai/projects/<key>/settings.json,位于仓库外. 复合命令( E)a && b部分检查;替换 和筑巢的贝壳需要精确的规则. - 网页只有经批准才能获取.
fetch_url每次问一次 除非规则允许 URL( URL 可以执行数据) , 并重定向到 另一个网站需要自己的批准.web_search问同样的方式,因为 查询到搜索提供者(You.com, DuckDuckGo; 您自己的 SearXNG 服务器在~/.nova-ai/settings.json已经"webSearch": { "searxngUrl": "https://…" }) (中文(简体) ). - 文件访问保留在工作空间 (符号链接已解决); 命令运行于 其自己的进程组带有超时,整个树被停止 撤销.
- 全权证书 存储于
~/.nova-ai/credentials.json与模式0600. 浏览器登录页面只接受同一来源的一次性令牌.
设置、内存和会话
所有东西都住在 ~/.nova-ai (或 $NOVA_AI_HOME),与新星共享
VS代码扩展:设置,每个项目信任,会话和内存.
- 规则数字 :
{"permissions": {"allow": ["run_command(npm test)", "edit_file(src/*)"], "deny": ["read_file(.env)"]}}内~/.nova-ai/settings.json,私有工程文件,或工作空间.nova-ai/settings.json(小组,已执行)和.nova-ai/settings.local.json(个人). 克劳德风格的别名,例如:Bash(npm run *)财务报告和审定财务报表Edit(src/**)工作也一样. - 说明数字 :
NOVA.md财务报告和审定财务报表AGENTS.md在工作空间. - 内存(单位:千美元)
MEMORY.md全球和每个项目的指数加注, 通过memory_read财务报告和审定财务报表memory_write工具(书写需要批准). - 技能数字 :
SKILL.md文件在.nova-ai/skills在工作空间中或~/.nova-ai/skills每个项目(.agents, (中文(简体) ),.claude财务报告和审定财务报表.codex技能文件夹也读取)./skills列出他们;/skills off <name>在此工程中切换一个关机( o) :--global: 无所不在). 只有名称和 简短的描述进入提示; Nova 装入适合时的技能. Nova 为 Word, Excel, PowerPoint 和 PDF 文件安装自己的技能 (单位:千美元)nova-docx, (中文(简体) ),nova-xlsx, (中文(简体) ),nova-pptx, (中文(简体) ),nova-pdf从 没有技能(单位:千美元)~/.nova-ai/skills并不断更新;它们需要Python 3. - 钩子克劳德代码的
hooks相同设置文件的格式(a) 寄存器只信任工作空间一次 :PreToolUse, (中文(简体) ),PostToolUse, (中文(简体) ),UserPromptSubmit, (中文(简体) ),SessionStart财务报告和审定财务报表Stop,与克劳德 代码的工具名称作为匹配者,所以钩从.claude/settings.json工作 当复制过来. - MCP 服务器数字 :
.mcp.json或者说mcpServers内.nova-ai/settings.json。 。 。 . 使用 OAuth 的 HTTP 服务器显示“ 需要登录 ”/mcp· ;/mcp login <server>打开浏览器中的登录页面( 磁盘保存在~/.nova-ai/mcp-auth自动刷新,/mcp logout <server>忘了他们。 想要手动注册客户端的服务器"oauth": { "clientId", "clientSecret", "scope", "callbackPort" }内.mcp.json。 。 。 .
完整的布局和规则语法 : 文件/NOVA HOME.md。 。 。 .
模型
模型列表显示您的账户的聊天模式 。 登录时 Nova 选择
第一个有本地工具呼叫; /model 或 Ctrl+ 键 P改变了它(和
记得选择, --model 或者说 NOVA_MODEL 设为一跑. Nova使用网关的函数调用后退
用于不支持它的模型的文本协议。 当上下文窗口
填充后,将自动汇总旧信件(/compact 做它由
- 手,手,手,手,手,手.
思考模型被标记在模型列表中. 对于具有以下等级的人:
状态行显示当前行( e)· thinking medium和 /effort 打开一个
滑动器(QQ/ , Enter),或直接设置 (/effort high, (中文(简体) ), /effort off) (中文(简体) ). 这个
选择像模型一样被记住;没有这个级别的模型使用自己的
默认.
| 环境 | |
|---|---|
NOVA_API_KEY, (中文(简体) ), NOVA_MODEL | 使用此密钥/ 型号而不是存储的 |
NOVA_BASE_URL | 另一个Nova( OpenAI- 兼容) 网关 |
NOVA_AI_HOME | 设置文件夹( 默认) ~/.nova-ai(中文(简体) ) |
NOVA_TOOL_PROTOCOL | 强制 native 或者说 text 工具调用 |
NOVA_NES_MODEL | 下一版建议的单独模式(ACP) |
NOVA_KITTY_KEYBOARD | 1编号 :0: 强迫 kitty 键盘协议打开或关闭 |
NOVA_NO_UPDATE_CHECK | 不要问 npm 更新版本( 也) NO_UPDATE_NOTIFIER,或 CI(中文(简体) ) |
财务问题
macOS不会打开"新爱"
用浏览器下载的二进制是隔离的,没有经过公证 苹果还没有。 你会看到其中一个:
- "新爱"受损 无法打开
- Apple 无法验证“ 新爱” 没有恶意软件
zsh: killed ./nova-ai在终端
最简单的是 安装脚本,因为 curl 没有
隔离档案. 要保留浏览器下载,请取消对话框(不要移动
并清除二进制文件夹中的隔离旗:
xattr -d com.apple.quarantine nova-ai
./nova-ai
仅针对来自
页 次 那个
匹配 SHA256SUMS。 。 。 . sudo 没用: macOS 也为根挡住二进制 .
在苹果硅Mac上,请检查您是否有 darwin-arm64没有 darwin-x64。 。 。 .
Windows SmartScreen 块新爱
选择更多信息 ~ 无论如何运行 。 二进制还没有签名.
nova-ai: command not found 安装后
~/.local/bin 不是在你的路径。 添加 export PATH="$HOME/.local/bin:$PATH" 改为
~/.zshrc 或者说 ~/.bashrc 并打开一个新的终端.
"更新未安装"或无 /update
一个二进制代替自己,所以它需要写到自己的文件夹. 已安装
剧本,它有。 否则 nova-ai 显示与释放的链接.
发展
这个包裹住在 nova-ai- cli 仓库 在它依赖的代理软件包旁边; 查看寄存器 README 建筑和测试.
许可证
阿帕奇 - 2.0 鹿特丹数据库