mirror of
https://github.com/catlog22/Claude-Code-Workflow.git
synced 2026-02-11 02:33:51 +08:00
- Created LICENSE.txt for JavaScript assets including NProgress and React libraries. - Added runtime JavaScript file for main functionality. - Introduced new favicon and logo SVG assets for branding. - Added comprehensive FAQ section in Chinese, covering CCW features, installation, workflows, AI model support, and troubleshooting.
1 line
30 KiB
JavaScript
1 line
30 KiB
JavaScript
"use strict";(globalThis.webpackChunkccw_docs=globalThis.webpackChunkccw_docs||[]).push([[207],{1184(e,n,t){t.d(n,{R:()=>l,x:()=>c});var i=t(3696);const s={},r=i.createContext(s);function l(e){const n=i.useContext(r);return i.useMemo(function(){return"function"==typeof e?e(n):{...n,...e}},[n,e])}function c(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:l(e.components),i.createElement(r.Provider,{value:n},e.children)}},5877(e,n,t){t.r(n),t.d(n,{assets:()=>o,contentTitle:()=>d,default:()=>h,frontMatter:()=>c,metadata:()=>i,toc:()=>x});const i=JSON.parse('{"id":"workflows/level-5-intelligent","title":"\u5c42\u7ea7 5: \u667a\u80fd\u5de5\u4f5c\u6d41","description":"\u667a\u80fd\u7f16\u6392\u5de5\u4f5c\u6d41 - \u81ea\u52a8\u5206\u6790\u548c\u63a8\u8350","source":"@site/i18n/zh/docusaurus-plugin-content-docs/current/workflows/level-5-intelligent.mdx","sourceDirName":"workflows","slug":"/workflows/level-5-intelligent","permalink":"/docs/zh/workflows/level-5-intelligent","draft":false,"unlisted":false,"editUrl":"https://github.com/ccw/docs/tree/main/docs/workflows/level-5-intelligent.mdx","tags":[],"version":"current","sidebarPosition":6,"frontMatter":{"title":"\u5c42\u7ea7 5: \u667a\u80fd\u5de5\u4f5c\u6d41","description":"\u667a\u80fd\u7f16\u6392\u5de5\u4f5c\u6d41 - \u81ea\u52a8\u5206\u6790\u548c\u63a8\u8350","sidebar_position":6},"sidebar":"docs","previous":{"title":"Level 4: Brainstorm","permalink":"/docs/zh/workflows/level-4-brainstorm"},"next":{"title":"\u5e38\u89c1\u95ee\u9898","permalink":"/docs/zh/faq"}}');var s=t(2540),r=t(1184),l=t(1540);const c={title:"\u5c42\u7ea7 5: \u667a\u80fd\u5de5\u4f5c\u6d41",description:"\u667a\u80fd\u7f16\u6392\u5de5\u4f5c\u6d41 - \u81ea\u52a8\u5206\u6790\u548c\u63a8\u8350",sidebar_position:6},d="\u5c42\u7ea7 5: \u667a\u80fd\u5de5\u4f5c\u6d41",o={},x=[{value:"\u6982\u8ff0",id:"\u6982\u8ff0",level:2},{value:"\u5305\u542b\u7684\u5de5\u4f5c\u6d41: ccw-coordinator",id:"\u5305\u542b\u7684\u5de5\u4f5c\u6d41-ccw-coordinator",level:2},{value:"\u547d\u4ee4",id:"\u547d\u4ee4",level:3},{value:"\u6838\u5fc3\u6982\u5ff5: \u6700\u5c0f\u6267\u884c\u5355\u5143",id:"\u6838\u5fc3\u6982\u5ff5-\u6700\u5c0f\u6267\u884c\u5355\u5143",level:3},{value:"\u6700\u5c0f\u6267\u884c\u5355\u5143",id:"\u6700\u5c0f\u6267\u884c\u5355\u5143",level:3},{value:"\u89c4\u5212 + \u6267\u884c\u5355\u5143",id:"\u89c4\u5212--\u6267\u884c\u5355\u5143",level:4},{value:"\u6d4b\u8bd5\u5355\u5143",id:"\u6d4b\u8bd5\u5355\u5143",level:4},{value:"\u5ba1\u67e5\u5355\u5143",id:"\u5ba1\u67e5\u5355\u5143",level:4},{value:"\u4e09\u9636\u6bb5\u5de5\u4f5c\u6d41",id:"\u4e09\u9636\u6bb5\u5de5\u4f5c\u6d41",level:3},{value:"\u9636\u6bb5 1: \u5206\u6790\u9700\u6c42",id:"\u9636\u6bb5-1-\u5206\u6790\u9700\u6c42",level:4},{value:"\u9636\u6bb5 2: \u53d1\u73b0\u547d\u4ee4\u5e76\u63a8\u8350\u547d\u4ee4\u94fe",id:"\u9636\u6bb5-2-\u53d1\u73b0\u547d\u4ee4\u5e76\u63a8\u8350\u547d\u4ee4\u94fe",level:4},{value:"\u9636\u6bb5 3: \u987a\u5e8f\u6267\u884c\u547d\u4ee4\u94fe",id:"\u9636\u6bb5-3-\u987a\u5e8f\u6267\u884c\u547d\u4ee4\u94fe",level:4},{value:"\u72b6\u6001\u6587\u4ef6\u7ed3\u6784",id:"\u72b6\u6001\u6587\u4ef6\u7ed3\u6784",level:3},{value:"\u5b8c\u6574\u751f\u547d\u5468\u671f\u51b3\u7b56\u6d41\u7a0b\u56fe",id:"\u5b8c\u6574\u751f\u547d\u5468\u671f\u51b3\u7b56\u6d41\u7a0b\u56fe",level:3},{value:"\u4f7f\u7528\u573a\u666f",id:"\u4f7f\u7528\u573a\u666f",level:3},{value:"\u4f55\u65f6\u4f7f\u7528",id:"\u4f55\u65f6\u4f7f\u7528",level:3},{value:"\u4f55\u65f6\u4e0d\u4f7f\u7528",id:"\u4f55\u65f6\u4e0d\u4f7f\u7528",level:3},{value:"\u4e0e\u5176\u4ed6\u5c42\u7ea7\u7684\u5173\u7cfb",id:"\u4e0e\u5176\u4ed6\u5c42\u7ea7\u7684\u5173\u7cfb",level:3},{value:"\u76f8\u5173\u5de5\u4f5c\u6d41",id:"\u76f8\u5173\u5de5\u4f5c\u6d41",level:2},{value:"\u547d\u4ee4\u53c2\u8003",id:"\u547d\u4ee4\u53c2\u8003",level:2}];function a(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",header:"header",li:"li",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,r.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.header,{children:(0,s.jsx)(n.h1,{id:"\u5c42\u7ea7-5-\u667a\u80fd\u5de5\u4f5c\u6d41",children:"\u5c42\u7ea7 5: \u667a\u80fd\u5de5\u4f5c\u6d41"})}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"\u590d\u6742\u5ea6"}),": \u6240\u6709\u5c42\u7ea7 | ",(0,s.jsx)(n.strong,{children:"\u4ea7\u7269"}),": \u5b8c\u6574\u72b6\u6001\u6301\u4e45\u5316 | ",(0,s.jsx)(n.strong,{children:"\u81ea\u52a8\u5316"}),": \u5b8c\u5168\u81ea\u52a8\u5316"]}),"\n",(0,s.jsx)(n.p,{children:"\u5c42\u7ea7 5 \u5de5\u4f5c\u6d41\u63d0\u4f9b\u6700\u667a\u80fd\u7684\u81ea\u52a8\u5316\u529f\u80fd - \u5e26\u6709\u987a\u5e8f\u6267\u884c\u548c\u72b6\u6001\u6301\u4e45\u5316\u7684\u81ea\u52a8\u547d\u4ee4\u94fe\u7f16\u6392\u3002\u5b83\u4eec\u80fd\u591f\u81ea\u52a8\u5206\u6790\u9700\u6c42\u3001\u63a8\u8350\u6700\u4f18\u547d\u4ee4\u94fe\uff0c\u5e76\u7aef\u5230\u7aef\u6267\u884c\u3002"}),"\n",(0,s.jsx)(n.h2,{id:"\u6982\u8ff0",children:"\u6982\u8ff0"}),"\n",(0,s.jsx)(l.A,{chart:"\n flowchart TD\n Start([\u7528\u6237\u8f93\u5165]) --\x3e Analyze[\u9636\u6bb5 1: \u5206\u6790<br/>\u9700\u6c42]\n Analyze --\x3e Recommend[\u9636\u6bb5 2: \u53d1\u73b0\u547d\u4ee4<br/>& \u63a8\u8350\u547d\u4ee4\u94fe]\n Recommend --\x3e Confirm[\u7528\u6237\u786e\u8ba4<br/>\u53ef\u9009]\n Confirm --\x3e Execute[\u9636\u6bb5 3: \u987a\u5e8f\u6267\u884c<br/>\u547d\u4ee4\u94fe]\n\n Execute --\x3e State[\u72b6\u6001\u6301\u4e45\u5316<br/>state.json]\n State --\x3e Check{\u5b8c\u6210?}\n Check --\x3e|\u5426| Execute\n Check --\x3e|\u662f| Complete([\u5b8c\u6210])\n\n classDef startend fill:#c8e6c9,stroke:#388e3c\n classDef phase fill:#e3f2fd,stroke:#1976d2\n classDef decision fill:#fff9c4,stroke:#f57c00\n classDef state fill:#ffecb3,stroke:#ffa000\n\n class Start,Complete startend,Confirm,Check decision,Analyze,Recommend,Execute phase,State state\n"}),"\n",(0,s.jsx)(n.h2,{id:"\u5305\u542b\u7684\u5de5\u4f5c\u6d41-ccw-coordinator",children:"\u5305\u542b\u7684\u5de5\u4f5c\u6d41: ccw-coordinator"}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"\u81ea\u52a8\u5206\u6790\u5e76\u63a8\u8350\u547d\u4ee4\u94fe\uff0c\u652f\u6301\u987a\u5e8f\u6267\u884c"})}),"\n",(0,s.jsx)(n.h3,{id:"\u547d\u4ee4",children:"\u547d\u4ee4"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:'/ccw-coordinator "\u4f7f\u7528 OAuth2 \u5b9e\u73b0\u7528\u6237\u8ba4\u8bc1"\n# \u6216\u8005\u7b80\u5355\u8f93\u5165\n/ccw "\u6dfb\u52a0\u7528\u6237\u8ba4\u8bc1"\n'})}),"\n",(0,s.jsx)(n.h3,{id:"\u6838\u5fc3\u6982\u5ff5-\u6700\u5c0f\u6267\u884c\u5355\u5143",children:"\u6838\u5fc3\u6982\u5ff5: \u6700\u5c0f\u6267\u884c\u5355\u5143"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"\u5b9a\u4e49"}),": \u4e00\u7ec4\u5fc5\u987b\u4f5c\u4e3a\u539f\u5b50\u7ec4\u4e00\u8d77\u6267\u884c\u7684\u547d\u4ee4\uff0c\u4ee5\u5b9e\u73b0\u6709\u610f\u4e49\u7684\u5de5\u4f5c\u6d41\u91cc\u7a0b\u7891\u3002"]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"\u4e3a\u4ec0\u4e48\u91cd\u8981"}),":"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"\u9632\u6b62\u4e0d\u5b8c\u6574\u72b6\u6001"}),": \u907f\u514d\u5728\u751f\u6210\u4efb\u52a1\u540e\u505c\u6b62\u800c\u4e0d\u6267\u884c"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"\u7528\u6237\u4f53\u9a8c"}),": \u7528\u6237\u83b7\u5f97\u5b8c\u6574\u7ed3\u679c\uff0c\u800c\u975e\u9700\u8981\u624b\u52a8\u8ddf\u8fdb\u7684\u4e2d\u95f4\u4ea7\u7269"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"\u5de5\u4f5c\u6d41\u5b8c\u6574\u6027"}),": \u4fdd\u6301\u591a\u6b65\u9aa4\u64cd\u4f5c\u7684\u903b\u8f91\u8fde\u8d2f\u6027"]}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"\u6700\u5c0f\u6267\u884c\u5355\u5143",children:"\u6700\u5c0f\u6267\u884c\u5355\u5143"}),"\n",(0,s.jsx)(n.h4,{id:"\u89c4\u5212--\u6267\u884c\u5355\u5143",children:"\u89c4\u5212 + \u6267\u884c\u5355\u5143"}),"\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"\u5355\u5143\u540d\u79f0"}),(0,s.jsx)(n.th,{children:"\u547d\u4ee4"}),(0,s.jsx)(n.th,{children:"\u76ee\u7684"}),(0,s.jsx)(n.th,{children:"\u8f93\u51fa"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"\u5feb\u901f\u5b9e\u73b0"})}),(0,s.jsx)(n.td,{children:"lite-plan -> lite-execute"}),(0,s.jsx)(n.td,{children:"\u8f7b\u91cf\u7ea7\u89c4\u5212\u548c\u7acb\u5373\u6267\u884c"}),(0,s.jsx)(n.td,{children:"\u5de5\u4f5c\u4ee3\u7801"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"\u591a CLI \u89c4\u5212"})}),(0,s.jsx)(n.td,{children:"multi-cli-plan -> lite-execute"}),(0,s.jsx)(n.td,{children:"\u591a\u89c6\u89d2\u5206\u6790\u548c\u6267\u884c"}),(0,s.jsx)(n.td,{children:"\u5de5\u4f5c\u4ee3\u7801"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"Bug \u4fee\u590d"})}),(0,s.jsx)(n.td,{children:"lite-fix -> lite-execute"}),(0,s.jsx)(n.td,{children:"\u5feb\u901f bug \u8bca\u65ad\u548c\u4fee\u590d\u6267\u884c"}),(0,s.jsx)(n.td,{children:"\u4fee\u590d\u540e\u7684\u4ee3\u7801"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"\u5b8c\u6574\u89c4\u5212 + \u6267\u884c"})}),(0,s.jsx)(n.td,{children:"plan -> execute"}),(0,s.jsx)(n.td,{children:"\u8be6\u7ec6\u89c4\u5212\u548c\u6267\u884c"}),(0,s.jsx)(n.td,{children:"\u5de5\u4f5c\u4ee3\u7801"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"\u9a8c\u8bc1\u89c4\u5212 + \u6267\u884c"})}),(0,s.jsx)(n.td,{children:"plan -> plan-verify -> execute"}),(0,s.jsx)(n.td,{children:"\u5e26\u9a8c\u8bc1\u7684\u89c4\u5212\u548c\u6267\u884c"}),(0,s.jsx)(n.td,{children:"\u5de5\u4f5c\u4ee3\u7801"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"\u91cd\u65b0\u89c4\u5212 + \u6267\u884c"})}),(0,s.jsx)(n.td,{children:"replan -> execute"}),(0,s.jsx)(n.td,{children:"\u66f4\u65b0\u8ba1\u5212\u5e76\u6267\u884c\u53d8\u66f4"}),(0,s.jsx)(n.td,{children:"\u5de5\u4f5c\u4ee3\u7801"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"TDD \u89c4\u5212 + \u6267\u884c"})}),(0,s.jsx)(n.td,{children:"tdd-plan -> execute"}),(0,s.jsx)(n.td,{children:"\u6d4b\u8bd5\u9a71\u52a8\u5f00\u53d1\u89c4\u5212\u548c\u6267\u884c"}),(0,s.jsx)(n.td,{children:"\u5de5\u4f5c\u4ee3\u7801"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"\u6d4b\u8bd5\u751f\u6210 + \u6267\u884c"})}),(0,s.jsx)(n.td,{children:"test-gen -> execute"}),(0,s.jsx)(n.td,{children:"\u751f\u6210\u6d4b\u8bd5\u5957\u4ef6\u5e76\u6267\u884c"}),(0,s.jsx)(n.td,{children:"\u751f\u6210\u7684\u6d4b\u8bd5"})]})]})]}),"\n",(0,s.jsx)(n.h4,{id:"\u6d4b\u8bd5\u5355\u5143",children:"\u6d4b\u8bd5\u5355\u5143"}),"\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"\u5355\u5143\u540d\u79f0"}),(0,s.jsx)(n.th,{children:"\u547d\u4ee4"}),(0,s.jsx)(n.th,{children:"\u76ee\u7684"}),(0,s.jsx)(n.th,{children:"\u8f93\u51fa"})]})}),(0,s.jsx)(n.tbody,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"\u6d4b\u8bd5\u9a8c\u8bc1"})}),(0,s.jsx)(n.td,{children:"test-fix-gen -> test-cycle-execute"}),(0,s.jsx)(n.td,{children:"\u751f\u6210\u6d4b\u8bd5\u4efb\u52a1\u5e76\u6267\u884c\u6d4b\u8bd5-\u4fee\u590d\u5faa\u73af"}),(0,s.jsx)(n.td,{children:"\u6d4b\u8bd5\u901a\u8fc7"})]})})]}),"\n",(0,s.jsx)(n.h4,{id:"\u5ba1\u67e5\u5355\u5143",children:"\u5ba1\u67e5\u5355\u5143"}),"\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"\u5355\u5143\u540d\u79f0"}),(0,s.jsx)(n.th,{children:"\u547d\u4ee4"}),(0,s.jsx)(n.th,{children:"\u76ee\u7684"}),(0,s.jsx)(n.th,{children:"\u8f93\u51fa"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"\u4ee3\u7801\u5ba1\u67e5 (\u4f1a\u8bdd)"})}),(0,s.jsx)(n.td,{children:"review-session-cycle -> review-fix"}),(0,s.jsx)(n.td,{children:"\u5b8c\u6574\u5ba1\u67e5\u5faa\u73af\u5e76\u5e94\u7528\u4fee\u590d"}),(0,s.jsx)(n.td,{children:"\u4fee\u590d\u540e\u7684\u4ee3\u7801"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:(0,s.jsx)(n.strong,{children:"\u4ee3\u7801\u5ba1\u67e5 (\u6a21\u5757)"})}),(0,s.jsx)(n.td,{children:"review-module-cycle -> review-fix"}),(0,s.jsx)(n.td,{children:"\u6a21\u5757\u5ba1\u67e5\u5faa\u73af\u5e76\u5e94\u7528\u4fee\u590d"}),(0,s.jsx)(n.td,{children:"\u4fee\u590d\u540e\u7684\u4ee3\u7801"})]})]})]}),"\n",(0,s.jsx)(n.h3,{id:"\u4e09\u9636\u6bb5\u5de5\u4f5c\u6d41",children:"\u4e09\u9636\u6bb5\u5de5\u4f5c\u6d41"}),"\n",(0,s.jsx)(l.A,{chart:"\n flowchart TD\n A([\u5f00\u59cb]) --\x3e B[\u9636\u6bb5 1: \u5206\u6790\u9700\u6c42]\n\n B --\x3e C[\u89e3\u6790\u4efb\u52a1\u63cf\u8ff0]\n C --\x3e D[\u63d0\u53d6: \u76ee\u6807\u3001\u8303\u56f4\u3001\u7ea6\u675f\u3001<br/>\u590d\u6742\u5ea6\u3001\u4efb\u52a1\u7c7b\u578b]\n\n D --\x3e E[\u9636\u6bb5 2: \u53d1\u73b0\u547d\u4ee4<br/>& \u63a8\u8350\u547d\u4ee4\u94fe]\n\n E --\x3e F[\u52a8\u6001\u547d\u4ee4\u94fe<br/>\u7ec4\u88c5]\n F --\x3e G[\u57fa\u4e8e\u7aef\u53e3\u5339\u914d]\n\n G --\x3e H{\u7528\u6237\u786e\u8ba4}\n H --\x3e|\u786e\u8ba4| I[\u9636\u6bb5 3: \u987a\u5e8f\u6267\u884c<br/>\u547d\u4ee4\u94fe]\n H --\x3e|\u8c03\u6574| J[\u4fee\u6539\u547d\u4ee4\u94fe]\n H --\x3e|\u53d6\u6d88| K([\u4e2d\u6b62])\n J --\x3e H\n\n I --\x3e L[\u521d\u59cb\u5316\u72b6\u6001]\n L --\x3e M[\u904d\u5386\u6bcf\u4e2a\u547d\u4ee4]\n M --\x3e N[\u7ec4\u88c5\u63d0\u793a\u8bcd]\n N --\x3e O[\u5728\u540e\u53f0\u542f\u52a8 CLI]\n O --\x3e P[\u4fdd\u5b58\u68c0\u67e5\u70b9]\n P --\x3e Q{\u5b8c\u6210?}\n Q --\x3e|\u5426| M\n Q --\x3e|\u662f| R([\u5b8c\u6210])\n\n classDef startend fill:#c8e6c9,stroke:#388e3c\n classDef phase fill:#e3f2fd,stroke:#1976d2\n classDef decision fill:#fff9c4,stroke:#f57c00\n classDef execute fill:#c5e1a5,stroke:#388e3c\n\n class A,K,R startend,H,Q decision,B,E,I phase,C,D,F,G,J,L,M,N,O,P execute\n"}),"\n",(0,s.jsx)(n.h4,{id:"\u9636\u6bb5-1-\u5206\u6790\u9700\u6c42",children:"\u9636\u6bb5 1: \u5206\u6790\u9700\u6c42"}),"\n",(0,s.jsx)(n.p,{children:"\u89e3\u6790\u4efb\u52a1\u63cf\u8ff0\u4ee5\u63d0\u53d6: \u76ee\u6807\u3001\u8303\u56f4\u3001\u7ea6\u675f\u3001\u590d\u6742\u5ea6\u548c\u4efb\u52a1\u7c7b\u578b\u3002"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-javascript",children:"function analyzeRequirements(taskDescription) {\n return {\n goal: extractMainGoal(taskDescription), // \u4f8b\u5982: \"\u5b9e\u73b0\u7528\u6237\u6ce8\u518c\"\n scope: extractScope(taskDescription), // \u4f8b\u5982: [\"auth\", \"user_management\"]\n constraints: extractConstraints(taskDescription), // \u4f8b\u5982: [\"\u65e0\u7834\u574f\u6027\u53d8\u66f4\"]\n complexity: determineComplexity(taskDescription), // 'simple' | 'medium' | 'complex'\n task_type: detectTaskType(taskDescription) // \u89c1\u4e0b\u65b9\u7684\u4efb\u52a1\u7c7b\u578b\u6a21\u5f0f\n };\n}\n\n// \u4efb\u52a1\u7c7b\u578b\u68c0\u6d4b\u6a21\u5f0f\nfunction detectTaskType(text) {\n // \u4f18\u5148\u987a\u5e8f (\u7b2c\u4e00\u4e2a\u5339\u914d\u80dc\u51fa)\n if (/fix|bug|error|crash|fail|debug|diagnose/.test(text)) return 'bugfix';\n if (/tdd|test-driven|test first/.test(text)) return 'tdd';\n if (/test fail|fix test|failing test/.test(text)) return 'test-fix';\n if (/generate test|add test/.test(text)) return 'test-gen';\n if (/review/.test(text)) return 'review';\n if (/explore|brainstorm/.test(text)) return 'brainstorm';\n if (/multi-perspective|comparison/.test(text)) return 'multi-cli';\n return 'feature'; // \u9ed8\u8ba4\n}\n\n// \u590d\u6742\u5ea6\u8bc4\u4f30\nfunction determineComplexity(text) {\n let score = 0;\n if (/refactor|migrate|architect|system/.test(text)) score += 2;\n if (/multiple|across|all|entire/.test(text)) score += 2;\n if (/integrate|api|database/.test(text)) score += 1;\n if (/security|performance|scale/.test(text)) score += 1;\n return score >= 4 ? 'complex' : score >= 2 ? 'medium' : 'simple';\n}\n"})}),"\n",(0,s.jsx)(n.h4,{id:"\u9636\u6bb5-2-\u53d1\u73b0\u547d\u4ee4\u5e76\u63a8\u8350\u547d\u4ee4\u94fe",children:"\u9636\u6bb5 2: \u53d1\u73b0\u547d\u4ee4\u5e76\u63a8\u8350\u547d\u4ee4\u94fe"}),"\n",(0,s.jsx)(n.p,{children:"\u4f7f\u7528\u57fa\u4e8e\u7aef\u53e3\u5339\u914d\u7684\u52a8\u6001\u547d\u4ee4\u94fe\u7ec4\u88c5\u3002"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"\u5411\u7528\u6237\u663e\u793a"}),":"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"\u63a8\u8350\u547d\u4ee4\u94fe:\n\n\u7ba1\u9053 (\u53ef\u89c6\u5316):\n\u9700\u6c42 -> lite-plan -> \u8ba1\u5212 -> lite-execute -> \u4ee3\u7801 -> test-cycle-execute -> \u6d4b\u8bd5\u901a\u8fc7\n\n\u547d\u4ee4:\n1. /workflow:lite-plan\n2. /workflow:lite-execute\n3. /workflow:test-cycle-execute\n\n\u7ee7\u7eed? [\u786e\u8ba4 / \u663e\u793a\u8be6\u60c5 / \u8c03\u6574 / \u53d6\u6d88]\n"})}),"\n",(0,s.jsx)(n.h4,{id:"\u9636\u6bb5-3-\u987a\u5e8f\u6267\u884c\u547d\u4ee4\u94fe",children:"\u9636\u6bb5 3: \u987a\u5e8f\u6267\u884c\u547d\u4ee4\u94fe"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-javascript",children:"async function executeCommandChain(chain, analysis) {\n const sessionId = `ccw-coord-${Date.now()}`;\n const stateDir = `.workflow/.ccw-coordinator/${sessionId}`;\n\n // \u521d\u59cb\u5316\u72b6\u6001\n const state = {\n session_id: sessionId,\n status: 'running',\n created_at: new Date().toISOString(),\n analysis: analysis,\n command_chain: chain.map((cmd, idx) => ({ ...cmd, index: idx, status: 'pending' })),\n execution_results: [],\n prompts_used: []\n };\n\n // \u4fdd\u5b58\u521d\u59cb\u72b6\u6001\n Write(`${stateDir}/state.json`, JSON.stringify(state, null, 2));\n\n for (let i = 0; i < chain.length; i++) {\n const cmd = chain[i];\n\n // \u7ec4\u88c5\u63d0\u793a\u8bcd\n let prompt = formatCommand(cmd, state.execution_results, analysis);\n prompt += `\\n\\nTask: ${analysis.goal}`;\n if (state.execution_results.length > 0) {\n prompt += '\\nPrevious results:\\n';\n state.execution_results.forEach(r => {\n if (r.session_id) {\n prompt += `- ${r.command}: ${r.session_id}\\n`;\n }\n });\n }\n\n // \u5728\u540e\u53f0\u542f\u52a8 CLI\n const taskId = Bash(\n `ccw cli -p \"${escapePrompt(prompt)}\" --tool claude --mode write`,\n { run_in_background: true }\n ).task_id;\n\n // \u4fdd\u5b58\u68c0\u67e5\u70b9\n state.execution_results.push({\n index: i,\n command: cmd.command,\n status: 'in-progress',\n task_id: taskId,\n session_id: null,\n artifacts: [],\n timestamp: new Date().toISOString()\n });\n\n // \u5728\u6b64\u505c\u6b62 - \u7b49\u5f85 hook \u56de\u8c03\n Write(`${stateDir}/state.json`, JSON.stringify(state, null, 2));\n break;\n }\n\n state.status = 'waiting';\n Write(`${stateDir}/state.json`, JSON.stringify(state, null, 2));\n return state;\n}\n"})}),"\n",(0,s.jsx)(n.h3,{id:"\u72b6\u6001\u6587\u4ef6\u7ed3\u6784",children:"\u72b6\u6001\u6587\u4ef6\u7ed3\u6784"}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"\u4f4d\u7f6e"}),": ",(0,s.jsx)(n.code,{children:".workflow/.ccw-coordinator/{session_id}/state.json"})]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-json",children:'{\n "session_id": "ccw-coord-20250203-143025",\n "status": "running|waiting|completed|failed",\n "created_at": "2025-02-03T14:30:25Z",\n "updated_at": "2025-02-03T14:35:45Z",\n "analysis": {\n "goal": "\u5b9e\u73b0\u7528\u6237\u6ce8\u518c",\n "scope": ["authentication", "user_management"],\n "constraints": ["\u65e0\u7834\u574f\u6027\u53d8\u66f4"],\n "complexity": "medium",\n "task_type": "feature"\n },\n "command_chain": [\n {\n "index": 0,\n "command": "/workflow:plan",\n "name": "plan",\n "status": "completed"\n },\n {\n "index": 1,\n "command": "/workflow:execute",\n "name": "execute",\n "status": "running"\n }\n ],\n "execution_results": [\n {\n "index": 0,\n "command": "/workflow:plan",\n "status": "completed",\n "task_id": "task-001",\n "session_id": "WFS-plan-20250203",\n "artifacts": ["IMPL_PLAN.md"],\n "timestamp": "2025-02-03T14:30:25Z",\n "completed_at": "2025-02-03T14:30:45Z"\n }\n ]\n}\n'})}),"\n",(0,s.jsx)(n.h3,{id:"\u5b8c\u6574\u751f\u547d\u5468\u671f\u51b3\u7b56\u6d41\u7a0b\u56fe",children:"\u5b8c\u6574\u751f\u547d\u5468\u671f\u51b3\u7b56\u6d41\u7a0b\u56fe"}),"\n",(0,s.jsx)(l.A,{chart:'\n flowchart TD\n Start([\u5f00\u59cb\u65b0\u4efb\u52a1]) --\x3e Q0{\u662f bug \u4fee\u590d\u5417?}\n\n Q0 --\x3e|\u662f| BugFix["Bug \u4fee\u590d\u6d41\u7a0b"]\n Q0 --\x3e|\u5426| Q1{\u77e5\u9053\u8981\u505a\u4ec0\u4e48\u5417?}\n\n BugFix --\x3e BugSeverity{\u7406\u89e3\u6839\u672c\u539f\u56e0\u5417?}\n BugSeverity --\x3e|\u6e05\u695a| LiteFix["/workflow:lite-fix<br/>\u6807\u51c6\u4fee\u590d"]\n BugSeverity --\x3e|\u751f\u4ea7\u4e8b\u6545| HotFix["/workflow:lite-fix --hotfix<br/>\u7d27\u6025\u70ed\u4fee\u590d"]\n BugSeverity --\x3e|\u4e0d\u6e05\u695a| BugDiag["/workflow:lite-fix<br/>\u81ea\u52a8\u8bca\u65ad\u6839\u672c\u539f\u56e0"]\n\n BugDiag --\x3e LiteFix\n LiteFix --\x3e BugComplete["Bug \u5df2\u4fee\u590d"]\n HotFix --\x3e FollowUp["\u81ea\u52a8\u751f\u6210\u540e\u7eed\u4efb\u52a1<br/>\u5b8c\u6574\u4fee\u590d + \u590d\u76d8"]\n FollowUp --\x3e BugComplete\n BugComplete --\x3e End(["\u4efb\u52a1\u5b8c\u6210"])\n\n Q1 --\x3e|\u5426| Ideation["\u63a2\u7d22\u9636\u6bb5<br/>\u660e\u786e\u9700\u6c42"]\n Q1 --\x3e|\u662f| Q2{\u77e5\u9053\u5982\u4f55\u505a\u5417?}\n\n Ideation --\x3e BrainIdea["/workflow:brainstorm:auto-parallel<br/>\u63a2\u7d22\u4ea7\u54c1\u65b9\u5411"]\n BrainIdea --\x3e Q2\n\n Q2 --\x3e|\u5426| Design["\u8bbe\u8ba1\u63a2\u7d22<br/>\u63a2\u7d22\u67b6\u6784"]\n Q2 --\x3e|\u662f| Q3{\u9700\u8981\u89c4\u5212\u5417?}\n\n Design --\x3e BrainDesign["/workflow:brainstorm:auto-parallel<br/>\u63a2\u7d22\u6280\u672f\u65b9\u6848"]\n BrainDesign --\x3e Q3\n\n Q3 --\x3e|\u5feb\u901f\u7b80\u5355| LitePlan["\u8f7b\u91cf\u7ea7\u89c4\u5212<br/>/workflow:lite-plan"]\n Q3 --\x3e|\u590d\u6742\u5b8c\u6574| FullPlan["\u6807\u51c6\u89c4\u5212<br/>/workflow:plan"]\n\n LitePlan --\x3e Q4{\u9700\u8981\u4ee3\u7801\u63a2\u7d22?}\n Q4 --\x3e|\u662f| LitePlanE["/workflow:lite-plan -e"]\n Q4 --\x3e|\u5426| LitePlanNormal["/workflow:lite-plan"]\n\n LitePlanE --\x3e LiteConfirm["\u4e09\u7ef4\u786e\u8ba4:<br/>1. \u4efb\u52a1\u786e\u8ba4<br/>2. \u6267\u884c\u65b9\u5f0f<br/>3. \u4ee3\u7801\u5ba1\u67e5"]\n LitePlanNormal --\x3e LiteConfirm\n\n LiteConfirm --\x3e Q5{\u9009\u62e9\u6267\u884c\u65b9\u5f0f}\n Q5 --\x3e|Agent| LiteAgent["/workflow:lite-execute<br/>\u4f7f\u7528 @code-developer"]\n Q5 --\x3e|CLI \u5de5\u5177| LiteCLI["CLI \u6267\u884c<br/>Gemini/Qwen/Codex"]\n Q5 --\x3e|\u4ec5\u89c4\u5212| UserImpl["\u7528\u6237\u624b\u52a8\u5b9e\u73b0"]\n\n FullPlan --\x3e PlanVerify{\u9a8c\u8bc1\u8ba1\u5212\u8d28\u91cf?}\n PlanVerify --\x3e|\u662f| Verify["/workflow:plan-verify"]\n PlanVerify --\x3e|\u5426| Execute\n Verify --\x3e Q6{\u9a8c\u8bc1\u901a\u8fc7?}\n Q6 --\x3e|\u5426| FixPlan["\u4fee\u590d\u8ba1\u5212\u95ee\u9898"]\n Q6 --\x3e|\u662f| Execute\n FixPlan --\x3e Execute\n\n Execute["\u6267\u884c\u9636\u6bb5<br/>/workflow:execute"]\n LiteAgent --\x3e TestDecision\n LiteCLI --\x3e TestDecision\n UserImpl --\x3e TestDecision\n Execute --\x3e TestDecision\n\n TestDecision{\u9700\u8981\u6d4b\u8bd5?}\n TestDecision --\x3e|TDD \u6a21\u5f0f| TDD["/workflow:tdd-plan<br/>\u6d4b\u8bd5\u9a71\u52a8\u5f00\u53d1"]\n TestDecision --\x3e|\u540e\u7f6e\u6d4b\u8bd5| TestGen["/workflow:test-gen<br/>\u751f\u6210\u6d4b\u8bd5"]\n TestDecision --\x3e|\u5df2\u6709\u6d4b\u8bd5| TestCycle["/workflow:test-cycle-execute<br/>\u6d4b\u8bd5-\u4fee\u590d\u5faa\u73af"]\n TestDecision --\x3e|\u4e0d\u9700\u8981| Review\n\n TDD --\x3e TDDExecute["/workflow:execute<br/>\u7ea2-\u7eff-\u91cd\u6784"]\n TDDExecute --\x3e TDDVerify["/workflow:tdd-verify<br/>\u9a8c\u8bc1 TDD \u5408\u89c4\u6027"]\n TDDVerify --\x3e Review\n\n TestGen --\x3e TestExecute["/workflow:execute<br/>\u6267\u884c\u6d4b\u8bd5\u4efb\u52a1"]\n TestExecute --\x3e TestResult{\u6d4b\u8bd5\u901a\u8fc7?}\n TestResult --\x3e|\u5426| TestCycle\n TestResult --\x3e|\u662f| Review\n\n TestCycle --\x3e TestPass{\u901a\u8fc7\u7387 >= 95%?}\n TestPass --\x3e|\u5426, \u7ee7\u7eed\u4fee\u590d| TestCycle\n TestPass --\x3e|\u662f| Review\n\n Review["\u5ba1\u67e5\u9636\u6bb5"]\n Review --\x3e Q7{\u9700\u8981\u4e13\u9879\u5ba1\u67e5?}\n Q7 --\x3e|\u5b89\u5168| SecurityReview["/workflow:review<br/>--type security"]\n Q7 --\x3e|\u67b6\u6784| ArchReview["/workflow:review<br/>--type architecture"]\n Q7 --\x3e|\u8d28\u91cf| QualityReview["/workflow:review<br/>--type quality"]\n Q7 --\x3e|\u901a\u7528| GeneralReview["/workflow:review<br/>\u901a\u7528\u5ba1\u67e5"]\n Q7 --\x3e|\u4e0d\u9700\u8981| Complete\n\n SecurityReview --\x3e Complete\n ArchReview --\x3e Complete\n QualityReview --\x3e Complete\n GeneralReview --\x3e Complete\n\n Complete["\u5b8c\u6210\u9636\u6bb5<br/>/workflow:session:complete"]\n Complete --\x3e End\n\n classDef startend fill:#c8e6c9,stroke:#388e3c\n classDef bugfix fill:#ffccbc,stroke:#bf360c\n classDef ideation fill:#fff9c4,stroke:#ffa000\n classDef planning fill:#e3f2fd,stroke:#1976d2\n classDef execute fill:#c5e1a5,stroke:#388e3c\n classDef review fill:#d1c4e9,stroke:#512da8\n\n class Start,End startend,BugFix,LiteFix,HotFix,BugDiag,BugComplete bugfix,Ideation,BrainIdea,BrainDesign ideation,LitePlan,LitePlanE,LitePlanNormal,LiteConfirm,FullPlan,PlanVerify,Verify,FixPlan planning,Execute,LiteAgent,LiteCLI,UserImpl,TDD,TDDExecute,TDDVerify,TestGen,TestExecute,TestCycle execute,Review,SecurityReview,ArchReview,QualityReview,GeneralReview,Complete review\n'}),"\n",(0,s.jsx)(n.h3,{id:"\u4f7f\u7528\u573a\u666f",children:"\u4f7f\u7528\u573a\u666f"}),"\n",(0,s.jsx)(n.h3,{id:"\u4f55\u65f6\u4f7f\u7528",children:"\u4f55\u65f6\u4f7f\u7528"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"\u590d\u6742\u7684\u591a\u6b65\u9aa4\u5de5\u4f5c\u6d41"}),"\n",(0,s.jsx)(n.li,{children:"\u4e0d\u786e\u5b9a\u4f7f\u7528\u54ea\u4e9b\u547d\u4ee4"}),"\n",(0,s.jsx)(n.li,{children:"\u9700\u8981\u7aef\u5230\u7aef\u81ea\u52a8\u5316"}),"\n",(0,s.jsx)(n.li,{children:"\u9700\u8981\u5b8c\u6574\u7684\u72b6\u6001\u8ddf\u8e2a\u548c\u53ef\u6062\u590d\u6027"}),"\n",(0,s.jsx)(n.li,{children:"\u56e2\u961f\u534f\u4f5c\u9700\u8981\u7edf\u4e00\u7684\u6267\u884c\u6d41\u7a0b"}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"\u4f55\u65f6\u4e0d\u4f7f\u7528",children:"\u4f55\u65f6\u4e0d\u4f7f\u7528"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"\u7b80\u5355\u7684\u5355\u547d\u4ee4\u4efb\u52a1 (\u76f4\u63a5\u4f7f\u7528\u5c42\u7ea7 1-4)"}),"\n",(0,s.jsx)(n.li,{children:"\u5df2\u7ecf\u77e5\u9053\u786e\u5207\u7684\u6240\u9700\u547d\u4ee4 (\u76f4\u63a5\u4f7f\u7528\u5c42\u7ea7 1-4)"}),"\n"]}),"\n",(0,s.jsx)(n.h3,{id:"\u4e0e\u5176\u4ed6\u5c42\u7ea7\u7684\u5173\u7cfb",children:"\u4e0e\u5176\u4ed6\u5c42\u7ea7\u7684\u5173\u7cfb"}),"\n",(0,s.jsxs)(n.table,{children:[(0,s.jsx)(n.thead,{children:(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.th,{children:"\u5c42\u7ea7"}),(0,s.jsx)(n.th,{children:"\u624b\u52a8\u7a0b\u5ea6"}),(0,s.jsx)(n.th,{children:"CCW Coordinator \u89d2\u8272"})]})}),(0,s.jsxs)(n.tbody,{children:[(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"\u5c42\u7ea7 1-4"}),(0,s.jsx)(n.td,{children:"\u624b\u52a8\u9009\u62e9\u547d\u4ee4"}),(0,s.jsx)(n.td,{children:"\u81ea\u52a8\u7ec4\u5408\u8fd9\u4e9b\u547d\u4ee4"})]}),(0,s.jsxs)(n.tr,{children:[(0,s.jsx)(n.td,{children:"\u5c42\u7ea7 5"}),(0,s.jsx)(n.td,{children:"\u81ea\u52a8\u9009\u62e9\u547d\u4ee4"}),(0,s.jsx)(n.td,{children:"\u667a\u80fd\u7f16\u6392\u5668"})]})]})]}),"\n",(0,s.jsxs)(n.p,{children:[(0,s.jsx)(n.strong,{children:"CCW Coordinator \u5185\u90e8\u4f7f\u7528\u5c42\u7ea7 1-4"}),":"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"\u5206\u6790\u4efb\u52a1 -> \u81ea\u52a8\u9009\u62e9\u5408\u9002\u7684\u5c42\u7ea7"}),"\n",(0,s.jsx)(n.li,{children:"\u7ec4\u88c5\u547d\u4ee4\u94fe -> \u5305\u542b\u5c42\u7ea7 1-4 \u7684\u547d\u4ee4"}),"\n",(0,s.jsx)(n.li,{children:"\u987a\u5e8f\u6267\u884c -> \u9075\u5faa\u6700\u5c0f\u6267\u884c\u5355\u5143"}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"\u76f8\u5173\u5de5\u4f5c\u6d41",children:"\u76f8\u5173\u5de5\u4f5c\u6d41"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"/docs/zh/workflows/level-1-ultra-lightweight",children:"\u5c42\u7ea7 1: \u8d85\u8f7b\u91cf\u7ea7"})," - \u5feb\u901f\u6267\u884c"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"/docs/zh/workflows/level-2-rapid",children:"\u5c42\u7ea7 2: \u5feb\u901f"})," - \u8f7b\u91cf\u7ea7\u89c4\u5212"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"/docs/zh/workflows/level-3-standard",children:"\u5c42\u7ea7 3: \u6807\u51c6"})," - \u5b8c\u6574\u89c4\u5212"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"/docs/zh/workflows/level-4-brainstorm",children:"\u5c42\u7ea7 4: \u5934\u8111\u98ce\u66b4"})," - \u591a\u89d2\u8272\u63a2\u7d22"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"/docs/zh/workflows/faq",children:"\u5e38\u89c1\u95ee\u9898"})," - \u5e38\u89c1\u95ee\u9898"]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"\u547d\u4ee4\u53c2\u8003",children:"\u547d\u4ee4\u53c2\u8003"}),"\n",(0,s.jsxs)(n.p,{children:["\u53c2\u89c1 ",(0,s.jsx)(n.a,{href:"/commands/general/ccw",children:"\u547d\u4ee4\u6587\u6863"})," \u4e86\u89e3:"]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"/ccw-coordinator"})," - \u667a\u80fd\u5de5\u4f5c\u6d41\u7f16\u6392\u5668"]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.code,{children:"/ccw"})," - \u4e3b\u5de5\u4f5c\u6d41\u7f16\u6392\u5668"]}),"\n"]})]})}function h(e={}){const{wrapper:n}={...(0,r.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(a,{...e})}):a(e)}}}]); |