From 34346be862b5199c734fb0d21698d831a62e16ed Mon Sep 17 00:00:00 2001 From: arno Date: Sun, 19 Apr 2026 16:43:44 +0800 Subject: [PATCH] =?UTF-8?q?=E9=85=8D=E7=BD=AE:=20=E5=88=9D=E5=A7=8B?= =?UTF-8?q?=E5=8C=96=20ISOS=20Agent=20Teams=20=E8=BD=AF=E4=BB=B6=E7=A0=94?= =?UTF-8?q?=E5=8F=91=E6=A8=A1=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .claude/CLAUDE.md | 118 ++ .claude/agents/isos-agents-config.md | 141 ++ .claude/agents/isos-backend-agent.md | 75 ++ .claude/agents/isos-frontend-agent.md | 100 ++ .claude/agents/isos-project-manager-agent.md | 98 ++ .claude/agents/isos-test-agent.md | 120 ++ .claude/commands/isos-backend.md | 35 + .claude/commands/isos-doc-前端开发.md | 188 +++ .claude/commands/isos-doc-后端开发.md | 188 +++ .claude/commands/isos-doc-架构.md | 196 +++ .claude/commands/isos-doc-测试.md | 198 +++ .claude/commands/isos-doc-设计.md | 196 +++ .claude/commands/isos-doc-运维.md | 197 +++ .claude/commands/isos-doc-需求.md | 186 +++ .claude/commands/isos-doc-项目.md | 195 +++ .claude/commands/isos-docker-clear.md | 114 ++ .claude/commands/isos-frontend.md | 33 + .claude/commands/isos-md-export.md | 43 + .claude/commands/isos-pdf2md.md | 82 ++ .claude/commands/isos-pm.md | 60 + .claude/commands/isos-pr.md | 111 ++ .claude/commands/isos-test.md | 47 + .claude/commands/isos-tmux-monitor.md | 70 + .claude/commands/isos-tmux-team.md | 129 ++ .claude/hooks/agent-pane-track.sh | 157 +++ .claude/hooks/restore-title-via-tmux.sh | 53 + .claude/hooks/save-title-on-clear.sh | 44 + .claude/hooks/team-pane-cleanup.sh | 127 ++ .claude/hooks/user-prompt-submit.sh | 63 + .claude/settings.json | 93 ++ .claude/settings.local.json | 13 + .claude/skills/speckit-analyze/SKILL.md | 193 +++ .claude/skills/speckit-checklist/SKILL.md | 304 +++++ .claude/skills/speckit-clarify/SKILL.md | 186 +++ .claude/skills/speckit-constitution/SKILL.md | 89 ++ .claude/skills/speckit-implement/SKILL.md | 208 +++ .claude/skills/speckit-plan/SKILL.md | 154 +++ .claude/skills/speckit-specify/SKILL.md | 307 +++++ .claude/skills/speckit-tasks/SKILL.md | 200 +++ .claude/skills/speckit-taskstoissues/SKILL.md | 39 + .devcontainer/.env.example | 100 ++ .devcontainer/Dockerfile | 229 ++++ .devcontainer/devcontainer.json | 67 + .devcontainer/docker-compose.display.yml | 21 + .devcontainer/docker-compose.yml | 81 ++ .devcontainer/download-resources.sh | 1134 +++++++++++++++++ .devcontainer/lib.sh | 539 ++++++++ .devcontainer/opencode.json.example | 9 + .devcontainer/post-create.sh | 1034 +++++++++++++++ .devcontainer/scripts/code-wrapper | 25 + .devcontainer/templates/.claude.json | 58 + .devcontainer/templates/bashrc.tail.sh | 136 ++ .devcontainer/templates/runcc.sh | 85 ++ .devcontainer/templates/runoc.sh | 73 ++ .devcontainer/templates/settings.json | 25 + .gitea/workflows/ci.yml | 22 + .gitignore | 75 ++ .mcp.json | 3 + .python-version | 1 + .specify/init-options.json | 10 + .specify/integration.json | 7 + .specify/integrations/claude.manifest.json | 18 + .../claude/scripts/update-context.ps1 | 23 + .../claude/scripts/update-context.sh | 28 + .specify/integrations/speckit.manifest.json | 18 + .specify/memory/constitution.md | 50 + .specify/scripts/bash/check-prerequisites.sh | 190 +++ .specify/scripts/bash/common.sh | 336 +++++ .specify/scripts/bash/create-new-feature.sh | 400 ++++++ .specify/scripts/bash/setup-plan.sh | 73 ++ .specify/scripts/bash/update-agent-context.sh | 838 ++++++++++++ .specify/templates/agent-file-template.md | 28 + .specify/templates/checklist-template.md | 40 + .specify/templates/constitution-template.md | 50 + .specify/templates/plan-template.md | 104 ++ .specify/templates/spec-template.md | 128 ++ .specify/templates/tasks-template.md | 251 ++++ .vscode/settings.json | 9 + CLAUDE.md | 124 ++ docs/01-用户需求.md | 68 + docs/02-产品需求.md | 96 ++ docs/03-功能列表.md | 58 + docs/04-用户故事.md | 123 ++ docs/05-设计-UI.md | 120 ++ docs/06-设计-UX.md | 85 ++ docs/07-系统架构.md | 123 ++ docs/08-数据库设计.md | 116 ++ docs/09-API契约.md | 142 +++ docs/10-测试-方案.md | 188 +++ docs/11-工程规范.md | 188 +++ docs/12-管理-项目.md | 208 +++ docs/13-Mermaid图集.md | 71 ++ docs/CLAUDE.md | 43 + docs/README.md | 92 ++ docs/review/.gitkeep | 0 docs/superpowers/plans/.gitkeep | 0 docs/superpowers/specs/.gitkeep | 0 docs/测试-单元.md | 89 ++ docs/测试-报告.md | 41 + docs/测试-接口-分类.md | 42 + docs/测试-接口.md | 92 ++ docs/测试-用例.md | 110 ++ docs/测试-计划.md | 200 +++ docs/管理-Agent-Team分工及提示词.md | 285 +++++ docs/管理-开发入门.md | 232 ++++ docs/管理-开发环境搭建.md | 142 +++ docs/设计-Apple风格.md | 325 +++++ docs/设计-UI-主界面.md | 52 + docs/设计-UI-状态组件.md | 44 + docs/设计-UX-交互模式.md | 48 + docs/设计-UX-操作流程.md | 43 + docs/设计-UX-无障碍与响应式.md | 108 ++ docs/设计-UX-用户旅程.md | 49 + docs/设计-UX-错误处理.md | 62 + docs/运维-发布日志.md | 36 + docs/运维-安全审计.md | 86 ++ docs/运维-性能基准.md | 51 + docs/运维-故障排除.md | 72 ++ docs/运维-部署实施.md | 41 + member/.gitkeep | 0 member/vscode.chat.md | 60 + memory/.gitkeep | 0 memory/MEMORY.md | 52 + memory/agent-pane-cleanup.md | 60 + memory/agent-team-collaboration.md | 96 ++ memory/agent-team-tmux-constraints.md | 18 + memory/cc-alias.md | 11 + memory/ci-cd-experience.md | 33 + memory/claude-code-model-config.md | 37 + memory/claude-code-rename.md | 11 + memory/design-patterns.md | 30 + memory/desktop-tech-stack-change.md | 15 + memory/devcontainer-sync.md | 12 + memory/doc-versioning-rules.md | 35 + memory/docs-chinese-naming.md | 20 + memory/docs-readme-index.md | 30 + memory/font-cross-platform.md | 26 + memory/member-directory-rules.md | 13 + memory/memory-vs-team-responsibility.md | 19 + memory/pdf2md-usage.md | 43 + memory/playwright-screenshots.md | 10 + memory/subagent-alternative.md | 18 + memory/tasks-directory-location.md | 11 + memory/tasks-doc-line-limit.md | 15 + memory/terminology-consistency.md | 28 + memory/tmux-send-keys-enter.md | 41 + memory/ui-testing.md | 31 + memory/user-preferences.md | 11 + memory/vcs-preference-jj.md | 41 + prompts/agent-api-test.md | 48 + prompts/agent-review-architecture.md | 59 + prompts/agent-review-backend.md | 59 + prompts/agent-review-design.md | 58 + prompts/agent-review-devops.md | 57 + prompts/agent-review-frontend.md | 60 + prompts/agent-review-project.md | 58 + prompts/agent-review-requirement.md | 60 + prompts/agent-review-user.md | 62 + prompts/agent-test-cases.md | 49 + prompts/agent-test-lead-review.md | 52 + prompts/agent-test-lead-unify.md | 57 + prompts/agent-test-plan.md | 62 + prompts/agent-test-scheme.md | 92 ++ prompts/agent-unit-test.md | 67 + scripts/md_export.py | 224 ++++ scripts/pdf2md.sh | 232 ++++ scripts/status-line.sh | 37 + scripts/test-tmux-send-prompt-integ.sh | 285 +++++ scripts/test-tmux-send-prompt.sh | 390 ++++++ scripts/tmux-monitor.sh | 392 ++++++ scripts/tmux-send-prompt.sh | 73 ++ scripts/tmux-team.sh | 327 +++++ specs/.gitkeep | 0 tasks/pm-start-all-tasks.md | 104 ++ tasks/pm-task-tables.md | 55 + tasks/result/.gitkeep | 0 tasks/review/.gitkeep | 0 tasks/任务执行结果模板.md | 28 + tasks/任务提示词构建方法.md | 199 +++ tasks/任务提示词模板-E2E测试.md | 69 + tasks/任务提示词模板-UI布局和开发.md | 90 ++ tasks/任务提示词模板-前端组件开发.md | 78 ++ tasks/任务提示词模板-后端API开发.md | 76 ++ tasks/任务提示词模板-桌面端服务开发.md | 74 ++ tasks/任务提示词模板-测试编写.md | 70 + tasks/任务提示词模板-脚手架搭建.md | 49 + tasks/任务提示词模板-部署打包.md | 56 + tasks/任务提示词目录和任务编排.md | 320 +++++ team/GLM模型评测报告.md | 97 ++ team/README.md | 22 + team/agents.md | 242 ++++ team/claude-code.md | 89 ++ team/desktop-编码规范.md | 675 ++++++++++ team/git.md | 166 +++ team/jj.md | 359 ++++++ team/md-export.md | 133 ++ team/mermaid.md | 78 ++ team/mirrors.md | 12 + team/svelte.md | 313 +++++ team/tmux.md | 512 ++++++++ team/文言术语.md | 321 +++++ vscode.code-workspace | 7 + 202 files changed, 23544 insertions(+) create mode 100644 .claude/CLAUDE.md create mode 100644 .claude/agents/isos-agents-config.md create mode 100644 .claude/agents/isos-backend-agent.md create mode 100644 .claude/agents/isos-frontend-agent.md create mode 100644 .claude/agents/isos-project-manager-agent.md create mode 100644 .claude/agents/isos-test-agent.md create mode 100644 .claude/commands/isos-backend.md create mode 100644 .claude/commands/isos-doc-前端开发.md create mode 100644 .claude/commands/isos-doc-后端开发.md create mode 100644 .claude/commands/isos-doc-架构.md create mode 100644 .claude/commands/isos-doc-测试.md create mode 100644 .claude/commands/isos-doc-设计.md create mode 100644 .claude/commands/isos-doc-运维.md create mode 100644 .claude/commands/isos-doc-需求.md create mode 100644 .claude/commands/isos-doc-项目.md create mode 100644 .claude/commands/isos-docker-clear.md create mode 100644 .claude/commands/isos-frontend.md create mode 100644 .claude/commands/isos-md-export.md create mode 100644 .claude/commands/isos-pdf2md.md create mode 100644 .claude/commands/isos-pm.md create mode 100644 .claude/commands/isos-pr.md create mode 100644 .claude/commands/isos-test.md create mode 100644 .claude/commands/isos-tmux-monitor.md create mode 100644 .claude/commands/isos-tmux-team.md create mode 100755 .claude/hooks/agent-pane-track.sh create mode 100755 .claude/hooks/restore-title-via-tmux.sh create mode 100755 .claude/hooks/save-title-on-clear.sh create mode 100755 .claude/hooks/team-pane-cleanup.sh create mode 100755 .claude/hooks/user-prompt-submit.sh create mode 100644 .claude/settings.json create mode 100644 .claude/settings.local.json create mode 100644 .claude/skills/speckit-analyze/SKILL.md create mode 100644 .claude/skills/speckit-checklist/SKILL.md create mode 100644 .claude/skills/speckit-clarify/SKILL.md create mode 100644 .claude/skills/speckit-constitution/SKILL.md create mode 100644 .claude/skills/speckit-implement/SKILL.md create mode 100644 .claude/skills/speckit-plan/SKILL.md create mode 100644 .claude/skills/speckit-specify/SKILL.md create mode 100644 .claude/skills/speckit-tasks/SKILL.md create mode 100644 .claude/skills/speckit-taskstoissues/SKILL.md create mode 100644 .devcontainer/.env.example create mode 100644 .devcontainer/Dockerfile create mode 100644 .devcontainer/devcontainer.json create mode 100644 .devcontainer/docker-compose.display.yml create mode 100644 .devcontainer/docker-compose.yml create mode 100755 .devcontainer/download-resources.sh create mode 100755 .devcontainer/lib.sh create mode 100644 .devcontainer/opencode.json.example create mode 100755 .devcontainer/post-create.sh create mode 100755 .devcontainer/scripts/code-wrapper create mode 100644 .devcontainer/templates/.claude.json create mode 100644 .devcontainer/templates/bashrc.tail.sh create mode 100644 .devcontainer/templates/runcc.sh create mode 100755 .devcontainer/templates/runoc.sh create mode 100644 .devcontainer/templates/settings.json create mode 100644 .gitea/workflows/ci.yml create mode 100644 .gitignore create mode 100644 .mcp.json create mode 100644 .python-version create mode 100644 .specify/init-options.json create mode 100644 .specify/integration.json create mode 100644 .specify/integrations/claude.manifest.json create mode 100644 .specify/integrations/claude/scripts/update-context.ps1 create mode 100755 .specify/integrations/claude/scripts/update-context.sh create mode 100644 .specify/integrations/speckit.manifest.json create mode 100644 .specify/memory/constitution.md create mode 100755 .specify/scripts/bash/check-prerequisites.sh create mode 100755 .specify/scripts/bash/common.sh create mode 100755 .specify/scripts/bash/create-new-feature.sh create mode 100755 .specify/scripts/bash/setup-plan.sh create mode 100755 .specify/scripts/bash/update-agent-context.sh create mode 100644 .specify/templates/agent-file-template.md create mode 100644 .specify/templates/checklist-template.md create mode 100644 .specify/templates/constitution-template.md create mode 100644 .specify/templates/plan-template.md create mode 100644 .specify/templates/spec-template.md create mode 100644 .specify/templates/tasks-template.md create mode 100644 .vscode/settings.json create mode 100644 CLAUDE.md create mode 100644 docs/01-用户需求.md create mode 100644 docs/02-产品需求.md create mode 100644 docs/03-功能列表.md create mode 100644 docs/04-用户故事.md create mode 100644 docs/05-设计-UI.md create mode 100644 docs/06-设计-UX.md create mode 100644 docs/07-系统架构.md create mode 100644 docs/08-数据库设计.md create mode 100644 docs/09-API契约.md create mode 100644 docs/10-测试-方案.md create mode 100644 docs/11-工程规范.md create mode 100644 docs/12-管理-项目.md create mode 100644 docs/13-Mermaid图集.md create mode 100644 docs/CLAUDE.md create mode 100644 docs/README.md create mode 100644 docs/review/.gitkeep create mode 100644 docs/superpowers/plans/.gitkeep create mode 100644 docs/superpowers/specs/.gitkeep create mode 100644 docs/测试-单元.md create mode 100644 docs/测试-报告.md create mode 100644 docs/测试-接口-分类.md create mode 100644 docs/测试-接口.md create mode 100644 docs/测试-用例.md create mode 100644 docs/测试-计划.md create mode 100644 docs/管理-Agent-Team分工及提示词.md create mode 100644 docs/管理-开发入门.md create mode 100644 docs/管理-开发环境搭建.md create mode 100644 docs/设计-Apple风格.md create mode 100644 docs/设计-UI-主界面.md create mode 100644 docs/设计-UI-状态组件.md create mode 100644 docs/设计-UX-交互模式.md create mode 100644 docs/设计-UX-操作流程.md create mode 100644 docs/设计-UX-无障碍与响应式.md create mode 100644 docs/设计-UX-用户旅程.md create mode 100644 docs/设计-UX-错误处理.md create mode 100644 docs/运维-发布日志.md create mode 100644 docs/运维-安全审计.md create mode 100644 docs/运维-性能基准.md create mode 100644 docs/运维-故障排除.md create mode 100644 docs/运维-部署实施.md create mode 100644 member/.gitkeep create mode 100644 member/vscode.chat.md create mode 100644 memory/.gitkeep create mode 100644 memory/MEMORY.md create mode 100644 memory/agent-pane-cleanup.md create mode 100644 memory/agent-team-collaboration.md create mode 100644 memory/agent-team-tmux-constraints.md create mode 100644 memory/cc-alias.md create mode 100644 memory/ci-cd-experience.md create mode 100644 memory/claude-code-model-config.md create mode 100644 memory/claude-code-rename.md create mode 100644 memory/design-patterns.md create mode 100644 memory/desktop-tech-stack-change.md create mode 100644 memory/devcontainer-sync.md create mode 100644 memory/doc-versioning-rules.md create mode 100644 memory/docs-chinese-naming.md create mode 100644 memory/docs-readme-index.md create mode 100644 memory/font-cross-platform.md create mode 100644 memory/member-directory-rules.md create mode 100644 memory/memory-vs-team-responsibility.md create mode 100644 memory/pdf2md-usage.md create mode 100644 memory/playwright-screenshots.md create mode 100644 memory/subagent-alternative.md create mode 100644 memory/tasks-directory-location.md create mode 100644 memory/tasks-doc-line-limit.md create mode 100644 memory/terminology-consistency.md create mode 100644 memory/tmux-send-keys-enter.md create mode 100644 memory/ui-testing.md create mode 100644 memory/user-preferences.md create mode 100644 memory/vcs-preference-jj.md create mode 100644 prompts/agent-api-test.md create mode 100644 prompts/agent-review-architecture.md create mode 100644 prompts/agent-review-backend.md create mode 100644 prompts/agent-review-design.md create mode 100644 prompts/agent-review-devops.md create mode 100644 prompts/agent-review-frontend.md create mode 100644 prompts/agent-review-project.md create mode 100644 prompts/agent-review-requirement.md create mode 100644 prompts/agent-review-user.md create mode 100644 prompts/agent-test-cases.md create mode 100644 prompts/agent-test-lead-review.md create mode 100644 prompts/agent-test-lead-unify.md create mode 100644 prompts/agent-test-plan.md create mode 100644 prompts/agent-test-scheme.md create mode 100644 prompts/agent-unit-test.md create mode 100755 scripts/md_export.py create mode 100755 scripts/pdf2md.sh create mode 100755 scripts/status-line.sh create mode 100755 scripts/test-tmux-send-prompt-integ.sh create mode 100755 scripts/test-tmux-send-prompt.sh create mode 100755 scripts/tmux-monitor.sh create mode 100755 scripts/tmux-send-prompt.sh create mode 100755 scripts/tmux-team.sh create mode 100644 specs/.gitkeep create mode 100644 tasks/pm-start-all-tasks.md create mode 100644 tasks/pm-task-tables.md create mode 100644 tasks/result/.gitkeep create mode 100644 tasks/review/.gitkeep create mode 100644 tasks/任务执行结果模板.md create mode 100644 tasks/任务提示词构建方法.md create mode 100644 tasks/任务提示词模板-E2E测试.md create mode 100644 tasks/任务提示词模板-UI布局和开发.md create mode 100644 tasks/任务提示词模板-前端组件开发.md create mode 100644 tasks/任务提示词模板-后端API开发.md create mode 100644 tasks/任务提示词模板-桌面端服务开发.md create mode 100644 tasks/任务提示词模板-测试编写.md create mode 100644 tasks/任务提示词模板-脚手架搭建.md create mode 100644 tasks/任务提示词模板-部署打包.md create mode 100644 tasks/任务提示词目录和任务编排.md create mode 100644 team/GLM模型评测报告.md create mode 100644 team/README.md create mode 100644 team/agents.md create mode 100644 team/claude-code.md create mode 100644 team/desktop-编码规范.md create mode 100644 team/git.md create mode 100644 team/jj.md create mode 100644 team/md-export.md create mode 100644 team/mermaid.md create mode 100644 team/mirrors.md create mode 100644 team/svelte.md create mode 100644 team/tmux.md create mode 100644 team/文言术语.md create mode 100644 vscode.code-workspace diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md new file mode 100644 index 0000000..03d8fc1 --- /dev/null +++ b/.claude/CLAUDE.md @@ -0,0 +1,118 @@ +# ISOS Agent Teams 软件研发模板 + +通用 Agent Teams 软件研发项目模板,支持多角色 AI Agent 并行协作开发。 + +## 目录结构 + +``` +docs/ # 项目文档 +specs/ # speckit 功能规格 +.specify/ # speckit 配置 +``` + +**模块独立性**: 各模块完全独立,禁止跨模块代码引用,仅通过 API 通信。 + +## 技术栈 + +> 以下为推荐技术栈,具体项目可根据需求调整。 + +| 组件 | 推荐技术 | 约束 | +| ------ | -------------------- | ---------- | +| 语言 | Python 3.12+ | 强制 | +| 包管理 | uv | 强制 | +| 服务端 | FastAPI | 推荐 | +| 桌面端 | PyWebView + Svelte 5 | 推荐 | +| 数据库 | SQLite 3.45+ | 推荐 | +| 容器化 | Docker | 服务端推荐 | + +## 编码规范 + +### 格式化 + +- **缩进**: 4 空格 | **行长度**: 100 字符 +- **格式化**: `ruff format` | **Lint**: `ruff check` + +### 命名约定 + +- `PascalCase`: 类名、类型、异常 +- `snake_case`: 函数、方法、变量、模块 +- `UPPER_SNAKE_CASE`: 常量 + +### 类型注解 + +- 必须使用完整类型注解,mypy strict 模式 +- 禁止使用 `Any` 类型 + +### 注释规范 + +- 使用 Google 风格 docstring +- 公共函数和类必须有文档字符串 + +### 字符串规范 + +- 用户可见字符串:双引号 | 代码内部:单引号 + +## Svelte 开发 + +完整指南见 [`team/svelte.md`](../../team/svelte.md)。核心流程: +1. `list-sections` → `get-documentation` → 编码 → `svelte-autofixer` 验证 +2. `.svelte` 文件优先使用 svelte-file-editor 子代理 + +## 验证步骤 + +```bash +# 类型检查 +uv run mypy src/ --strict + +# 测试 +uv run pytest + +# 代码质量 +ruff format --check . && ruff check . +``` + +## 模块说明 + +> 根据实际项目调整以下模块定义。 + +| 模块 | 职责 | 入口 | +| ------- | ------------------ | --------------- | +| Server | REST API、数据存储 | `apps/server/` | +| Desktop | UI、本地存储 | `apps/desktop/` | + +## 开发工作流 + +### speckit 集成 + +``` +/speckit.specify → spec.md → /speckit.plan → plan.md → /speckit.tasks → tasks.md → /speckit.implement +``` + +### 版本控制 + +- **版本控制**: Jujutsu (jj),并存模式(`.jj` + `.git` 并存) +- **分支**: Trunk-Based Development,主分支 `trunk` +- **PR 约束**: 每个 PR 只能改动一个模块 +- **PR 标题**: `[模块] 描述`,如 `[server] 添加用户认证 API` +- **提交类型**: 使用中文类型(功能、修复、维护、文档、重构、测试、格式、性能、构建、安全、依赖、清理、配置、规格、合并),完整列表见 `team/git.md` +- **详细规范**: `team/git.md`(提交规范)、`team/jj.md`(jj 命令对照) + +## 关键文档 + +| 文档 | 用途 | +| --------------------- | ---------------------------- | +| `docs/01-用户需求.md` | 用户需求、项目目标、验收标准 | +| `docs/03-功能列表.md` | 功能需求(FR)列表 | +| `docs/02-产品需求.md` | 非功能性需求、约束 | +| `docs/06-设计-UX.md` | 用户体验设计、交互模式 | +| `docs/05-设计-UI.md` | UI 界面设计 | +| `team/git.md` | Git 提交规范、分支策略 | +| `team/jj.md` | jj 命令对照表 | +| `team/svelte.md` | Svelte 5 开发完整指南 | +| `team/tmux.md` | tmux 团队协作规范 | +| `team/mermaid.md` | Mermaid ER图兼容性规范 | +| `team/mirrors.md` | 国内镜像源配置 | + +--- + +**最后更新**: 2026-04-19 diff --git a/.claude/agents/isos-agents-config.md b/.claude/agents/isos-agents-config.md new file mode 100644 index 0000000..86d21a4 --- /dev/null +++ b/.claude/agents/isos-agents-config.md @@ -0,0 +1,141 @@ +# ISOS Agent Team 配置 + +## Agent 团队概述 + +本配置定义了 ISOS 项目的 4 个核心 Agent,每个 Agent 专注于特定领域,支持并行开发和高效协作。 + +## 团队组成 + +| Agent | 角色 | 文件 | Command | 主要职责 | +|-------|------|------|---------|----------| +| **isos-backend-agent** | 后端开发 | `.claude/agents/isos-backend-agent.md` | `/isos-backend` | FastAPI + SQLite 开发 | +| **isos-frontend-agent** | 前端开发 | `.claude/agents/isos-frontend-agent.md` | `/isos-frontend` | Svelte 5 + PyWebView | +| **isos-test-agent** | 测试工程师 | `.claude/agents/isos-test-agent.md` | `/isos-test` | 全级别测试和覆盖率 | +| **isos-project-manager-agent** | 项目经理 | `.claude/agents/isos-project-manager-agent.md` | `/isos-pm` | 任务分发和进度管理 | + +## 使用方法 + +### 1. 团队协作模式(推荐) + +```bash +# 1. 启动 4 Pane 团队工作空间(自动命名并加载角色提示词) +/isos-tmux-team + +# 2. Pane 1(PM)已自动加载项目经理提示词 +# 3. PM 向其他 Pane 分发任务 +# 向 Pane 2(后端)发送后端任务 +# 向 Pane 3(前端)发送前端任务 +# 向 Pane 4(测试)发送测试任务 +``` + +### 2. 单独使用各 Agent + +```bash +# 启动后端开发 Agent +/isos-backend + +# 启动前端开发 Agent +/isos-frontend + +# 启动测试 Agent +/isos-test + +# 启动项目经理 Agent +/isos-pm +``` + +## 里程碑模板 + +> 根据实际项目需要定义里程碑和角色分工。 + +| 里程碑 | 后端 | 前端 | 测试 | +|--------|:----:|:----:|:----:| +| M1: 基础架构 | ● | ● | ○ | +| M2: 核心功能 A | ● | | ● | +| M3: 核心功能 B | | ● | ● | +| M4: 核心功能 C | | ● | ● | +| M5: 集成与同步 | ● | ● | ● | +| M6: 部署与打包 | ● | ● | ● | +| M7: 增强功能 | | ● | ● | +| M8: 运维功能 | ● | | ● | + +● 主要负责 ○ 配合测试 + +## 技术栈概览 + +### 后端开发 Agent +- Python 3.12+, mypy strict +- FastAPI 0.109+, SQLite 3.45+ +- ruff format + ruff check +- Docker 24+ +- uv 包管理 + +### 前端开发 Agent +- Svelte 5(runes: $state, $derived, $effect) +- PyWebView, TypeScript strict +- Vite + npm, Node.js 22+ +- Python 3.12+(Service 层) +- IPC 通信:Svelte ↔ Python HTTPS + +### 测试 Agent +- pytest, pytest-cov, pytest-mock +- httpx(API 测试) +- Playwright(E2E 测试) +- freezegun, hypothesis +- 覆盖率:核心模块>90%, 其他>75% + +### 项目经理 Agent +- 任务分析和分发 +- 进度跟踪和协调 +- 代码审查协调 +- 验收检查 +- Agent 生命周期管理 + +## 协作流程 + +### 典型任务流转(以前端功能开发为例) + +1. **PM 分析**:前端任务(UI + Service 层),无后端依赖 +2. **PM → 前端 Agent**:发送任务提示词 +3. **前端 Agent 完成**:UI 组件 + API 路由 + 单元测试 +4. **PM 验收**:类型检查 + 测试 + 覆盖率 +5. **PM → 测试 Agent**:发送接口测试任务 +6. **测试 Agent 完成**:API 接口测试 + 覆盖率分析 +7. **PM 验收**:测试通过 + 覆盖率达标 + +### 并行开发场景(前后端并行开发为例) + +1. **PM 分析**:后端(API 路由)+ 前端(UI + Service 层)并行 +2. **PM → 后端 Agent**:发送 API 开发任务 + **PM → 前端 Agent**:发送前端开发任务 +3. **后端 Agent 完成**:API 接口 + 单元测试 +4. **前端 Agent 完成**:UI 组件 + Service 层 + 单元测试 +5. **PM → 测试 Agent**:发送集成测试任务 +6. **测试 Agent 完成**:集成测试 + 覆盖率分析 +7. **PM 验收**:全部测试通过 + 覆盖率达标 + +## 注意事项 + +1. **Agent 生命周期**:完成任务后必须立即 shutdown +2. **模块独立性**:各模块完全独立,禁止跨模块代码引用 +3. **版本控制**:使用 Jujutsu (jj),主分支 trunk +4. **提交规范**:使用中文类型,提交标题不超过 50 字符 + +## 验收标准 + +### 代码类产出 +- 类型检查:mypy --strict 通过 +- 格式化:ruff format 通过 +- Lint:ruff check 通过 +- 单元测试:全部通过 +- 覆盖率:达到模块要求 + +### 测试类产出 +- 覆盖率:核心模块>90%、其他>75% +- 功能覆盖:测试用例覆盖所有相关 FR +- 用例编号:遵循 TC-[级别]-NNN 规则 + +--- + +**最后更新**: 2026-04-19 +**版本**: 1.0.0 diff --git a/.claude/agents/isos-backend-agent.md b/.claude/agents/isos-backend-agent.md new file mode 100644 index 0000000..85dadf1 --- /dev/null +++ b/.claude/agents/isos-backend-agent.md @@ -0,0 +1,75 @@ +# ISOS 后端开发 Agent + +你是 ISOS 项目的后端开发工程师,负责服务端(FastAPI + SQLite)的功能开发。 + +## 你的职责 + +1. 服务端 REST API 开发(apps/server/src/) +2. SQLite 数据库 Schema 设计与迁移 +3. CLI 管理工具开发 +4. Docker 容器化配置 +5. 服务端单元测试 + +## 技术栈 + +- Python 3.12+,mypy strict,禁止 Any 类型 +- FastAPI 0.109+(REST API 框架) +- SQLite 3.45+(嵌入式数据库) +- ruff format + ruff check(代码质量) +- Docker 24+(容器化部署) +- uv(包管理) + +## 编码规范 + +- 缩进:4 空格 | 行宽:100 字符 +- 命名:PascalCase 类/类型,snake_case 函数/变量,UPPER_SNAKE_CASE 常量 +- Docstring:Google 风格,公共函数和类必须有 +- 字符串:用户可见用双引号,代码内部用单引号 +- 类型注解:所有函数必须有完整类型注解 + +## 架构约束 + +- 各模块完全独立,禁止跨模块引用 +- 通信方式:仅 REST API(HTTPS) +- 数据库迁移使用 PRAGMA user_version,文件命名 {NNNN}_{snake_case}.sql +- 仅支持升级迁移,降级通过备份恢复 + +## 测试覆盖率要求 + +- 核心模块:>90% +- 其他模块:>75% + +## 关键参考文档 + +- API 契约:docs/09-API契约.md +- 数据库设计:docs/08-数据库设计.md +- 工程规范:docs/11-工程规范.md +- 系统架构:docs/07-系统架构.md +- 功能列表:docs/03-功能列表.md + +## 验证步骤 + +每次编码完成后执行: + +1. uv run mypy src/ --strict # 类型检查 +2. ruff format --check . && ruff check . # 代码格式和 Lint +3. uv run pytest tests/unit/ -v # 单元测试 +4. uv run pytest --cov=src --cov-report=term # 覆盖率检查 + +## 工作流 + +收到任务后: +1. 阅读相关 FR 需求和 API 契约 +2. 确认数据库 Schema 设计 +3. 编写代码实现 +4. 编写对应单元测试 +5. 执行全部验证步骤 +6. 报告完成状态和覆盖率 + +## 版本控制 + +- 工具:Jujutsu (jj),并存模式 +- 主分支:trunk +- 提交格式:<中文类型>(<作用域>): <描述> +- 中文类型:功能、修复、维护、文档、重构、测试、格式、性能、构建、安全、依赖、清理、配置 +- 提交标题不超过 50 字符 diff --git a/.claude/agents/isos-frontend-agent.md b/.claude/agents/isos-frontend-agent.md new file mode 100644 index 0000000..3393886 --- /dev/null +++ b/.claude/agents/isos-frontend-agent.md @@ -0,0 +1,100 @@ +# ISOS 前端开发 Agent + +你是 ISOS 项目的前端开发工程师,负责桌面端(Svelte 5 + PyWebView)和客户端 Service 层(Python)的开发。 + +## 你的职责 + +1. 桌面端 UI 开发(Svelte 5 + PyWebView) +2. 客户端 Service 层开发(Python) +3. 本地 HTTPS IPC 通信(Svelte ↔ Python) +4. 前端和客户端单元测试 + +## 技术栈 + +- Svelte 5(runes: $state, $derived, $effect) +- PyWebView(桌面容器) +- Vite + npm(前端构建,Node.js 22+) +- TypeScript strict(前端类型安全) +- Python 3.12+(客户端 Service 层) +- SQLite 3.45+(本地存储) +- uv(Python 包管理) + +## 编码规范 + +### Python 部分 +- 缩进:4 空格 | 行宽:100 字符 +- mypy strict,禁止 Any +- ruff format + ruff check +- Google 风格 Docstring + +### Svelte / TypeScript 部分 +- $state(可变状态)、$derived(派生计算)、$effect(副作用) +- $props() 接收、回调函数向父组件传递事件 +- TypeScript strict 模式 +- Scoped CSS(组件内