claude-code-workflow 7.2.15 → 7.2.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.ccw/workflows/cli-templates/schemas/team-tasks-schema.json +255 -0
- package/.codex/agents/team-supervisor.toml +39 -0
- package/.codex/agents/team-worker.toml +46 -0
- package/.codex/skills/team-arch-opt/SKILL.md +151 -698
- package/.codex/skills/team-arch-opt/roles/analyzer/role.md +78 -0
- package/.codex/skills/team-arch-opt/roles/coordinator/commands/analyze.md +57 -0
- package/.codex/skills/team-arch-opt/roles/coordinator/commands/dispatch.md +287 -0
- package/.codex/skills/team-arch-opt/roles/coordinator/commands/monitor.md +204 -0
- package/.codex/skills/team-arch-opt/roles/coordinator/role.md +162 -0
- package/.codex/skills/team-arch-opt/roles/designer/role.md +115 -0
- package/.codex/skills/team-arch-opt/roles/refactorer/role.md +102 -0
- package/.codex/skills/team-arch-opt/roles/reviewer/role.md +111 -0
- package/.codex/skills/team-arch-opt/roles/validator/role.md +115 -0
- package/.codex/skills/team-arch-opt/specs/pipelines.md +102 -0
- package/.codex/skills/team-arch-opt/specs/team-config.json +263 -0
- package/.codex/skills/team-brainstorm/SKILL.md +167 -724
- package/.codex/skills/team-brainstorm/roles/challenger/role.md +61 -0
- package/.codex/skills/team-brainstorm/roles/coordinator/commands/analyze.md +58 -0
- package/.codex/skills/team-brainstorm/roles/coordinator/commands/dispatch.md +162 -0
- package/.codex/skills/team-brainstorm/roles/coordinator/commands/monitor.md +171 -0
- package/.codex/skills/team-brainstorm/roles/coordinator/role.md +140 -0
- package/.codex/skills/team-brainstorm/roles/evaluator/role.md +56 -0
- package/.codex/skills/team-brainstorm/roles/ideator/role.md +69 -0
- package/.codex/skills/team-brainstorm/roles/synthesizer/role.md +57 -0
- package/.codex/skills/team-brainstorm/specs/pipelines.md +72 -0
- package/.codex/skills/team-brainstorm/specs/team-config.json +86 -0
- package/.codex/skills/team-coordinate/SKILL.md +267 -667
- package/.codex/skills/team-coordinate/roles/coordinator/commands/analyze-task.md +247 -0
- package/.codex/skills/team-coordinate/roles/coordinator/commands/dispatch.md +126 -0
- package/.codex/skills/team-coordinate/roles/coordinator/commands/monitor.md +327 -0
- package/.codex/skills/team-coordinate/roles/coordinator/role.md +361 -0
- package/.codex/skills/team-coordinate/specs/knowledge-transfer.md +111 -0
- package/.codex/skills/team-coordinate/specs/pipelines.md +97 -0
- package/.codex/skills/team-coordinate/specs/quality-gates.md +112 -0
- package/.codex/skills/team-coordinate/specs/role-spec-template.md +192 -0
- package/.codex/skills/team-designer/SKILL.md +153 -691
- package/.codex/skills/team-designer/phases/01-requirements-analysis.md +250 -0
- package/.codex/skills/team-designer/phases/02-scaffold-generation.md +228 -0
- package/.codex/skills/team-designer/phases/03-content-generation.md +330 -0
- package/.codex/skills/team-designer/phases/04-validation.md +320 -0
- package/.codex/skills/team-executor/SKILL.md +191 -515
- package/.codex/skills/team-executor/roles/executor/commands/monitor.md +280 -0
- package/.codex/skills/team-executor/roles/executor/role.md +170 -0
- package/.codex/skills/team-executor/specs/session-schema.md +264 -0
- package/.codex/skills/team-frontend/SKILL.md +129 -750
- package/.codex/skills/team-frontend/roles/analyst/role.md +92 -0
- package/.codex/skills/team-frontend/roles/architect/role.md +86 -0
- package/.codex/skills/team-frontend/roles/coordinator/commands/analyze.md +52 -0
- package/.codex/skills/team-frontend/roles/coordinator/commands/dispatch.md +151 -0
- package/.codex/skills/team-frontend/roles/coordinator/commands/monitor.md +188 -0
- package/.codex/skills/team-frontend/roles/coordinator/role.md +157 -0
- package/.codex/skills/team-frontend/roles/developer/role.md +93 -0
- package/.codex/skills/team-frontend/roles/qa/role.md +79 -0
- package/.codex/skills/team-frontend/specs/pipelines.md +76 -0
- package/.codex/skills/team-frontend/specs/team-config.json +84 -0
- package/.codex/skills/team-frontend-debug/SKILL.md +191 -821
- package/.codex/skills/team-frontend-debug/roles/analyzer/role.md +208 -0
- package/.codex/skills/team-frontend-debug/roles/coordinator/commands/analyze.md +174 -0
- package/.codex/skills/team-frontend-debug/roles/coordinator/commands/dispatch.md +198 -0
- package/.codex/skills/team-frontend-debug/roles/coordinator/commands/monitor.md +143 -0
- package/.codex/skills/team-frontend-debug/roles/coordinator/role.md +131 -0
- package/.codex/skills/team-frontend-debug/roles/fixer/role.md +147 -0
- package/.codex/skills/team-frontend-debug/roles/reproducer/role.md +147 -0
- package/.codex/skills/team-frontend-debug/roles/tester/role.md +231 -0
- package/.codex/skills/team-frontend-debug/roles/verifier/role.md +172 -0
- package/.codex/skills/team-frontend-debug/specs/debug-tools.md +215 -0
- package/.codex/skills/team-frontend-debug/specs/pipelines.md +94 -0
- package/.codex/skills/team-issue/SKILL.md +166 -751
- package/.codex/skills/team-issue/roles/coordinator/commands/analyze.md +64 -0
- package/.codex/skills/team-issue/roles/coordinator/commands/dispatch.md +273 -0
- package/.codex/skills/team-issue/roles/coordinator/commands/monitor.md +194 -0
- package/.codex/skills/team-issue/roles/coordinator/role.md +175 -0
- package/.codex/skills/team-issue/roles/explorer/role.md +94 -0
- package/.codex/skills/team-issue/roles/implementer/role.md +87 -0
- package/.codex/skills/team-issue/roles/integrator/role.md +84 -0
- package/.codex/skills/team-issue/roles/planner/role.md +81 -0
- package/.codex/skills/team-issue/roles/reviewer/role.md +86 -0
- package/.codex/skills/team-issue/specs/pipelines.md +124 -0
- package/.codex/skills/team-issue/specs/team-config.json +70 -0
- package/.codex/skills/team-iterdev/SKILL.md +134 -825
- package/.codex/skills/team-iterdev/roles/architect/role.md +65 -0
- package/.codex/skills/team-iterdev/roles/coordinator/commands/analyze.md +62 -0
- package/.codex/skills/team-iterdev/roles/coordinator/commands/dispatch.md +187 -0
- package/.codex/skills/team-iterdev/roles/coordinator/commands/monitor.md +186 -0
- package/.codex/skills/team-iterdev/roles/coordinator/role.md +161 -0
- package/.codex/skills/team-iterdev/roles/developer/role.md +74 -0
- package/.codex/skills/team-iterdev/roles/reviewer/role.md +66 -0
- package/.codex/skills/team-iterdev/roles/tester/role.md +88 -0
- package/.codex/skills/team-iterdev/specs/pipelines.md +94 -0
- package/.codex/skills/team-iterdev/specs/team-config.json +172 -0
- package/.codex/skills/team-lifecycle-v4/MIGRATION-PLAN.md +512 -0
- package/.codex/skills/team-lifecycle-v4/SKILL.md +166 -723
- package/.codex/skills/team-lifecycle-v4/roles/analyst/role.md +104 -0
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/analyze.md +56 -0
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/dispatch.md +61 -0
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/commands/monitor.md +177 -0
- package/.codex/skills/team-lifecycle-v4/roles/coordinator/role.md +152 -0
- package/.codex/skills/team-lifecycle-v4/roles/executor/commands/fix.md +35 -0
- package/.codex/skills/team-lifecycle-v4/roles/executor/commands/implement.md +63 -0
- package/.codex/skills/team-lifecycle-v4/roles/executor/role.md +89 -0
- package/.codex/skills/team-lifecycle-v4/roles/planner/role.md +108 -0
- package/.codex/skills/team-lifecycle-v4/roles/reviewer/commands/review-code.md +57 -0
- package/.codex/skills/team-lifecycle-v4/roles/reviewer/commands/review-spec.md +44 -0
- package/.codex/skills/team-lifecycle-v4/roles/reviewer/role.md +98 -0
- package/.codex/skills/team-lifecycle-v4/roles/supervisor/role.md +210 -0
- package/.codex/skills/team-lifecycle-v4/roles/tester/role.md +126 -0
- package/.codex/skills/team-lifecycle-v4/roles/writer/role.md +125 -0
- package/.codex/skills/team-lifecycle-v4/schemas/tasks-schema.md +82 -160
- package/.codex/skills/team-lifecycle-v4/specs/knowledge-transfer.md +136 -0
- package/.codex/skills/team-lifecycle-v4/specs/pipelines.md +125 -0
- package/.codex/skills/team-lifecycle-v4/specs/quality-gates.md +130 -0
- package/.codex/skills/team-perf-opt/SKILL.md +169 -697
- package/.codex/skills/team-perf-opt/roles/benchmarker/role.md +89 -0
- package/.codex/skills/team-perf-opt/roles/coordinator/commands/analyze.md +61 -0
- package/.codex/skills/team-perf-opt/roles/coordinator/commands/dispatch.md +262 -0
- package/.codex/skills/team-perf-opt/roles/coordinator/commands/monitor.md +320 -0
- package/.codex/skills/team-perf-opt/roles/coordinator/role.md +147 -0
- package/.codex/skills/team-perf-opt/roles/optimizer/role.md +97 -0
- package/.codex/skills/team-perf-opt/roles/profiler/role.md +73 -0
- package/.codex/skills/team-perf-opt/roles/reviewer/role.md +75 -0
- package/.codex/skills/team-perf-opt/roles/strategist/role.md +94 -0
- package/.codex/skills/team-perf-opt/specs/pipelines.md +65 -0
- package/.codex/skills/team-perf-opt/specs/team-config.json +246 -0
- package/.codex/skills/team-planex/SKILL.md +103 -477
- package/.codex/skills/team-planex/roles/coordinator/commands/analyze.md +52 -0
- package/.codex/skills/team-planex/roles/coordinator/commands/dispatch.md +80 -0
- package/.codex/skills/team-planex/roles/coordinator/commands/monitor.md +164 -0
- package/.codex/skills/team-planex/roles/coordinator/role.md +140 -0
- package/.codex/skills/team-planex/roles/executor/role.md +91 -0
- package/.codex/skills/team-planex/roles/planner/role.md +112 -0
- package/.codex/skills/team-planex/specs/pipelines.md +93 -0
- package/.codex/skills/team-quality-assurance/SKILL.md +148 -813
- package/.codex/skills/team-quality-assurance/roles/analyst/role.md +80 -0
- package/.codex/skills/team-quality-assurance/roles/coordinator/commands/analyze.md +72 -0
- package/.codex/skills/team-quality-assurance/roles/coordinator/commands/dispatch.md +108 -0
- package/.codex/skills/team-quality-assurance/roles/coordinator/commands/monitor.md +209 -0
- package/.codex/skills/team-quality-assurance/roles/coordinator/role.md +143 -0
- package/.codex/skills/team-quality-assurance/roles/executor/role.md +66 -0
- package/.codex/skills/team-quality-assurance/roles/generator/role.md +68 -0
- package/.codex/skills/team-quality-assurance/roles/scout/role.md +67 -0
- package/.codex/skills/team-quality-assurance/roles/strategist/role.md +71 -0
- package/.codex/skills/team-quality-assurance/specs/pipelines.md +115 -0
- package/.codex/skills/team-quality-assurance/specs/team-config.json +131 -0
- package/.codex/skills/team-review/SKILL.md +148 -533
- package/.codex/skills/team-review/roles/coordinator/commands/analyze.md +71 -0
- package/.codex/skills/team-review/roles/coordinator/commands/dispatch.md +90 -0
- package/.codex/skills/team-review/roles/coordinator/commands/monitor.md +185 -0
- package/.codex/skills/team-review/roles/coordinator/role.md +142 -0
- package/.codex/skills/team-review/roles/fixer/role.md +76 -0
- package/.codex/skills/team-review/roles/reviewer/role.md +68 -0
- package/.codex/skills/team-review/roles/scanner/role.md +71 -0
- package/.codex/skills/team-review/specs/dimensions.md +82 -0
- package/.codex/skills/team-review/specs/finding-schema.json +82 -0
- package/.codex/skills/team-review/specs/pipelines.md +102 -0
- package/.codex/skills/team-review/specs/team-config.json +27 -0
- package/.codex/skills/team-roadmap-dev/SKILL.md +162 -683
- package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/analyze.md +61 -0
- package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/dispatch.md +241 -0
- package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/monitor.md +468 -0
- package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/pause.md +90 -0
- package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/resume.md +137 -0
- package/.codex/skills/team-roadmap-dev/roles/coordinator/commands/roadmap-discuss.md +243 -0
- package/.codex/skills/team-roadmap-dev/roles/coordinator/role.md +303 -0
- package/.codex/skills/team-roadmap-dev/roles/executor/role.md +71 -0
- package/.codex/skills/team-roadmap-dev/roles/planner/role.md +76 -0
- package/.codex/skills/team-roadmap-dev/roles/verifier/role.md +74 -0
- package/.codex/skills/team-roadmap-dev/specs/pipelines.md +93 -0
- package/.codex/skills/team-roadmap-dev/specs/team-config.json +95 -0
- package/.codex/skills/team-tech-debt/SKILL.md +129 -708
- package/.codex/skills/team-tech-debt/roles/assessor/role.md +69 -0
- package/.codex/skills/team-tech-debt/roles/coordinator/commands/analyze.md +47 -0
- package/.codex/skills/team-tech-debt/roles/coordinator/commands/dispatch.md +163 -0
- package/.codex/skills/team-tech-debt/roles/coordinator/commands/monitor.md +231 -0
- package/.codex/skills/team-tech-debt/roles/coordinator/role.md +141 -0
- package/.codex/skills/team-tech-debt/roles/executor/role.md +76 -0
- package/.codex/skills/team-tech-debt/roles/planner/role.md +69 -0
- package/.codex/skills/team-tech-debt/roles/scanner/role.md +82 -0
- package/.codex/skills/team-tech-debt/roles/validator/role.md +75 -0
- package/.codex/skills/team-tech-debt/specs/pipelines.md +47 -0
- package/.codex/skills/team-tech-debt/specs/team-config.json +129 -0
- package/.codex/skills/team-testing/SKILL.md +144 -769
- package/.codex/skills/team-testing/roles/analyst/role.md +95 -0
- package/.codex/skills/team-testing/roles/coordinator/commands/analyze.md +70 -0
- package/.codex/skills/team-testing/roles/coordinator/commands/dispatch.md +106 -0
- package/.codex/skills/team-testing/roles/coordinator/commands/monitor.md +242 -0
- package/.codex/skills/team-testing/roles/coordinator/role.md +151 -0
- package/.codex/skills/team-testing/roles/executor/role.md +96 -0
- package/.codex/skills/team-testing/roles/generator/role.md +95 -0
- package/.codex/skills/team-testing/roles/strategist/role.md +83 -0
- package/.codex/skills/team-testing/specs/pipelines.md +101 -0
- package/.codex/skills/team-testing/specs/team-config.json +93 -0
- package/.codex/skills/team-uidesign/SKILL.md +133 -767
- package/.codex/skills/team-uidesign/roles/coordinator/commands/analyze.md +59 -0
- package/.codex/skills/team-uidesign/roles/coordinator/commands/dispatch.md +156 -0
- package/.codex/skills/team-uidesign/roles/coordinator/commands/monitor.md +194 -0
- package/.codex/skills/team-uidesign/roles/coordinator/role.md +179 -0
- package/.codex/skills/team-uidesign/roles/designer/role.md +69 -0
- package/.codex/skills/team-uidesign/roles/implementer/role.md +72 -0
- package/.codex/skills/team-uidesign/roles/researcher/role.md +82 -0
- package/.codex/skills/team-uidesign/roles/reviewer/role.md +67 -0
- package/.codex/skills/team-uidesign/specs/pipelines.md +76 -0
- package/.codex/skills/team-uidesign/specs/team-config.json +107 -0
- package/.codex/skills/team-ultra-analyze/SKILL.md +166 -786
- package/.codex/skills/team-ultra-analyze/roles/analyst/role.md +90 -0
- package/.codex/skills/team-ultra-analyze/roles/coordinator/commands/analyze.md +73 -0
- package/.codex/skills/team-ultra-analyze/roles/coordinator/commands/dispatch.md +225 -0
- package/.codex/skills/team-ultra-analyze/roles/coordinator/commands/monitor.md +327 -0
- package/.codex/skills/team-ultra-analyze/roles/coordinator/role.md +223 -0
- package/.codex/skills/team-ultra-analyze/roles/discussant/role.md +104 -0
- package/.codex/skills/team-ultra-analyze/roles/explorer/role.md +74 -0
- package/.codex/skills/team-ultra-analyze/roles/synthesizer/role.md +78 -0
- package/.codex/skills/team-ultra-analyze/specs/pipelines.md +64 -0
- package/.codex/skills/team-ultra-analyze/specs/team-config.json +129 -0
- package/.codex/skills/team-ux-improve/SKILL.md +142 -638
- package/.codex/skills/team-ux-improve/roles/coordinator/commands/analyze.md +62 -0
- package/.codex/skills/team-ux-improve/roles/coordinator/commands/dispatch.md +233 -0
- package/.codex/skills/team-ux-improve/roles/coordinator/commands/monitor.md +160 -0
- package/.codex/skills/team-ux-improve/roles/coordinator/role.md +138 -0
- package/.codex/skills/team-ux-improve/roles/designer/role.md +122 -0
- package/.codex/skills/team-ux-improve/roles/diagnoser/role.md +93 -0
- package/.codex/skills/team-ux-improve/roles/explorer/role.md +77 -0
- package/.codex/skills/team-ux-improve/roles/implementer/role.md +102 -0
- package/.codex/skills/team-ux-improve/roles/scanner/role.md +93 -0
- package/.codex/skills/team-ux-improve/roles/tester/role.md +84 -0
- package/.codex/skills/team-ux-improve/specs/pipelines.md +54 -0
- package/.codex/skills/team-ux-improve/specs/team-config.json +181 -0
- package/.codex/skills/team-ux-improve/wisdom/anti-patterns/common-ux-pitfalls.md +17 -0
- package/.codex/skills/team-ux-improve/wisdom/contributions/.gitkeep +0 -0
- package/.codex/skills/team-ux-improve/wisdom/patterns/state-management.md +14 -0
- package/.codex/skills/team-ux-improve/wisdom/patterns/ui-feedback.md +16 -0
- package/.codex/skills/team-ux-improve/wisdom/principles/general-ux.md +16 -0
- package/ccw/dist/core/routes/cli-settings-routes.d.ts.map +1 -1
- package/ccw/dist/core/routes/cli-settings-routes.js +135 -133
- package/ccw/dist/core/routes/cli-settings-routes.js.map +1 -1
- package/ccw/frontend/dist/assets/{AlertDialog-BW9jiZ-p.js → AlertDialog-CnpjWAGm.js} +2 -2
- package/ccw/frontend/dist/assets/{AlertDialog-BW9jiZ-p.js.map → AlertDialog-CnpjWAGm.js.map} +1 -1
- package/ccw/frontend/dist/assets/{AnalysisPage-ds-w_nVO.js → AnalysisPage-BT2rDDUD.js} +2 -2
- package/ccw/frontend/dist/assets/{AnalysisPage-ds-w_nVO.js.map → AnalysisPage-BT2rDDUD.js.map} +1 -1
- package/ccw/frontend/dist/assets/{ApiSettingsPage-DlCbXxTz.js → ApiSettingsPage-DGpjiNVu.js} +2 -2
- package/ccw/frontend/dist/assets/{ApiSettingsPage-DlCbXxTz.js.map → ApiSettingsPage-DGpjiNVu.js.map} +1 -1
- package/ccw/frontend/dist/assets/{CliModeToggle-Dq3nL4fF.js → CliModeToggle-BqUadHn3.js} +2 -2
- package/ccw/frontend/dist/assets/{CliModeToggle-Dq3nL4fF.js.map → CliModeToggle-BqUadHn3.js.map} +1 -1
- package/ccw/frontend/dist/assets/{CliSessionSharePage-BNDkEE4u.js → CliSessionSharePage-C3AdsDkm.js} +2 -2
- package/ccw/frontend/dist/assets/{CliSessionSharePage-BNDkEE4u.js.map → CliSessionSharePage-C3AdsDkm.js.map} +1 -1
- package/ccw/frontend/dist/assets/{CliViewerPage-ChM-uNx_.js → CliViewerPage-BZXpgY0N.js} +2 -2
- package/ccw/frontend/dist/assets/{CliViewerPage-ChM-uNx_.js.map → CliViewerPage-BZXpgY0N.js.map} +1 -1
- package/ccw/frontend/dist/assets/{CodexLensPage-DOcsYNQk.js → CodexLensPage-CePoJz-u.js} +2 -2
- package/ccw/frontend/dist/assets/{CodexLensPage-DOcsYNQk.js.map → CodexLensPage-CePoJz-u.js.map} +1 -1
- package/ccw/frontend/dist/assets/{Collapsible-CRNbykXN.js → Collapsible-DXVzWwmb.js} +2 -2
- package/ccw/frontend/dist/assets/{Collapsible-CRNbykXN.js.map → Collapsible-DXVzWwmb.js.map} +1 -1
- package/ccw/frontend/dist/assets/{CommandsManagerPage-C2JWcemF.js → CommandsManagerPage-B6wJYF0z.js} +2 -2
- package/ccw/frontend/dist/assets/{CommandsManagerPage-C2JWcemF.js.map → CommandsManagerPage-B6wJYF0z.js.map} +1 -1
- package/ccw/frontend/dist/assets/{DeepWikiPage-CvleOtJy.js → DeepWikiPage-D55fcvSk.js} +2 -2
- package/ccw/frontend/dist/assets/{DeepWikiPage-CvleOtJy.js.map → DeepWikiPage-D55fcvSk.js.map} +1 -1
- package/ccw/frontend/dist/assets/{EndpointsPage-CMOWQG64.js → EndpointsPage-DcGziJ5t.js} +2 -2
- package/ccw/frontend/dist/assets/{EndpointsPage-CMOWQG64.js.map → EndpointsPage-DcGziJ5t.js.map} +1 -1
- package/ccw/frontend/dist/assets/{ExplorerPage-DaFPRlNo.js → ExplorerPage-C4eKzn7F.js} +2 -2
- package/ccw/frontend/dist/assets/{ExplorerPage-DaFPRlNo.js.map → ExplorerPage-C4eKzn7F.js.map} +1 -1
- package/ccw/frontend/dist/assets/{FixSessionPage-CC4p04Az.js → FixSessionPage-BUHh954A.js} +2 -2
- package/ccw/frontend/dist/assets/{FixSessionPage-CC4p04Az.js.map → FixSessionPage-BUHh954A.js.map} +1 -1
- package/ccw/frontend/dist/assets/{FloatingFileBrowser-DROn1xZ5.js → FloatingFileBrowser-C3GF_u1C.js} +2 -2
- package/ccw/frontend/dist/assets/{FloatingFileBrowser-DROn1xZ5.js.map → FloatingFileBrowser-C3GF_u1C.js.map} +1 -1
- package/ccw/frontend/dist/assets/{FloatingPanel-CmL_yhDv.js → FloatingPanel-Cn-q9PyJ.js} +2 -2
- package/ccw/frontend/dist/assets/{FloatingPanel-CmL_yhDv.js.map → FloatingPanel-Cn-q9PyJ.js.map} +1 -1
- package/ccw/frontend/dist/assets/{GraphExplorerPage-DCV5ybKE.js → GraphExplorerPage-DIpqgvoU.js} +2 -2
- package/ccw/frontend/dist/assets/{GraphExplorerPage-DCV5ybKE.js.map → GraphExplorerPage-DIpqgvoU.js.map} +1 -1
- package/ccw/frontend/dist/assets/{HistoryPage-D0fYQZgc.js → HistoryPage-DzSvEAFe.js} +2 -2
- package/ccw/frontend/dist/assets/{HistoryPage-D0fYQZgc.js.map → HistoryPage-DzSvEAFe.js.map} +1 -1
- package/ccw/frontend/dist/assets/{HookManagerPage-D2FuJfsM.js → HookManagerPage-C6LDhWrH.js} +2 -2
- package/ccw/frontend/dist/assets/{HookManagerPage-D2FuJfsM.js.map → HookManagerPage-C6LDhWrH.js.map} +1 -1
- package/ccw/frontend/dist/assets/{InstallationsPage-tjklillZ.js → InstallationsPage-D9ct9xFV.js} +2 -2
- package/ccw/frontend/dist/assets/{InstallationsPage-tjklillZ.js.map → InstallationsPage-D9ct9xFV.js.map} +1 -1
- package/ccw/frontend/dist/assets/{IssueHubPage-E4JVrhO1.js → IssueHubPage-CXgDC8pS.js} +2 -2
- package/ccw/frontend/dist/assets/{IssueHubPage-E4JVrhO1.js.map → IssueHubPage-CXgDC8pS.js.map} +1 -1
- package/ccw/frontend/dist/assets/{LiteTasksPage-aJuRoyLt.js → LiteTasksPage-DMkauCwG.js} +2 -2
- package/ccw/frontend/dist/assets/{LiteTasksPage-aJuRoyLt.js.map → LiteTasksPage-DMkauCwG.js.map} +1 -1
- package/ccw/frontend/dist/assets/{McpManagerPage-BJeuWJv1.js → McpManagerPage-DhLDydgc.js} +2 -2
- package/ccw/frontend/dist/assets/{McpManagerPage-BJeuWJv1.js.map → McpManagerPage-DhLDydgc.js.map} +1 -1
- package/ccw/frontend/dist/assets/{MemoryPage-BI4FAXhs.js → MemoryPage-Be3nhq40.js} +2 -2
- package/ccw/frontend/dist/assets/{MemoryPage-BI4FAXhs.js.map → MemoryPage-Be3nhq40.js.map} +1 -1
- package/ccw/frontend/dist/assets/{NotFoundPage-DD2svchp.js → NotFoundPage-0yGnCePd.js} +2 -2
- package/ccw/frontend/dist/assets/{NotFoundPage-DD2svchp.js.map → NotFoundPage-0yGnCePd.js.map} +1 -1
- package/ccw/frontend/dist/assets/{OrchestratorPage-FC__7yYa.js → OrchestratorPage-_SmXZcGl.js} +2 -2
- package/ccw/frontend/dist/assets/{OrchestratorPage-FC__7yYa.js.map → OrchestratorPage-_SmXZcGl.js.map} +1 -1
- package/ccw/frontend/dist/assets/{ProjectOverviewPage-DBB_-FzV.js → ProjectOverviewPage-BeXTMsdo.js} +2 -2
- package/ccw/frontend/dist/assets/{ProjectOverviewPage-DBB_-FzV.js.map → ProjectOverviewPage-BeXTMsdo.js.map} +1 -1
- package/ccw/frontend/dist/assets/{PromptHistoryPage-BwOAvCH8.js → PromptHistoryPage-DS6ycuAv.js} +2 -2
- package/ccw/frontend/dist/assets/{PromptHistoryPage-BwOAvCH8.js.map → PromptHistoryPage-DS6ycuAv.js.map} +1 -1
- package/ccw/frontend/dist/assets/{ReviewSessionPage-Dd1-g_gp.js → ReviewSessionPage-BoqyjhPo.js} +2 -2
- package/ccw/frontend/dist/assets/{ReviewSessionPage-Dd1-g_gp.js.map → ReviewSessionPage-BoqyjhPo.js.map} +1 -1
- package/ccw/frontend/dist/assets/{RulesManagerPage-B3RGdsKD.js → RulesManagerPage-DMAwkKlc.js} +2 -2
- package/ccw/frontend/dist/assets/{RulesManagerPage-B3RGdsKD.js.map → RulesManagerPage-DMAwkKlc.js.map} +1 -1
- package/ccw/frontend/dist/assets/{SessionDetailPage-DM-W5R8K.js → SessionDetailPage-BgJRHIF4.js} +2 -2
- package/ccw/frontend/dist/assets/{SessionDetailPage-DM-W5R8K.js.map → SessionDetailPage-BgJRHIF4.js.map} +1 -1
- package/ccw/frontend/dist/assets/{SessionsPage-BVz1KCc7.js → SessionsPage-DBPdWlji.js} +2 -2
- package/ccw/frontend/dist/assets/{SessionsPage-BVz1KCc7.js.map → SessionsPage-DBPdWlji.js.map} +1 -1
- package/ccw/frontend/dist/assets/{SettingsPage-ComW7EZS.js → SettingsPage-BY3QiJhm.js} +4 -4
- package/ccw/frontend/dist/assets/{SettingsPage-ComW7EZS.js.map → SettingsPage-BY3QiJhm.js.map} +1 -1
- package/ccw/frontend/dist/assets/{SkillsManagerPage-CKom9XwV.js → SkillsManagerPage-DS101Adm.js} +2 -2
- package/ccw/frontend/dist/assets/{SkillsManagerPage-CKom9XwV.js.map → SkillsManagerPage-DS101Adm.js.map} +1 -1
- package/ccw/frontend/dist/assets/{SpecsSettingsPage-DQz7WP2s.js → SpecsSettingsPage-BcsLu1qq.js} +2 -2
- package/ccw/frontend/dist/assets/{SpecsSettingsPage-DQz7WP2s.js.map → SpecsSettingsPage-BcsLu1qq.js.map} +1 -1
- package/ccw/frontend/dist/assets/{Switch-BPMdND9H.js → Switch-BL9AmNPC.js} +2 -2
- package/ccw/frontend/dist/assets/{Switch-BPMdND9H.js.map → Switch-BL9AmNPC.js.map} +1 -1
- package/ccw/frontend/dist/assets/{TabsNavigation-qqt70VYL.js → TabsNavigation-BUcjsLeE.js} +2 -2
- package/ccw/frontend/dist/assets/{TabsNavigation-qqt70VYL.js.map → TabsNavigation-BUcjsLeE.js.map} +1 -1
- package/ccw/frontend/dist/assets/{TaskDrawer-BqK_qiHX.js → TaskDrawer-BNvfS6dq.js} +2 -2
- package/ccw/frontend/dist/assets/{TaskDrawer-BqK_qiHX.js.map → TaskDrawer-BNvfS6dq.js.map} +1 -1
- package/ccw/frontend/dist/assets/{TeamPage-u5_i0Rgh.js → TeamPage-CT-zNCrF.js} +2 -2
- package/ccw/frontend/dist/assets/{TeamPage-u5_i0Rgh.js.map → TeamPage-CT-zNCrF.js.map} +1 -1
- package/ccw/frontend/dist/assets/{TerminalDashboardPage-rUtC9e40.js → TerminalDashboardPage-DfZFGs8g.js} +2 -2
- package/ccw/frontend/dist/assets/{TerminalDashboardPage-rUtC9e40.js.map → TerminalDashboardPage-DfZFGs8g.js.map} +1 -1
- package/ccw/frontend/dist/assets/{archive-C3u8YNQF.js → archive-Cev1SaQq.js} +2 -2
- package/ccw/frontend/dist/assets/{archive-C3u8YNQF.js.map → archive-Cev1SaQq.js.map} +1 -1
- package/ccw/frontend/dist/assets/{archive-restore-DfQ998g5.js → archive-restore-BIVluaHZ.js} +2 -2
- package/ccw/frontend/dist/assets/{archive-restore-DfQ998g5.js.map → archive-restore-BIVluaHZ.js.map} +1 -1
- package/ccw/frontend/dist/assets/{arrow-right-BshJM9Po.js → arrow-right-DrivbS5j.js} +2 -2
- package/ccw/frontend/dist/assets/{arrow-right-BshJM9Po.js.map → arrow-right-DrivbS5j.js.map} +1 -1
- package/ccw/frontend/dist/assets/{bookmark-plus-D03qJyOZ.js → bookmark-plus-DKyzL0Xg.js} +2 -2
- package/ccw/frontend/dist/assets/{bookmark-plus-D03qJyOZ.js.map → bookmark-plus-DKyzL0Xg.js.map} +1 -1
- package/ccw/frontend/dist/assets/{bot-CyzWuwq0.js → bot-GBUkPAe3.js} +2 -2
- package/ccw/frontend/dist/assets/{bot-CyzWuwq0.js.map → bot-GBUkPAe3.js.map} +1 -1
- package/ccw/frontend/dist/assets/{braces-BPgtyjsG.js → braces-BWhm2c4g.js} +2 -2
- package/ccw/frontend/dist/assets/{braces-BPgtyjsG.js.map → braces-BWhm2c4g.js.map} +1 -1
- package/ccw/frontend/dist/assets/{circle-stop-Dix1AOmw.js → circle-stop-CBcZSKNp.js} +2 -2
- package/ccw/frontend/dist/assets/{circle-stop-Dix1AOmw.js.map → circle-stop-CBcZSKNp.js.map} +1 -1
- package/ccw/frontend/dist/assets/{cpu-CCQ4Q0Zh.js → cpu-CzNmuTZD.js} +2 -2
- package/ccw/frontend/dist/assets/{cpu-CCQ4Q0Zh.js.map → cpu-CzNmuTZD.js.map} +1 -1
- package/ccw/frontend/dist/assets/{ellipsis-vertical-BpTysg-Y.js → ellipsis-vertical-BoIyQKaI.js} +2 -2
- package/ccw/frontend/dist/assets/{ellipsis-vertical-BpTysg-Y.js.map → ellipsis-vertical-BoIyQKaI.js.map} +1 -1
- package/ccw/frontend/dist/assets/{eye-DGY1rAZs.js → eye-BqxyhxQq.js} +2 -2
- package/ccw/frontend/dist/assets/{eye-DGY1rAZs.js.map → eye-BqxyhxQq.js.map} +1 -1
- package/ccw/frontend/dist/assets/{eye-off-D8t3JfWG.js → eye-off-D9dTZP1A.js} +2 -2
- package/ccw/frontend/dist/assets/{eye-off-D8t3JfWG.js.map → eye-off-D9dTZP1A.js.map} +1 -1
- package/ccw/frontend/dist/assets/{file-json-BAdJb0n8.js → file-json-CLYEUI6e.js} +2 -2
- package/ccw/frontend/dist/assets/{file-json-BAdJb0n8.js.map → file-json-CLYEUI6e.js.map} +1 -1
- package/ccw/frontend/dist/assets/{file-text-DrJFiOUB.js → file-text-D5j9C5XC.js} +2 -2
- package/ccw/frontend/dist/assets/{file-text-DrJFiOUB.js.map → file-text-D5j9C5XC.js.map} +1 -1
- package/ccw/frontend/dist/assets/{filter-CKqzYbz7.js → filter-CEUK5jsA.js} +2 -2
- package/ccw/frontend/dist/assets/{filter-CKqzYbz7.js.map → filter-CEUK5jsA.js.map} +1 -1
- package/ccw/frontend/dist/assets/{folder-CV8511y9.js → folder-BEOY8txM.js} +2 -2
- package/ccw/frontend/dist/assets/{folder-CV8511y9.js.map → folder-BEOY8txM.js.map} +1 -1
- package/ccw/frontend/dist/assets/{gauge-XKvmu_uU.js → gauge-CbumHmVn.js} +2 -2
- package/ccw/frontend/dist/assets/{gauge-XKvmu_uU.js.map → gauge-CbumHmVn.js.map} +1 -1
- package/ccw/frontend/dist/assets/{globe-C56cDUzX.js → globe-D8_IB9gV.js} +2 -2
- package/ccw/frontend/dist/assets/{globe-C56cDUzX.js.map → globe-D8_IB9gV.js.map} +1 -1
- package/ccw/frontend/dist/assets/{grid-3x3-Bya-suFW.js → grid-3x3-BpzWmYF5.js} +2 -2
- package/ccw/frontend/dist/assets/{grid-3x3-Bya-suFW.js.map → grid-3x3-BpzWmYF5.js.map} +1 -1
- package/ccw/frontend/dist/assets/{hard-drive-CmuTZpsB.js → hard-drive-QIHpGln7.js} +2 -2
- package/ccw/frontend/dist/assets/{hard-drive-CmuTZpsB.js.map → hard-drive-QIHpGln7.js.map} +1 -1
- package/ccw/frontend/dist/assets/{hash-CRPT_tJQ.js → hash-CP0YRHVs.js} +2 -2
- package/ccw/frontend/dist/assets/{hash-CRPT_tJQ.js.map → hash-CP0YRHVs.js.map} +1 -1
- package/ccw/frontend/dist/assets/{history-C1pJZQCL.js → history-hOjgVKax.js} +2 -2
- package/ccw/frontend/dist/assets/{history-C1pJZQCL.js.map → history-hOjgVKax.js.map} +1 -1
- package/ccw/frontend/dist/assets/{index-Dmt9OiEf.js → index-B_ysvdnP.js} +2 -2
- package/ccw/frontend/dist/assets/{index-Dmt9OiEf.js.map → index-B_ysvdnP.js.map} +1 -1
- package/ccw/frontend/dist/assets/{index-dWT2M6Ef.js → index-C5Oqx2xI.js} +3 -3
- package/ccw/frontend/dist/assets/{index-dWT2M6Ef.js.map → index-C5Oqx2xI.js.map} +1 -1
- package/ccw/frontend/dist/assets/{index-CI8-rBff.js → index-CJi0bWL-.js} +2 -2
- package/ccw/frontend/dist/assets/{index-CI8-rBff.js.map → index-CJi0bWL-.js.map} +1 -1
- package/ccw/frontend/dist/assets/{index-anSMmEF8.js → index-CdQpo1x0.js} +2 -2
- package/ccw/frontend/dist/assets/{index-anSMmEF8.js.map → index-CdQpo1x0.js.map} +1 -1
- package/ccw/frontend/dist/assets/{layout-grid-TSO0BFQE.js → layout-grid-C38fQyLs.js} +2 -2
- package/ccw/frontend/dist/assets/{layout-grid-TSO0BFQE.js.map → layout-grid-C38fQyLs.js.map} +1 -1
- package/ccw/frontend/dist/assets/{lightbulb-Caj6fIQD.js → lightbulb-CClbCUzu.js} +2 -2
- package/ccw/frontend/dist/assets/{lightbulb-Caj6fIQD.js.map → lightbulb-CClbCUzu.js.map} +1 -1
- package/ccw/frontend/dist/assets/{link-2-DE9lMxa-.js → link-2-CB-LKbI0.js} +2 -2
- package/ccw/frontend/dist/assets/{link-2-DE9lMxa-.js.map → link-2-CB-LKbI0.js.map} +1 -1
- package/ccw/frontend/dist/assets/{link-BZtPgLW0.js → link-BK6SBzHS.js} +2 -2
- package/ccw/frontend/dist/assets/{link-BZtPgLW0.js.map → link-BK6SBzHS.js.map} +1 -1
- package/ccw/frontend/dist/assets/{list-DubWyY-U.js → list-BME_WOA_.js} +2 -2
- package/ccw/frontend/dist/assets/{list-DubWyY-U.js.map → list-BME_WOA_.js.map} +1 -1
- package/ccw/frontend/dist/assets/{map-pin-DwN_48AF.js → map-pin-ADsnCyjJ.js} +2 -2
- package/ccw/frontend/dist/assets/{map-pin-DwN_48AF.js.map → map-pin-ADsnCyjJ.js.map} +1 -1
- package/ccw/frontend/dist/assets/{messages-square-bjxvaiM9.js → messages-square-CLflB1Cq.js} +2 -2
- package/ccw/frontend/dist/assets/{messages-square-bjxvaiM9.js.map → messages-square-CLflB1Cq.js.map} +1 -1
- package/ccw/frontend/dist/assets/{minimize-2-CGfBKD_V.js → minimize-2-B3ZNzfGr.js} +2 -2
- package/ccw/frontend/dist/assets/{minimize-2-CGfBKD_V.js.map → minimize-2-B3ZNzfGr.js.map} +1 -1
- package/ccw/frontend/dist/assets/{package-nzWY6ilt.js → package-CByPhtMG.js} +2 -2
- package/ccw/frontend/dist/assets/{package-nzWY6ilt.js.map → package-CByPhtMG.js.map} +1 -1
- package/ccw/frontend/dist/assets/{plug-CiLce49C.js → plug-BggRzPX9.js} +2 -2
- package/ccw/frontend/dist/assets/{plug-CiLce49C.js.map → plug-BggRzPX9.js.map} +1 -1
- package/ccw/frontend/dist/assets/{power-CFLmB-U9.js → power-CWuxQSJK.js} +2 -2
- package/ccw/frontend/dist/assets/{power-CFLmB-U9.js.map → power-CWuxQSJK.js.map} +1 -1
- package/ccw/frontend/dist/assets/{save-DuO6OF0C.js → save-BdJ6EX4Q.js} +2 -2
- package/ccw/frontend/dist/assets/{save-DuO6OF0C.js.map → save-BdJ6EX4Q.js.map} +1 -1
- package/ccw/frontend/dist/assets/{send-CZk9p0mM.js → send-Ce9wuY7Q.js} +2 -2
- package/ccw/frontend/dist/assets/{send-CZk9p0mM.js.map → send-Ce9wuY7Q.js.map} +1 -1
- package/ccw/frontend/dist/assets/{square-check-big-BY_1YQQg.js → square-check-big-D6jItkfw.js} +2 -2
- package/ccw/frontend/dist/assets/{square-check-big-BY_1YQQg.js.map → square-check-big-D6jItkfw.js.map} +1 -1
- package/ccw/frontend/dist/assets/{square-pen-CnZgm6g-.js → square-pen-Byxq21zp.js} +2 -2
- package/ccw/frontend/dist/assets/{square-pen-CnZgm6g-.js.map → square-pen-Byxq21zp.js.map} +1 -1
- package/ccw/frontend/dist/assets/{star-Cn1F0qy7.js → star-Codj9dvK.js} +2 -2
- package/ccw/frontend/dist/assets/{star-Cn1F0qy7.js.map → star-Codj9dvK.js.map} +1 -1
- package/ccw/frontend/dist/assets/{style-Dxs1iXCV.js → style-4bYpUGcc.js} +2 -2
- package/ccw/frontend/dist/assets/{style-Dxs1iXCV.js.map → style-4bYpUGcc.js.map} +1 -1
- package/ccw/frontend/dist/assets/{target-Bz1fLRKH.js → target-DKBoDNCn.js} +2 -2
- package/ccw/frontend/dist/assets/{target-Bz1fLRKH.js.map → target-DKBoDNCn.js.map} +1 -1
- package/ccw/frontend/dist/assets/{test-tube-C6qCYlDr.js → test-tube-DTqZcBtA.js} +2 -2
- package/ccw/frontend/dist/assets/{test-tube-C6qCYlDr.js.map → test-tube-DTqZcBtA.js.map} +1 -1
- package/ccw/frontend/dist/assets/{upload-C71kd4Qs.js → upload-DlUl-e6b.js} +2 -2
- package/ccw/frontend/dist/assets/{upload-C71kd4Qs.js.map → upload-DlUl-e6b.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useApiSettings-CqP2BAJ7.js → useApiSettings-D4zhKKT-.js} +2 -2
- package/ccw/frontend/dist/assets/{useApiSettings-CqP2BAJ7.js.map → useApiSettings-D4zhKKT-.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useCli-PCoPoVeM.js → useCli-D-qDwsAH.js} +2 -2
- package/ccw/frontend/dist/assets/{useCli-PCoPoVeM.js.map → useCli-D-qDwsAH.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useCommands-3OfPQPw4.js → useCommands-B0sidbbW.js} +2 -2
- package/ccw/frontend/dist/assets/{useCommands-3OfPQPw4.js.map → useCommands-B0sidbbW.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useDebounce-bXiFhQx9.js → useDebounce-eTtbKevt.js} +2 -2
- package/ccw/frontend/dist/assets/{useDebounce-bXiFhQx9.js.map → useDebounce-eTtbKevt.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useFileExplorer-DEyUm46_.js → useFileExplorer-MGSK0h33.js} +2 -2
- package/ccw/frontend/dist/assets/{useFileExplorer-DEyUm46_.js.map → useFileExplorer-MGSK0h33.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useLocale-sXTrdxcJ.js → useLocale-DDNxU7pJ.js} +2 -2
- package/ccw/frontend/dist/assets/{useLocale-sXTrdxcJ.js.map → useLocale-DDNxU7pJ.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useSkills-D0W0kXYm.js → useSkills-CZCRBtMY.js} +3 -3
- package/ccw/frontend/dist/assets/{useSkills-D0W0kXYm.js.map → useSkills-CZCRBtMY.js.map} +1 -1
- package/ccw/frontend/dist/assets/{useSystemSettings-DZ-8lZsG.js → useSystemSettings-DfQEFXSD.js} +2 -2
- package/ccw/frontend/dist/assets/{useSystemSettings-DZ-8lZsG.js.map → useSystemSettings-DfQEFXSD.js.map} +1 -1
- package/ccw/frontend/dist/assets/{wand-sparkles-83GmAYuw.js → wand-sparkles-DCLvfgl1.js} +2 -2
- package/ccw/frontend/dist/assets/{wand-sparkles-83GmAYuw.js.map → wand-sparkles-DCLvfgl1.js.map} +1 -1
- package/ccw/frontend/dist/index.html +1 -1
- package/package.json +1 -1
- package/.codex/skills/team-arch-opt/agents/completion-handler.md +0 -138
- package/.codex/skills/team-arch-opt/agents/fix-cycle-handler.md +0 -146
- package/.codex/skills/team-arch-opt/agents/plan-reviewer.md +0 -150
- package/.codex/skills/team-arch-opt/instructions/agent-instruction.md +0 -114
- package/.codex/skills/team-arch-opt/schemas/tasks-schema.md +0 -174
- package/.codex/skills/team-brainstorm/agents/gc-controller.md +0 -122
- package/.codex/skills/team-brainstorm/agents/topic-clarifier.md +0 -126
- package/.codex/skills/team-brainstorm/instructions/agent-instruction.md +0 -105
- package/.codex/skills/team-brainstorm/schemas/tasks-schema.md +0 -171
- package/.codex/skills/team-coordinate/agents/completion-handler.md +0 -127
- package/.codex/skills/team-coordinate/agents/plan-reviewer.md +0 -145
- package/.codex/skills/team-coordinate/instructions/agent-instruction.md +0 -184
- package/.codex/skills/team-coordinate/schemas/tasks-schema.md +0 -165
- package/.codex/skills/team-designer/agents/requirement-clarifier.md +0 -247
- package/.codex/skills/team-designer/agents/validation-reporter.md +0 -186
- package/.codex/skills/team-designer/instructions/agent-instruction.md +0 -163
- package/.codex/skills/team-designer/schemas/tasks-schema.md +0 -180
- package/.codex/skills/team-executor/instructions/agent-instruction.md +0 -62
- package/.codex/skills/team-executor/schemas/tasks-schema.md +0 -141
- package/.codex/skills/team-frontend/agents/completion-handler.md +0 -131
- package/.codex/skills/team-frontend/agents/qa-gate-reviewer.md +0 -153
- package/.codex/skills/team-frontend/instructions/agent-instruction.md +0 -197
- package/.codex/skills/team-frontend/schemas/tasks-schema.md +0 -188
- package/.codex/skills/team-frontend-debug/agents/completion-handler.md +0 -142
- package/.codex/skills/team-frontend-debug/agents/conditional-skip-gate.md +0 -130
- package/.codex/skills/team-frontend-debug/agents/iteration-handler.md +0 -120
- package/.codex/skills/team-frontend-debug/instructions/agent-instruction.md +0 -272
- package/.codex/skills/team-frontend-debug/schemas/tasks-schema.md +0 -198
- package/.codex/skills/team-issue/agents/reviewer.md +0 -204
- package/.codex/skills/team-issue/instructions/agent-instruction.md +0 -198
- package/.codex/skills/team-issue/schemas/tasks-schema.md +0 -198
- package/.codex/skills/team-iterdev/agents/gc-controller.md +0 -193
- package/.codex/skills/team-iterdev/agents/task-analyzer.md +0 -206
- package/.codex/skills/team-iterdev/instructions/agent-instruction.md +0 -118
- package/.codex/skills/team-iterdev/schemas/tasks-schema.md +0 -174
- package/.codex/skills/team-lifecycle/SKILL.md +0 -906
- package/.codex/skills/team-lifecycle/agents/analyst.md +0 -424
- package/.codex/skills/team-lifecycle/agents/architect.md +0 -274
- package/.codex/skills/team-lifecycle/agents/discuss-agent.md +0 -422
- package/.codex/skills/team-lifecycle/agents/executor.md +0 -423
- package/.codex/skills/team-lifecycle/agents/explore-agent.md +0 -471
- package/.codex/skills/team-lifecycle/agents/fe-developer.md +0 -239
- package/.codex/skills/team-lifecycle/agents/fe-qa.md +0 -357
- package/.codex/skills/team-lifecycle/agents/planner.md +0 -437
- package/.codex/skills/team-lifecycle/agents/reviewer.md +0 -483
- package/.codex/skills/team-lifecycle/agents/tester.md +0 -423
- package/.codex/skills/team-lifecycle/agents/writer.md +0 -502
- package/.codex/skills/team-lifecycle/phases/01-requirement-clarification.md +0 -209
- package/.codex/skills/team-lifecycle/phases/02-team-initialization.md +0 -263
- package/.codex/skills/team-lifecycle/phases/03-task-chain-creation.md +0 -251
- package/.codex/skills/team-lifecycle/phases/04-pipeline-coordination.md +0 -831
- package/.codex/skills/team-lifecycle/phases/05-completion-report.md +0 -309
- package/.codex/skills/team-lifecycle/specs/document-standards.md +0 -192
- package/.codex/skills/team-lifecycle/specs/quality-gates.md +0 -207
- package/.codex/skills/team-lifecycle-v4/agents/quality-gate.md +0 -165
- package/.codex/skills/team-lifecycle-v4/agents/requirement-clarifier.md +0 -163
- package/.codex/skills/team-lifecycle-v4/agents/supervisor.md +0 -182
- package/.codex/skills/team-perf-opt/agents/completion-handler.md +0 -141
- package/.codex/skills/team-perf-opt/agents/fix-cycle-handler.md +0 -156
- package/.codex/skills/team-perf-opt/agents/plan-reviewer.md +0 -150
- package/.codex/skills/team-perf-opt/instructions/agent-instruction.md +0 -122
- package/.codex/skills/team-perf-opt/schemas/tasks-schema.md +0 -174
- package/.codex/skills/team-planex/instructions/agent-instruction.md +0 -301
- package/.codex/skills/team-planex/schemas/tasks-schema.md +0 -198
- package/.codex/skills/team-planex-v2/SKILL.md +0 -652
- package/.codex/skills/team-planex-v2/instructions/agent-instruction.md +0 -193
- package/.codex/skills/team-planex-v2/schemas/tasks-schema.md +0 -206
- package/.codex/skills/team-quality-assurance/agents/executor.md +0 -192
- package/.codex/skills/team-quality-assurance/agents/gc-loop-handler.md +0 -163
- package/.codex/skills/team-quality-assurance/instructions/agent-instruction.md +0 -185
- package/.codex/skills/team-quality-assurance/schemas/tasks-schema.md +0 -190
- package/.codex/skills/team-review/agents/fixer.md +0 -360
- package/.codex/skills/team-review/instructions/agent-instruction.md +0 -102
- package/.codex/skills/team-review/schemas/tasks-schema.md +0 -143
- package/.codex/skills/team-roadmap-dev/agents/roadmap-discusser.md +0 -176
- package/.codex/skills/team-roadmap-dev/agents/roadmap-planner.md +0 -194
- package/.codex/skills/team-roadmap-dev/agents/roadmap-verifier.md +0 -221
- package/.codex/skills/team-roadmap-dev/instructions/executor-instruction.md +0 -55
- package/.codex/skills/team-roadmap-dev/schemas/tasks-schema.md +0 -144
- package/.codex/skills/team-tech-debt/agents/gc-loop-manager.md +0 -130
- package/.codex/skills/team-tech-debt/agents/plan-approver.md +0 -151
- package/.codex/skills/team-tech-debt/instructions/agent-instruction.md +0 -390
- package/.codex/skills/team-tech-debt/schemas/tasks-schema.md +0 -196
- package/.codex/skills/team-testing/agents/executor.md +0 -195
- package/.codex/skills/team-testing/agents/gc-loop-handler.md +0 -155
- package/.codex/skills/team-testing/instructions/agent-instruction.md +0 -142
- package/.codex/skills/team-testing/schemas/tasks-schema.md +0 -172
- package/.codex/skills/team-uidesign/agents/completion-handler.md +0 -177
- package/.codex/skills/team-uidesign/agents/gc-loop-handler.md +0 -162
- package/.codex/skills/team-uidesign/instructions/agent-instruction.md +0 -509
- package/.codex/skills/team-uidesign/schemas/tasks-schema.md +0 -187
- package/.codex/skills/team-ultra-analyze/agents/discussion-feedback.md +0 -155
- package/.codex/skills/team-ultra-analyze/agents/topic-analyzer.md +0 -153
- package/.codex/skills/team-ultra-analyze/instructions/agent-instruction.md +0 -169
- package/.codex/skills/team-ultra-analyze/schemas/tasks-schema.md +0 -180
- package/.codex/skills/team-ux-improve/agents/ux-designer.md +0 -136
- package/.codex/skills/team-ux-improve/agents/ux-explorer.md +0 -158
- package/.codex/skills/team-ux-improve/agents/ux-tester.md +0 -174
- package/.codex/skills/team-ux-improve/instructions/ux-worker-instruction.md +0 -55
- package/.codex/skills/team-ux-improve/schemas/tasks-schema.md +0 -87
- /package/.codex/skills/{team-lifecycle/templates/architecture-doc.md → team-lifecycle-v4/templates/architecture.md} +0 -0
- /package/.codex/skills/{team-lifecycle/templates/epics-template.md → team-lifecycle-v4/templates/epics.md} +0 -0
- /package/.codex/skills/{team-lifecycle → team-lifecycle-v4}/templates/product-brief.md +0 -0
- /package/.codex/skills/{team-lifecycle/templates/requirements-prd.md → team-lifecycle-v4/templates/requirements.md} +0 -0
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
---
|
|
2
|
+
role: tester
|
|
3
|
+
prefix: TEST
|
|
4
|
+
inner_loop: true
|
|
5
|
+
message_types:
|
|
6
|
+
success: test_complete
|
|
7
|
+
progress: test_progress
|
|
8
|
+
error: error
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# Tester
|
|
12
|
+
|
|
13
|
+
Feature-driven testing using Chrome DevTools MCP. Proactively discover bugs from feature list.
|
|
14
|
+
|
|
15
|
+
## Identity
|
|
16
|
+
- Tag: [tester] | Prefix: TEST-*
|
|
17
|
+
- Responsibility: Parse feature list → generate test scenarios → execute in browser → report discovered issues
|
|
18
|
+
|
|
19
|
+
## Boundaries
|
|
20
|
+
### MUST
|
|
21
|
+
- Parse feature list into testable scenarios
|
|
22
|
+
- Navigate to each feature's page using Chrome DevTools MCP
|
|
23
|
+
- Execute test scenarios with user interaction simulation
|
|
24
|
+
- Capture evidence for each test (screenshot, console, network)
|
|
25
|
+
- Classify results: pass / fail / warning
|
|
26
|
+
- Report all discovered issues with evidence
|
|
27
|
+
### MUST NOT
|
|
28
|
+
- Modify source code or project files
|
|
29
|
+
- Skip features in the list
|
|
30
|
+
- Report pass without actually testing
|
|
31
|
+
- Make assumptions about expected behavior without evidence
|
|
32
|
+
|
|
33
|
+
## Phase 2: Parse Feature List + Plan Tests
|
|
34
|
+
|
|
35
|
+
1. Read upstream artifacts via team_msg(operation="get_state")
|
|
36
|
+
2. Extract from task description:
|
|
37
|
+
- Session folder path
|
|
38
|
+
- Feature list (structured or free-text)
|
|
39
|
+
- Base URL for the application
|
|
40
|
+
3. Parse each feature into test items:
|
|
41
|
+
```json
|
|
42
|
+
{
|
|
43
|
+
"features": [
|
|
44
|
+
{
|
|
45
|
+
"id": "F-001",
|
|
46
|
+
"name": "用户登录",
|
|
47
|
+
"url": "/login",
|
|
48
|
+
"scenarios": [
|
|
49
|
+
{ "name": "正常登录", "steps": ["填写用户名", "填写密码", "点击登录"], "expected": "跳转到首页" },
|
|
50
|
+
{ "name": "空密码登录", "steps": ["填写用户名", "点击登录"], "expected": "显示密码必填提示" }
|
|
51
|
+
]
|
|
52
|
+
}
|
|
53
|
+
]
|
|
54
|
+
}
|
|
55
|
+
```
|
|
56
|
+
4. If feature descriptions lack detail, use page exploration to generate scenarios:
|
|
57
|
+
- Navigate to feature URL
|
|
58
|
+
- Take snapshot to discover interactive elements
|
|
59
|
+
- Generate scenarios from available UI elements (forms, buttons, links)
|
|
60
|
+
|
|
61
|
+
## Phase 3: Execute Tests
|
|
62
|
+
|
|
63
|
+
### Inner Loop: Process One Feature at a Time
|
|
64
|
+
|
|
65
|
+
For each feature in the list:
|
|
66
|
+
|
|
67
|
+
#### Step 3.1: Navigate to Feature Page
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
mcp__chrome-devtools__navigate_page({ type: "url", url: "<base-url><feature-url>" })
|
|
71
|
+
mcp__chrome-devtools__wait_for({ text: ["<expected-element>"], timeout: 10000 })
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
#### Step 3.2: Explore Page Structure
|
|
75
|
+
|
|
76
|
+
```
|
|
77
|
+
mcp__chrome-devtools__take_snapshot()
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
Parse snapshot to identify:
|
|
81
|
+
- Interactive elements (buttons, inputs, links, selects)
|
|
82
|
+
- Form fields and their labels
|
|
83
|
+
- Navigation elements
|
|
84
|
+
- Dynamic content areas
|
|
85
|
+
|
|
86
|
+
If no predefined scenarios, generate test scenarios from discovered elements.
|
|
87
|
+
|
|
88
|
+
#### Step 3.3: Execute Each Scenario
|
|
89
|
+
|
|
90
|
+
For each scenario:
|
|
91
|
+
|
|
92
|
+
1. **Capture baseline**:
|
|
93
|
+
```
|
|
94
|
+
mcp__chrome-devtools__take_screenshot({ filePath: "<session>/evidence/F-<id>-<scenario>-before.png" })
|
|
95
|
+
mcp__chrome-devtools__list_console_messages() // baseline errors
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
2. **Execute steps**:
|
|
99
|
+
- Map step descriptions to MCP actions:
|
|
100
|
+
| Step Pattern | MCP Action |
|
|
101
|
+
|-------------|------------|
|
|
102
|
+
| 点击/click XX | `take_snapshot` → find uid → `click({ uid })` |
|
|
103
|
+
| 填写/输入/fill XX with YY | `take_snapshot` → find uid → `fill({ uid, value })` |
|
|
104
|
+
| 悬停/hover XX | `take_snapshot` → find uid → `hover({ uid })` |
|
|
105
|
+
| 等待/wait XX | `wait_for({ text: ["XX"] })` |
|
|
106
|
+
| 导航/navigate to XX | `navigate_page({ type: "url", url: "XX" })` |
|
|
107
|
+
| 按键/press XX | `press_key({ key: "XX" })` |
|
|
108
|
+
| 滚动/scroll | `evaluate_script({ function: "() => window.scrollBy(0, 500)" })` |
|
|
109
|
+
|
|
110
|
+
3. **Capture result**:
|
|
111
|
+
```
|
|
112
|
+
mcp__chrome-devtools__take_screenshot({ filePath: "<session>/evidence/F-<id>-<scenario>-after.png" })
|
|
113
|
+
mcp__chrome-devtools__list_console_messages({ types: ["error", "warn"] })
|
|
114
|
+
mcp__chrome-devtools__list_network_requests({ resourceTypes: ["xhr", "fetch"] })
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
#### Step 3.4: Evaluate Scenario Result
|
|
118
|
+
|
|
119
|
+
| Check | Pass Condition | Fail Condition |
|
|
120
|
+
|-------|---------------|----------------|
|
|
121
|
+
| Console errors | No new errors after action | New Error/TypeError/ReferenceError |
|
|
122
|
+
| Network requests | All 2xx responses | Any 4xx/5xx response |
|
|
123
|
+
| Expected text | Expected text appears on page | Expected text not found |
|
|
124
|
+
| Visual state | Page renders without broken layout | Blank area, overflow, missing elements |
|
|
125
|
+
| Page responsive | Actions complete within timeout | Timeout or page freeze |
|
|
126
|
+
|
|
127
|
+
Classify result:
|
|
128
|
+
```
|
|
129
|
+
pass: All checks pass
|
|
130
|
+
fail: Console error OR network failure OR expected behavior not met
|
|
131
|
+
warning: Deprecation warnings OR slow response (>3s) OR minor visual issue
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
#### Step 3.5: Report Progress (Inner Loop)
|
|
135
|
+
|
|
136
|
+
After each feature, send progress via state_update:
|
|
137
|
+
```json
|
|
138
|
+
{
|
|
139
|
+
"status": "in_progress",
|
|
140
|
+
"task_id": "TEST-001",
|
|
141
|
+
"progress": "3/5 features tested",
|
|
142
|
+
"issues_found": 2
|
|
143
|
+
}
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
## Phase 4: Test Report
|
|
147
|
+
|
|
148
|
+
Write `<session>/artifacts/TEST-001-report.md`:
|
|
149
|
+
|
|
150
|
+
```markdown
|
|
151
|
+
# Test Report
|
|
152
|
+
|
|
153
|
+
## Summary
|
|
154
|
+
- **Features tested**: N
|
|
155
|
+
- **Passed**: X
|
|
156
|
+
- **Failed**: Y
|
|
157
|
+
- **Warnings**: Z
|
|
158
|
+
- **Test date**: <timestamp>
|
|
159
|
+
- **Base URL**: <url>
|
|
160
|
+
|
|
161
|
+
## Results by Feature
|
|
162
|
+
|
|
163
|
+
### F-001: <feature-name> — PASS/FAIL/WARNING
|
|
164
|
+
|
|
165
|
+
**Scenarios:**
|
|
166
|
+
| # | Scenario | Result | Issue |
|
|
167
|
+
|---|----------|--------|-------|
|
|
168
|
+
| 1 | <scenario-name> | PASS | — |
|
|
169
|
+
| 2 | <scenario-name> | FAIL | Console TypeError at step 3 |
|
|
170
|
+
|
|
171
|
+
**Evidence:**
|
|
172
|
+
- Screenshot (before): evidence/F-001-scenario1-before.png
|
|
173
|
+
- Screenshot (after): evidence/F-001-scenario1-after.png
|
|
174
|
+
- Console errors: [list]
|
|
175
|
+
- Network failures: [list]
|
|
176
|
+
|
|
177
|
+
### F-002: ...
|
|
178
|
+
|
|
179
|
+
## Discovered Issues
|
|
180
|
+
|
|
181
|
+
| ID | Feature | Severity | Description | Evidence |
|
|
182
|
+
|----|---------|----------|-------------|----------|
|
|
183
|
+
| BUG-001 | F-001 | High | TypeError on login submit | Console error + screenshot |
|
|
184
|
+
| BUG-002 | F-003 | Medium | API returns 500 on save | Network log |
|
|
185
|
+
| BUG-003 | F-005 | Low | Deprecation warning in console | Console warning |
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
Write `<session>/artifacts/TEST-001-issues.json`:
|
|
189
|
+
```json
|
|
190
|
+
{
|
|
191
|
+
"issues": [
|
|
192
|
+
{
|
|
193
|
+
"id": "BUG-001",
|
|
194
|
+
"feature": "F-001",
|
|
195
|
+
"feature_name": "用户登录",
|
|
196
|
+
"severity": "high",
|
|
197
|
+
"description": "点击登录按钮后控制台报TypeError",
|
|
198
|
+
"category": "javascript_error",
|
|
199
|
+
"evidence": {
|
|
200
|
+
"console_errors": ["TypeError: Cannot read property 'token' of undefined"],
|
|
201
|
+
"screenshot": "evidence/F-001-login-after.png",
|
|
202
|
+
"network_failures": []
|
|
203
|
+
},
|
|
204
|
+
"reproduction_steps": ["导航到/login", "填写用户名admin", "填写密码test", "点击登录按钮"]
|
|
205
|
+
}
|
|
206
|
+
]
|
|
207
|
+
}
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
Send state_update:
|
|
211
|
+
```json
|
|
212
|
+
{
|
|
213
|
+
"status": "task_complete",
|
|
214
|
+
"task_id": "TEST-001",
|
|
215
|
+
"ref": "<session>/artifacts/TEST-001-report.md",
|
|
216
|
+
"key_findings": ["Tested N features", "Found X issues (Y high, Z medium)"],
|
|
217
|
+
"decisions": [],
|
|
218
|
+
"verification": "tested",
|
|
219
|
+
"issues_ref": "<session>/artifacts/TEST-001-issues.json"
|
|
220
|
+
}
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
## Error Handling
|
|
224
|
+
|
|
225
|
+
| Scenario | Resolution |
|
|
226
|
+
|----------|------------|
|
|
227
|
+
| Feature URL not accessible | Log as failed, continue to next feature |
|
|
228
|
+
| Element not found for action | Take snapshot, search alternatives, skip scenario if not found |
|
|
229
|
+
| Page crash during test | Capture console, reload, continue next scenario |
|
|
230
|
+
| All features pass | Report success, no downstream ANALYZE needed |
|
|
231
|
+
| Timeout during interaction | Capture current state, mark as warning, continue |
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
---
|
|
2
|
+
role: verifier
|
|
3
|
+
prefix: VERIFY
|
|
4
|
+
inner_loop: false
|
|
5
|
+
message_types:
|
|
6
|
+
success: verification_result
|
|
7
|
+
error: error
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Verifier
|
|
11
|
+
|
|
12
|
+
Fix verification using Chrome DevTools MCP to confirm bug resolution.
|
|
13
|
+
|
|
14
|
+
## Identity
|
|
15
|
+
- Tag: [verifier] | Prefix: VERIFY-*
|
|
16
|
+
- Responsibility: Re-execute reproduction steps after fix, verify bug is resolved
|
|
17
|
+
|
|
18
|
+
## Boundaries
|
|
19
|
+
### MUST
|
|
20
|
+
- Execute EXACT same reproduction steps as Reproducer
|
|
21
|
+
- Capture same evidence types for comparison
|
|
22
|
+
- Compare before/after evidence objectively
|
|
23
|
+
- Report clear pass/fail verdict
|
|
24
|
+
### MUST NOT
|
|
25
|
+
- Modify source code or project files
|
|
26
|
+
- Skip any reproduction step
|
|
27
|
+
- Report pass without evidence comparison
|
|
28
|
+
- Make subjective judgments without evidence
|
|
29
|
+
|
|
30
|
+
## Phase 2: Load Context
|
|
31
|
+
|
|
32
|
+
1. Read upstream artifacts via team_msg(operation="get_state")
|
|
33
|
+
2. Load from multiple upstream roles:
|
|
34
|
+
- Reproducer: evidence-summary.json (original evidence + steps)
|
|
35
|
+
- Fixer: FIX-001-changes.md (what was changed)
|
|
36
|
+
3. Extract:
|
|
37
|
+
- Target URL
|
|
38
|
+
- Reproduction steps (exact same sequence)
|
|
39
|
+
- Original evidence for comparison
|
|
40
|
+
- Expected behavior (from bug report)
|
|
41
|
+
- Files modified by fixer
|
|
42
|
+
|
|
43
|
+
## Phase 3: Execute Verification
|
|
44
|
+
|
|
45
|
+
### Step 3.1: Pre-Verification Check
|
|
46
|
+
|
|
47
|
+
Verify fix was applied:
|
|
48
|
+
- Check that modified files exist and contain expected changes
|
|
49
|
+
- If running in dev server context, ensure server reflects changes
|
|
50
|
+
|
|
51
|
+
### Step 3.2: Navigate and Reproduce
|
|
52
|
+
|
|
53
|
+
Execute SAME steps as Reproducer:
|
|
54
|
+
|
|
55
|
+
```
|
|
56
|
+
mcp__chrome-devtools__navigate_page({ type: "url", url: "<target-url>" })
|
|
57
|
+
mcp__chrome-devtools__wait_for({ text: ["<expected-element>"], timeout: 10000 })
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### Step 3.3: Capture Post-Fix Evidence
|
|
61
|
+
|
|
62
|
+
Capture same evidence types as original reproduction:
|
|
63
|
+
|
|
64
|
+
| Evidence | Tool | Save To |
|
|
65
|
+
|----------|------|---------|
|
|
66
|
+
| Screenshot | `take_screenshot({ filePath: "<session>/evidence/verify-screenshot.png" })` | evidence/ |
|
|
67
|
+
| DOM Snapshot | `take_snapshot({ filePath: "<session>/evidence/verify-snapshot.txt" })` | evidence/ |
|
|
68
|
+
| Console Messages | `list_console_messages({ types: ["error", "warn"] })` | In-memory |
|
|
69
|
+
| Network Requests | `list_network_requests({ resourceTypes: ["xhr", "fetch"] })` | In-memory |
|
|
70
|
+
|
|
71
|
+
### Step 3.4: Execute Reproduction Steps
|
|
72
|
+
|
|
73
|
+
For each step from original reproduction:
|
|
74
|
+
1. Execute same action (click, fill, hover, etc.)
|
|
75
|
+
2. Observe result
|
|
76
|
+
3. Note any differences from original reproduction
|
|
77
|
+
|
|
78
|
+
### Step 3.5: Capture Final State
|
|
79
|
+
|
|
80
|
+
After all steps:
|
|
81
|
+
- Screenshot of final state
|
|
82
|
+
- Console messages (check for new errors)
|
|
83
|
+
- Network requests (check for new failures)
|
|
84
|
+
|
|
85
|
+
## Phase 4: Compare and Report
|
|
86
|
+
|
|
87
|
+
### Comparison Criteria
|
|
88
|
+
|
|
89
|
+
| Dimension | Pass | Fail |
|
|
90
|
+
|-----------|------|------|
|
|
91
|
+
| Console Errors | Original error no longer appears | Original error still present |
|
|
92
|
+
| Network | Failed request now succeeds | Request still fails |
|
|
93
|
+
| Visual | Expected rendering achieved | Bug still visible |
|
|
94
|
+
| DOM | Expected structure present | Structure still wrong |
|
|
95
|
+
| New Errors | No new errors introduced | New errors detected |
|
|
96
|
+
|
|
97
|
+
### Verdict Logic
|
|
98
|
+
|
|
99
|
+
```
|
|
100
|
+
if original_error_resolved AND no_new_errors:
|
|
101
|
+
verdict = "pass"
|
|
102
|
+
elif original_error_resolved AND has_new_errors:
|
|
103
|
+
verdict = "pass_with_warnings" # bug fixed but new issues
|
|
104
|
+
else:
|
|
105
|
+
verdict = "fail"
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Write Verification Report
|
|
109
|
+
|
|
110
|
+
Write `<session>/artifacts/VERIFY-001-report.md`:
|
|
111
|
+
|
|
112
|
+
```markdown
|
|
113
|
+
# Verification Report
|
|
114
|
+
|
|
115
|
+
## Verdict: <PASS / PASS_WITH_WARNINGS / FAIL>
|
|
116
|
+
|
|
117
|
+
## Bug Status
|
|
118
|
+
- **Original bug**: <resolved / still present>
|
|
119
|
+
- **Reproduction steps**: <all executed / partial>
|
|
120
|
+
|
|
121
|
+
## Evidence Comparison
|
|
122
|
+
|
|
123
|
+
### Console Errors
|
|
124
|
+
- **Before fix**: <N errors>
|
|
125
|
+
- <error 1>
|
|
126
|
+
- <error 2>
|
|
127
|
+
- **After fix**: <N errors>
|
|
128
|
+
- <error 1 if any>
|
|
129
|
+
- **Resolution**: <original errors cleared / still present>
|
|
130
|
+
|
|
131
|
+
### Network Requests
|
|
132
|
+
- **Before fix**: <N failed requests>
|
|
133
|
+
- **After fix**: <N failed requests>
|
|
134
|
+
- **Resolution**: <requests now succeed / still failing>
|
|
135
|
+
|
|
136
|
+
### Visual Comparison
|
|
137
|
+
- **Before fix**: <description or screenshot ref>
|
|
138
|
+
- **After fix**: <description or screenshot ref>
|
|
139
|
+
- **Resolution**: <visual bug fixed / still present>
|
|
140
|
+
|
|
141
|
+
## Regression Check
|
|
142
|
+
- **New console errors**: <none / list>
|
|
143
|
+
- **New network failures**: <none / list>
|
|
144
|
+
- **Visual regressions**: <none / description>
|
|
145
|
+
|
|
146
|
+
## Files Verified
|
|
147
|
+
- <file1.ts> — changes confirmed applied
|
|
148
|
+
- <file2.tsx> — changes confirmed applied
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Send state_update:
|
|
152
|
+
```json
|
|
153
|
+
{
|
|
154
|
+
"status": "task_complete",
|
|
155
|
+
"task_id": "VERIFY-001",
|
|
156
|
+
"ref": "<session>/artifacts/VERIFY-001-report.md",
|
|
157
|
+
"key_findings": ["Verdict: <PASS/FAIL>", "Original bug: <resolved/present>"],
|
|
158
|
+
"decisions": [],
|
|
159
|
+
"verification": "tested",
|
|
160
|
+
"verdict": "<pass|pass_with_warnings|fail>"
|
|
161
|
+
}
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
## Error Handling
|
|
165
|
+
|
|
166
|
+
| Scenario | Resolution |
|
|
167
|
+
|----------|------------|
|
|
168
|
+
| Page fails to load | Retry once, report if still fails |
|
|
169
|
+
| Fix not applied | Report to coordinator, suggest re-fix |
|
|
170
|
+
| New errors detected | Report pass_with_warnings with details |
|
|
171
|
+
| Bug still present | Report fail with evidence comparison |
|
|
172
|
+
| Partial reproduction | Report with completed steps, note gaps |
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
# Chrome DevTools MCP Usage Patterns
|
|
2
|
+
|
|
3
|
+
Reference for debug tool usage across all roles. Reproducer and Verifier are primary consumers.
|
|
4
|
+
|
|
5
|
+
## 1. Navigation & Page Control
|
|
6
|
+
|
|
7
|
+
### Navigate to URL
|
|
8
|
+
```
|
|
9
|
+
mcp__chrome-devtools__navigate_page({ type: "url", url: "http://localhost:3000/page" })
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
### Wait for Page Load
|
|
13
|
+
```
|
|
14
|
+
mcp__chrome-devtools__wait_for({ text: ["Expected Text"], timeout: 10000 })
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
### Reload Page
|
|
18
|
+
```
|
|
19
|
+
mcp__chrome-devtools__navigate_page({ type: "reload" })
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### List Open Pages
|
|
23
|
+
```
|
|
24
|
+
mcp__chrome-devtools__list_pages()
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Select Page
|
|
28
|
+
```
|
|
29
|
+
mcp__chrome-devtools__select_page({ pageId: 0 })
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## 2. User Interaction Simulation
|
|
33
|
+
|
|
34
|
+
### Click Element
|
|
35
|
+
```
|
|
36
|
+
// First take snapshot to find uid
|
|
37
|
+
mcp__chrome-devtools__take_snapshot()
|
|
38
|
+
// Then click by uid
|
|
39
|
+
mcp__chrome-devtools__click({ uid: "<uid-from-snapshot>" })
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Fill Input
|
|
43
|
+
```
|
|
44
|
+
mcp__chrome-devtools__fill({ uid: "<uid>", value: "input text" })
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
### Fill Multiple Fields
|
|
48
|
+
```
|
|
49
|
+
mcp__chrome-devtools__fill_form({
|
|
50
|
+
elements: [
|
|
51
|
+
{ uid: "<uid1>", value: "value1" },
|
|
52
|
+
{ uid: "<uid2>", value: "value2" }
|
|
53
|
+
]
|
|
54
|
+
})
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### Hover Element
|
|
58
|
+
```
|
|
59
|
+
mcp__chrome-devtools__hover({ uid: "<uid>" })
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Press Key
|
|
63
|
+
```
|
|
64
|
+
mcp__chrome-devtools__press_key({ key: "Enter" })
|
|
65
|
+
mcp__chrome-devtools__press_key({ key: "Control+A" })
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Type Text
|
|
69
|
+
```
|
|
70
|
+
mcp__chrome-devtools__type_text({ text: "typed content", submitKey: "Enter" })
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## 3. Evidence Collection
|
|
74
|
+
|
|
75
|
+
### Screenshot
|
|
76
|
+
```
|
|
77
|
+
// Full viewport
|
|
78
|
+
mcp__chrome-devtools__take_screenshot({ filePath: "<session>/evidence/screenshot.png" })
|
|
79
|
+
|
|
80
|
+
// Full page
|
|
81
|
+
mcp__chrome-devtools__take_screenshot({ filePath: "<path>", fullPage: true })
|
|
82
|
+
|
|
83
|
+
// Specific element
|
|
84
|
+
mcp__chrome-devtools__take_screenshot({ uid: "<uid>", filePath: "<path>" })
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### DOM/A11y Snapshot
|
|
88
|
+
```
|
|
89
|
+
// Standard snapshot
|
|
90
|
+
mcp__chrome-devtools__take_snapshot()
|
|
91
|
+
|
|
92
|
+
// Verbose (all a11y info)
|
|
93
|
+
mcp__chrome-devtools__take_snapshot({ verbose: true })
|
|
94
|
+
|
|
95
|
+
// Save to file
|
|
96
|
+
mcp__chrome-devtools__take_snapshot({ filePath: "<session>/evidence/snapshot.txt" })
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
### Console Messages
|
|
100
|
+
```
|
|
101
|
+
// All messages
|
|
102
|
+
mcp__chrome-devtools__list_console_messages()
|
|
103
|
+
|
|
104
|
+
// Errors and warnings only
|
|
105
|
+
mcp__chrome-devtools__list_console_messages({ types: ["error", "warn"] })
|
|
106
|
+
|
|
107
|
+
// Get specific message detail
|
|
108
|
+
mcp__chrome-devtools__get_console_message({ msgid: 5 })
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### Network Requests
|
|
112
|
+
```
|
|
113
|
+
// All requests
|
|
114
|
+
mcp__chrome-devtools__list_network_requests()
|
|
115
|
+
|
|
116
|
+
// XHR/Fetch only (API calls)
|
|
117
|
+
mcp__chrome-devtools__list_network_requests({ resourceTypes: ["xhr", "fetch"] })
|
|
118
|
+
|
|
119
|
+
// Get request detail (headers, body, response)
|
|
120
|
+
mcp__chrome-devtools__get_network_request({ reqid: 3 })
|
|
121
|
+
|
|
122
|
+
// Save response to file
|
|
123
|
+
mcp__chrome-devtools__get_network_request({ reqid: 3, responseFilePath: "<path>" })
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
### Performance Trace
|
|
127
|
+
```
|
|
128
|
+
// Start trace (auto-reload and auto-stop)
|
|
129
|
+
mcp__chrome-devtools__performance_start_trace({ reload: true, autoStop: true })
|
|
130
|
+
|
|
131
|
+
// Start manual trace
|
|
132
|
+
mcp__chrome-devtools__performance_start_trace({ reload: false, autoStop: false })
|
|
133
|
+
|
|
134
|
+
// Stop and save
|
|
135
|
+
mcp__chrome-devtools__performance_stop_trace({ filePath: "<session>/evidence/trace.json" })
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## 4. Script Execution
|
|
139
|
+
|
|
140
|
+
### Evaluate JavaScript
|
|
141
|
+
```
|
|
142
|
+
// Get page title
|
|
143
|
+
mcp__chrome-devtools__evaluate_script({ function: "() => document.title" })
|
|
144
|
+
|
|
145
|
+
// Get element state
|
|
146
|
+
mcp__chrome-devtools__evaluate_script({
|
|
147
|
+
function: "(el) => ({ text: el.innerText, classes: el.className })",
|
|
148
|
+
args: ["<uid>"]
|
|
149
|
+
})
|
|
150
|
+
|
|
151
|
+
// Check React state (if applicable)
|
|
152
|
+
mcp__chrome-devtools__evaluate_script({
|
|
153
|
+
function: "() => { const fiber = document.querySelector('#root')._reactRootContainer; return fiber ? 'React detected' : 'No React'; }"
|
|
154
|
+
})
|
|
155
|
+
|
|
156
|
+
// Get computed styles
|
|
157
|
+
mcp__chrome-devtools__evaluate_script({
|
|
158
|
+
function: "(el) => JSON.stringify(window.getComputedStyle(el))",
|
|
159
|
+
args: ["<uid>"]
|
|
160
|
+
})
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
## 5. Common Debug Patterns
|
|
164
|
+
|
|
165
|
+
### Pattern: Reproduce Click Bug
|
|
166
|
+
```
|
|
167
|
+
1. navigate_page → target URL
|
|
168
|
+
2. wait_for → page loaded
|
|
169
|
+
3. take_snapshot → find target element uid
|
|
170
|
+
4. take_screenshot → before state
|
|
171
|
+
5. list_console_messages → baseline errors
|
|
172
|
+
6. click → target element
|
|
173
|
+
7. wait_for → expected result (or timeout)
|
|
174
|
+
8. take_screenshot → after state
|
|
175
|
+
9. list_console_messages → new errors
|
|
176
|
+
10. list_network_requests → triggered requests
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
### Pattern: Debug API Error
|
|
180
|
+
```
|
|
181
|
+
1. navigate_page → target URL
|
|
182
|
+
2. wait_for → page loaded
|
|
183
|
+
3. take_snapshot → find trigger element
|
|
184
|
+
4. click/fill → trigger API call
|
|
185
|
+
5. list_network_requests → find the API request
|
|
186
|
+
6. get_network_request → inspect headers, body, response
|
|
187
|
+
7. list_console_messages → check for error handling
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### Pattern: Debug Performance Issue
|
|
191
|
+
```
|
|
192
|
+
1. navigate_page → target URL (set URL first)
|
|
193
|
+
2. performance_start_trace → start recording with reload
|
|
194
|
+
3. (auto-stop after page loads)
|
|
195
|
+
4. Read trace results → identify long tasks, bottlenecks
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
### Pattern: Debug Visual/CSS Issue
|
|
199
|
+
```
|
|
200
|
+
1. navigate_page → target URL
|
|
201
|
+
2. take_screenshot → capture current visual state
|
|
202
|
+
3. take_snapshot({ verbose: true }) → full a11y tree with styles
|
|
203
|
+
4. evaluate_script → get computed styles of problematic element
|
|
204
|
+
5. Compare expected vs actual styles
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
## 6. Error Handling
|
|
208
|
+
|
|
209
|
+
| Error | Meaning | Resolution |
|
|
210
|
+
|-------|---------|------------|
|
|
211
|
+
| "No page selected" | No browser tab active | list_pages → select_page |
|
|
212
|
+
| "Element not found" | uid is stale | take_snapshot → get new uid |
|
|
213
|
+
| "Navigation timeout" | Page didn't load | Check URL, retry with longer timeout |
|
|
214
|
+
| "Evaluation failed" | JS error in script | Check script syntax, page context |
|
|
215
|
+
| "No trace recording" | stop_trace without start | Ensure start_trace was called first |
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
# Pipeline Definitions
|
|
2
|
+
|
|
3
|
+
## 1. Pipeline Selection Criteria
|
|
4
|
+
|
|
5
|
+
| Keywords | Pipeline |
|
|
6
|
+
|----------|----------|
|
|
7
|
+
| 功能, feature, 清单, list, 测试, test, 完成, done, 验收 | `test-pipeline` |
|
|
8
|
+
| bug, 错误, 报错, crash, 问题, 不工作, 白屏, 异常 | `debug-pipeline` |
|
|
9
|
+
| performance, 性能, slow, 慢, latency, memory | `debug-pipeline` (perf dimension) |
|
|
10
|
+
| Ambiguous / unclear | request_user_input |
|
|
11
|
+
|
|
12
|
+
## 2. Test Pipeline (Feature-List Driven)
|
|
13
|
+
|
|
14
|
+
**4 tasks, linear with conditional skip**
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
TEST-001 → [issues found?] → ANALYZE-001 → FIX-001 → VERIFY-001
|
|
18
|
+
|
|
|
19
|
+
└─ no issues → Pipeline Complete (skip ANALYZE/FIX/VERIFY)
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
| Task | Role | Description | Conditional |
|
|
23
|
+
|------|------|-------------|-------------|
|
|
24
|
+
| TEST-001 | tester | Test all features, discover issues | Always |
|
|
25
|
+
| ANALYZE-001 | analyzer | Analyze discovered issues, produce RCA | Skip if 0 issues |
|
|
26
|
+
| FIX-001 | fixer | Fix all identified root causes | Skip if 0 issues |
|
|
27
|
+
| VERIFY-001 | verifier | Re-test failed scenarios to verify fixes | Skip if 0 issues |
|
|
28
|
+
|
|
29
|
+
### Conditional Skip Logic
|
|
30
|
+
|
|
31
|
+
After TEST-001 completes, coordinator reads `TEST-001-issues.json`:
|
|
32
|
+
- `issues.length === 0` → All pass. Skip downstream tasks, report success.
|
|
33
|
+
- `issues.filter(i => i.severity !== "low").length === 0` → Only warnings. request_user_input: fix or complete.
|
|
34
|
+
- `issues.filter(i => i.severity === "high" || i.severity === "medium").length > 0` → Proceed with ANALYZE → FIX → VERIFY.
|
|
35
|
+
|
|
36
|
+
### Re-Fix Iteration
|
|
37
|
+
|
|
38
|
+
If VERIFY-001 reports failures:
|
|
39
|
+
- Create FIX-002 (blockedBy: VERIFY-001) → VERIFY-002 (blockedBy: FIX-002)
|
|
40
|
+
- Max 3 fix iterations
|
|
41
|
+
|
|
42
|
+
## 3. Debug Pipeline (Bug-Report Driven)
|
|
43
|
+
|
|
44
|
+
**4 tasks, linear with iteration support**
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
REPRODUCE-001 → ANALYZE-001 → FIX-001 → VERIFY-001
|
|
48
|
+
↑ |
|
|
49
|
+
| (if fail) |
|
|
50
|
+
+--- REPRODUCE-002 ←----+
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
| Task | Role | Description |
|
|
54
|
+
|------|------|-------------|
|
|
55
|
+
| REPRODUCE-001 | reproducer | Reproduce bug, collect evidence |
|
|
56
|
+
| ANALYZE-001 | analyzer | Analyze evidence, produce RCA report |
|
|
57
|
+
| FIX-001 | fixer | Implement code fix based on RCA |
|
|
58
|
+
| VERIFY-001 | verifier | Verify fix with same reproduction steps |
|
|
59
|
+
|
|
60
|
+
### Iteration Rules
|
|
61
|
+
|
|
62
|
+
- **Analyzer → Reproducer**: If Analyzer confidence < 50%, creates REPRODUCE-002 → ANALYZE-002
|
|
63
|
+
- **Verifier → Fixer**: If Verifier verdict = fail, creates FIX-002 → VERIFY-002
|
|
64
|
+
|
|
65
|
+
### Maximum Iterations
|
|
66
|
+
|
|
67
|
+
- Max reproduction iterations: 2
|
|
68
|
+
- Max fix iterations: 3
|
|
69
|
+
- After max iterations: report to user for manual intervention
|
|
70
|
+
|
|
71
|
+
## 4. Task Metadata Registry
|
|
72
|
+
|
|
73
|
+
| Task ID | Role | Pipeline | Depends On | Priority |
|
|
74
|
+
|---------|------|----------|------------|----------|
|
|
75
|
+
| TEST-001 | tester | test | - | P0 |
|
|
76
|
+
| REPRODUCE-001 | reproducer | debug | - | P0 |
|
|
77
|
+
| ANALYZE-001 | analyzer | both | TEST-001 or REPRODUCE-001 | P0 |
|
|
78
|
+
| FIX-001 | fixer | both | ANALYZE-001 | P0 |
|
|
79
|
+
| VERIFY-001 | verifier | both | FIX-001 | P0 |
|
|
80
|
+
| REPRODUCE-002 | reproducer | debug | (dynamic) | P0 |
|
|
81
|
+
| ANALYZE-002 | analyzer | debug | REPRODUCE-002 | P0 |
|
|
82
|
+
| FIX-002 | fixer | both | VERIFY-001 | P0 |
|
|
83
|
+
| VERIFY-002 | verifier | both | FIX-002 | P0 |
|
|
84
|
+
|
|
85
|
+
## 5. Evidence Types Registry
|
|
86
|
+
|
|
87
|
+
| Dimension | Evidence | MCP Tool | Collector Roles |
|
|
88
|
+
|-----------|----------|----------|----------------|
|
|
89
|
+
| Visual | Screenshots | take_screenshot | tester, reproducer, verifier |
|
|
90
|
+
| DOM | A11y snapshots | take_snapshot | tester, reproducer, verifier |
|
|
91
|
+
| Console | Error/warn messages | list_console_messages | tester, reproducer, verifier |
|
|
92
|
+
| Network | API requests/responses | list/get_network_request | tester, reproducer, verifier |
|
|
93
|
+
| Performance | Trace recording | performance_start/stop_trace | reproducer, verifier |
|
|
94
|
+
| Interaction | User actions | click/fill/hover | tester, reproducer, verifier |
|