{"_id":"@aisd/sub-agents","_rev":"2-7cb65f328728f6ae8d0af5d2a8a01b84","name":"@aisd/sub-agents","dist-tags":{"latest":"0.1.1"},"versions":{"0.1.0":{"name":"@aisd/sub-agents","version":"0.1.0","_id":"@aisd/sub-agents@0.1.0","maintainers":[{"name":"foundj","email":"mfj@qq.com"}],"dist":{"shasum":"e66b4613e3287d2100381dd68910f3522cfa292e","tarball":"https://registry.npmjs.org/@aisd/sub-agents/-/sub-agents-0.1.0.tgz","fileCount":63,"integrity":"sha512-rOuS0Bni6ZGyYm2x8R9q5JmhSK6OuoXhHwqPaQNPbChemdLjQo6DLWrwdekJR8dpvDi6N0S0WhoXPR6LZz7mHA==","signatures":[{"sig":"MEYCIQCzm0xfLMtcP3m+XIBQLbp7lSpquyVWWUNp5wMvif7VvQIhALWF77SUm9dFsy2j7XQv+yeehczg95cCfxW+VatyC3l4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":551448},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"aae16c56cbaf597231faf5df3cefa8394123346f","scripts":{"dev":"tsc --watch","test":"vitest","build":"tsc"},"_npmUser":{"name":"foundj","email":"mfj@qq.com"},"_npmVersion":"10.9.2","description":"Distributed intelligent agent system for AISD Toolkit","directories":{},"_nodeVersion":"22.14.0","dependencies":{"zod":"^3.22.4","@aisd/core":"workspace:*","eventemitter3":"^5.0.1"},"_hasShrinkwrap":false,"devDependencies":{"vitest":"^2.1.8","p-queue":"^7.4.1","typescript":"^5.3.2","@types/node":"^20.10.0","@types/p-queue":"^3.2.1"},"_npmOperationalInternal":{"tmp":"tmp/sub-agents_0.1.0_1753781728867_0.9186403110603016","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@aisd/sub-agents","version":"0.1.1","description":"Distributed intelligent agent system for AISD Toolkit","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"build":"tsc","dev":"tsc --watch","test":"vitest"},"dependencies":{"@aisd/core":"^0.1.1","eventemitter3":"^5.0.1","zod":"^3.22.4"},"devDependencies":{"@types/node":"^20.10.0","@types/p-queue":"^3.2.1","p-queue":"^7.4.1","typescript":"^5.3.2","vitest":"^2.1.8"},"_id":"@aisd/sub-agents@0.1.1","gitHead":"5afd0cab7e35fbf7b975593037eebdd50f5f532c","_nodeVersion":"22.14.0","_npmVersion":"10.9.2","dist":{"integrity":"sha512-zR4xeotbcMEVHO4tEKOpISBsxF6R4RYxWP/fMKRgNF3uRK8go8Cnmlv/+jVtqelynJHbvqKjNdJfwxUfeMSq9Q==","shasum":"082a5a4ece6ff59ce020495ab3392abacb4e955c","tarball":"https://registry.npmjs.org/@aisd/sub-agents/-/sub-agents-0.1.1.tgz","fileCount":64,"unpackedSize":550133,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIAZClj+bH5BlCFS1IlL79kH2DQV1yX+RM0N+PNTVaBdUAiBPUKD08XqO6eckvJhNIs9aYkrvDGgo+6HI/kPQxCurIg=="}]},"_npmUser":{"name":"foundj","email":"mfj@qq.com"},"directories":{},"maintainers":[{"name":"foundj","email":"mfj@qq.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sub-agents_0.1.1_1754132145710_0.4131070334915645"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-29T09:35:28.746Z","modified":"2025-08-02T10:55:46.139Z","0.1.0":"2025-07-29T09:35:29.097Z","0.1.1":"2025-08-02T10:55:45.958Z"},"description":"Distributed intelligent agent system for AISD Toolkit","maintainers":[{"name":"foundj","email":"mfj@qq.com"}],"readme":"# AISD Sub-Agents 系统\n\n基于 Anthropic 的 sub-agents 模式实现的分布式智能代理系统，为 AISD Toolkit 提供专业化的 AI 能力。\n\n## 特性\n\n- **专业化分工**：每个 agent 专注特定领域，提供深度专业知识\n- **并行执行**：支持多个 agents 并行工作，提高效率\n- **灵活组合**：agents 可自由组合完成复杂任务\n- **消息总线**：完善的 agent 间通信机制\n- **易于扩展**：简单的 API 支持添加新的专业 agents\n\n## 安装\n\n```bash\npnpm add @aisd/sub-agents\n```\n\n## 快速开始\n\n```typescript\nimport { createOrchestrator } from '@aisd/sub-agents';\n\n// 创建 orchestrator\nconst orchestrator = createOrchestrator();\n\n// 执行需求分析\nconst result = await orchestrator.executeWorkflow({\n  type: 'requirement-analysis',\n  input: {\n    rawRequirements: '用户需要一个实时协作的文档编辑器...',\n    projectContext: {\n      domain: 'collaboration-tools'\n    }\n  }\n});\n\n// 处理结果\nif (result.success) {\n  result.results.forEach((output, agentId) => {\n    console.log(`${agentId}: `, output.data);\n  });\n}\n```\n\n## 可用的 Agents\n\n### Requirements Agent\n- **ID**: `requirements-agent`\n- **功能**: 需求分析、EARS 转换、依赖识别\n- **输入**: 原始需求文本、项目上下文\n- **输出**: EARS 格式需求、澄清问题、风险评估\n\n### Architecture Agent (开发中)\n- **ID**: `architecture-agent`\n- **功能**: 技术架构设计、技术选型\n- **输入**: EARS 需求、技术约束\n- **输出**: 架构图、技术栈建议、ADR\n\n### Testing Agent (开发中)\n- **ID**: `testing-agent`\n- **功能**: 测试策略制定、测试用例生成\n- **输入**: 需求、架构设计\n- **输出**: 测试策略、测试用例、测试数据\n\n### Code Review Agent (开发中)\n- **ID**: `code-review-agent`\n- **功能**: 代码质量审查、安全检查\n- **输入**: 代码文件、审查标准\n- **输出**: 问题列表、改进建议\n\n### Documentation Agent (开发中)\n- **ID**: `documentation-agent`\n- **功能**: 文档生成、API 文档维护\n- **输入**: 代码库、架构设计\n- **输出**: 技术文档、API 文档、用户指南\n\n### Knowledge Agent (开发中)\n- **ID**: `knowledge-agent`\n- **功能**: 知识提取、模式识别\n- **输入**: 项目历史、代码变更\n- **输出**: 最佳实践、经验教训\n\n## 创建自定义 Agent\n\n```typescript\nimport { BaseAgent, AgentInput, ValidationResult } from '@aisd/sub-agents';\n\nexport class MyCustomAgent extends BaseAgent {\n  constructor() {\n    super({\n      id: 'my-custom-agent',\n      name: 'My Custom Agent',\n      description: '自定义 agent 描述',\n      capabilities: [\n        {\n          name: 'analyze',\n          description: '分析功能'\n        }\n      ]\n    });\n  }\n\n  protected async validateInput(input: AgentInput): Promise<ValidationResult> {\n    // 验证输入\n    return { valid: true };\n  }\n\n  protected async prepareContext(input: AgentInput) {\n    // 准备上下文\n    return input.context;\n  }\n\n  protected async executeTask(context: any, data: any) {\n    // 执行任务\n    return { result: 'success' };\n  }\n\n  protected async formatOutput(result: any) {\n    // 格式化输出\n    return result;\n  }\n}\n\n// 注册自定义 agent\norchestrator.registerAgent(new MyCustomAgent());\n```\n\n## 工作流类型\n\n### 预定义工作流\n- `requirement-analysis`: 需求分析工作流\n- `code-review`: 代码审查工作流\n- `knowledge-extraction`: 知识提取工作流\n\n### 自定义工作流\n```typescript\nconst result = await orchestrator.executeWorkflow({\n  type: 'custom',\n  agents: ['agent1', 'agent2'],\n  input: { /* 输入数据 */ },\n  options: {\n    parallel: true,\n    timeout: 60000\n  }\n});\n```\n\n## 事件监听\n\n```typescript\n// 监听工作流事件\norchestrator.on('workflow:start', ({ workflowId, task }) => {\n  console.log(`工作流开始: ${workflowId}`);\n});\n\norchestrator.on('workflow:complete', ({ workflowId, result }) => {\n  console.log(`工作流完成: ${workflowId}`);\n});\n\n// 监听 agent 事件\norchestrator.on('agent:registered', ({ agentId }) => {\n  console.log(`Agent 注册: ${agentId}`);\n});\n\n// 监听日志\norchestrator.on('log', ({ level, message, agentId }) => {\n  console.log(`[${agentId}] ${level}: ${message}`);\n});\n```\n\n## CLI 集成\n\n```bash\n# 分析需求文档\naisd analyze -t requirements -i requirements.txt -o analysis.json\n\n# 使用特定 agents\naisd analyze -t code-review -a code-review-agent,testing-agent -i pr.json\n\n# 提取项目知识\naisd analyze -t knowledge-extraction -i project-history.json\n```\n\n## 配置选项\n\n```typescript\nconst orchestrator = new AISDOrchestrator({\n  maxConcurrency: 5,      // 最大并发数\n  timeout: 60000,         // 超时时间(ms)\n  retryFailedAgents: true, // 失败重试\n  logLevel: 'info'        // 日志级别\n});\n```\n\n## 最佳实践\n\n1. **选择合适的 agents**：根据任务类型选择必要的 agents，避免过度使用\n2. **优化输入数据**：提供结构化的输入数据以获得更好的结果\n3. **处理错误**：始终检查 `result.success` 并处理错误情况\n4. **监控性能**：使用事件监听跟踪执行时间和资源使用\n5. **渐进式采用**：从单个 agent 开始，逐步增加复杂度\n\n## 路线图\n\n- [ ] 完成所有核心 agents 实现\n- [ ] 添加 agent 间直接通信\n- [ ] 实现 agent 状态持久化\n- [ ] 支持流式输出\n- [ ] 添加更多预定义工作流\n- [ ] 性能优化和缓存机制\n\n## 贡献\n\n欢迎贡献新的 agents 或改进现有功能！请查看贡献指南。\n\n## 许可证\n\nMIT","readmeFilename":"README.md"}