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

draftgo-cli

v2.0.3

Published

Install and manage the DraftGo skill across AI coding agents (Claude Code, Codex, Cursor, Windsurf, Antigravity, Copilot, Gemini, Kiro).

Readme

draftgo-cli

跨 AI 编码工具一键安装 / 更新 / 卸载 DraftGo 开发助手 skill 的命令行工具。

支持的 AI 工具:Claude Code、Codex CLI、Cursor、Windsurf、Antigravity、GitHub Copilot、Gemini CLI、Kiro。

前置条件

  • Node.js 14+(运行 CLI)
  • Python 3.9+(运行 DraftGo init/sync 脚本;CLI 本身不需要)

安装

npm install -g draftgo-cli

快速开始

cd /path/to/your/project
draftgo init                 # 自动识别当前项目在用的 AI 工具并安装

也可以手动指定要安装到哪些 AI 工具:

draftgo init claudecode                  # 只装 Claude Code
draftgo init claudecode kiro cursor      # 多选
draftgo init all                         # 所有支持的工具

命令清单

| 命令 | 说明 | |---|---| | draftgo init [target]... | 安装 skill。不传 target 时自动识别;all 表示全部。 | | draftgo update [target]... | 把 CLI 内置 skill 覆盖写到每个已安装或项目中检测到的 AI 工具自己的 skill 目录;保留本地 config / changelog / lessons / Task 等运行时数据。若 npm 上存在更新的 CLI 版本,会先自动升级 CLI 再重跑自己。 | | draftgo uninstall [target]... | 移除指定 AI 工具的 skill 目录(含入口文件 + 子技能 + scripts)。加 --purge 会连 .draftgo/ 一起删。 | | draftgo status | 查看当前项目装了哪些 AI 工具入口、skill 版本。 | | draftgo doctor | 诊断:Python 是否可用、检测到哪些 AI 工具、各入口状态。 | | draftgo list-targets | 列出支持的 AI 工具名。 | | draftgo --version | 打印 CLI 版本。 | | draftgo --help | 查看帮助。 |

全局选项

  • --project <dir>:对指定目录操作(默认当前工作目录)。
  • --forceinit/update 时强制覆盖已存在的 AI 工具 skill 目录。
  • --skip-update-checkupdate 时不去 npm 查最新版,直接用当前 CLI 执行。
  • --purgeuninstall 时连 .draftgo/(含 config / 日志 / 本地缓存)一起删。

可以通过环境变量 DRAFTGO_NO_UPDATE_CHECK=1 全局关闭自动升级检查(离线、CI 等场景)。

更新

cd <your-project>
draftgo update

就这一条命令。update 会自己去 npm 查最新版:

  • 如果 CLI 已是最新 → 直接把内置 skill 资源覆盖到每个已安装 AI 工具的 skill 目录
  • 如果 CLI 过时 → 自动执行 npm install -g draftgo-cli@latest,然后用新 CLI 重跑一遍 update

整个过程中,你本地的 .draftgo/config.jsonchangelog.mdlessons/Task/ 等运行时数据都不会被动到。

内置 Skill 文档约定

CLI 随包分发的 DraftGo skill 会同步基座 API 约定。集合写入统一为:

  • 创建:POST /api/<resource> 支持单个对象或对象数组。
  • 批量更新:PATCH /api/<resource>/batch,请求体为带 id 的对象数组。
  • 动态 DB 因为资源带 type,批量更新路径是 PATCH /api/db/{type}/batch

动态 DB SDK 也提供 sdk.db.create_many(...)sdk.db.update_many(...),用于脚本内批量写入。

自动识别的依据

| AI 工具 | 探测信号(任一命中即视为在用) | |---|---| | Claude Code | .claude/CLAUDE.md | | Kiro | .kiro/ | | Cursor | .cursor/ | | Windsurf | .windsurf/ | | Antigravity | .agent/ | | GitHub Copilot | .github/prompts/.github/copilot-instructions.md | | Codex CLI | .codex/AGENTS.md | | Gemini CLI | .gemini/GEMINI.md |

若未命中任何信号,请用 draftgo init alldraftgo init <target> 手动指定。

产物结构

每个 AI 工具拿到的是完整自包含的 skill 副本(SKILL.md + 子技能 + rules + scripts),写入它自己的目录。.draftgo/ 只放运行时数据。

<project>/
├── .draftgo/                         # 运行时数据(CLI 不会覆盖你这里的内容)
│   ├── config.json                   # init / connect 后生成(已加入 .gitignore)
│   ├── token                         # connect 后生成(已加入 .gitignore)
│   ├── changelog.md                  # 更新日志(按日期分节)
│   ├── Task/                         # 每个开发任务一个 md,含需求 / 设计 / 任务标记
│   ├── lessons/                      # 开发经验、踩坑记录、基座局限场景
│   ├── pages/  navigations/  ...     # init 拉取的本地缓存
│   └── .version                      # CLI 写入:当前已装 skill 的版本
│
└── (AI 工具 skill 目录,按需写入;每份都是完整副本)
    .claude/skills/draftgo/{SKILL.md, init/, push/, pull/, story/, rules/, scripts/}
    .codex/skills/draftgo/{SKILL.md, ...}
    .gemini/skills/draftgo/{SKILL.md, ...}
    .cursor/commands/draftgo.md           +  .cursor/commands/draftgo/{...}
    .windsurf/workflows/draftgo.md        +  .windsurf/workflows/draftgo/{...}
    .agent/workflows/draftgo.md           +  .agent/workflows/draftgo/{...}
    .kiro/steering/draftgo.md             +  .kiro/steering/draftgo/{...}
    .github/prompts/draftgo.prompt.md     +  .github/prompts/draftgo/{...}

渲染时 SKILL.md 中的 {{SKILL_DIR}} / {{SKILL_SCRIPTS}} 会被替换成当前 AI 工具自身的目录,确保子技能、rules、scripts 引用永远指向同一个工具的副本。CLI 不会 改写你的 AGENTS.md / GEMINI.md


v1.2.0 升级要点(高质量开发规范)

CLI v1.2.0 在 skill 包里追加了一套分级开发流程规范rules/dev-workflow.md),目标是让 AI 在做 DraftGo 项目开发时"小修不拖慢、功能有计划、高风险有门禁、质量靠证据"。

分级流程

小修:直接定位 → 改 → check → push
轻功能:范围复述 → 直接做 → 主路径验证 → push
标准功能:轻量确认 → Task → TDR
高风险:完整 Story / 计划 / 验证 / 人工确认

新增本地目录

  • .draftgo/Task/:每个开发任务一个 Markdown 文件,含需求纪要 / 设计 / 任务清单 / ⬜🟡✅❌⏸ 标记 / 完成回顾

经验记录(lessons)

  • .draftgo/lessons/ 统一记录开发过程中的阻碍、踩坑、框架运行时问题、基座能力局限和可复用经验。
  • 文件按 YYYY-MM-DD-主题关键词.md 命名,便于后续回顾和沉淀为开发规范。

前端审美方向:现代工艺 + 艺术风 + 用户体验三个方向,不立细则只立锚点(参考 Linear / Vercel / Apple HIG / Notion)。

完整规范见各 AI 工具自身 skill 目录下的 rules/dev-workflow.md,例如 .claude/skills/draftgo/rules/dev-workflow.md


v2.0.3 升级要点(操作型页面空间利用)

CLI v2.0.3 补充操作型页面的空间模型,重点解决后台管理 / 表格 / 列表页面按普通文档流布局时,数据少导致分页、保存栏、批量操作区上浮,页面空间利用不足的问题。

核心变化:

  • 工作台布局原则:后台管理、表格、列表、审批、配置、内容维护等操作型页面,优先让页面根容器占满可用视口 / iframe 内容区。
  • 稳定控制区:顶部筛选、搜索、标题操作区保持稳定高度,底部分页、批量操作栏、保存栏等流程控制区保持在工作区底部或稳定位置。
  • 数据区承接剩余空间:主体数据区使用 flex:1; min-height:0; overflow:auto 等结构承接剩余空间,数据少时保留工作区空白,数据多时优先让数据区内部滚动。
  • 数据表规则同步data-table.md 新增工作台空间模型和 CSS 骨架参考,避免分页跟随 1-2 条数据上浮。

v2.0.2 升级要点(统一目标识别信号)

CLI v2.0.2 进一步完善 draftgo update 的目标识别逻辑,避免只修到单个工具而遗漏其他 AI 工具。

核心变化:

  • 平台定义成为单一信号源:每个 AI 工具的入口文件、skill 目录和项目级探测信号统一维护在 platforms.jsinit / update / doctor 共用同一份识别依据。
  • update 覆盖所有检测到的工具:不传 target 时,draftgo update 会合并“已安装 skill 的目标”和“项目中检测到的 AI 工具信号”,并刷新全部命中的工具。
  • 全平台测试覆盖:单测现在会同时模拟 Claude Code、Cursor、Windsurf、Antigravity、Kiro、GitHub Copilot、Codex、Gemini 的项目级信号,防止后续再出现只命中部分工具的问题。

v2.0.1 升级要点(update 目标识别修复)

CLI v2.0.1 修复 draftgo update 空参数时只刷新部分工具的问题。

核心变化:

  • update 合并识别目标:不传 target 时,draftgo update 会同时刷新“已安装 skill 的目标”和项目中可检测到的 AI 工具信号(如 .claude.codexAGENTS.md)。
  • Codex 项目级目录不再漏刷:项目里已有 .codex 但 Codex skill 尚未落地时,update 也会主动写入 .codex/skills/draftgo/

v2.0.0 升级要点(精简 skill 包体)

CLI v2.0.0 删除了内置 resources/skill/reference/ 基座参考副本,进一步精简安装到各 AI 工具中的 DraftGo skill 包体。

核心变化:

  • 移除 reference 目录:不再随 CLI 分发 OpenAPI 与前端 runtime 源码副本,减少安装体积和过期参考带来的误导。
  • 规则以当前 skill 为准:开发时优先依据 SKILL.mdrules/init/pull/push/story 子技能和本地 .draftgo/ 数据推进。
  • 避免源码级参考漂移:基座能力变化时,不再依赖 CLI 内置快照推断行为,降低旧 reference 与真实运行时不一致的风险。

v1.6.2 升级要点(开发效率轻量化)

CLI v1.6.2 进一步降低开发流程摩擦:保留真实功能闭环、页面绑定、平台禁区和推送验证这些硬约束,同时让小修和轻功能更快进入实现。

核心变化:

  • 小修渐进读取:小修优先只读目标资源和最小必要规则,不再默认展开完整规则链路。
  • 新增轻功能档:简单页面能力、单入口交互、小型数据联动可走“范围复述 → 直接做 → 主路径验证 → push”,不强制创建 Task。
  • 计划字段按需depends / resource_lock / wave 只在多任务、多资源冲突或准备并行时强制;单人串行小计划不再为字段服务。
  • 并行按收益启用:只有任务数足够、边界清晰、资源不冲突且并行收益大于协调成本时才启用并行。
  • 取消 80 行硬限制:改为“复杂或高风险代码分段实现并验证”,避免机械分批拖慢前端开发。
  • 验证按等级分层:小修验证改动点,轻功能验证入口和主路径,标准功能 / 高风险再完整覆盖四态、数据、跳转和影响范围。

v1.6.1 升级要点(前端规则去模板化)

CLI v1.6.1 继续优化开发效果:减少前端规则中过细的“适合 / 不适合”和固定模板描述,让 AI 在满足平台硬约束的前提下,更主动地根据页面目标、业务复杂度和用户体验做设计判断。

核心变化:

  • GSAP 优先体验原则:开发前端页面时优先考虑使用 GSAP 提升体验,不再用固定场景清单限制是否引入。
  • 数据表规则改为参考:数据列表 / 表格规范从“必须按模板实现”调整为参考指南,避免无差别套搜索、高级筛选、列配置、分页。
  • 空态与圆角更灵活:空态保留稳定布局要求,写法不再唯一;圆角默认保持系统一致,但允许按品牌感、卡片层级和营销视觉适度放开。
  • 审美方向更开放:保留现代工艺、艺术风、用户体验三轴,但减少反例式限制,让 AI 可以根据项目气质探索更鲜明的视觉语言。

v1.6.0 升级要点(开发任务规划升级)

CLI v1.6.0 强化了 skill 对“开发任务规划”的判断力,重点解决新页面 / 新功能只做成静态展示页、漏后台管理、漏真实数据、漏导航入口的问题。

核心变化:

  • 用户意图翻译:当用户用非技术语言描述“案例库、新闻中心、产品中心、预约、资料下载”等业务目标时,AI 会先识别它是页面、多页面还是完整功能模块,而不是要求用户说出 CRUD、API、路由等开发术语。
  • 页面默认完整功能:用户说“做一个页面”时,默认按可真实使用的页面功能处理;只有明确说“静态 / 纯页面 / demo / 先看效果”时,才按静态页处理。
  • 用户路径链路:功能规划从“用户打开官网 / 系统入口 → 看见入口 → 点击进入 → 操作 → 反馈 → 后台维护 → 前台展示更新”这一整条链路倒推页面、导航、数据和权限。
  • 新增页面绑定:创建页面后必须绑定到导航栏、首页入口、后台菜单或相关页面按钮之一;只创建页面文件、无法从正常路径点击进入,不算完成。
  • 真实功能闭环:按钮、表单、搜索、筛选、分页、保存、删除、发布等交互默认要真实有效;需要可维护内容时,主动规划后台管理和同一份真实数据。

这些规则保持轻量:小修仍然直接定位 → 改 → check → push;轻功能不强制 Task;标准功能只做必要确认;高风险任务才进入完整 Story / 人工确认流程。


init / push 的正确运行方式

skill 内置两个 Python 脚本。不要用 curl / npx 代替,脚本会处理 token、字段结构、错误日志。脚本被复制到每个 AI 工具自己的 skill 目录下,例如 Claude Code 是 .claude/skills/draftgo/scripts/

# 以 Claude Code 安装位置为例(其它工具替换路径前缀即可)
python .claude/skills/draftgo/scripts/draftgo_init.py --server <url>
python .claude/skills/draftgo/scripts/draftgo_push.py pages   [page_id]
python .claude/skills/draftgo/scripts/draftgo_push.py nav     [nav_id]
python .claude/skills/draftgo/scripts/draftgo_push.py db_meta [meta_id]

token 通过环境变量 DRAFTGO_TOKEN 传入,脚本不接受命令行 --token

更推荐的用法:在 AI 工具里说「初始化 draftgo 项目」或「同步页面 123」,skill 会自动触发对应脚本。

v1.4.0 升级要点(Story System — 系统灵魂档案)

CLI v1.4.0 引入 Story System,解决 Vibe Coding 时代最大的痛点:每次新对话 AI 都不知道"这个系统为什么存在、不做什么、做过什么取舍"。

核心机制:Story Context / Gate

开发任务开始时,AI 按任务级别处理 .draftgo/story.yaml

  • 小修 → 不强制触发 Story
  • 功能 → 存在则静默加载,不存在不阻塞开发,收尾提醒补 Story
  • 高风险 → 不存在则暂存请求,进入 Story 构建流程(对话式采集,不是填表);存在则静默加载并做冲突检测

Story 文件结构(三层):

# .draftgo/story.yaml
meta:
  version: 1
  created: 2026-05-17
  last_touched: 2026-05-17
  maturity: seed   # seed | growing | stable

identity:
  what: "一句话讲清这是什么"
  why: "解决什么痛点,给谁用"
  not:
    - "不是 XX"
    - "不变成 YY"

design:
  overview: "核心流转逻辑:用户从哪进来 → 经过什么 → 得到什么价值"
  modules:
    - name: "模块名"
      role: "这个模块在系统里的定位(核心/辅助/基座)"
  style:
    personality: "系统说话像谁"
    keywords: ["设计关键词"]
    do: ["正面指引"]
    dont: ["禁区"]

decisions:
  - id: D001
    date: 2026-05-17
    chose: "选了什么"
    over: "拒绝了什么"
    because: "原因"
    status: active

now:
  focus: "当前在做什么"
  next: "下一步方向"
  open_questions:
    - "悬而未决的事"

运行时行为:

  • 冲突检测:当开发请求与 Story 的 identity.not 或 active 决策矛盾时,AI 会显式摊牌,给出"想法变了 / 双轨并行 / 只是特例"三个选项
  • 主动沉淀:检测到方向性决策时,AI 主动提议记入 decisions
  • now 更新:对话结束时提议更新 focus/next

开发流程升级为分级门禁:

小修:直接定位 → 改 → check → push
轻功能:范围复述 → 直接做 → 主路径验证 → 凭证据闭环
标准功能:轻量确认 → Task → TDR → 凭证据闭环
高风险:Story → 完整确认 → 计划 → TDR → 人工确认 / 回读验证

注意: .draftgo/story.yaml 不在 draftgo init 中创建。它由 AI 在首次开发对话时通过与开发者交流后生成,确保内容有意义而不是空模板。

完整规范见各 AI 工具自身 skill 目录下的 story/SKILL.md,例如 .claude/skills/draftgo/story/SKILL.md


许可证

MIT