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

@tdwhere/do-it

v0.16.0

Published

Autonomy-first AI coding workflow for Codex, Claude Code, Cursor, OpenCode, Pi, and Kimi Code with task-fit skills, optional subagents, and evidence-backed completion.

Readme

do-it

English | 中文

CI CodeQL License: MIT

少即是多。最好的工作流,是你感觉不到它——直到它救了你。

大多数 AI 编程工作流在给 agent 加规则。do-it 从相反方向出发: 什么可以不做? 小事保持小。没有强制的 brainstorm → grill → plan → review 链。每一个 skill、每一个子智能体、每一个 hook,都要靠"此刻有用"来赢得存在—— 而不是因为它是流水线的一环。

留下的东西精简而有意:

  • 每一行代码,先是负债,后才是资产。 共享的决策阶梯先问"它需要存在吗", 再问"怎么写"。
  • "完成"是证据声明,不是信心等级。 从工作区拿证据,或者说 NOT_VERIFIED
  • 只建议,从不阻塞。 Hook 提醒。Skill 建议。agent 的判断——和你的——赢。

这是我自己每天在真实项目里用的工作流。适合你就用,觉得哪里不对就提 issue、 发 PR,或者 fork 它。

快速上手

1. 安装

| 宿主 | 命令 | | --- | --- | | Codex | codex plugin marketplace add tdwhere123/do-it && codex plugin add do-it@tdwhere-do-it | | Claude Code | /plugin marketplace add tdwhere123/do-it/plugin install do-it@do-it | | Cursor | npm run install:cursor-local → Reload Window | | OpenCode | opencode plugin @tdwhere/do-it-opencode -g | | Pi | pi install npm:@tdwhere/do-it-pi | | Kimi Code | /plugins install https://github.com/tdwhere123/do-it |

各宿主详细步骤与冒烟测试见 docs/install.zh-CN.md

2. 正常对话就行

do-it 在幕后工作,你不需要调用它——它在合适的生命周期点自动触发:

  • Router 给任务定级(Light / Standard / Heavy),建议可能有用的 skill。 Light 任务零仪式。
  • 写码时write-quality-lint 标出新代码中的反模式。每文件一条提醒;从不 阻塞。
  • 说"完成"之前,verification gate 要求拿出新鲜证据。

3. 建立 .do-it/(推荐)

一个小目录,给 agent 跨会话的记忆——项目规则、词汇表、工作笔记。运行:

/do-it-handbook init

这会创建:

.do-it/
  handbook/            稳定的项目真相
    invariants.md        总是优先的规则
    architecture.md      稳定的系统形状
    glossary.md          长期稳定的词汇表
  worklog/             日报或目标笔记
  CONTEXT.md           精炼的术语和关系(自动更新)
  brainstorm/ grill/ plans/   逐任务的材料

invariants.mdglossary.md 里的占位符换成你项目的真实规则。其余部分 自行维护。

4. 想跳就跳

yolojust do it直接做skip do-it/do-it-skip — 整轮跳过。 skip grillskip routerskip gate — 部分跳过。

它怎么工作

合适的体量

Router 给每个任务一个建议性的风险标签——不是权限门。

| 分级 | 发生什么 | | --- | --- | | Light | 检查 → 做 → 验证。没有额外仪式。 | | Standard | 按需加载 skill。没有强制链。 | | Heavy | 跨边界、发布、安全、不可逆。值得多看一眼。 |

Skill 按需加载,不按分级:

| Skill | 时机 | | --- | --- | | do-it-core | 常驻协议蓝本——先定分级,再证据 / 范围 / 验证 / 汇报 | | do-it-code-quality | 改代码——范围、TDD、调试、契约 | | do-it-architecture | 承重架构——权威、契约、边界、切换、防护 | | do-it-decide | 选项不清、承重前提 | | do-it-review | diff 需要审视和修复 | | do-it-verify | done / ready / merge 声明之前 | | do-it-handbook, do-it-context | 项目真相与词汇表 | | do-it-skill-authoring | 编写 do-it skill | | do-it-retrospective | 默认关闭的行为报告 |

更少的代码,不是更多

一条决策阶梯贯穿整个写代码过程:

它需要存在吗?→ stdlib 能做?→ 平台原生?→ 已有依赖?→ 一行?→ 才轮到自建。

这不是事后挂的 linter——它接在三个点上:

  • 写之前do-it-decide 问必要性。
  • 写之中do-it-code-quality + write-quality-lint 标出应该更简单的 东西。(Family 目录。)
  • 写之后do-it-review 指出可删、可内联、可用 stdlib 替代的。

被砍的永远不是安全。

用证据说话

do-it 把"完成"当成证据声明。do-it-core § Verify(do-it-verify 作为清单) 要求从当前工作区取得新鲜、与声明相关的证明。拿不出证据,诚实的回答就是 NOT_VERIFIED 加下一项检查。

对于外部副作用(git push、npm publish …),do-it 要求 agent 先确认。 真正的强制只有宿主的 sandbox 能做。 详见严格外部操作

提示:描述目标、成功标准和相关约束,然后让 agent 自己规划步骤。

需要时委派

十个内置子智能体提供独立的代码地图、审查和专业视角——有用就用,没用就忽略。 你自己的全局 agent 不受插件更新影响。

整体流程

flowchart TD
    P[UserPromptSubmit] --> R[do-it-router<br/>分类 Light / Standard / Heavy]
    R --> C[do-it-core<br/>协议蓝本]
    C --> B{意涵分桶}
    B --> CQ[do-it-code-quality<br/>写码时]
    B --> A[do-it-architecture<br/>承重架构]
    B --> D[do-it-decide<br/>需要决策/计划时]
    B --> RV[do-it-review<br/>需要审查时]
    B --> VY[do-it-verify<br/>宣布完成前]
    CQ --> E[执行]
    D --> E
    E --> WQ[PostToolUse: write-quality-lint]
    E --> VG[verification-gate:<br/>建议性完成提醒]
    VG --> VY
    RV --> VY
    VY --> Done[有证据的声明<br/>或 NOT_VERIFIED]

完整策略见 docs/routing-matrix.md

项目级覆盖

项目级覆盖放在 .do-it/ 下,均为纯数据——hook 逐行读取,从不 source 项目文件:

  • keywords.local.tsv(会话 cwd)扩展 router 关键词表。
  • write-quality.local.tsv(被编辑文件的 git 根目录)调整数值型限制,例如 file-size 的 warn/split 阈值;环境变量 DO_IT_FILE_SIZE_WARN_LINES / DO_IT_FILE_SIZE_SPLIT_LINES 优先级高于该文件。

Family 目录与抑制语法见 skills/do-it/references/write-quality-families.md

发布说明

当前主线 0.16.x。发布说明与 tag 策略: docs/release.md。更早的说明: CHANGELOG.md

本地开发

npm run setup            # 可选 CLI 安装
npm run doctor           # 验证安装
npm run lint             # shellcheck hooks
npm test                 # 完整门禁:构建 + 校验 + 全部测试

Shell wrapper(./install/install.sh./install/doctor.sh)委托给同一套 受管安装逻辑。这个包不会通过 npm lifecycle scripts 自动修改 ~/.codex

仓库结构

skills/do-it/    会被安装的 skill 目录(权威来源)
agents/          可移植的 agent TOML 定义
hooks/           Host hook 脚本与数据表
commands/        斜杠命令(Claude / Kimi)
plugins/         各宿主的生成式插件包(Codex、Cursor、OpenCode、Pi)
install/         安装器、doctor、shell wrapper
scripts/         构建、校验、冒烟脚本
tests/           hook、安装、发布、适配器测试
docs/            路由、维护、发布、适配器

站在前人的肩膀上

do-it 借用了 mattpocock/skillsaddyosmani/agent-skillsgsd-build/get-shit-done 验证过的 plan / subworker / TDD / review 范式。 逐条对照见 docs/upstream-map.md

do-it 是我自己对同一类问题的解法,来自真实项目里的日常使用。这里吸收的是 方法,并改写成 do-it 原生的 Router / Tier / Skill 语言;不会 vendor 上游 skill 原文,也不会安装上游 skill 名称。

感谢 Linux.do 社区持续的实战反馈。

维护

docs/maintenance.md 覆盖 skill、agent、安装器和包元数据 的修改规则。

贡献

只接受来自真实使用的改动。详见 CONTRIBUTING.md