OpenNori

OpenNori让交付确实完成

你仍然用自然语言描述目标。OpenNori 让 agent 先确认最终结果,再依次规划、实现、独立验证和收尾。只要结果、真实验证或 Git 交付仍有缺口,就不会得到“已完成”。

当前任务 个人设置页面
当前缺口
超时后的重试体验还没有验证
是否需要你
否(agent 继续验证)
完成判断
尚未完成
下一步
验证重试行为并提交结果
结果约定 验证结果 Git 交付
常见 AI 代理失败模式

AI 助手频繁修改了大批文件,运行了一连串命令,最后给出一句含糊的“任务已完成”。然而,用户依然很难确信哪些边界被更改了,极限情况是否通过测试,以及系统是否真正可用。

OpenNori 的完成边界

OpenNori 会先确认最终结果,再独立验证真实行为,并把结论绑定到实际 Git 交付。活动量、改动行数和 agent 自信都不是完成标准;任一结果仍有缺口,就会继续工作或明确停下来请你决定。

Plan · Implement · Verify · Finish

四个阶段,
一条完成主线

你只需要批准完整的 contract.md,agent 负责按需维护设计与计划、完成实现和验证,OpenNori 负责守住完成条件。工作文档可以自由演进,但不能跳过你的 Contract 确认或缺失的 Git 交付。

01

Plan

Agent 先理解项目和目标,提供可点击的 contract.md 供你审阅;复杂任务再按需维护设计和执行计划。

02

Implement

结果边界得到批准后,Agent 才开始实现,并始终在约定范围内工作。

03

Verify

从已批准的 Contract 出发复核真实改动和用户可见行为;独立上下文是按需辅助,不是门槛。

04

Finish

必需结果或 Git 交付仍有缺口时拒绝完成;全部满足后生成 report.md 并留下干净的最终提交。

Repository state

工作过程留在项目里,随 Git 一起审查

OpenNori 不把任务过程藏在聊天里。你可以审阅 Contract,也可以按需查看设计、计划、验证、Git 交付和稳定知识。点击文件树查看真实布局和内容:

WORKSPACE: .opennori/
📁 .opennori
📄 config.yaml
FILE
📄 workflow.md
FILE
📄 manifest.json
FILE
📁 spec
📄 project.md
FILE
📁 tasks
📁 2026-07-11-settings-page
📄 task.json
FILE
📄 contract.md
FILE
📄 contract.json
FILE
📄 design.md
FILE
📄 plan.md
FILE
📄 delivery.json
FILE
📄 evidence.jsonl
FILE
📄 report.md
FILE
📁 workspace
📁 jarl
📄 journal.md
FILE
tasks/2026-07-11-settings-page/contract.md
markdown
载入中...
1

任务进度

当前处于哪个阶段、是否阻塞。

2

结果约定

这次必须实现和验证哪些结果。

3

验证事实

实际运行了什么,结果是否通过。

4

Git 交付

最终实现对应哪个 commit 或 pull request。

5

项目设置

当前开发者、宿主和项目范围。

6

升级保护

哪些文件由 OpenNori 管理并保护。

7

稳定知识

后续任务仍可复用的项目事实。

8

近期交付

新对话可以快速了解已完成工作。

Finish outputs

任务完成后,稳定知识与交付一起留下

完成不是一句口头声明。OpenNori 会留下用户能读懂的结果、实际 Git 交付,以及后续任务仍能复用的项目知识。

Artifact 01 Finish 后可复查

人类可读的完成报告

目标、每个必需结果的验证结论、Git 交付和仍有限制都汇总在一份可审阅报告中。

Artifact 02 Finish 后可复查

经过验证的 Git 交付

最终结果明确对应 commit 或 pull request,避免测试结果与实际交付脱节。

Artifact 03 Finish 后可复查

可继续复用的项目知识

跨任务仍然成立的项目约定和近期交付会留在仓库中,供之后的 agent 对话继续使用。

场景应用示例

开发者与代理如何沟通

普通用户仍然直接说目标;需要审批时点击 contract.md,需要了解复杂任务时再看按需产生的设计和计划。

从真实目标开始

开发者沟通 (Prompt)
“为账号删除增加可恢复的确认流程。”
OpenNori 结果保障

Agent 会先询问是否创建 OpenNori task。你同意后,它从 Plan 开始,读取现有项目知识和相关实现,并在实现前提供可点击的 contract.md。

审阅或修订结果

开发者沟通 (Prompt)
“先把可打开的 contract.md 给我审阅;账号删除还需要明确恢复窗口。”
OpenNori 结果保障

Contract 是唯一审批对象。结果不准确时直接修订;设计和执行计划可以按需补充,不会增加审批负担。

判断是否真正完成

开发者沟通 (Prompt)
“现在是否可以完成?告诉我已经验证的结果、Git 交付和仍然存在的缺口。”
OpenNori 结果保障

OpenNori 只根据当前证据和实际 Git 交付回答。仍有缺口时,会明确说明下一步而不是宣称完成。

产品能力

完整交付,也支持长期维护

从结果确认到最终交付,OpenNori 让用户始终知道工作进行到哪里、还缺什么,以及完成依据是什么。

01

结果先确认

实现开始前点击审阅完整 contract.md;设计和执行计划由 agent 按任务复杂度维护。

02

Git 交付闭环

验证过的实现和最终 OpenNori 状态都进入 Git,完成结论可以追溯。

03

跨会话继续

项目知识和当前任务随仓库保留,新对话无需从头复述背景。

04

安全长期维护

升级先预览、遇到用户修改会停止覆盖,并给出明确恢复动作。

快速开始指南

安装并在聊天中开始使用

在当前机器 setup 一次,在每个项目 init 一次,然后在新的 Codex 或 Claude Code 对话里直接说目标。两个宿主都通过官方 Plugin 与 Hook 自动进入工作流。

查看 OpenNori 使用指南 →
步骤 1 : 安装 OpenNori 能力包 npx opennori setup
步骤 2 : 初始化当前项目 opennori init --user <name>
步骤 3 : 在新对话中描述目标 为账号删除增加可恢复的确认流程。
打开新对话,直接描述你的目标

为账号删除增加可恢复的确认流程。