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

create-ai-engineering

v0.1.3

Published

AI 工程化项目初始化 CLI — 对抗式 Agent、Skills、安全审计、质量门控

Downloads

37

Readme

create-ai-engineering

AI 工程化项目初始化工具 — 让 AI 编程更可靠、更安全、更专业

为什么需要这个工具?

如果你使用 Claude Code、Cursor 等 AI 编程工具,可能会遇到这些问题:

  • AI 写的代码有 bug,但你不一定能发现
  • AI 偷懒,没有写测试、没有处理错误
  • AI 不知道项目规范,每次都要重新解释
  • 安全问题,AI 可能会写出有漏洞的代码

这个工具通过一套**"对抗式"工作流**解决这些问题。


核心概念(新手也能懂)

🎭 对抗式 Agent 体系

想象一个工厂的质量管理:

| 角色 | 职责 | 类比 | |---|---|---| | Writer | 写代码 | 工人生产产品 | | Checker | 找问题 | 质检员挑毛病 | | Fixer | 修复问题 | 返工修复缺陷 |

工作流程

Writer 写代码 → Checker 审查 → 没问题就通过 / 有问题就 Fixer 修复 → Checker 复查

为什么要这样? 因为如果只有一个 AI 写代码,它不会认真检查自己的工作。让两个 AI 互相"对抗",质量会高很多。

📋 Skills 工作流

Skills 就像是给 AI 的操作手册,告诉 AI 应该按什么步骤做事:

| Skill | 用途 | 触发时机 | |---|---|---| | tdd-workflow | 先写测试再写代码 | 新功能开发时 | | systematic-debug | 系统化调试,不要瞎猜 | 遇到 bug 时 | | code-review | 提交前自我检查 | 准备提交代码时 | | secure-code | 安全编码检查 | 处理用户输入、认证时 |

🔒 安全审计

检查 AI 工具本身是否安全:

  • MCP 审计:检查安装的 MCP 插件有没有恶意行为
  • Skill 审计:检查 Skill 文件有没有指令注入
  • Hook 审计:检查 Hook 有没有执行危险命令

🚦 质量门控

就像考驾照前的体检,提交代码前自动检查:

  • 有没有硬编码密码?
  • 有没有漏掉错误处理?
  • 测试覆盖率够不够?

快速开始(三步流程)

Step 1: CLI 初始化

# 创建新项目
npx create-ai-engineering my-project

# 或添加到现有项目
cd existing-project
npx create-ai-engineering --add-to-existing .

CLI 会:

  • 创建目录结构
  • 全量安装所有模板文件(Agent、Skills、Commands、Scripts)
  • 作为"参考文档"存在

Step 2: 进入项目

cd my-project

Step 3: 执行 /ai-init关键步骤

在 Claude Code 中执行:

/ai-init

AI 会:

  1. 检测项目状态(空白项目 vs 现有项目)
  2. 触发 brainstorming 进入 Plan 模式
  3. 灵活对话采集需求(苏格拉底式)
  4. 确认技术方案
  5. 自动补全工程化内容

为什么这样设计?

CLI 不询问技术栈的原因

问题:在 CLI 初始化阶段,用户还没有深入思考项目需求,技术栈选择往往是盲目的。

解决:让 /ai-init 在 AI 辅助下采集需求,然后确定技术栈。

/ai-init 的设计理念

不固定问卷:AI 自主决定怎么和用户对话,根据项目特点灵活调整问题。

触发 brainstorming:复用已有的需求探索能力,不重新发明轮子。

自动补全:需求确认后,AI 自动执行所有补全操作。


生成的结构

my-project/
├── .claude/
│   ├── agents/           # 对抗式 Agent 定义
│   │   ├── writer.md     # 写代码的 Agent
│   │   ├── checker.md    # 审查的 Agent
│   │   └── fixer.md      # 修复的 Agent
│   ├── skills/           # 工作流 Skills
│   │   ├── tdd-workflow.md
│   │   ├── systematic-debug.md
│   │   ├── code-review.md
│   │   └── secure-code.md
│   └── commands/         # Slash Commands
│       ├── ai-init.md    # 核心初始化命令 ⭐
│       ├── ai-optimize.md
│       ├── audit.md
│       ├── quality.md
│       └── harness.md
│
├── docs/
│   └── ai-engineering/   # 团队共享文档
│       ├── TECH_STACK.md # 技术栈声明(/ai-init 后填充)
│       ├── CODE_STANDARDS.md # 编码规范
│       ├── LEARNINGS.md  # 经验积累
│       └── AI_ENGINEERING_GUIDE.md
│
├── scripts/              # 工具脚本
│   ├── ai-tool-audit.sh  # 安全审计
│   ├── quality-gate.sh   # 质量门控
│   ├── harness-init.sh   # 流程管理
│   └── init-ai-project.sh
│
├── rules/                # 编码规则(/ai-init 后创建)
│
├── CLAUDE.md             # AI 项目规范
├── AGENTS.md             # 跨平台 Agent 定义
└── .claudeignore         # AI 忽略文件

/ai-init 命令详解

初始化完成后,在 Claude Code 中执行 /ai-init,AI 会自动:

Phase 1: 项目状态检测

  • 检查是空白项目还是现有项目
  • 扫描配置文件(package.json, go.mod, pyproject.toml 等)
  • 向用户报告检测结果

Phase 2: Brainstorming(需求探索)

AI 进入 Plan 模式,灵活对话采集需求:

基础需求

  • 项目目的、目标用户、项目规模、时间约束、参考项目

技术方案

  • 编程语言、后端框架、前端框架、数据库、API设计、认证、性能、部署

用户可随时结束对话,AI 基于已收集信息继续。

Phase 3: 自动补全

  • 更新 TECH_STACK.md
  • 更新 CLAUDE.md
  • 创建 CODE_STANDARDS.md
  • 更新 .claudeignore
  • 创建 rules/<语言>/ 目录
  • 激活相关 Agent 和 Skills

多平台支持

| 平台 | 支持程度 | 配置文件 | |---|---|---| | Claude Code | ✅ 完整支持 | CLAUDE.md, .claude/* | | Cursor | ⚠️ 部分支持 | .cursorrules, AGENTS.md | | Codex | ⚠️ 部分支持 | AGENTS.md, instructions/ | | OpenCode | ⚠️ 部分支持 | AGENTS.md, instructions/ |


功能激活策略

| 功能 | 默认状态 | 激活条件 | |---|---|---| | 对抗式 Agent | 参考(未激活) | /ai-init 确认需要 | | TDD Skill | 参考 | 用户确认需要测试流程 | | 安全审计脚本 | 安装(可用) | 始终可用 | | 质量门控脚本 | 安装(可用) | 始终可用,可配置 Hook |


常见问题

Q: 我不会编程,能用这个工具吗?

可以!这个工具主要是给 AI 用的。你只需要:

  1. 初始化项目
  2. 执行 /ai-init
  3. 回答 AI 的问题
  4. AI 会帮你写代码、审查代码

Q: 必须用三个 Agent 吗?

不是必须的。小型改动可以只用 Writer。重要功能建议走完整流程。

Q: Skills 是自动触发的吗?

默认手动触发。你可以配置 Hook 让特定场景自动触发。

Q: 和普通 AI 编程有什么区别?

| 普通模式 | AI 工程化模式 | |---|---| | AI 写完就提交 | Checker 审查后才提交 | | Bug 靠发现后修 | TDD 先写测试再写代码 | | 每次重新解释规范 | 规范写在 CLAUDE.md 里 | | 安全问题靠运气 | 安全审计强制检查 | | 技术栈靠猜 | /ai-init 确认后确定 |

Q: /ai-init/ai-optimize 有什么区别?

| 命令 | 用途 | 项目状态 | |---|---| | /ai-init | 苏格拉底采访 + 初始化 | 空白项目或需要需求确认 | | /ai-optimize | 分析已有代码 + 补充 | 已有代码的项目 |


开发与贡献

# 克隆仓库
git clone https://github.com/Genzhen/create-ai-engineering.git
cd create-ai-engineering

# 安装依赖
npm install

# 本地测试
npm link
create-ai-engineering test-project

License

MIT