create-agent-ready
v0.1.6
Published
Scaffold an agent-ready Node.js + TypeScript project with team conventions baked in
Readme
create-agent-ready
npm create agent-ready@latest <项目名> —— 生成一个「agent-ready」的通用 Node.js + TypeScript 项目,把团队约定(目录规范、AGENTS.md、createXXX 工厂、分支工作流等)固化成模板,开新项目不用重搭。
用法
npm create agent-ready@latest my-app # 代码生成到 ./my-app,AGENTS.md 写到当前目录
npm create agent-ready@latest my-app ./apps/a # 指定代码目标目录定位:你在「容器目录」执行命令——代码进 ./my-app/ 子目录,AGENTS.md 团队约定写到容器目录本身(已有 AGENTS.md 会报错不覆盖),容器目录用来放与项目相关的其它资料。要求 Node >= 23.6。
本地开发
pnpm install
pnpm test
pnpm typecheck
# 本地试跑脚手架
node src/cli.ts my-app /tmp/my-app
# 或 link 成全局命令
pnpm link --global
create-agent-ready my-app发布
npm publish # prepublishOnly 自动跑 pnpm build发布前必须 pnpm build 出 dist/cli.js(bin 指向它):Node 的 type-stripping 不作用于 node_modules 下的文件,包被安装后 .ts 入口跑不了,所以发布产物是 esbuild bundle 出的单文件 js;开发期仍保持零构建直跑 src/*.ts。esbuild 的 postinstall 走 pnpm-workspace.yaml 的 allowBuilds 白名单(pnpm 11 已弃用 onlyBuiltDependencies)。
结构
src/
├─ cli.ts # 入口:参数解析、项目名校验、非空目录保护
├─ scaffold.ts # createScaffold():遍历模板、替换占位符、写盘
└─ render.ts # createRenderer():{{project_name}} 占位符替换
templates/base/ # 模板,纯数据文件,生成时原样拷贝并替换占位符