npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

opennori

v0.1.30

Published

OpenNori: human-centered Nori Contracts and evidence records for coding agents.

Readme

OpenNori

面向编码 agent 的人类可接受交付契约层。

阅读语言:English | 简体中文

npm version License: GPL-3.0

OpenNori 帮助编码 agent 把自然语言目标转成可审阅的 Nori Contract:验收检查、项目上下文、证据,以及人可以判断的完成报告。

OpenNori 是一个整体安装的产品:agent 插件发现、打包 Skills、opennori CLI 和项目本地状态协同工作。正常用户路径留在 agent 对话里;CLI 负责让 setup、status、report、dashboard、恢复和自动化保持可复现。

OpenNori 不是阶段系统、计划模板、流程归档或 agent runtime。面向用户的闭环始终是:定义什么叫完成,逐条审阅 AC,为当前缺口收集证据,再判断目标是否完成。当某条 AC 达到 passingwaived,agent 应该先为这条 AC 相关改动创建 Git checkpoint,再进入下一条;它不会自动 push。目标完成后,agent 会先询问这些 commit 应该合并到哪个目标分支,再执行 merge、push、worktree 清理或起草下一个目标。

Worktree 隔离默认关闭;需要单独工作区时请明确提出。

大多数用户只需要记住五个词:Contract、AC、Evidence、Report 和 Current Gap;其他 OpenNori 名称只在需要时再了解。

开始使用

在这台机器上安装 OpenNori:

npx opennori setup

在每个项目根目录初始化:

opennori init

然后开启新的编码 agent 会话,对 agent 说:

使用 OpenNori 来完成这个目标。先从真实用户的完成判断理解目标,阅读相关项目上下文,需要澄清时每轮只问一个会改变完成定义的问题,再起草 Nori Contract,并在批准前逐条确认 AC。

如果只是粗略想法,或者想接管刚才讨论过的 AC,也在同一句请求里说明。

健康回复应该是什么样

健康的 OpenNori 回复不应该直接跳到实现计划。它应该:

  • 先检查相关项目上下文,而不是要求你重复一遍
  • 一次只问一个会改变完成定义的问题,并给出推荐答案
  • 把 AC 写成真实用户可以进入、操作、看到、复查或判断的事情
  • 批准前逐条审阅 AC
  • 在开放问题、缺失 grounding 或模糊 AC 修好前阻止 approval

如果草案只写“CRUD works”“dashboard shows state”或“settings are editable”,要求 agent 把 AC 改写成具体用户可见检查。

会保存什么

OpenNori 会把项目本地状态保存在 .opennori/ 下,让对话、报告和恢复可以复现。正常使用时,你主要通过 agent 对话工作,并使用只读的 status、report 和 dashboard 查看状态。

重要的可审阅资产包括:

  • 当前 Contract 和逐条 AC evidence
  • 最终 Report
  • 执行偏好相关的 Project Profile
  • 实现约束相关的 Architecture Baseline

大多数用户不需要为正常审阅手动打开 JSON。在普通用户项目中,把可审阅的 OpenNori 状态纳入版本控制,忽略临时 observation/cache 文件。完整目录布局见 Product Reference。

查看进展

常用的人类命令:

opennori status --root .
opennori report --root .
opennori dashboard --root .
opennori doctor --root .

Dashboard 是只读的。用它查看当前缺口、证据和完成风险;确认和批准仍然发生在 agent 对话里。

更多细节

  • Product Reference:完整产品概念、架构边界、dashboard/MCP 细节、高级命令和示例。

如果你在维护 Skill、CLI 集成或自动化,NoriBriefopennori draft 的公开输入契约。可用 opennori draft --brief-schema --json 查看 schema,用 opennori draft --brief-example --json 查看示例。

开发

npm run check

维护 OpenNori 源码仓库自身时,不要把这个仓库初始化成 OpenNori 项目,也不要用 Nori Contract 管理源码开发。只把 npm run checkopennori plugin sync --local --confirmnode ./bin/opennori.js ... 当作产品维护命令;本仓库会保持本地 .opennori/ 被忽略。

许可证

GPL-3.0-only