MetaCraft/README.md

130 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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与人类协同的软件开发模式将重塑未来的开发工作流。