using-aisdlc
npx skills add https://github.com/zixun-github/aisdlc --skill using-aisdlc
Agent 安装分布
Skill 文档
using-aisdlcï¼å¨ sdlc-dev ä¸ä½¿ç¨ AI SDLC / Spec Pack æµç¨ï¼
æ¦è§
è¿æ¯ä¸ä¸ªâå¯¼èª + é¨ç¦âå Skillï¼ç¨äºå¨ sdlc-dev ç Spec Packï¼{num}-{short-name}ï¼æµç¨éï¼é对ä¸ä¸æ¥è¦ç¨ç skillï¼å¹¶ç¨ç¡¬é¨ç¦é²æ¢ä¸ä¸ææ¼ç§»ä¸åéç®å½ã
å¼å§æ¶å®£å¸ï¼ãææ£å¨ä½¿ç¨ using-aisdlc æè½å¯¼èª Spec Pack æµç¨å¹¶æ§è¡é¨ç¦æ ¡éªãã
æ¬ Skill ç°å¨åæ¶è¦ç两æ¡é¾è·¯ï¼
- éæ±é¾è·¯ï¼R0âR4ï¼ï¼
raw.md â solution.md â prd.md â prototype.md â demo/ - å¼åé¾è·¯ï¼I1âI2 + Finishï¼ï¼
solution.md â implementation/plan.md â æ§è¡å®ç° â finishing-development
æ ¸å¿ååï¼
- å
ä¸ä¸æï¼å读åï¼å¡è¯»å
{FEATURE_DIR}/requirements/*ã{FEATURE_DIR}/design/*ã{FEATURE_DIR}/implementation/*ï¼æ R4 å demoï¼â å spec-contextå¾å°FEATURE_DIRï¼å¤±è´¥å°±åæ¢ï¼ã - ä¸ä¸ªèç¹ = ä¸ä¸ª skill = ä¸ä¸ªè½ç产ç©ï¼R0/R1/R2/R3/R4 忥æ§è¡ï¼ç¦æ¢â䏿¬¡æ§æ PRD+åå+Demo å ¨åäºâã
- æ¸è¿å¼æ«é²ï¼å
读项ç®çº§
memory/ä¸ç¸å ³å¥çº¦ç´¢å¼ï¼æç¡®å¤çæä¸ª Spec åå读å{FEATURE_DIR}/requirements/*ã - ä¸ç¡®å®æ§ä¸åâå¾ ç¡®è®¤é®é¢æ¸ åâï¼ç»ä¸è¿å ¥âéªè¯æ¸ åâï¼Owner/æªæ¢/ä¿¡å·/å¨ä½ï¼ã
- åæµéç¯ï¼R3/R4 çéªè¯åç°ä¼åæµæ´æ° R1/R2/R3ï¼å¿ è¦æ¶åå R4ï¼ã
- å®ç°ä¾§ SSOTï¼å®ç°é¶æ®µä»¥
{FEATURE_DIR}/implementation/plan.mdä½ä¸ºå¯ä¸æ§è¡æ¸ åä¸ç¶æ SSOTï¼checkbox + 审计信æ¯ï¼ï¼æ§è¡ç¶æåªååå°plan.mdã
使¶ä½¿ç¨ / ä¸ä½¿ç¨
- ä½¿ç¨æ¶æº
- ä½ è¦å¼å§/ç»§ç»ä¸ä¸ª Specï¼çæææ´æ°
raw.md / solution.md / prd.md / prototype.md / demo - ä½ è¦æä¸ä¸ªâç®åéæ±âç´æ¥æ¨è¿å°å¼åéç¯ï¼
solution.md â plan.md â execute â finishing - ä½ ä¸ç¡®å®âç°å¨è¯¥è·åªä¸ª spec-product-* skillâ
- ä½ ä¸ç¡®å®âç°å¨è¯¥è· spec-implementation-plan / spec-implementation-execute è¿æ¯å è¡¥éæ±è¾å ¥â
- ç¨æ·å¨æ½åæ¶æåºï¼ä¸æ³è·èæ¬ãç´æ¥ç»ä½ è·¯å¾ãè¦æ±ä½ å ååè¡¥ä¸ä¸æ
- ä½ è¦å¼å§/ç»§ç»ä¸ä¸ª Specï¼çæææ´æ°
- ä¸è¦ç¨å¨
- ä» è®¨è®ºæ¦å¿µã䏿¶åæ¬ä»åº Spec Pack çè½çæä»¶ä¸ç®å½ç»æ
å¯ä¸é¨ç¦ï¼å¿ é¡»éµå®ï¼
è§åï¼åªè¦ä»»å¡ä¼è¯»å以ä¸ä»»æå
容ï¼å°±å¿
é¡»å
è· spec-context å¹¶åæ¾ FEATURE_DIR=...ï¼
{FEATURE_DIR}/requirements/raw.md{FEATURE_DIR}/requirements/solution.md{FEATURE_DIR}/requirements/prd.md{FEATURE_DIR}/requirements/prototype.md{FEATURE_DIR}/design/*.mdï¼ä¾å¦design/design.mdãdesign/research.mdï¼{FEATURE_DIR}/implementation/plan.md{REPO_ROOT}/demo/prototypes/{CURRENT_BRANCH}/...ï¼R4ï¼
å³ä½¿ç¨æ·å£å¤´ç»äº FEATURE_DIR ä¹ä¸ä¾å¤ãï¼åºçº¿åæµä¸æå¸¸è§çè¿è§ç¹ï¼æâç¨æ·ç»çè·¯å¾â彿å¯ä¿¡ä¸ä¸æãï¼
å½ä»¤ä¹¦å约å®ï¼é»è®¤é¢å PowerShellï¼åä¸è¡å¤å½ä»¤è¯·ç¨
;åéï¼ä¸è¦ç¨&&ï¼ã
ä½ è¦çæçéç¯ï¼ç®åéæ±å¼åï¼ï¼raw â solution.md â plan.md â execute â finishing-development
éç¨åæï¼æ»¡è¶³å ¶ä¸å³å¯ï¼ï¼
- èå´åä¸ãè¾¹çæ¸
æ°ï¼é£é©ä½ï¼ä¸éè¦é¢å¤è®¾è®¡é¶æ®µå³çææ¡£ï¼å¯æ
design/aisdlc_spec_design.mdç D0 å¤å®è·³è¿ designï¼ - éªæ¶å£å¾å¯è¿½æº¯ï¼è³å°è½å¨
solution.mdï¼ææ´å®æ´çprd.mdï¼é忏 æ¥éªæ¶ç¹
æçéç¯ï¼å»ºè®®å è·éï¼ï¼
- R0ï¼è½ç rawï¼å¦å°æªå»ºå
ï¼
- ç¨ä»ä¹ï¼
spec-init - è¾åºï¼
{FEATURE_DIR}/requirements/raw.md
- ç¨ä»ä¹ï¼
- é¨ç¦ï¼å®ä½ Spec ä¸ä¸æ
- ç¨ä»ä¹ï¼
spec-context - è¦æ±ï¼å¯¹è¯ä¸å¿
须忾
FEATURE_DIR=...ï¼å¤±è´¥å³åæ¢
- ç¨ä»ä¹ï¼
- R1ï¼raw â solutionï¼æ¶ææ¹æ¡ï¼
- ç¨ä»ä¹ï¼
spec-product-clarify - è¾åºï¼
{FEATURE_DIR}/requirements/solution.md - å
¼å®¹è¯´æï¼ç¨æ·å¯è½ä¼è¯´
solutions.mdï¼ä½æ¬ä»åºéæ±ä¾§ SSOT 以solution.mdï¼åæ°ï¼ 为åï¼ä¸è¦æ°å»ºsolutions.mdé æå SSOT
- ç¨ä»ä¹ï¼
- I1ï¼solution â planï¼åå°å¯æ§è¡ï¼
- ç¨ä»ä¹ï¼
spec-implementation-plan - è¾åºï¼
{FEATURE_DIR}/implementation/plan.mdï¼å¯ä¸æ§è¡æ¸ åä¸ç¶æ SSOTï¼
- ç¨ä»ä¹ï¼
- I2ï¼æ plan åæ¹æ§è¡ï¼å®ç° + ååç¶æ/审计ï¼
- ç¨ä»ä¹ï¼
spec-implementation-execute - è§åï¼æ§è¡ç¶æåªåå
implementation/plan.mdï¼éå°NEEDS CLARIFICATION/ é»å¡å³å
- ç¨ä»ä¹ï¼
- Finishï¼å¼åæ¶å°¾ç¡®è®¤ï¼ä»
éªè¯ï¼å
¨ç»¿æç®å®æï¼
- ç¨ä»ä¹ï¼
finishing-development - è¾åºï¼ä¸ä»½âå®æç¡®è®¤æ¥åâï¼å å«å®é è¿è¡çå½ä»¤ä¸ç»æï¼
- ç¨ä»ä¹ï¼
æ ¸å¿å·¥ä½æµï¼éæ±ä¾§ R0 â R4ï¼å®ç°ä¾§ I1 â I2 â Finishï¼
digraph aisdlc_flow {
rankdir=LR;
node [shape=box];
"è¦å¤çæä¸ªéæ±ï¼Specï¼" -> "æ¯å¦å·²æåæ³ spec 忝/Spec Packï¼";
"æ¯å¦å·²æåæ³ spec 忝/Spec Packï¼" [shape=diamond];
"æ¯å¦å·²æåæ³ spec 忝/Spec Packï¼" -> "R0: spec-init" [label="å¦ / ä¸ç¡®å®"];
"R0: spec-init" -> "è¿è¡ spec-context" ;
"æ¯å¦å·²æåæ³ spec 忝/Spec Packï¼" -> "è¿è¡ spec-context" [label="æ¯"];
"è¿è¡ spec-context" -> "å¾å° FEATURE_DIR / CURRENT_BRANCH / REPO_ROOT";
"å¾å° FEATURE_DIR / CURRENT_BRANCH / REPO_ROOT" -> "鿩鿱é¾è·¯ R1-R4ï¼å¯éï¼";
"å¾å° FEATURE_DIR / CURRENT_BRANCH / REPO_ROOT" -> "éæ©å¼åé¾è·¯ I1-I2ï¼å¿
åï¼";
"鿩鿱é¾è·¯ R1-R4ï¼å¯éï¼" -> "R1: raw->solution";
"R1: raw->solution" -> "R2: solution->prdï¼å¯éï¼";
"R2: solution->prdï¼å¯éï¼" -> "R3: prd->prototypeï¼å¯éï¼";
"R3: prd->prototypeï¼å¯éï¼" -> "R4: prototype->demoï¼å¯éï¼";
"R1: raw->solution" -> "I1: spec-implementation-plan";
"R2: solution->prdï¼å¯éï¼" -> "I1: spec-implementation-plan";
"R3: prd->prototypeï¼å¯éï¼" -> "I1: spec-implementation-plan";
"I1: spec-implementation-plan" -> "I2: spec-implementation-execute";
"I2: spec-implementation-execute" -> "Finish: finishing-development";
}
R0ï¼åå§åæ° Spec Pack
- ç¨ä»ä¹ï¼
spec-init - ä»ä¹æ¶åï¼è¿æ²¡æ
{num}-{short-name}忝ä¸.aisdlc/specs/{num}-{short-name}/ç®å½ - è¾åºï¼
{FEATURE_DIR}/requirements/raw.mdï¼UTF-8 with BOMï¼ - ä¸ä¸æ¥ï¼
spec-contextâ R1
R1ï¼æ¾æ¸ + æ¹æ¡å³çï¼raw â solutionï¼
- ç¨ä»ä¹ï¼
spec-product-clarify - åç½®è¾å
¥ï¼
spec-contextæåï¼{FEATURE_DIR}/requirements/raw.mdåå¨ä¸é空 - å
³é®çºªå¾ï¼ä¸æ¬¡ä¸é®ï¼ä¼å
éæ©é¢ï¼+ å¢éåå
raw.md/## æ¾æ¸ è®°å½+ 忢æºå¶ - è¾åºï¼
{FEATURE_DIR}/requirements/solution.md - ä¸ä¸æ¥ï¼
- éæ±è¿ä¸å¤âå¯äº¤ä»è§æ ¼ââ R2ï¼PRDï¼å¯éï¼
- 交äº/æµç¨ææ§ä¹â R3/R4ï¼å¯éï¼
- ç®åéæ±è¦å¼åâ ç´æ¥è¿å ¥ I1ï¼å®ç°è®¡åï¼
R2ï¼PRDï¼solution â prdï¼å¯éï¼
- ç¨ä»ä¹ï¼
spec-product-prd - åç½®è¾å
¥ï¼
{FEATURE_DIR}/requirements/solution.mdå¿ é¡»åå¨ - è¾åºï¼
{FEATURE_DIR}/requirements/prd.md - ä¸ä¸æ¥ï¼æé R3 æç´è¾¾ design
R3ï¼ååï¼prd â prototypeï¼å¯éï¼
- ç¨ä»ä¹ï¼
spec-product-prototype - åç½®è¾å
¥ï¼
{FEATURE_DIR}/requirements/prd.mdå¿ é¡»åå¨ - è¾åºï¼
{FEATURE_DIR}/requirements/prototype.md - ä¸ä¸æ¥ï¼ååè¯å®¡/æå°éªè¯ï¼æé R4ï¼åç°é®é¢åæµ R1/R2/R3
R4ï¼å¯äº¤äº Demoï¼prototype â demoï¼å¯éï¼
- ç¨ä»ä¹ï¼
spec-product-demo - åç½®è¾å
¥ï¼
{FEATURE_DIR}/requirements/prototype.mdå¿ é¡»åå¨ï¼Demo å·¥ç¨æ ¹ç®å½å¯å®ä½ï¼æ¾ä¸å°å°±åæ¢å¹¶è¦DEMO_PROJECT_ROOTï¼ - è¾åºï¼é»è®¤
{REPO_ROOT}/demo/prototypes/{CURRENT_BRANCH}/ - ä¸ä¸æ¥ï¼è¿è¡èµ°æ¥ï¼åç°é®é¢åæµæ´æ° R1/R2/R3/R4
I1ï¼å®ç°è®¡åï¼solution/prd/design â plan.mdï¼å¿ åï¼
- ç¨ä»ä¹ï¼
spec-implementation-plan - åç½®è¾å
¥ï¼
spec-contextæåï¼{FEATURE_DIR}/requirements/solution.mdæprd.mdè³å°å ¶ä¸åå¨ï¼å¦åå¿ é¡»å¨plan.mdæ æ³¨NEEDS CLARIFICATION并黿è¿å ¥ I2ï¼ - è¾åºï¼
{FEATURE_DIR}/implementation/plan.mdï¼å¯ä¸æ§è¡æ¸ åä¸ç¶æ SSOTï¼ - ä¸ä¸æ¥ï¼I2
I2ï¼æ§è¡ï¼æ plan.md åæ¹å®ç°å¹¶ååï¼å¿ åï¼
- ç¨ä»ä¹ï¼
spec-implementation-execute - åç½®è¾å
¥ï¼
{FEATURE_DIR}/implementation/plan.mdå¿ é¡»åå¨ä¸å¯æ§è¡ï¼ä¸åå¨/ä¸å¯æ§è¡ååå° I1 - è¾åºï¼ä»£ç ä¸é
ç½®åæ´ +
plan.mdcheckbox/审计信æ¯ååï¼å¯ä¸ç¶ææ¥æºï¼ - ä¸ä¸æ¥ï¼Finish
Finishï¼å¼åæ¶å°¾ç¡®è®¤ï¼ä» éªè¯ï¼å ¨ç»¿æç®å®æï¼
- ç¨ä»ä¹ï¼
finishing-development - è¾åºï¼å®æç¡®è®¤æ¥åï¼å®é è¿è¡çå½ä»¤ä¸ç»æå¯å¤ç°ï¼
Quick referenceï¼é«é¢éæ¥ï¼
| ä½ è¦åä»ä¹ | å¿ é¡»å æ | æ§è¡ skill | 主è¦äº§ç© |
|---|---|---|---|
| æ°éæ±å»ºå | åå§éæ±ï¼ææ¬ææä»¶ï¼ | spec-init |
requirements/raw.md |
| æ¶ææ¹æ¡ | raw.md |
spec-product-clarify |
requirements/solution.md |
| å»ç»äº¤ä»è§æ ¼ | solution.md |
spec-product-prd |
requirements/prd.md |
| æ¶é¤äº¤äºæ§ä¹ | prd.md |
spec-product-prototype |
requirements/prototype.md |
| é«ä¿çèµ°æ¥ | prototype.md + å¯è¿è¡ demo å·¥ç¨æ ¹ç®å½ |
spec-product-demo |
demo/prototypes/{branch}/ |
| å坿§è¡è®¡åï¼å¿ åï¼ | solution.md æ prd.md |
spec-implementation-plan |
implementation/plan.md |
| æè®¡åå®ç°ï¼å¿ åï¼ | implementation/plan.md |
spec-implementation-execute |
代ç åæ´ + plan.md åå |
| å¼åæ¶å°¾ç¡®è®¤ï¼å¿ åï¼ | 代ç å·²å®ç° + 计åä»»å¡å·²å®æ | finishing-development |
å®æç¡®è®¤æ¥å |
åªè¦ä¼è¯»å
{FEATURE_DIR}/requirements/*ã{FEATURE_DIR}/design/*ã{FEATURE_DIR}/implementation/*ï¼æ R4 å demoï¼å spec-contextï¼å¤±è´¥å°±åæ¢ã
çº¢ææ¸ åï¼åºç°ä»»ä¸æ¡ï¼åæ¢å¹¶çº æ£ï¼
- 没è·
spec-contextå°±å¼å§è¯»å{FEATURE_DIR}/requirements/*ã{FEATURE_DIR}/design/*ã{FEATURE_DIR}/implementation/*ï¼æå¼å§ R4 å demoï¼ - ç¨æ·å£å¤´ç»äº
FEATURE_DIRï¼ä½ å°±âä¿¡äºå¹¶è·³è¿èæ¬â spec-contextæ¥éä»ç»§ç»ï¼ä¾å¦ main 忝ä¹è¦âå åä¸çâï¼- 为äºèµ¶è¿åº¦å çæææ¡£ï¼äºååè¡¥ä¸ä¸æ/ååå¤´æ¾æ¸
- å¨ R4 æ¾ä¸å°å¯è¿è¡ demo å·¥ç¨æ ¹ç®å½æ¶ï¼èªè¡åå§å Vite/Next.js å·¥ç¨âæ¾ä½ è§å¾åéçä½ç½®â
- 没æ
{FEATURE_DIR}/implementation/plan.mdï¼æ plan ä¸å¯æ§è¡ï¼å°±å¼å§âç´æ¥å代ç â - æ§è¡ä¸æç¶æ/审计åå°å«å¤ï¼issue/è天记å½/å¦ä¸ä¸ªæä»¶ï¼ï¼è䏿¯åå
implementation/plan.md
常è§é误ï¼ä»¥åæä¹ä¿®ï¼
- æâç¨æ·ç»çè·¯å¾/忝åâå½ä½ä¸ä¸æï¼ä»ç¶å¿
é¡»
spec-contextåæ¾FEATURE_DIR=...ï¼æ æ³æ§è¡å°±åæ¢ã - å çæååå¤´æ¾æ¸ /è¡¥è¯æ®ï¼å 宿 R1 æ¾æ¸ 循ç¯ï¼ä¸æ¬¡ä¸é® + ååï¼ï¼è¾¾å° DoD ååçæäº§ç©ã
- è¶çº§æ§è¡ï¼ç¼º
solution.mdå°±åprd.mdï¼ç¼ºprd.mdå°±åprototype.mdï¼ç¼ºprototype.mdå°±å demo â ä¸å¾åæ¢å¹¶åå°ä¸ä¸æ¥ã - è¶çº§å¼åï¼ç¼º
implementation/plan.mdå°±å¼å§å®ç° â åå° I1 åå°â坿§è¡ + å¯éªè¯ + å¯å®¡è®¡âï¼åè¿å ¥ I2ã
常è§åå£ä¸åå¶ï¼æ¥èªåºçº¿åæµï¼
| åå£ï¼å忥æºï¼ | 常è§è¿è§è¡ä¸º | å¿ é¡»çåå¶å¨ä½ |
|---|---|---|
| âæå·²ç»æ FEATURE_DIR åè¯ä½ äºï¼å«è·èæ¬â | æ¥åå£å¤´è·¯å¾å¹¶ç´æ¥åæä»¶ | ä»ç¶å¿
é¡»è· spec-contextï¼è·ä¸äºå°±åæ¢ï¼åªäº¤ä»â黿åå + éè¦çè¾å
¥/ä¸ä¸æ¥â |
| âæå¾æ¥ï¼å å¨ main ä¸å solution.mdâ | è·³è¿é¨ç¦ãçç®å½åå ¥ | spec-context 失败 â 忢ï¼å
åå°åæ³ spec 忝æå
spec-init |
| âæ PRD/åå/Demo 䏿¬¡æ§é½åäºâ | èç¹è¦åå¯¼è´æ¼ç§»ãæ æ³åæµ | ææ R1âR2âR3âR4ï¼æ¯æ¥å®æç»ä¸ä¸æ¥ä¸ DoD èªæ£ |
| âå«å plan äºï¼ç´æ¥æ¹ä»£ç å§â | è·³è¿ I1ãæ§è¡ä¸å¯å®¡è®¡ã容æè¶ç | å
spec-implementation-plan äº§åº implementation/plan.mdï¼SSOTï¼ï¼å spec-implementation-execute åæ¹æ§è¡ä¸åå |
ä¸ä¸ªå¥½ä¾åï¼æçè·¯å¾çæ£ç¡®å¼åºï¼
ç¨æ·ï¼âæè¦åä¸ä¸ªæ°éæ±ï¼å åºæ¹æ¡ï¼solution.mdï¼ï¼æä¸æ³èªå·±æ¾ç®å½ãâ
æ£ç¡®åæ³ï¼ç¬¬ä¸è½®ï¼ï¼
- è¥å°æªå建 spec 忝/Spec Pack â å
spec-initï¼æåå§éæ±è½å°raw.mdï¼ - ç¶åæ§è¡
spec-contextå¹¶åæ¾FEATURE_DIR=... - è¿å
¥ R1ï¼å¯¹ç¨æ·åªé® 1 个æé«æ æéæ©é¢ï¼åçåå¢éåå
raw.md/## æ¾æ¸ è®°å½ - DoD è¾¾æ æè§¦å忢æºå¶åçæ
solution.mdï¼å¹¶ç»åºä¸ä¸æ¥ï¼- ç®åéæ±è¦å¼åï¼I1
spec-implementation-planâ I2spec-implementation-executeâfinishing-development - éè¦æ´å®æ´è§æ ¼/ååï¼R2/R3/R4ï¼æéï¼ååè¿å ¥ I1/I2
- ç®åéæ±è¦å¼åï¼I1