AIã«é Œãã ã³ãŒããåŸåã§éã«ãªãçç±ãšãããŒã ã§å®è·µããããŒãã¹èšèšãšãã解決ç
ãã®èšäºã®å¯Ÿè±¡è
- Claude CodeãChatGPTã䜿ã£ãŠæ¥åžžçã«éçºããŠãããšã³ãžãã¢
- AIã«å®è£ ãä»»ããŠã¿ãããåŸåã®å質ãèœã¡ããšæããŠãã人
- ããŒã ã®éçºãããŒã«AIãããŸãçµã¿èŸŒã¿ãããšèããŠãã人
- ãããã³ãããããŸãæžãã以å€ã®ã¢ãããŒããç¥ããã人
AIã«ãããå®è£ ããŠããšé Œããšãæåã¯äžå¯§ãªã³ãŒããåºãŠããŸããã§ãäŒè©±ãé·ããªãã«ã€ããŠãåŸåã¯ã³ããã ããã»ããŒãã³ãŒãã ããã«ãªã£ãŠãããŸããããããçµéšã¯ãããŸãããã
ããã¯æ°ã®ããã§ããããã³ããã®æžãæ¹ãæªãããã§ããããŸãããAIã®æ§é çãªåé¡ã§ãã
ä»åã¯ãAnthropicãæå±ãããããŒãã¹èšèšããšããèãæ¹ãšããããèªåãã¡ã®ããŒã ã®éçºãããŒã«å®éã«åã蟌ãã äºäŸã玹ä»ããŸãã
AIã«ã¯2ã€ã®æ ¹æ¬çãªåé¡ããã
åé¡â ã³ã³ããã¹ãäžå®ïŒå質å£åïŒ
AIã«ã¯åŠçã§ããæ å ±éã«äžéïŒããŒã¯ã³äžéïŒããããŸããäŒè©±ãé·ããªãã«ã€ããŠãã®äžéã«è¿ã¥ãããæ©ãçµãããããããšã§ãèšããã®ããã«å®è£ ãéã«ãªã£ãŠãããŸãã
- åºç€ïŒäžå¯§ãªåå®çŸ©ã»ã³ã³ããŒãã³ãåå²ã»äžè²«ããåœå
- åŸåïŒã³ããã»éè€ã³ãŒãã»ããŒãã³ãŒãå€çº
Anthropicã¯ãã®çŸè±¡ããã³ã³ããã¹ãäžå®ããšåŒãã§ããŸãããããŠããã¯ãããã³ããã®å·¥å€«ã§è§£æ±ºã§ããåé¡ã§ã¯ãããŸãããæ§é ã¬ãã«ã§å¯ŸåŠããå¿ èŠããããŸãã
åé¡â¡ èªå·±è©äŸ¡ãã€ã¢ã¹
AIã«ããã®å®è£ ãåé¡ãªãã§ããïŒããšèããšãå®ç§ã§ãïŒããšè¿ã£ãŠããããšãå€ãã§ããã§ãå®éã«ã¯ãã°ã ããã ã£ããããŸãã
ããã¯äœããšããšåãæèã»åãæèã§è©äŸ¡ãããããèªåã®ç²ç¹ã«æ°ã¥ããªãããã§ãã人éã§ãèªåã§æžããã³ãŒãã®ãã°ã¯èªåã§ã¯èŠã€ãã«ããã§ããã ããã³ãŒãã¬ãã¥ãŒãååšããŸããAIã«ããå¥ã®ç®ããå¿ èŠã§ãã
ããŒãã¹èšèšãšã¯äœã
Anthropicã¯ãã®2ã€ã®åé¡ã«å¯ŸããŠãããŒãã¹èšèšããšããã¢ãããŒããæå±ããŠããŸãã
ããŒãã¹ãšã¯éŠ¬å ·ã®ããšã§ããAIã匷åãªæŽã銬ã«èŠç«ãŠã檻ã«éã蟌ããã®ã§ã¯ãªããåãæ®ºããã«ç®çå°ãžå°ãéå ·ãšããŠèšèšããããšããèãæ¹ã§ãã
å ·äœçã«ã¯3ã€ã®éŠ¬å ·ã«å¯Ÿå¿ããŠããŸãã
| éŠ¬å · | åœ¹å² | å ·äœäŸ |
|---|---|---|
| 蜡ïŒãã€ãïŒ | è¡åå¶é | ãã¡ã€ã«èªã¿åãã¯èªåèš±å¯ãæžã蟌ã¿ã»å®è¡ã¯äººéãæ¿èª |
| éïŒããïŒ | èšæ¶ã®ç®¡ç | ãããžã§ã¯ãã«ãŒã«ã¯æ°žç¶ä¿åãäœæ¥ãã°ã¯éœåºŠãªã»ãã |
| æç¶±ïŒãã¥ãªïŒ | ãã£ãŒããã㯠| è©äŸ¡çµæã次ã®å®è£ ã«èªåã§åæ ããã«ãŒã |
3ã€ã®AIã«åœ¹å²åæ ããã
ããŒãã¹èšèšã®æ žå¿ã¯ãAIã1äœã§äœ¿ããã«3ã€ã®åœ¹å²ã«åããããšã§ãã人éã®éçºããŒã ãšåãæ§æã«ãªããŸãã
ð ãã©ã³ã㌠â âïž ãžã§ãã¬ãŒã¿ãŒ â ð ãšããªã¥ãšãŒã¿ãŒ ïŒPM圹ã»äŒç»ïŒ ïŒãšã³ãžãã¢åœ¹ã»å®è£ ïŒ ïŒQA圹ã»è©äŸ¡ïŒ
- ãã©ã³ããŒïŒææ§ãªèŠä»¶ãå ·äœçãªä»æ§ã«å€æããã詳现ãããæç€ºã¯NGïŒã«ã¹ã±ãŒããšã©ãŒã®åå ã«ãªãïŒ
- ãžã§ãã¬ãŒã¿ãŒïŒä»æ§ãããšã«å®è£ ãããå®è£ åã«ããããäœããŸãããšå®£èšïŒã¹ããªã³ãå¥çŽïŒããŠããå§ãã
- ãšããªã¥ãšãŒã¿ãŒïŒç¬ç«ããå¥ã®AIãå®éã«ãã©ãŠã¶ãæäœããŠæ€èšŒãããã£ãŒãããã¯ãè¿ãããžã§ãã¬ãŒã¿ãŒãä¿®æ£âãŸãè©äŸ¡ãã®ã«ãŒããç¹°ãè¿ã
ãªãè©äŸ¡è ãåããã®ã
åãAIã«è©äŸ¡ããããšãäœããšããšåãæèã§è©äŸ¡ããããèªåã®ç²ç¹ãèŠããŸããããå®ç§ã§ãïŒããšèšããªãããã°ãæ®ããããããèªç»èªè³ã«ãŒãã§ãã
äžæ¹ãæ°ããäŒè©±ïŒå¥ã³ã³ããã¹ãïŒã§è©äŸ¡ããããšãå å ¥èŠ³ãªã客芳çã«èŠãããŸãã åãã¢ãã«ã§ãã³ã³ããã¹ããåããã°ãå¥ã®ç®ãã«ãªããŸãã
ããã¯ç»åçæã§äœ¿ãããGANïŒæµå¯Ÿççæãããã¯ãŒã¯ïŒãšåãçºæ³ã§ãããäœãåŽããšãæ¹è©ããåŽããç«¶ãåãããšã§å質ãäžãããŸããAnthropicã®å ±åã§ã¯5ã15åã®ã«ãŒãã§å質ãå€§å¹ ã«åäžãããšãããŠããŸãã
è£è¶³ãšããŠãClaude Codeã®AgentããŒã«ã§ãµããšãŒãžã§ã³ããåŒã³åºããšããã®ãšãŒãžã§ã³ãã¯å®å šã«ç¬ç«ããæ°ããã³ã³ããã¹ãã§èµ·åããŸããå®è£ è ãäœãèããŠå®è£ ãããããè©äŸ¡è ã¯ç©ççã«ç¥ãææ®µããããŸããããããããŒãã¹èšèšã®ãè©äŸ¡è åé¢ããèªç¶ã«å®çŸããŠããŸãã
èªåãã¡ã®éçºãããŒãžã®é©çš
ãããããå®è·µã®è©±ã§ããäžèšã®ããŒãã¹èšèšã®ææ³ããå®éã®ãã°ä¿®æ£ãããŒã«åã蟌ã¿ãŸããã
å®è£ æ¹æ³ïŒClaude Codeã®ã¹ãã«ãšããŠå®çŸ©ãã
Claude Codeã«ã¯ãã¹ãã«ããšããä»çµã¿ããããŸããSKILL.md ãšããMarkdownãã¡ã€ã«ã«ãããŒã®æé ãå®çŸ©ããŠãããšãClaude Codeããããèªã¿èŸŒãã§æé éãã«åããŠãããŸãã
.claude/
âââ skills/
âââ bug-fix/ â ã¹ãã«ã®åå
âââ SKILL.md â ãããŒã®æé ãå®çŸ©ãããã¡ã€ã«
SKILL.mdã®äžã«ã¯ãStep 1ã§ãã®ãšãŒãžã§ã³ããåŒã¶ãStep 2ã§ãã®ãšãŒãžã§ã³ããåŒã¶ããšããæé ãæžãã ãã§ããåã¹ãããã§åŒã³åºããšãŒãžã§ã³ãã .claude/agents/ é
äžã«åå¥ã«å®çŸ©ããŸãã
.claude/
âââ skills/
â âââ bug-fix/
â âââ SKILL.md â ãããŒå
šäœã®åžä»€å¡
âââ agents/
âââ issue-fetcher.md â Issueæ
å ±ãååŸãã圹å²
âââ code-investigator.md â ã³ãŒãã調æ»ãã圹å²
âââ plan-reviewer.md â ä¿®æ£èšç»ãäœã圹å²
âââ implementer.md â å®è£
ãã圹å²
âââ db-preparator.md â ãã¹ãããŒã¿ãæºåãã圹å²
âââ frontend-evaluator.md â ç¬ç«ããŠè©äŸ¡ãã圹å²
âââ pr-creator.md â PRãäœæãã圹å²
ããããã®ãšãŒãžã§ã³ãã¯ç¬ç«ããå¥ã®ã³ã³ããã¹ãã§èµ·åããŸããã€ãŸããå®è£ ãšãŒãžã§ã³ãããäœãèããŠå®è£ ãããããè©äŸ¡ãšãŒãžã§ã³ãã¯ç¥ããŸãããæž¡ãããæ å ±ã ããèŠãŠå€æãããããèªå·±è©äŸ¡ãã€ã¢ã¹ãæ§é çã«æé€ãããŸãã
ãããŒå šäœå
ãã®æ§æã§å®çŸãããã°ä¿®æ£ãããŒã¯ä»¥äžã®ãšããã§ãã
â IssueååŸã»åæïŒãã©ã³ããŒïŒ
â
â¡ ã³ãŒã調æ»ã»ä¿®æ£èšç»ã®äœæïŒãã©ã³ããŒïŒ
â
⢠人éãä¿®æ£èšç»ãæ¿èª â ããã§äººéãä»å
¥
â
⣠å®è£
ã»ãã¹ãã»LintïŒãžã§ãã¬ãŒã¿ãŒïŒ
â
†æäœç¢ºèªçšã®ãã¹ãããŒã¿ã確èªã»æºåïŒãµããŒã圹ïŒ
â
⥠ç¬ç«ããè©äŸ¡ãšãŒãžã§ã³ãããã©ãŠã¶ã§åäœç¢ºèªïŒãšããªã¥ãšãŒã¿ãŒïŒ
â
â FAIL â â£ã«å·®ãæ»ããã«ãŒã
â
PASS â
⊠人éãæçµç¢ºèª â ããã§äººéãä»å
¥
â
â§ PRäœæ
SKILL.mdã«ãã®ãããŒãå®çŸ©ããŠããããšã§ããIssueã®URLãæž¡ãããšããäžèšã ãã§ãããŒå šäœãèªåã§åããŸãããšã³ãžãã¢ãä»å ¥ããã®ã¯â¢ä¿®æ£èšç»ã®æ¿èªãšâŠæçµç¢ºèªã®2ç®æã ãã«ãªããŸãã
åã¹ãããã®è©³çް
â IssueååŸã»åæ
GitHubã®Issueçªå·ãŸãã¯URLãåãåããIssueæ¬æã»ã©ãã«ã»é¢é£ãªã³ã¯ãååŸããŠã課é¡ãµããªãŒããçæããŸããäœãçŽãã¹ãããæŽçããã®ããã®ã¹ãããã®ç®çã§ãã
â¡ ã³ãŒã調æ»ã»ä¿®æ£èšç»ã®äœæ
課é¡ãµããªãŒãããšã«ãé¢é£ãã仿§æžã»å®è£ ãã¡ã€ã«ã»ãã¹ããã¡ã€ã«ã調æ»ããŸããã©ã®ãã¡ã€ã«ã®ã©ã®éšåã倿Žãã¹ãããç¹å®ããä¿®æ£èšç»ãšããŠåºåããŸãã
⢠人éãä¿®æ£èšç»ãæ¿èª
ãããæåã®äººéä»å ¥ãã€ã³ãã§ãã AIãåºããä¿®æ£èšç»ããšã³ãžãã¢ã確èªããæ¹åæ§ãæ£ãããã°æ¿èªããŸãããã®æ¿èªããªããã°å®è£ ã«é²ã¿ãŸããã
ãäœãçŽãããã«åæããŠããå®è£ ãå§ããããšã§ãå®è£ åŸã®å€§å¹ ãªææ»ããé²ããŸãã
⣠å®è£ ã»ãã¹ãã»LintïŒãžã§ãã¬ãŒã¿ãŒïŒ
æ¿èªæžã¿ã®ä¿®æ£èšç»ãããšã«ããžã§ãã¬ãŒã¿ãŒãšãŒãžã§ã³ããå®è£ ãè¡ããŸããå®è£ å®äºåŸã¯ãã¹ãã»Lintãå®è¡ããåºæ¬çãªå質ãã§ãã¯ãééããããšã確èªããŸãã
å®è£ å®äºã¬ããŒãã«ã¯ãæäœç¢ºèªæé ããå«ããŸããæ¬¡ã®ã¹ãããã§ãã¹ãããŒã¿ãæºåããããã®æ å ±ã§ãã
†ãã¹ãããŒã¿ã®ç¢ºèªã»æºåïŒãµããŒã圹ïŒ
è©äŸ¡ãšãŒãžã§ã³ããåäœç¢ºèªãããããã«ã¯ãDBã«é©åãªãã¹ãããŒã¿ãååšããŠããå¿ èŠããããŸãã
ãã®ã¹ãããã§ã¯å°çšã®ãšãŒãžã§ã³ãã以äžãè¡ããŸãã
- å¿ èŠãªããŒã¿ãDBã«ååšããã確èªãã
- ååšããªãå Žåã®ã¿ãæå°éã®ããŒã¿ãäœæãã
- ã確èªç»é¢URLã»ãã°ã€ã³æ å ±ã»æäœæé ã»æåŸ ããçµæããå«ãåçŸå¯èœãªæäœæé ãåºåãã
æ¯åããŒã¿ãäœãçŽãã®ã§ã¯ãªããããªããã°äœãããšããèšèšããã€ã³ãã§ãã
⥠ç¬ç«ããè©äŸ¡ãšãŒãžã§ã³ããåäœç¢ºèªïŒãšããªã¥ãšãŒã¿ãŒïŒ
ãããããŒãã¹èšèšã®æ žå¿ã§ããå®è£ ãšãŒãžã§ã³ããšã¯å®å šã«ç¬ç«ããå¥ã®ãšãŒãžã§ã³ããèµ·åãã以äžã®4ã€ã®èгç¹ã§è©äŸ¡ããŸãã
- åäœç¢ºèªïŒæå®ãããæäœæé éãã«ç»é¢ãåããïŒPlaywrightã§ãã©ãŠã¶ãèªåæäœïŒ
- 仿§æžãšã®ç §åïŒä¿®æ£èšç»ã»ä»æ§æžã®å 容ãšå®è£ ãäžèŽããŠããã
- ã³ãŒãåè³ªïŒæ¢åã³ãŒããšã®æŽåæ§ã»ã³ãŒãã£ã³ã°èŠçŽã®éµå®
- UIæŽåæ§ïŒç»é¢åŽ©ãã»è¡šç€ºã®äžæŽåããªãã
è©äŸ¡çµæã¯ PASS / FAIL ã§è¿ããŸãã
- PASSïŒæ¬¡ã®ã¹ãããïŒäººé確èªïŒãžé²ã
- FAILïŒå·®ãæ»ãçç±ãæ·»ããŠâ£ïŒå®è£ ãšãŒãžã§ã³ãïŒã«æ»ããPASSãåºããŸã§ãã®ã«ãŒããç¹°ãè¿ã
è©äŸ¡ãšãŒãžã§ã³ãã¯å®è£ ãšãŒãžã§ã³ãããäœãæå³ããŠå®è£ ãããããç¥ããŸãããæž¡ãããæ å ±ãšå®éã®åäœã ããèŠãŠå€æãããããèªå·±è©äŸ¡ãã€ã¢ã¹ãæ§é çã«æé€ãããŠããŸãã
⊠人éãæçµç¢ºèª
ããã2çªç®ã®äººéä»å ¥ãã€ã³ãã§ãã è©äŸ¡ãšãŒãžã§ã³ããPASSãåºããåŸããšã³ãžãã¢ãå®éã«ç»é¢ãæäœããŠç¢ºèªããŸãã
åé¡ããªããã°ãPRäœæããŠãã ããããšäžèšäŒããã ãã§æ¬¡ã®ã¹ãããã«é²ã¿ãŸããåé¡ãããã°â£ã«å·®ãæ»ããåããã©ã³ãã«è¿œå ã³ããããšããŠç©ã¿ãŸãã
â§ PRäœæ
æ¿èªæžã¿ä¿®æ£èšç»ã»å®è£ å®äºã¬ããŒãã»è©äŸ¡ã¬ããŒããããšã«ãã³ãããã»ããã·ã¥ã»PRäœæãèªåã§è¡ããŸãã
èšèšã®ãã€ã³ããŸãšã
人éãä»å ¥ããã®ã¯2ç®æã ã
ä¿®æ£èšç»ã®æ¿èªïŒâ¢ïŒãšæçµç¢ºèªïŒâŠïŒã®ã¿ããã以å€ã¯AIãèªåŸçã«åããŸããè©äŸ¡è ãPASSãåºããŸã§äººé確èªã«é²ãŸãªãããšããå質ã²ãŒããèªååãããŠããŸãã
è©äŸ¡è ã¯ç¬ç«ããã³ã³ããã¹ãã§èµ·åãã
å®è£ ãšãŒãžã§ã³ããšè©äŸ¡ãšãŒãžã§ã³ãã¯å¥ã ã®AgentãšããŠèµ·åãããããå®è£ è ã®ãæå³ããè©äŸ¡è ã¯åŒãç¶ããŸãããå®è£ ã®è¯ãæªãã ããèŠãŠå€æã§ããŸãã
ãã¹ãããŒã¿ã®æºåãèªååãã
ãããŒã¿ãååšããã確èªãããªããã°äœæããããšãã圹å²ã®ãšãŒãžã§ã³ããæãããšã§ãè©äŸ¡ãåžžã«åçŸå¯èœã«ãªããŸããæåã§ãã¹ãããŒã¿ãçšæããæéããªããªããŸãã
FAILã«ãŒãã§åè³ªãæ ä¿ãã
è©äŸ¡ãšãŒãžã§ã³ããFAILãåºãããããã£ãŒãããã¯ãå®è£ ãšãŒãžã§ã³ãã«æž¡ããŠå·®ãæ»ããŸããPASSãåºããŸã§ãã®ã«ãŒããç¹°ãè¿ãããšã§ã人éã確èªããåã«äžå®ã®åè³ªãæ ä¿ãããŸãã
æ§ãããŒãšã®éã
| æ§ãã㌠| æ°ãããŒïŒããŒãã¹èšèšïŒ | |
|---|---|---|
| è©äŸ¡ | å®è£ ãšãŒãžã§ã³ãèªèº«ãç¢ºèª | ç¬ç«ããè©äŸ¡ãšãŒãžã§ã³ããç¢ºèª |
| 人é確èªã®ã¿ã€ãã³ã° | å®è£ çŽåŸ | è©äŸ¡ãšãŒãžã§ã³ãPASSåŸã®ã¿ |
| ãã¹ãããŒã¿ | æåã§æºå | èªåã§ç¢ºèªã»æºå |
| å質ã²ãŒã | ãªã | è©äŸ¡ã«ãŒãã§èªåæ ä¿ |
ã¹ã©ã€ãã§å šäœãæ¯ãè¿ã
以äžã®ã¹ã©ã€ãã§ä»åã®å 容ããŸãšããŠããŸããã¹ããŒã¹ããŒãŸãã¯ç¢å°ããŒã§ããŒãžãéããŸãã
ãŸãšããéå ·ã¯ãããèšèšã¯èªåãã¡ã§ãã
Claude Codeã¯Playwright MCPãAgentããŒã«ãªã©ãããŒãã¹èšèšãå®çŸããããã®éå ·ãæäŸããŠããŸããããããã©ã忥ããããããè©äŸ¡åºæºãäœã«ãããããã©ãã§äººéãä»å ¥ããããã¯èªåãã¡ã§èšèšããå¿ èŠããããŸãã
ãããªãå®å
šãªãããŒãäœãå¿
èŠã¯ãããŸããã
ãŸãã¯äŸãšããŠãAIã«äœãå®è£
ãããã â æ°ããäŒè©±ãéããŠããã®åºæºã§è©äŸ¡ããŠããšè²Œãä»ããã ãã§ãã
åãã¢ãã«ã§ãã³ã³ããã¹ããåããã°ãå¥ã®ç®ãã«ãªããŸãã
匷ã銬ã«ã¯è¯ãéŠ¬å ·ããAIã®åãæå€§éã«åŒãåºãã®ã¯ãããã³ããã®å·¥å€«ã§ã¯ãªãèšèšã®åã§ãã
åèïŒAnthropic Engineering BlogãHarness Design for Long-Running Appsã