diff --git a/.claude/agents/content-explorer-agent.md b/.claude/agents/content-explorer-agent.md index 7fd7185..c01292c 100644 --- a/.claude/agents/content-explorer-agent.md +++ b/.claude/agents/content-explorer-agent.md @@ -30,8 +30,10 @@ tools: ["Task", "Read", "Bash", "Grep", "Glob"] ## 工作流程 -### 步骤 1: 读取内容标准模板 -使用 `Read` 工具读取 `PROJECT_CONTENT_STANDARD.md`,理解内容质量要求。 +### 步骤 1: 读取数据模板 +使用 `Read` 工具读取 `.claude/schemas/project-content-template.md`,理解输出格式。 + +**注意**:质量标准在本文件的"内容质量标准"章节中定义。 ### 步骤 2: 批量探索项目 对批次中的每个任务,**并行**启动 `agent-browser` 子任务: @@ -42,13 +44,18 @@ tools: ["Task", "Read", "Bash", "Grep", "Glob"] - prompt: " 你是一个项目探索专家。请探索以下项目并返回结构化数据。 - 项目URL:${PROJECT_URL} + 项目URL:\${PROJECT_URL} 任务要求: 1. 导航到项目页面,提取 README 内容 2. 如果是 GitHub 项目,获取仓库信息(stars、forks、描述等) - 3. 按照 PROJECT_CONTENT_STANDARD.md 的标准整理信息 - 4. 生成符合以下 Schema 的 JSON 数据 + 3. 按照 .claude/schemas/project-content-template.md 的格式整理信息 + 4. 应用以下质量标准: + - 描述必须清晰说明项目功能和核心价值 + - 从README提取并重新组织内容,不要机械翻译 + - 避免营销术语,保持客观 + - 不将动态数据(stars、forks等)写入内容 + 5. 生成符合以下 Schema 的 JSON 数据 **重要:只返回纯JSON,不要任何其他内容** @@ -146,8 +153,9 @@ tools: ["Task", "Read", "Bash", "Grep", "Glob"] 1. **只返回JSON**: 不要添加任何解释性文字 2. **上下文隔离**: 每个子任务完成后即释放,结果只保留JSON 3. **并行处理**: 批次内的任务并行启动 -4. **质量标准**: 严格遵循 PROJECT_CONTENT_STANDARD.md -5. **数据验证**: 确保返回的JSON格式正确,字段完整 +4. **质量标准**: 遵循本文件的"内容质量标准"章节 +5. **数据格式**: 按照 `.claude/schemas/project-content-template.md` 的格式要求 +6. **数据验证**: 确保返回的JSON格式正确,字段完整 ## 数据Schema验证 @@ -172,3 +180,55 @@ tools: ["Task", "Read", "Bash", "Grep", "Glob"] - `"WEBSITE"`: 项目官网或文档 - `"HUGGINGFACE"`: Hugging Face模型/数据集链接 - `"PAPER"`: 论文链接 + +--- + +## 内容质量标准 + +### 描述质量要求 +- ✅ 清晰说明项目是做什么的 +- ✅ 突出项目的核心价值 +- ✅ 避免营销术语,保持客观 +- ❌ 避免直接复制README第一句作为描述 + +### 内容完整性要求 +- ✅ 从README中提取关键信息 +- ✅ 重新组织内容,使其更易读 +- ✅ 添加必要的上下文说明 +- ❌ 不要机械翻译,要符合中文表达习惯 + +### 验证规则 +- `description`: 必须 10-500 字符 +- `tags`: 必须 1-10 个标签 +- `links`: 必须 1-10 个链接,至少包含 1 个 `GITHUB` 链接 + +### 链接有效性 +- ✅ 所有链接都必须可访问 +- ✅ 优先使用GitHub仓库链接 +- ✅ 包含文档或Demo链接 + +--- + +## 数据处理策略 + +### 内容来源优先级 +1. **README.md** - 主要信息来源 +2. **官网/文档** - 补充说明 +3. **代码结构** - 理解技术实现 +4. **Issues/Discussions** - 了解用户反馈 + +### 动态数据处理 + +以下数据**不应**写入内容中(使用 GitHub Badge 显示): +- Star/Fork 数量 +- 最近更新时间 +- 贡献者数量 +- Issue/PR 数量 + +--- + +## 注意事项 + +1. **保持客观**:避免过度夸大或营销语言 +2. **用户视角**:从用户角度描述价值,而非技术实现细节 +3. **灵活应用**:根据项目实际情况动态调整内容结构 diff --git a/.claude/commands/discover-projects.md b/.claude/commands/discover-projects.md index 57109e9..0d3af8c 100644 --- a/.claude/commands/discover-projects.md +++ b/.claude/commands/discover-projects.md @@ -87,8 +87,10 @@ TOTAL_TASKS=$(echo "$RESPONSE" | grep -o '"tasks":\[' | wc -l) 如果没有任务,显示提示并退出。 -#### 1.3 读取内容标准模板 -使用 `Read` 工具读取 `PROJECT_CONTENT_STANDARD.md`,理解内容质量要求。 +#### 1.3 读取数据模板 +使用 `Read` 工具读取 `.claude/schemas/project-content-template.md`,理解数据格式要求。 + +**注意**:质量标准由 `content-explorer-agent` 内部管理,主命令不需要处理。 --- @@ -260,8 +262,8 @@ fi - 更新状态:`/api/discovery/tasks/{id}` ### 质量标准 -- 严格遵循 `PROJECT_CONTENT_STANDARD.md` 的内容质量要求 -- Content Explorer Agent 内部会进行质量检查 +- 数据格式遵循 `.claude/schemas/project-content-template.md` +- 质量标准由 `content-explorer-agent` 内部管理和执行 ### 数据库影响 - 所有操作直接在生产数据库上进行 diff --git a/.claude/schemas/project-content-template.md b/.claude/schemas/project-content-template.md new file mode 100644 index 0000000..0d335de --- /dev/null +++ b/.claude/schemas/project-content-template.md @@ -0,0 +1,127 @@ +# 项目内容数据模板 + +此文档定义了项目探索时需要收集的数据结构和输出格式。 + +## 数据 Schema + +### 基本信息 + +| 字段 | 类型 | 必需 | 约束 | 说明 | +|------|------|------|------|------| +| `name` | string | 是 | 1-200字符 | 项目中文名称(如果原项目是英文,需要翻译) | +| `nameEn` | string | 否 | 最多200字符 | 原始项目名称(保持原文) | +| `description` | string | 是 | 10-500字符 | 中文描述,1-2句话概括项目功能 | +| `descriptionEn` | string | 否 | 最多500字符 | 英文描述 | +| `content` | string | 否 | 最多10000字符 | 详细内容(中文,Markdown格式) | +| `contentEn` | string | 否 | 最多10000字符 | 详细内容(英文,Markdown格式) | +| `status` | enum | 否 | `"ACTIVE"` 或 `"ARCHIVED"` | 项目状态,默认 `"ACTIVE"` | +| `source` | string | 否 | 最多100字符 | 来源标识,默认 `"discovery"` | + +### 标签 (tags) + +数组,1-10个元素: + +| 字段 | 类型 | 必需 | 说明 | +|------|------|------|------| +| `name` | string | 是 | 标签中文名称 | +| `nameEn` | string | 否 | 标签英文名称 | + +### 外部链接 (links) + +数组,1-10个元素: + +| 字段 | 类型 | 必需 | 说明 | +|------|------|------|------| +| `type` | enum | 是 | 链接类型:`GITHUB`、`WEBSITE`、`HUGGINGFACE`、`PAPER` | +| `url` | string | 是 | 链接地址 | +| `title` | string | 否 | 链接标题 | + +## 详细内容结构(Markdown格式) + +`content` 字段建议包含以下章节(按需选择): + +```markdown +## 项目简介 +[项目背景、目的、解决的问题] + +## 核心功能 +### 功能1 +[详细说明] + +### 功能2 +[详细说明] + +## 技术架构 +[技术选型和架构说明] + +## 使用场景 +- 场景1 +- 场景2 + +## 项目特点 +- 特点1 +- 特点2 +``` + +## 标签分类建议 + +- **技术标签**:如 `NLP`、`Computer Vision`、`React` +- **应用标签**:如 `聊天机器人`、`数据分析` +- **状态标签**:如 `活跃维护`、`实验性项目` + +## 链接类型说明 + +| 类型 | 说明 | 示例 | +|------|------|------| +| `GITHUB` | GitHub仓库链接 | `https://github.com/user/project` | +| `WEBSITE` | 项目官网或文档 | `https://example.com/docs` | +| `HUGGINGFACE` | Hugging Face模型/数据集 | `https://huggingface.co/...` | +| `PAPER` | 论文链接 | `https://arxiv.org/...` | + +## JSON 格式示例 + +### 简洁版 +```json +{ + "name": "项目中文名称", + "nameEn": "Project English Name", + "description": "项目的中文描述,10-500字", + "descriptionEn": "English description", + "content": "## 项目简介\n\n详细内容...", + "contentEn": "## Introduction\n\nDetailed content...", + "status": "ACTIVE", + "source": "discovery", + "tags": [ + {"name": "AI", "nameEn": "Artificial Intelligence"}, + {"name": "机器学习", "nameEn": "Machine Learning"} + ], + "links": [ + {"type": "GITHUB", "url": "https://github.com/user/project"}, + {"type": "WEBSITE", "url": "https://example.com", "title": "官方网站"} + ] +} +``` + +### 完整版 +```json +{ + "name": "Claude Code", + "nameEn": "Claude Code", + "description": "Claude Code 是 Anthropic 官方推出的 CLI 工具,让开发者能够在终端中直接与 Claude AI 协作完成软件开发任务。支持代码编写、调试、重构、测试等全流程开发工作。", + "descriptionEn": "Claude Code is Anthropic's official CLI tool for direct developer-AI collaboration in the terminal.", + "content": "## 项目简介\n\nClaude Code 是 Anthropic 官方推出的命令行工具,将强大的 Claude AI 能力直接集成到开发者的终端环境中。\n\n## 核心功能\n\n- **智能代码编写**:自然语言描述需求,AI 生成符合项目规范的代码\n- **上下文感知**:自动理解整个项目结构,提供精准建议\n- **多工具协作**:集成文件操作、搜索、测试、版本控制等开发工具\n- **实时交互**:在终端中与 AI 进行对话式开发\n\n## 技术架构\n\n- **AI 模型**:基于 Claude 3.5 Sonnet / Opus\n- **架构模式**:App Router (Next.js 15)\n- **工具系统**:可扩展的工具调用框架\n\n## 使用场景\n\n- 快速原型开发\n- 代码重构和优化\n- Bug 诊断和修复\n- 测试用例生成", + "contentEn": "## Introduction\n\nClaude Code is Anthropic's official CLI tool that integrates powerful Claude AI capabilities directly into the developer's terminal environment.\n\n## Key Features\n\n- **Intelligent Code Writing**: Describe requirements in natural language, AI generates code that meets project specifications\n- **Context Awareness**: Automatically understands the entire project structure and provides precise suggestions\n- **Multi-tool Collaboration**: Integrated development tools for file operations, search, testing, and version control\n- **Real-time Interaction**: Conversational development with AI in the terminal\n\n## Tech Stack\n\n- **AI Model**: Based on Claude 3.5 Sonnet / Opus\n- **Architecture**: App Router (Next.js 15)\n- **Tool System**: Extensible tool invocation framework", + "status": "ACTIVE", + "source": "discovery", + "tags": [ + {"name": "AI", "nameEn": "Artificial Intelligence"}, + {"name": "开发工具", "nameEn": "Developer Tools"}, + {"name": "CLI", "nameEn": "Command Line Interface"}, + {"name": "代码助手", "nameEn": "Code Assistant"} + ], + "links": [ + {"type": "GITHUB", "url": "https://github.com/anthropics/claude-code"}, + {"type": "WEBSITE", "url": "https://claude.ai/claude-code", "title": "官方网站"} + ] +} +``` diff --git a/PROJECT_CONTENT_STANDARD.md b/PROJECT_CONTENT_STANDARD.md deleted file mode 100644 index 6b18267..0000000 --- a/PROJECT_CONTENT_STANDARD.md +++ /dev/null @@ -1,96 +0,0 @@ -# 项目内容标准模板 - -此文档定义了项目探索时需要收集的内容结构和质量标准。 - -## 必需内容 - -### 1. 基本信息 -- **中文名称**:项目的中文名称(如果原项目是英文,需要翻译) -- **英文名称**:原始项目名称(保持原文) -- **中文描述**:1-2句话概括项目功能(10-500字) -- **英文描述**:项目功能的英文描述 - -### 2. 详细内容(Markdown格式) -- **项目简介**:背景、目的、解决的问题 -- **核心功能**:主要功能列表或说明 -- **技术栈**:使用的技术、框架、工具 -- **使用场景**:适用场景和用例 -- **特点亮点**:与同类项目的差异化特点 - -### 3. 标签(1-10个) -- 技术标签:如 `NLP`, `Computer Vision`, `React` -- 应用标签:如 `聊天机器人`, `数据分析` -- 状态标签:如 `活跃维护`, `实验性项目` - -### 4. 外部链接(至少1个) -- **GitHub链接**:如果项目在GitHub上 -- **官网链接**:项目官方网站或文档 -- **Demo链接**:在线演示地址 -- **论文链接**:如果有相关论文 - -## 内容质量标准 - -### 描述质量 -- ✅ 清晰说明项目是做什么的 -- ✅ 突出项目的核心价值 -- ✅ 避免营销术语,保持客观 -- ❌ 避免直接复制README第一句 - -### 内容完整性 -- ✅ 从README中提取关键信息 -- ✅ 重新组织内容,使其更易读 -- ✅ 添加必要的上下文说明 -- ❌ 不要机械翻译,要符合中文表达习惯 - -### 链接有效性 -- ✅ 所有链接都必须可访问 -- ✅ 优先使用GitHub仓库链接 -- ✅ 包含文档或Demo链接 - -## 动态数据处理 - -以下数据**不应**写入内容中(使用GitHub Badge显示): -- Star/Fork数量 -- 最近更新时间 -- 贡献者数量 -- Issue/PR数量 - -## 内容来源优先级 - -1. **README.md** - 主要信息来源 -2. **官网/文档** - 补充说明 -3. **代码结构** - 理解技术实现 -4. **Issues/Discussions** - 了解用户反馈 - -## 示例格式 - -### 详细版(适用于复杂项目) -```markdown -## 背景 -[项目背景和动机] - -## 核心功能 -### 功能1 -[详细说明] - -### 功能2 -[详细说明] - -## 技术架构 -[技术选型和架构说明] - -## 使用场景 -- 场景1 -- 场景2 - -## 项目特点 -- 特点1 -- 特点2 -``` - -## 注意事项 - -1. **保持客观**:避免过度夸大或营销语言 -2. **用户视角**:从用户角度描述价值,而非技术实现细节 -3. **持续更新**:此标准会根据需要调整 -4. **灵活应用**:根据项目实际情况动态调整内容结构