MetaCraft/README.md

130 lines
5.2 KiB
Markdown
Raw Normal View History

# MetaCraft: AI-Powered Meta-Development Tool
## 愿景
MetaCraft 是一个基于AI大语言模型的元开发工具旨在辅助任意大型项目的开发。其核心思想是**将软件开发过程转化为一系列可组合、可执行的prompt、脚本和文档**并通过Claude Code与AI智能体协作实现项目的迭代构建。
更特别的是MetaCraft 项目本身也使用这套工具进行开发形成“自举”bootstrapping的闭环从而验证和优化工具链的有效性。
## 核心概念
### 1. 开发即对话 (Development as Conversation)
- 每个开发任务都可以表示为一个**prompt**,描述目标、约束和上下文。
- AI通过Claude Code理解prompt并生成或修改代码、文档、脚本。
- 开发者与AI的对话历史成为项目演进的可追溯记录。
### 2. 可执行的知识 (Executable Knowledge)
- **Node.js 脚本** 用于自动化重复操作(如文件生成、测试运行、依赖安装)。
- **Markdown 文档** 记录设计决策、架构说明、使用指南同时也可作为AI的上下文输入。
- **Claude Code 执行** 作为与AI交互的桥梁执行prompt并获取结果。
### 3. 自举 (Bootstrapping)
- MetaCraft 工具链本身通过MetaCraft定义的工作流进行开发。
- 任何新功能首先被描述为prompt和脚本然后由AI协助实现并最终用于增强工具链。
- 这种自举确保工具始终贴近实际开发需求,并能自我改进。
## 架构概述
```
MetaCraft/
├── prompts/ # 任务prompt库
│ ├── project-init.md
│ ├── feature-add.md
│ ├── bug-fix.md
│ └── refactor.md
├── scripts/ # Node.js 自动化脚本
│ ├── generate.js
│ ├── validate.js
│ ├── deploy.js
│ └── bootstrap.js # 自举脚本
├── docs/ # 项目文档
│ ├── ARCHITECTURE.md
│ ├── WORKFLOW.md
│ └── SELF-HOSTING.md
├── templates/ # 代码/文件模板
│ └── ...
├── config/ # 配置文件
│ └── default.json
└── meta/ # 工具自身的元数据
└── manifest.json # 描述工具组件及依赖
```
### 核心组件
1. **Prompt 引擎**解析prompt文件注入上下文变量调用Claude Code执行。
2. **脚本执行器**运行Node.js脚本提供统一的API用于文件操作、Git操作、命令执行等。
3. **上下文管理器**维护项目状态如当前模块、依赖关系、待办任务为AI提供连贯的上下文。
4. **自举循环**一个内置的工作流用于更新工具自身——检测新需求生成prompt执行脚本验证变更。
## 快速开始
### 前提条件
- Node.js 18+
- Claude Code CLI 已安装并配置
- Git
### 初始化新项目
```bash
# 使用MetaCraft初始化一个项目假设已安装meta-cli
npx meta-cli init my-project
```
### 开发一个功能
1.`prompts/` 下创建一个新的prompt文件描述功能需求。
2. 运行 `node scripts/run-prompt.js prompts/my-feature.md`让AI生成代码草案。
3. 审查生成的代码,运行测试,提交更改。
### 参与MetaCraft自举开发
1. 查看 `meta/todo.md` 获取待开发任务。
2. 选择任务,在 `prompts/` 中编写或更新prompt。
3. 执行 `node scripts/bootstrap.js` 启动自举循环AI将协助实现该任务。
4. 提交Pull Request。
## 工作流示例
假设要添加一个REST API端点
1. **任务描述**:创建 `prompts/add-rest-endpoint.md`,描述端点路径、方法、参数、返回类型。
2. **上下文注入**:工具自动注入现有项目结构、相关模块的代码片段。
3. **AI执行**Claude Code读取prompt生成或修改控制器、路由、模型文件。
4. **脚本验证**:运行 `node scripts/validate.js` 检查语法、运行单元测试。
5. **文档更新**AI同时更新API文档记录新端点。
## 贡献指南
MetaCraft 是一个自举项目,欢迎通过以下方式参与:
1. **报告问题**在GitHub Issues中描述问题或建议。
2. **提交prompt**改进现有prompt或添加新prompt模板。
3. **增强脚本**:优化自动化脚本,提高可靠性。
4. **文档完善**:补充使用案例、最佳实践。
请阅读 [CONTRIBUTING.md](CONTRIBUTING.md) 了解详细流程。
## 路线图
### 短期v0.1
- [ ] 基础prompt引擎和脚本执行器
- [ ] 简单的自举循环原型
- [ ] 初始化项目模板
- [ ] 基础文档
### 中期v0.5
- [ ] 上下文管理器,支持多模块项目
- [ ] 集成测试框架
- [ ] 插件系统支持自定义脚本和prompt类型
- [ ] 可视化任务看板
### 长期v1.0
- [ ] 完整的自举闭环,工具能独立完成大部分自身开发任务
- [ ] 多AI后端支持Claude, GPT, 本地模型等)
- [ ] 云协作功能团队共享prompt库和上下文
- [ ] 领域特定扩展Web, 移动, 嵌入式等)
## 许可证
MIT
## 致谢
本项目受启发于“元编程”、“自举”理念以及Claude Code等AI辅助开发工具的出现。我们相信AI与人类协同的软件开发模式将重塑未来的开发工作流。