ã¯ããã« ããã«ã¡ã¯ãInsight Edge ã®æ¥äžã§ãã ããæè¿ã®ã³ãŒãã£ã³ã°AIãšãŒãžã§ã³ãã®é²åã¯ç®èŠãŸããã以äžã®ãããªå
æ¯ãåœããåã«ãªã£ãŠããŸããã ãããã¯ããªãŒããŒãUXãã¶ã€ããAIããŒã«ã§ãããã¿ã€ããäœã è°äºé²ã»ä»æ§æžã»èšèšã¡ã¢ãšãã£ãããã¥ã¡ã³ãç³»ã®ææç©ãAIã§äœæãgitã§ç®¡çãã ç¹ã«ãã€ãã³ãŒãã£ã³ã°ã®åºããã§ããšã³ãžãã¢ä»¥å€ããœãŒã¹ã³ãŒãã®åœ¢ã§ææç©ãäœãããšãå¢ããŸãããåŒç€Ÿã§ã¯ AIãæèãçè§£ããããããã«ããããã¯ãã®ãœãŒã¹ã³ãŒãã ãã§ãªããã¶ã€ã³ææç©ãèšèšããã¥ã¡ã³ããæææ±ºå®ã®çµç·¯ãªã©ãGitãGitHubã«éçŽããŠããŸã ãããããŠãœãŒã¹ã³ãŒããšããã¥ã¡ã³ãã®äž¡é¢ããã Gitãªããžããªãè§Šããšã³ãžãã¢ä»¥å€ã®ã¡ã³ã㌠ãå¢ããŠããŠããŸãã ãã®ãšããåŸæ¥ããGit/GitHubã䜿ããšã³ãžãã¢åŽãšãæ°ãã«äœ¿ãå§ããåŽã®ããããã«æ©ã¿ãçãŸããŸãã ãšã³ãžãã¢åŽ â éçºãããŒã®èª¬æãææŽäœæ¥ïŒäœæ¥æ¯æŽã誀ã³ãããã®ä¿®æ£ïŒãªã©ããšã³ãžãã¢ä»¥å€ã®ã¡ã³ããŒãæ
£ãããŸã§ãµããŒãè² è·ãé«ããªã éçºã«åå ããã¡ã³ããŒåŽ â Git/GitHubã®äœæ³ãéçºãããŒãåŠã¶è² æ
ãšããããæèããããšã«ããã¢ã€ãã¢å
·çŸåã¹ããŒãã®éå ãAIã«ä»»ããã°ãã¹ããã©ã¯ãã£ã¹ãå®ãããã®ã§ã¯ïŒããšæããããããã§ããããŸãããæè¿ã®AIã¢ãã«ã¯GitãGitHubã®è¯ãäœæ³ãç¥ã£ãŠããŸãããã€ã³ã¿ãŒããããæ¢ãã°çŽ æŽãããã¹ãã«ãå€ã
ãããŸããããããéçºãããããã¯ãã®ç¹åŸŽããã§ãŒãºãããŒã ã®å€§ãããªã©ã«å¿ããŠãçŸå Žã«é©ããéçºãããŒã¯æ§ã
ã§ãããããã«éçºããŒã ã®å·¥å€«ã衚ããŸããã ããããã èªåã®ããŒã ã«é©ããéçºæé ãèšèªåããŠã¹ãã«ã«åºãã å¿
èŠããããŸããã æ¬èšäºã§ã¯ããšã³ãžãã¢ä»¥å€ã®ã¡ã³ããŒãå«ãéçºããŒã ã§ããã€ãã³ãŒãã£ã³ã°ã®éããæ°è»œããå°éãã€ã€ãGitãGitHubããè¡åããæŽ»çšããéçºãããŒãå®çŸããããã«ç§ãäœãè²ãŠãClaudeã¹ãã«ã顿ã«ããã®èšèšææ³ãšäžèº«ãå®éã®äœ¿ãåæã ããŒã«ã»ã³ã®ãŠãŒã¶ããªãã£10åå ã«ç
§ããåãããŠç޹ä»ããŸãã â»æ¬èšäºã¯ Claude Code ã® Skill æ©èœ ãåæãšããŠããŸãããŸãã /d ã®åäœã«ã¯ git ã³ãã³ããš GitHub CLI ïŒ gh ã³ãã³ãïŒãã»ããã¢ããæžã¿ã§ããããšãå¿
èŠã§ãã ç®æ¬¡ ã¯ããã« èšèšã®3æ¬æ± /d ã¹ãã«ã®æ§é åãããŠã¿ãïŒ2ã€ã®å
žåã·ããªãª ã¹ãã«æ¹åã®çµç·¯ãšèãæ¹ ãããã« èšèšã®3æ¬æ± /d ã® d 㯠develop ãããšã£ãŠããŸãã ãã®ã¹ãã«ã®èšèšã«ã¯3ã€ã®è»žããããŸããå
±éããã®ã¯ã äœæ¥è
ãæèããŠéçºãããŒã«åãããã®ã§ã¯ãªããã¹ãã«ã䜿ã£ãŠããã ãã§èªç¶ã«ã«ãŒã«ãå®ãã ãšããçºæ³ã§ãã A. ãã€ãã³ãŒãã£ã³ã°ã®æãæ¢ããªã ã¢ã€ãã¢ãé«éã«å
·çŸåããäººã®æããè€éãªéçºããã»ã¹ã§é
ãããªãã ãè¡åã®ããã®ãã§ãã¯ãªã¹ããèŠçŽãå¢ããã»ã©ãå©çšè
ã¯ãèããåã«æé ãæãåºããã¢ãŒãã«å
¥ããŸããããã¯æãã€ããé«éã«åœ¢ã«ããUXãã¶ã€ãããããã¯ããªãŒããŒã«ã¯èŽåœçã§ãã /d ã¹ãã«ã¯ æèã®ãªãºã ãæ¢ããªã ããšãæåªå
ã«ããŸãã å
·äœçã«ã¯ãæé ãèŠããŠãããã®ã§ã¯ãªã ã¹ãã«åŽããã¹ãŠä»£è¡ãã èšèšã«ããŸãããããšãã°ãå©çšè
ã /d issue 42 ãšæã€ããšã§Issueã«çæãããšãã®å®åäœæ¥ãå®è¡ããäœæ¥ãã©ã³ãäœæã»pushã»æ¹éã³ã¡ã³ãæçš¿ãŸã§èªåã§èµ°ããŸãã B. 䜿ããªããGit/GitHubã®äœæ³ã«æ
£ãã 现ããäœæ³ãç¿ã£ãŠãã䜿ãã®ã§ã¯ãªãã䜿ããªããåŸã
ã«äœæ³ãäœåŸããã ãã©ã³ãã»ã³ãããã»PRã»rebaseâŠãšGitã®æŠå¿µãæåã«å
šéšèª¬æããããšãããã ãã§å©çšè
ã¯æ«æããŸããäžæ¹ã§ãæããªããŠããããšãããšãå©çšè
ã¯ãã£ãšäœæ³ãç¥ããªããŸãŸããšã³ãžãã¢ã®ææŽãå¿
èŠãªç¶æ
ãç¶ããŸãã /d ã¹ãã«ã¯ ãå¿
èŠæäœéã®ã³ãã³ãã䜿ãã ãã§ãçµæãšããŠãè¡åããäœæ¥ã§ããŠããã ç¶æ
ãäœãã€ã€ã è£ã§äœãèµ·ãã£ããã¯å¯èŠåãã èšèšã«ããŸããã /d issue å®è¡æã«ããã©ã³ããäœããŸããããPRãäœæããŸããããšãã°ãåºãã®ã§ãå©çšè
ã¯äœ¿ãç¶ãããã¡ã«ãããã¯ãã©ã³ããåã£ãŠããã®ããããããDraft PRãããšèªç¶ã«çè§£ããŠãããŸãããŸããissueãcommitãªã©éèŠãªçšèªã¯Git/GitHubã®ãšã³ã·ã¹ãã ã«åãããããšã§ããšã³ãžãã¢ãšåãèšèªã§éçºã«åå ã§ããããã«ããŠããŸãã C. èŠããªããã°ãªããªãç¥èãæžãã 䜿ãåŽãé ã®äžã«æ±ãããç¥èéããã§ããéãæžããã å©çšè
ã®è² æ
ã¯ ãæ¬¡ã«äœã®ã³ãã³ããæã€ãããã©ã®ã¹ãã«ãåŒã¶ãããæ¯åæãåºãããš ã«ãããŸãããããæžããããã«2ã€ã®ä»æããå
¥ããŸããã åå¥ã¹ãã«ã§ã¯ãªããµãã³ãã³ãæ¹åŒ â /d todo /d issue /d commit âŠãšãã£ãæäœã /d 1ã€ã®ã¹ãã«ã«çµ±åããããšã§ãå©çšè
ã¯æäœé /d ã ãèŠããã°ããã /d 42çªã®Issueã«çæ ã®ããã«èªç¶èšèªã§æå³ãäŒããã ãã§ãé©åãªãµãã³ãã³ããå®è¡ãããŸã 次ã®ã¢ã¯ã·ã§ã³ã¯éžæè¢ã§æç€º â ã¹ãã«å®è¡ã®çµããã«ã¯å¿
ãæ¬¡ã®åè£ãåºãããšã§ãå©çšè
ã¯ã次ã«äœãããã°ããã£ãã£ãããšèããã«æžã¿ãŸãïŒåŸè¿°ãããåçããåèªãïŒ çµæãšããŠãå©çšè
ãé ã«æ±ãããGitäœæ³ + ã³ãã³ãäœç³» + ããŒã éçšã«ãŒã«ãã®ç¥èã»ããã倧å¹
ã«å§çž®ãããŸãã èŠããã¹ã㯠/d ãšããå
¥å£ã ã ãšããç¶æ
ããåå ããŒãã«ãæå°åããŸãã /d ã¹ãã«ã®æ§é ã¹ãã«æ¬äœã¯ ~/.claude/skills/d/SKILL.md 1ãã¡ã€ã«ã§ããããã³ããã¿ãŒ + ãµãã³ãã³ãããšã®æé èšè¿°ã§æ§æãããŸããå
šæã¯ä»¥äžã«æããããã§èŒããŠãããŸãã SKILL.md å
šæïŒã¯ãªãã¯ã§å±éïŒ --- name: d description: GitHub Issueã»Pull Requestã»ãã©ã³ãæäœã»ã³ãããçã®äœæ³ãå®çŸ©ããéçºã¯ãŒã¯ãããŒã¹ãã« argument-hint: " < todo |new|issue|commit|pr|review|improve|help> [args...]" allowed-tools: Bash, Agent, Read --- GitHub ãèµ·ç¹ãšããéçºã¯ãŒã¯ãããŒããµãã³ãã³ããæå®ããŠå®è¡ãããåŒæ°ãªãã§ ` /d ` ãšå®è¡ãããå Žå㯠` /d help ` ãšããŠåäœããäžã§ã次ã®è¡åãææ¡ããã ãµãã³ãã³ããæå®ãããã«æãç¶ãå ŽåïŒäŸ: ` /d 42çªã®Issueã«çæã㊠` ïŒã¯ãããã¹ãå
容ããå©çšè
ã®æå³ãè§£éããé©åãªãµãã³ãã³ãã«ãããã³ã°ããŠå®è¡ãããå©çšè
ã¯å³å¯ãªãµãã³ãã³ãåãèŠããŠããªããŠãããã ## åºåã«ãŒã« ### yes/no 質å AIã«ããããããŠããã§ããïŒãããããŸããïŒãã®ãã㪠closed questionãèš±å¯ç¢ºèªã®æ«å°Ÿã«ã¯ ` (y/n) ` ãä»ãããŠãŒã¶ã®åçè² è·ã軜æžããããä»ã«ä¿®æ£ã¯ãããŸããïŒãã®ãããªå®è³ªçOpen Questionã«ã¯ä»ããªãã ### 衚ã»ç®æ¡æžããžã®èå¥åä»äž 衚ã»ç®æ¡æžãã»éžæè¢ãªã©ãè€æ°é
ç®ã䞊ã¶åºåã«ã¯å¿
ãé£çªãèšå·ã®èå¥åãæ¯ããIssueçªå·ãPRçªå·ãªã©æ¢åã®èå¥åãããå Žåã¯ããã䜿ããç¡ãå Žåã¯å·Šç«¯ã« ` No ` åã远å ãããããã«ãããåŸã®äŒè©±ã§ãŠãŒã¶ãçªå·ã§è¡ãæå®ã§ããããã«ããã ### 次ã®ã¢ã¯ã·ã§ã³ã®æç€º ãµãã³ãã³ãã®çµããã«ã¯ãå¯èœãªéãæ¬¡ã®ã¢ã¯ã·ã§ã³ã®åè£ãéžæè¢ãšããŠæç€ºãããå©çšè
ã«ã次ã«äœãããã°ãããããæãåºãããã®ã§ã¯ãªããæç€ºãããéžæè¢ããéžã°ããïŒåçããåèªïŒã ## äžæºã»æ¹åææ¡ã®æ¡å
å©çšè
ã ` /d ` ã¹ãã«ã®æåã«äžæºã衚æããå Žå: ` /d improve <å
容> ` ã§ã¹ãã«æ¹åIssueã起祚ããã ## å
±éã«ãŒã« ### 䞊åå®è¡ äŸåé¢ä¿ã®ãªãè€æ°ã®ã³ãã³ãã»APIåŒã³åºãã¯åžžã«äžŠåå®è¡ããã鿬¡å®è¡ããªããç¬ç«ããã³ãã³ããèŠã€ãããç©æ¥µçã«äžŠååããã ### ãã©ã³ãåãæ¿ãåã®ç¢ºèª ` git checkout ` ã®åã« ` git status --porcelain ` ã§æªã³ããã倿Žã確èªããã倿Žãããå Žåã¯éžæè¢ãæç€º: 1. **ã³ãããããŠç¶è¡** 2. **worktree ã§äžŠåäœæ¥** â ` git worktree add ../<ãªãå>-<æ°ãã©ã³ã> -b <æ°ãã©ã³ã> origin/main ` â å¥ã»ãã·ã§ã³ãæ¡å
3. **äžæ** ### main ææ°åãèŸŒã¿ äœæ¥ãã©ã³ãã§ ` /d issue ` ïŒæ¢åãã©ã³ã checkout æïŒãŸã㯠` /d commit ` ïŒpush åïŒã«å®è¡ãããoriginã®mainãã©ã³ãã«å¯Ÿããé
ãã確èªããé
ããããã° ` git merge origin/main ` ãææ¡ããã ### ãã©ã³ãåœåèŠå ` CLAUDE.md ` ã«åœåèŠåã®å®çŸ©ãããã°ããã«åŸãããªããã°ããã©ã«ããšã㊠` <prefix>/<issueçªå·>-<è±èªkebab-case 5èªä»¥å
> ` ã䜿çšãããprefix ã¯Issueã®ã©ãã«ã»å
容ãã倿: - ` feat/ ` â æ°æ©èœ - ` fix/ ` â ãã°ä¿®æ£ - ` nf/ ` â éæ©èœïŒã€ã³ãã©çïŒ - ` doc/ ` â ããã¥ã¡ã³ã - ` process/ ` â éçºããã»ã¹é¢é£ïŒCIãClaudeã¹ãã«çïŒ - ` misc/ ` â ãã®ä» Issue çªå·ããªãå Žå㯠` <prefix>/<è±èªkebab-case 5èªä»¥å
> ` ãšããã ### PR ããŒãžç¢ºèª PR ã Ready ãã€ææ°ã³ãããã«å¯Ÿããã¬ãã¥ãŒã§ããŒãžå¯èœãšå€å®ãããŠããå Žåã ` gh pr merge <PRçªå·> --merge --delete-branch ` ãææ¡ãããé©çšã¿ã€ãã³ã°: ` /d commit ` ã§ Ready PR äœæåŸã ` /d review ` ã§ Ready ååŸã ` /d pr ` ã§ Ready ååŸã ### ã¬ãã¥ãŒå®è¡ ã¬ãã¥ãŒã¯ **Claude ã®ã¬ãã¥ãŒçšãµããšãŒãžã§ã³ã** ã§å®è¡ãããå®è£
ããã³ã³ããã¹ããšã¯å¥ã®ãµããšãŒãžã§ã³ãã§å®è¡ããããšã§ã客芳çãªææãåŸãã ä»äººã® PR ãã¬ãã¥ãŒããå Žåã¯å
ã«å¯Ÿè±¡ãã©ã³ããååŸããã ãã§ãã¯ã¢ãŠãåã«å
ãã©ã³ãåãéé¿ããããŒãã£ãŒããªãŒã§ãªãããšã確èªãã: ```bash ORIG_BRANCH=$(git branch --show-current) git status --porcelain # åºåãããªãæªã³ããã倿Žãã ``` æªã³ããã倿Žãããå Žåã¯ããã©ã³ãåãæ¿ãåã®ç¢ºèªããé©çšãããã¯ãªãŒã³ãªç¶æ
ã確èªãããæ¢åããŒã«ã«ãã©ã³ããç Žå£ããªãæ¹æ³ã§ååŸãã: #### ã¬ãã¥ãŒæé 1. ` COMMIT_SHA=$(git rev-parse HEAD) ` ã§ SHA ãååŸã ` git fetch origin main ` åŸã ` git diff origin/main...HEAD ` + ` git log origin/main..HEAD --oneline ` ãååŸã ` OWNER_REPO=$(gh repo view --json nameWithOwner --jq .nameWithOwner) ` ã§ owner/repo ãååŸ 2. Agent ããŒã«ã§ã¬ãã¥ãŒçšãµããšãŒãžã§ã³ããèµ·åããïŒ ` run_in_background: true ` ïŒããããžã§ã¯ãã®èšèšåºæºãã¬ãã¥ãŒã¬ã€ãã©ã€ã³ïŒ ` CLAUDE.md ` ãã¬ãã¥ãŒçšãšãŒãžã§ã³ãå®çŸ©ã ` docs/ ` é
äžã®ã¬ã€ãã©ã€ã³çãããã°åç
§ïŒã«åŸã£ãŠã¬ãã¥ãŒããããããã³ããã« ` diff ` , ` commits ` , ` commit_sha ` , ` owner_repo ` , ` pr_number ` , ` pr_author ` , ` is_own_pr ` , ` is_draft ` , ` post_to_pr=false ` , ` defer_ready=true ` ãæž¡ã 3. å®äºãåŸ
ã¡ãçµæãäŒè©±ã«è¡šç€ºïŒææäžèЧ + ç·åå€å®ïŒ 4. èªåã® PR ã®å Žåã¯åææã®åŠ¥åœæ§ãè©äŸ¡ãã 5. ` post_to_pr=true ` ã®å Žåã¯æ¬¡ã®ãPR ãžã®æçš¿ããå®è¡ #### PR ãžã®æçš¿ ( ` post_to_pr=true ` ) skill åŽã§æçš¿ããïŒã¬ãã¥ãŒçšãµããšãŒãžã§ã³ãã¯äºéæçš¿åé¿ã®ãã ` post_to_pr=false ` ïŒ: - **ç·è©ã³ã¡ã³ã**: ` gh pr review <PRçªå·> --comment --body "<æ¬æ>" ` ïŒèªåã® PRïŒ/ ` --approve ` / ` --request-changes ` ïŒä»äººã® PRïŒ - **ã€ã³ã©ã€ã³ã³ã¡ã³ã**: ` gh api repos/{owner}/{repo}/pulls/<PRçªå·>/comments ` ã䜿çšãåã³ã¡ã³ãã« ` commit_id ` (= ` COMMIT_SHA ` ), ` path ` , ` line ` , ` side ` ãå¿
é æçš¿åŸãèªåã® Draft PR ã§ããŒãžå¯èœïŒé«ææãªãïŒãªã Ready å: 1. PR ã¿ã€ãã«ãã ` WIP: ` åé€ 2. æ¬æã ` Summary / Related Issue / Test plan ` ãã³ãã¬ãŒãã«æŽæ°ïŒ ` Closes ` / ` Refs ` ã¯ãRelated Issue ãšã¯ããŒãºå€å®ãã«åŸãïŒ 3. ` gh pr ready <çªå·> ` ### 倿Žç¢ºèª ` git status --porcelain ` ã ` git diff ` ã ` git diff --cached ` ã3ã€äžŠåå®è¡ããã倿Žããªããã°ãšã©ãŒã ### ã¹ããŒãžã³ã°å€æ 以äžã®æžå¿µããªãã確èªãã: - ` .env ` ãã¯ã¬ãã³ã·ã£ã«ç³»ïŒ ` credentials.json ` ã ` cred-* ` ã ` *.pem ` ã ` *.key ` çïŒ - ` .gitignore ` ãã¹ããã¡ã€ã«ïŒ ` node_modules/ ` ã ` dist/ ` ã ` __pycache__/ ` ã ` .venv/ ` çïŒ - ãã©ã³ãåããæšæž¬ãããäœæ¥å
容ãšç¡é¢ä¿ãªãã¡ã€ã« æžå¿µããªããã°å
šãã¡ã€ã«ãèªåã¹ããŒãžã³ã°ïŒç¢ºèªäžèŠïŒãæžå¿µãããã°æç€ºããŠãŠãŒã¶ãŒã«ç¢ºèªããã ### ã³ãããã¡ãã»ãŒãžçæ 倿Žå
容ããæ¥æ¬èªã§ç°¡æœã«èªåçæããïŒç¢ºèªäžèŠïŒããã©ã³ãåã« Issue çªå·ãããã° ` #<çªå·> ` ãå«ããã ## ãµãã³ãã³ã ### ` /d todo ` èªåã察å¿ãã¹ããã®ã衚瀺ããã çŸåšäœæ¥äžã®ã¿ã¹ã¯ããããã©ãããšãGitHubäžã§ã¢ãµã€ã³ãããIssueãã¡ã³ã·ã§ã³ãã¬ãã¥ãŒäŸé Œã確èªããã 1. **2ã€ã䞊åå®è¡**: - (A) gitã³ãã³ãã§çŸåšã®äœæ¥ç¶æ³ãç¢ºèª ` git fetch origin && git branch --show-current && git status --porcelain ` - (B) ghã³ãã³ãã§GitHubã確èªãGraphQL ã§äžæ¬ååŸ: ```bash OWNER_REPO=$(gh repo view --json nameWithOwner --jq .nameWithOwner) gh api graphql -f query="{ assignedIssues: search(query: \"repo:${OWNER_REPO} assignee:@me is:open is:issue\", type: ISSUE, first: 20) { nodes { ... on Issue { number title labels(first: 5) { nodes { name } } updatedAt } } } reviewRequested: search(query: \"repo:${OWNER_REPO} review-requested:@me is:open is:pr\", type: ISSUE, first: 20) { nodes { ... on PullRequest { number title author { login } updatedAt } } } mentions: search(query: \"repo:${OWNER_REPO} mentions:@me is:open\", type: ISSUE, first: 20) { nodes { ... on Issue { number title updatedAt } } } myOpenPRs: search(query: \"repo:${OWNER_REPO} is:open is:pr author:@me\", type: ISSUE, first: 20) { nodes { ... on PullRequest { number headRefName isDraft } } } }" ``` 2. **fetch å®äºåŸã®ç¢ºèª**: - çŸåšã®ãã©ã³ãã main ãªã ` git rev-list HEAD..origin/main --count ` ã§åæç¶æ
ã確èªãäœæ¥ãã©ã³ããªã ` gh pr view --json number,title,state,mergedAt,url ` ã§ PR ç¶æ
ãç¢ºèª - ã¢ãµã€ã³æžã¿ Issue ã«ã€ã㊠` git branch -r ` ã1åå®è¡ããå Issue çªå·ã«å¯Ÿã㊠` origin/*/<issueçªå·>-* ` ã®ãã¿ãŒã³ã§ãã©ã³ããæ¢ã â ` myOpenPRs ` ãã PR æç¡ãå€å® â æªçæ / ãã©ã³ããã / PR #çªå· (Draft|Ready) 3. **åºåãã©ãŒããã**: ``` ## çŸåšã®ãã©ã³ã - â ïž/â/ð§ ã®ç¶æ
衚瀺 ## ã¢ãµã€ã³æžã¿ Issue | # | ã¿ã€ãã« | ç¶æ
| ã©ãã« | æŽæ°æ¥ | ## ã¬ãã¥ãŒäŸé Œ | # | ã¿ã€ãã« | äœæè
| æŽæ°æ¥ | ## ã¡ã³ã·ã§ã³ | # | ã¿ã€ãã« | æŽæ°æ¥ | ``` 4. **次ã®ã¢ã¯ã·ã§ã³ææ¡**: åªå
床ã®é«ãé ã«æ¬¡ã«ããã¹ãäœæ¥ãææ¡ããããmain ã«æ»ããŸããããã¯ææ¡ããªãïŒäœæ¥ãã©ã³ãã§ ` /d issue ` ãå®è¡ããã°èªåçã« origin/main ããŒã¹ã®ãã©ã³ããäœæãããããïŒ ### ` /d new <ã¿ã€ãã«> ` æ°ãã Issue ã起祚ããïŒèªåãåãçµããšã¯éããªãïŒã 1. åŒæ°ãèŠçŽããŠã¿ã€ãã«ã«ããïŒãªããã°ãŠãŒã¶ãŒã«èãïŒ 2. ` gh issue list --state open --json number,title ` ã§æ¢åã®é¡äŒŒ Issue ããã§ã㯠3. 説ææã®æ¡ãçæããŠãŠãŒã¶ãŒã«æç€ºïŒçµç·¯ã»çŸç¶ã»æåŸ
广ãå«ããïŒ 4. ` gh label list --json name,description ` ã§é©åãªã©ãã«ãå€å® 5. ` gh issue create --title "..." --body "..." --label "..." ` ã§äœæ 6. URL ã衚瀺 7. **次ã®ã¢ã¯ã·ã§ã³ãå¿
ãéžæè¢ãšããŠæç€º**ïŒçç¥äžå¯ïŒ: 1. èªåãã¢ãµã€ã³ããŠä»ããåãçµã â ` /d issue ` ã®åŠçãç¶è¡ 2. èªåãã¢ãµã€ã³ããŠäœæ¥ã«æ»ã â ` gh issue edit <çªå·> --add-assignee "@me" ` ã®ã¿ 3. ä»ã®äººãã¢ãµã€ã³ããïŒå¯Ÿè±¡è
ãæå®ïŒ 4. ã¢ãµã€ã³ããçµäº ### ` /d issue <çªå·ãŸãã¯URL> ` ïŒãšã€ãªã¢ã¹: ` /d i ` ïŒ æ¢å Issue ã«èªåãåãçµãããã©ã³ãäœæã»ããã·ã¥ã§çæã宣èšããŠããæ¹éã³ã¡ã³ããæçš¿ããã 1. Issue çªå·ãç¹å®ããå
容ååŸ + èªåãã¢ãµã€ã³: ```bash gh issue view <çªå·> --json title,body,labels,assignees gh issue edit <çªå·> --add-assignee "@me" ``` 2. ` git fetch origin && git branch -a --list "*/<issueçªå·>-*" ` ã§æ¢åãã©ã³ãã確èª: - **ãã**: ä»äººã®ã³ããããããã°ãŠãŒã¶ãŒã«ç¢ºèªããªããã°ãã§ãã¯ã¢ãŠã + ãmain ææ°åã蟌ã¿ããå®è¡ - **ãªã**: Issue ãããã©ã³ãåãçæïŒããã©ã³ãåœåèŠåãåç
§ïŒã**確èªäžèŠã§** äœæã»push ãã: ```bash git checkout -b "<prefix>/<çªå·>-<説æ>" origin/main git push -u origin HEAD ``` 3. æ¹éã»å®è£
èšç»ããŠãŒã¶ãŒã«æç€º â æ¿èªåŸ ` gh issue comment ` ã§æçš¿ïŒæçš¿ã®ç¢ºèªäžèŠïŒ **ããããã€ã³ã**: ãã©ã³ãã push ããŠIssueã³ã¡ã³ããæ®ãããšã§ãä»ã¡ã³ããŒã«ãèªåã #<çªå·> ã«çæäžããèŠããããã«ãªããéè€çæãæªç¶ã«é²ãã ### ` /d commit ` 倿Žãã³ãããã»ããã·ã¥ããPR ãæªäœæãªã Draft PR ãäœæããã **ãã©ã³ãå€å®:** - **`main` ã®å Žå**: 倿Žå
容ãã prefix ã倿ãããã©ã³ãåãçæ â ` git checkout -b "<prefix>/<説æ>" ` â æ¬¡ã®æé ãž - **äœæ¥ãã©ã³ãã®å Žå**: ãã®ãŸãŸæ¬¡ã®æé ãž **æé :** 1. 倿Žç¢ºèªïŒå
±éã«ãŒã«ïŒ 2. ã¹ããŒãžã³ã°å€æïŒå
±éã«ãŒã«ïŒ 3. ãã©ã³ãåãã Issue çªå·ãæœåºïŒ ` feat/123-xxx ` ã® ` / ` ã®åŸã®æ°åïŒ 4. ã³ãããã¡ãã»ãŒãžçæ â ` git add && git commit ` 5. main ææ°åã蟌ã¿ïŒå
±éã«ãŒã«ïŒ 6. ` git push -u origin HEAD ` 7. ` gh pr list --head <ãã©ã³ã> --json number,title,isDraft,url,author ` ã§ PR ç¢ºèª 8. **ã¬ãã¥ãŒå®è¡**ïŒ ` is_own_pr=true ` , ` post_to_pr=true ` ïŒ: - **PR ããªãå Žå**: ` /d pr ` ã«åŸã£ãŠDraft PR äœæ â ã¬ãã¥ãŒå®è¡ â ååã¬ãã¥ãŒã¯ç²ŸåºŠåªå
- **PR ãæ¢åã®å Žå**: 远å ã³ãããã®å·®åãã¬ãã¥ãŒ 9. PR ããŒãžç¢ºèªïŒå
±éã«ãŒã«ïŒ 10. çµæè¡šç€º: ã³ãããããã·ã¥ã»ã¡ãã»ãŒãžãããã·ã¥å
ãPR URLãã¬ãã¥ãŒçµæ ### ` /d pr ` Pull RequestãäœæããŸãã¯ãäœææžã®PRã«å¯ŸããŠå¿
èŠãªã¢ã¯ã·ã§ã³ãããã 1. ãã©ã³ãã ` main ` ãªããšã©ãŒ 2. ` gh pr view --json number,title,isDraft,url ` ã§æ¢å PR ç¢ºèª 3. **PR ãã**: PR ã³ã¡ã³ãç¢ºèª â æªå¯Ÿå¿ããã°å¯Ÿå¿ 4. ` git fetch origin main ` â ` git log origin/main..HEAD --oneline ` + ` git diff origin/main...HEAD --stat ` ã§å·®åååŸ 5. PR ã¿ã€ãã«ïŒ70æå以å
ïŒã𿬿ãçæïŒ ` æŠèŠ / é¢é£Issue / ãã£ãããš / ãã£ãŠããªãããš ` ã ` é¢é£Issue ` ã¯å
±éã«ãŒã«ã«åŸã ` Closes ` / ` Refs ` ïŒ 6. ` git push -u origin HEAD ` â PR ãªããªã Draft äœæãããã°ã¿ã€ãã«ã»æ¬æãæŽæ° 7. ã¬ãã¥ãŒå®è¡ïŒ ` is_own_pr=true ` , ` post_to_pr=true ` , ` effort=high ` ïŒâ çµæè¡šç€º 8. URL 衚瀺 9. PR ããŒãžç¢ºèªïŒå
±éã«ãŒã«ïŒ ### ` /d review ` äœæ¥ãã©ã³ãã®å€æŽãã¬ãã¥ãŒãPR ãããã°ã¬ãã¥ãŒãšããŠæçš¿å¯èœã 1. ãã©ã³ãã ` main ` ãªããšã©ãŒ 2. ` gh pr view --json number,title,url,isDraft,author ` ã§ PR 確èªã ` gh api user --jq .login ` ãš ` author.login ` ãæ¯èŒã㊠` is_own_pr ` ãæ±ºå® 3. ã¬ãã¥ãŒå®è¡ïŒ ` is_own_pr=<å€å®> ` , ` is_draft=<ååŸå€ããªããã°true> ` , ` post_to_pr=false ` , ` effort=high ` ïŒâ çµæè¡šç€º 4. **PR ãã**: æçš¿ãããç¢ºèª â æçš¿ããå Žåã¯ãPR ãžã®æçš¿ããå®è¡ïŒ ` post_to_pr=true ` ïŒãDraft ãã€ããŒãžå¯èœãªã Ready åãèµ°ã 5. PR ããŒãžç¢ºèªïŒå
±éã«ãŒã«ïŒ ### ` /d improve <æ¹åå
容> ` ` /d ` ã¹ãã«èªäœã®æ¹åææ¡ã Issue 起祚ããã 1. åŒæ°ãããã°ãããæ¹åå
容ã«ãããåŒæ°ããªãå Žåã¯çŽåã®äŒè©±ã®æèïŒäžæºãéåæã®è¡šæãããŸããããªãã£ãæäœãªã©ïŒããæšæž¬ãã 2. æ¹åå
容ãããšã«ç°¡æœãª Issue ã¿ã€ãã«ïŒæ¥æ¬èªïŒãçæ 3. Issue ãäœæ: ```bash gh issue create --title "<ã¿ã€ãã«>" --body "$(cat <<'EOF' ## æ¹åå
容 <ã¹ãã«æ¹åå
容> ## ä»£æ¿æ¡ <claudeã®èšå®ãªã©ãã¹ãã«èªäœã®æ¹å以å€ã§å®çŸå¯èœãªä»£æ¿æ¡> EOF )" ``` 4. äœæãã Issue ã® URL ã衚瀺 ### ` /d help ` 以äžããã®ãŸãŸåºåãã: ``` ## éçºããã»ã¹ ### (1) ã¢ãµã€ã³ãããã¿ã¹ã¯ã«åãçµã 1. `/d` ã§èªåã®ã¿ã¹ã¯ã確èªãã 2. `/d issue <çªå·>` ã§ Issue ã«çæããïŒã¢ãµã€ã³âãã©ã³ãäœæâæ¹éã³ã¡ã³ãïŒ 3. å®è£
ãã 4. `/d commit` ã§ã³ãããã»ããã·ã¥ã»PRäœæ 5. `/d review` ã§ã¬ãã¥ãŒã»Readyå ### (2) æ°ãã課é¡ã起祚ãã `/d new <ã¿ã€ãã«>` ã§ Issue ãäœæãããèªåã§åãçµããã©ããã¯ãã®å Žã§éžæã§ããã ### (3) Issue ãç«ãŠãã«å®è£
ãã 1. å®è£
ããïŒmain ãã©ã³ãäžã§ã `/d commit` ãèªåã§ãã©ã³ããäœæããïŒ 2. `/d commit` ã§ã³ãããã»ããã·ã¥ã»PRäœæ 3. `/d review` ã§ã¬ãã¥ãŒã»Readyå ### (4) ãã®ã¹ãã«ã®æ¹åãªã¯ãšã¹ã `/d improve <äžæºç¹ãæ¹åæ¡>` ã§æ¹åææ¡ã Issue 起祚ããã ## ã³ãã³ãäžèЧ | ã³ãã³ã | 説æ | |---|---| | `/d` | `/d help` ãšåãïŒãµãã³ãã³ãçç¥æïŒ | | `/d todo` | èªåã®ã¢ãµã€ã³ã¿ã¹ã¯ã»ã¡ã³ã·ã§ã³ã»ã¬ãã¥ãŒäŸé ŒãäžèЧ | | `/d new <ã¿ã€ãã«>` | æ°èŠ GitHub Issue ã起祚 | | `/d issue <çªå·>` (`/d i`) | æ¢å Issue ã«çæïŒã¢ãµã€ã³âãã©ã³ãäœæâæ¹éã³ã¡ã³ãïŒ | | `/d commit` | ã³ãããâpushâDraft PRäœæâAIã¬ãã¥ãŒ | | `/d pr` | PR äœæã»æŽæ° | | `/d review` | äœæ¥å
容ã®ã¬ãã¥ãŒ | | `/d improve <å
容>` (`/d imp`) | ã¹ãã«èªèº«ã®æ¹åææ¡ã Issue 起祚 | | `/d help` | ãã®ãã«ãã衚瀺 | ## ãã³ã - å³å¯ãªãµãã³ãã³ãåãèŠããŠããªããŠãã`/d 42çªã®Issueã«çæããŠ` ã®ããã«èªç¶èšèªã§æç€ºããã°é©åãªãµãã³ãã³ããå®è¡ããã - å°ã£ãã `/d` ã ãæã£ãŠã衚瀺ãããéžæè¢ããéžã¹ã°ãã ``` ãµãã³ãã³ãäžèЧ ãµãã³ãã³ã åœ¹å² /d ïŒåŒæ°ãªãïŒ /d help ãšåã /d todo èªåã®ã¢ãµã€ã³ã¿ã¹ã¯ã»ã¡ã³ã·ã§ã³ã»ã¬ãã¥ãŒäŸé ŒãäžèЧ /d new <ã¿ã€ãã«> æ°èŠIssueã起祚 /d issue <çªå·> æ¢åIssueã«çæïŒã¢ãµã€ã³âãã©ã³ãäœæâpushâæ¹éã³ã¡ã³ãïŒ /d commit ã³ãããâpushâDraft PRäœæâAIã¬ãã¥ãŒ /d pr PRã®äœæã»æŽæ° /d review äœæ¥å
容ã®ã¬ãã¥ãŒ /d improve <å
容> ã¹ãã«èªèº«ã®æ¹åææ¡ãIssue起祚 /d help å
šã³ãã³ãäžèЧãšå
žåãããŒã衚瀺 åå¥ã¹ãã«ã§ã¯ãªããµãã³ãã³ãæ¹åŒã«ããããšã§ãå©çšè
㯠ãå°ã£ãã /d ã«ç¶ããŠããããããšãäŒãããã ã ã§ãã¹ãã«ã§èŠå®ããã«ãŒã«ã«åããŸãã 䞻圹㯠/d todo / /d issue / /d commit / /d review ã®4〠䞻圹ãµãã³ãã³ãã¯ã äœæ¥è
ãããšããšæèããŠããäœæ¥ã¢ã¯ã·ã§ã³ ã«å¯Ÿå¿ããŸãã èªåã®ã¿ã¹ã¯ã確èªãã çæãã ææç©ãæåºãã ã¬ãã¥ãŒãã ãããã Git/GitHubãšã¯ç¡é¢ä¿ã«äœæ¥éçšã«ååšããã¢ã¯ã·ã§ã³ ã§ããããããäž»åœ¹ã«æ®ãããã©ã³ãäœæã»PRäœæã»mainãã©ã³ãåã蟌ã¿ãšãã£ãGit/GitHubèµ·å ã®æäœã¯å
åŽã«é ããŠAIãèªååããŸãã ããã« /d todo ã¯Issueã®ã¢ãµã€ã³æ
å ±ã«åºã¥ããŠçæãã¹ãIssueãææ¡ãã /d commit ã¯ã³ãããããPRäœæãAIã¬ãã¥ãŒãŸã§ãŸãšããŠå®è¡ããããã å
žåãããŒã§å©çšè
ãå®éã«æã€ã®ã¯ /d todo â /d commit ã®2ã€ã§æžãããšãå€ã ã§ãã åãããŠã¿ãïŒ2ã€ã®å
žåã·ããªãª å
¥å£ã¯2éããããŸããã ã©ã¡ããæåŸã¯ /d commit ã«åæµããPRããŒã¹ã®éçºãããŒãé²ã ã®ããã€ã³ãã§ãã ã·ããªãªAïŒIssueé§åã§éçºãé²ããå Žå UXãã¶ã€ãã®äœè€ããã«ããã°ã€ã³ç»é¢ã®å
¥åæ¬ã®äœçœã調æŽããŠã»ããããšãã Issue #58 ãã¢ãµã€ã³ãããã Step 1: /d todo ã§ç¢ºèªãããã®ãŸãŸçæãã > /d todo ã¹ãã«ã¯ãçŸåšã®ãã©ã³ãã»ã¢ãµã€ã³æžã¿Issueã»ã¬ãã¥ãŒäŸé Œã»ã¡ã³ã·ã§ã³ãã䞊åååŸããŠæŽåœ¢è¡šç€ºãã æåŸã«ã次ã«äœããã¹ããããŸã§ææ¡ããŸã ã ## çŸåšã®ãã©ã³ã - â mainïŒã¯ãªãŒã³ïŒ ## ã¢ãµã€ã³æžã¿ Issue | # | ã¿ã€ãã« | ç¶æ
| ã©ãã« | |----|---------------------------------------|--------|--------| | 58 | ãã°ã€ã³ç»é¢ã®å
¥åæ¬ã®äœçœã調æŽããã | æªçæ | feat | ïŒã¬ãã¥ãŒäŸé Œã»ã¡ã³ã·ã§ã³ã¯ãããŸããïŒ --- æªçæã® Issue ã1ä»¶ãããŸããåªå
床ã®é«ã #58 ããçæããŸããïŒ ïŒã¢ãµã€ã³ â ãã©ã³ãäœæ â push â æ¹éã³ã¡ã³ã ãŸã§å®è¡ããŸãïŒ (y/n) /d todo ã¯äžèЧã䞊ã¹ãŠçµããã§ã¯ãªãã ãæªçæã® #58 ããçæããŸããïŒããšæ¬¡ã®äžæãŸã§ææ¡ ããŸããå©çšè
ã¯è¡šãçºããŠã次ã«äœããããããšèããå¿
èŠããããŸãããããã§ y ãšçããã°ãçæåŠçããã®ãŸãŸèµ°ããŸãã # ãã¯ãããšçããåŸã«ã¹ãã«ãå®è¡ããå
éšåŠç gh issue edit 58 --add-assignee "@me" git checkout -b "feat/58-login-margin" origin/main git push -u origin HEAD gh issue comment 58 --body "<å®è£
æ¹é>" ãã©ã³ããpushãããç¬éãGitHubã®ä»ã¡ã³ããŒã«ã¯ãäœè€ããã #58 çæäžããèŠããŸãã ããã ãã§éè€çæã倧ããæžãããŸãã çæã®å
¥å£ã¯2éããã©ã¡ãã§ããã â Issueçªå·ãæåããããã£ãŠãããªãã /d todo ãçµç±ãã /d issue 58 ãçŽæ¥æã£ãŠãåãçæåŠçã«å
¥ããŸããã /d todo ã®ææ¡ã«ä¹ãããã /d issue ãçŽæ¥æã€ããã¯ãå©çšè
ã奜ããªæ¹ãéžã¹ãŸãã Step 2: å®è£
â /d commit äœè€ããã¯Claude Codeã«å®è£
ãä»»ããå®äºããã /d commit ãå®è¡ã ã³ããã â push â Draft PR â AIã¬ãã¥ãŒ â Readyå â ããŒãž â Issueã¯ããŒãº ãŸã§ãäžæ°ã«æµããŸãã çµå±ãå©çšè
ãæã€ã®ã¯ /d todo ïŒææ¡ã«ä¹ã£ãŠçæïŒâ /d commit ã®å®è³ª2ã³ãã³ãã ãããã©ã³ãåãã³ãããã¡ãã»ãŒãžãPRæ¬æãæžãå Žé¢ã¯ãããŸããã è£è¶³ïŒIssueããŸã ç¡ããšã㯠/d new ã§èµ·ç¥šãã ã·ããªãªAã¯ã¢ãµã€ã³æžã¿ã® Issue #58 ããå§ããŸããããããããåãçµã¿ããããšããŸã Issueã«ãªã£ãŠããªãããšããããŸãããã®å Žå㯠/d new ã«æŠèŠãæž¡ãã ãã§èµ·ç¥šã§ããŸãã > /d new ãã°ã€ã³ç»é¢ã®å
¥åæ¬ã®äœçœã調æŽããã ã¹ãã«ã¯æ¢åã®é¡äŒŒIssueã確èªããããã§ãã¿ã€ãã«ã»èª¬ææã»ã©ãã«ã®æ¡ãçæããŠèµ·ç¥šããäœæåŸã« ã誰ãåãçµããããéžæè¢ã§æç€º ããŸãã Issue #59 ãäœæããŸããïŒ https://github.com/<owner>/<repo>/issues/59 ç¶ããŠã©ãããŸããïŒ 1. èªåãã¢ãµã€ã³ããŠä»ããåãçµãïŒãã®ãŸãŸçæåŠçãžïŒ 2. èªåãã¢ãµã€ã³ããŠåŸã§åãçµã 3. ä»ã®äººãã¢ãµã€ã³ãã 4. ã¢ãµã€ã³ããçµäº 1 ãéžã¹ã°ããã®ãŸãŸ /d issue çžåœã®çæåŠçïŒã¢ãµã€ã³ â ãã©ã³ãäœæ â push â æ¹éã³ã¡ã³ãïŒã«æµããŸãã ã起祚 â çæããã³ãã³ããæã¡æ¿ããã«äžæ¬ã§ã€ãªãã ã®ããã€ã³ãã§ãã起祚ã ãããŠä»ã®äººã«ä»»ãããïŒ 3 ïŒãããšã§èªåã§ããïŒ 2 ïŒãšãã£ãåå²ãããã®å Žã§éžã¶ã ãã§æžã¿ãŸãã ãŸã /d new ã¯ãæ©èœè¿œå ã®ãããªãã¡ããšããIssueã ãã§ãªãã ããã®ããã¥ã¡ã³ããçŽããŠã»ããããClaudeã®ã¹ãã«ãä¿®æ£ããŠããšãã£ãã¡ãã£ãšããäœæ¥äŸé Œ ã«ãæ°è»œã«äœ¿ããŸããå£é ããã£ããã§æµããã¡ãªçްããäŸé ŒãIssueãšããŠæ®ããäŸé Œã®ããŒãã«ãäžãããŸããããã« åããåŽã /d issue ã§çæãããšãã«ã¯ãAIãIssueæ¬æïŒèæ¯ã»çµç·¯ã»æåŸ
ããçµæïŒãæèãšããŠèªã¿åããŸã ããã£ããã®æççãªããåããšéããèŠä»¶ããŸãšãŸã£ãŠããã¶ããAIã¯æå³ãæ±²ãã å®è£
ãæ¹éã³ã¡ã³ããè¿ãããããªããŸããããã¯åé ã§è§Šãã ãAIãæèãçè§£ããããããã«Git/GitHubãžéçŽããã æµãã«ãæ°è»œãªèµ·ç¥šããã®ãŸãŸä¹ã圢ã§ãã ã·ããªãªBïŒIssueãç«ãŠããæãã€ããæ¹åæ¡ããããªãäœãå§ããå Žå UXãã¶ã€ãã®äœè€ããã¯ããµãšæãã€ããUIã®æ¹åæ¡ããã®å Žã§Claude Codeã«äœãããŠã¿ããIssueãç«ãŠãããã©ã³ãã main ã®ãŸãŸããŒã«ã«ã«ä¿®æ£æ¡ãã§ãããã£ãŠãããä»äžãããè¯ãã£ãã®ã§ããã®ãŸãŸ /d commit ãå®è¡ããã > /d commit ãã®ãšããã¹ãã«ã¯å€æŽå
容ã確èªãã 倿Žå
容ããé©åãªãã©ã³ãåïŒ fix/update-signup-form-warning-message ãªã©ïŒã倿 èªåã§ãã©ã³ããåã£ãŠãã ã³ããã ãã®ãã©ã³ããpushããDraft PRãäœæ ç¶ã㊠AIã¬ãã¥ãŒãèµ°ã ã倿Žå
容ã«åé¡ããªããã°Readyå ã·ããªãªAãšåããã /d commit ã®å
ã¯Draft PRäœæããAIã¬ãã¥ãŒã»ReadyåãŸã§äžæ°ã«æµããŸããäœè€ããã¯ããã©ã³ããåãå¿ããããIssueãç«ãŠå¿ããããšæ
ãŠãå¿
èŠããªããæãã€ããæ¹åæ¡ã圢ã«ããããšã ãã«éäžã§ããŸãã ãã¢ã€ãã¢ãæ¢ããã«äœããåŸããæ£ããåœ¢ã«æŽããã ââ ãã€ãã³ãŒãã£ã³ã°ã®ãªãºã ãä¿ã£ããŸãŸãçµæçã«ãè¡åã®è¯ã圢ã«çå°ããŸãã ã¹ãã«æ¹åã®çµç·¯ãšèãæ¹ /d ã¯æåããä»ã®å§¿ã ã£ãããã§ã¯ãããŸãããåæã¯ãã£ãšçްããããã©ã³ããäœãããPull Requestãäœãããšãã£ã Gitã®æäœã«ã1ã€ãã€ã³ãã³ããçŽã¥ããŠãããåã
ã®æäœãAIã§è£å®ããŠããã ãã§ããããšã³ãžãã¢ã«ãšã£ãŠã¯éåæããªããšãããšã³ãžãã¢ä»¥å€ã®å©çšè
ããèŠããš ã©ã®ã³ãã³ããæã€ãéžã¶æç¹ã§Gitã®ç¥èãå¿
èŠ ã§ãéçºãããŒã®äœæ³ãèŠããè² æ
ãæ®ã£ãŠããŸããã ããã§ ãããŒã«ã§ã¯ãªãç®çäžå¿ã§ã¹ãã«ã®ããæ¹ãæ±ºããã ããšã匷ãæèãã䜿ããããã远æ±ããŠæ¹åãéããŸãããå€æè»žãšããŠåç
§ããã®ããUXèšèšã®å€å
žã§ãã ã€ã³ãã»ããŒã«ã»ã³ã®ãŠãŒã¶ããªãã£10åå ã§ããã¹ãã«éçºã¯ãèªåã䟿å©ãªæ©èœãè¶³ããæ¹åã«æµããã¡ã§ããã10ååã«ç
§ããããšã§ãããã¯å©çšè
ç®ç·ã®ä»æ§ã«ãªã£ãŠãããïŒããåãçŽããŸããã 10ååã¯ä»¥äžã®ãšããã§ãïŒåèš³ã¯æ¬èšäºã§ã®è¡šèšïŒã Visibility of system status / ç¶æ
ã®å¯èŠæ§ Match between the system and the real world / çŸå®äžçãšã®èª¿å User control and freedom / ãŠãŒã¶ãŒã³ã³ãããŒã«ãšèªç± Consistency and standards / äžè²«æ§ãšæšæº Error prevention / ãšã©ãŒäºé² Recognition rather than recall / åçããåèª Flexibility and efficiency of use / æè»æ§ãšå¹çæ§ Aesthetic and minimalist design / æå°éãã¶ã€ã³ Help users recognize, diagnose, and recover from errors / ãšã©ãŒå埩 Help and documentation / ãã«ããšããã¥ã¡ã³ããŒã·ã§ã³ ãã®ç« ã§ã¯ãç¹ã«å€§ããå¹ãã 4ã€ã®æ¹å ãã察å¿ããååãšãšãã«ç޹ä»ããŸãã æ¹å1ïŒã³ãã³ãããGitæäœããããäœæ¥ã¢ã¯ã·ã§ã³ããžïŒåå2 çŸå®äžçãšã®èª¿åïŒ æå€§ã®æ¹åããã³ãã³ãäœç³»ãã®ãã®ã®çµã¿æ¿ãã§ãã Before â ãã©ã³ãäœæã»ã³ãããã»PRäœæâŠãšãGit/GitHubã®æäœãå©çšè
ã1ã€ãã€åŒã³åºãäœç³» After â /d todo ïŒèŠãïŒã» /d issue ïŒçæïŒã» /d commit ïŒæåºïŒã» /d review ïŒã¬ãã¥ãŒïŒã®4ã€ããã©ã³ãäœæãPRäœæã¯ãã®å
åŽã«é ãã åå2ãçŸå®äžçãšã®èª¿åãã¯ã å©çšè
ãçŸå®äžçãã顿šããã€ã¡ãŒãžã«ã·ã¹ãã ãåããã ãšããååã§ããã¿ã¹ã¯ãèŠãã»çæããã»ææç©ãæåºããã»ã¬ãã¥ãŒãã ââ ããããGit/GitHubã«é¢ä¿ãªãéçºã®äœæ¥éçšã«ååšããã¢ã¯ã·ã§ã³ã§ãããå©çšè
ã説æãããªããŠãããè¡åã§ããããã«æããããšã§ãéçºããŒã«ã®äœ¿ãæ¹ãåŠã¶ããšããå£ãè§£æ¶ãããŸããã æ¹å2ïŒã誰ãäœããã£ãŠãããããèªç¶ã«èŠããïŒåå1 ç¶æ
ã®å¯èŠæ§ïŒ åå1ãç¶æ
ã®å¯èŠæ§ãã¯ã ã·ã¹ãã ã®ç¶æ
ãå©çšè
ã«åžžã«èŠããããã«ãã ãšããååã§ãã /d ã§ã¯ãããå人ã®ç»é¢ã«ãšã©ããã ããŒã ã«å¯Ÿããäœæ¥ç¶æ³ã®å¯èŠå ã«åºããŸãããæ¹å1ã§ãçæãã®å
åŽã«æããäžé£ã®æäœãããã®ãŸãŸ çæå®£èšãããã³ã« ãšããŠæ©èœããŸãã /d issue 58 ãå®è¡ããæç¹ã§ã ã¢ãµã€ã³ + äœæ¥ãã©ã³ãã®ãªã¢ãŒãpush + æ¹éã³ã¡ã³ãã®æçš¿ ãèµ°ããŸããã³ãããããŸã ç¡ããŠããç§ã #58 ãã£ãŠãŸãããåšå²ã«èŠããããã«ãªããŸããå°å³ã§ãããããã ãã§ å®è£
ãäºéã«é²ããŠããŸãäºæ
ã倧ããæžãããŸããèªåããããã£ãŠãŸãããšå£°ãäžããªããŠãçæããæç¹ã§èªç¶ã«å
±æãããããŒã å
šäœã§ã®äœæ¥ç¶æ³ãèŠãããããªããŸãã æ¹å3ïŒèª€æäœã¯æ³šæã§ã¯ãªãä»çµã¿ã§é²ãïŒåå5 ãšã©ãŒäºé²ïŒ åå5ããšã©ãŒäºé²ãã¯ã äžå¯§ãªæ³šæåèµ·ãããããããããšã©ãŒãèµ·ããªãèšèšãåªå
ãã ãšããååã§ããGitã䜿ã£ãŠããŠèµ·ããã¡ãªå€±æã«å¯ŸããŠããæ°ãä»ããŠãããšä¿ãã®ã§ã¯ãªãä»çµã¿ã§æœ°ããŸãã /d ã¹ãã«ã䜿ããªããåãå
¥ããäºé²ã®ä»çµã¿ãããã€ã玹ä»ããŸãã # èµ·ããã¡ãªå€±æ ã¹ãã«ã§ã®è§£æ±º 1 åãå
容ã®Issueãéè€èµ·ç¥š 起祚åã«æ¢åIssueãšã®é¡äŒŒããã§ã㯠2 mainã§äœæ¥ããŠçŽpush 倿Žãæ€ç¥ããèªåã§ãã©ã³ããåã£ãŠããã³ããã 3 test tmp çã§ãã©ã³ãåãä¹±ç« Issueã»å€æŽå
容ããåœåèŠåã«æ²¿ã£ãŠèªååœå 4 åãIssueãå¥ãã©ã³ãã§éè€çæ çææã«æ¢åãã©ã³ãã確èªãä»äººã®ã³ããããããã°ç¢ºèª 5 .env ã» node_modules çã誀commit ã¹ããŒãžã³ã°åã«èªåæ€ç¥ããŠç¢ºèª 6 Issueãšç¡é¢ä¿ãªãã¡ã€ã«ãæ··å
¥ ãã©ã³ãåããæšæž¬ããäœæ¥å
容ãšç
§åããŠèŠå 7 æªã³ããã倿Žãæ±ãããŸãŸcheckout åãæ¿ãåã«ç¢ºèªããã³ããã/äžæãæç€º 8 ããŒã«ã«ã®mainãå€ããŸãŸé²ããŠconflictå°ç äœæ¥çææãpushåã«mainãšã®å·®ãèªåãã§ãã¯ãåã蟌ã¿ãææ¡ 9 Issueã»ã³ãããã»PRã®èª¬æã®äœæãé¢åã§çç¥ã»éã«ãªã 倿Žå
容ããAIãã¿ã€ãã«ã»æ¬æã»ã³ãããã¡ãã»ãŒãžã»PR説æãèªåäœæ æ¹å4ïŒæãåºãããªãã»è¿·ãããªãïŒåå6 åçããåèªïŒ åå6ã¯ãèªç¥ç§åŠã§ãã ãåçïŒrecallïŒããåèªïŒrecognitionïŒã®æ¹ãé¥ãã«æ¥œã ãšããæ§è³ªã«åºã¥ãååã§ãããæ¬¡ã«äœããã¹ããããå©çšè
ãæãåºãïŒåçïŒå¿
èŠããªããã æç€ºãããéžæè¢ããéžã¶ïŒåèªïŒ ã ãã§æ£ããæé ãæ©ããããã«ããŸãã ãæ¬¡ã«ããããšããéžæè¢ã§æç€ºãã ãµãã³ãã³ãã®çµããã«ã¯ãå¿
ã æ¬¡ã®åè£ã¢ã¯ã·ã§ã³ãéžæè¢ã§æç€º ããŸãã /d todo ã®æåŸ â åªå
床ã®é«ãé ã«æ¬¡ã®ã¿ã¹ã¯ãææ¡ /d new ã§èµ·ç¥šåŸ â ãèªåãã¢ãµã€ã³ããŠåãçµã / ã¢ãµã€ã³ã®ã¿ / ä»ã®äººã«ã¢ãµã€ã³ / ã¢ãµã€ã³ããªãã /d commit ã®ã¬ãã¥ãŒå®äºåŸ â ãããŒãžããŸããïŒ (y/n)ã å©çšè
ã¯ã次ã«äœãããã°ããã£ãã£ãããšèããå¿
èŠããªããéžã¶ã ãã§æ£ããæé ã«ä¹ããŸãã ãªã¹ãåºåã«å¿
ãèå¥åãæ¯ã ãéžã¶ã ããã®ããåããæ¯ããããã衚ã»ç®æ¡æžãã»éžæè¢ãªã©è€æ°é
ç®ã䞊ã¶åºåã«ã¯ã å¿
ãé£çªãèšå·ã®èå¥åãæ¯ã ã«ãŒã«ã«ããŸãããIssueçªå·ã®ãããªæ¢åIDãããã°ããã䜿ããç¡ããã°é£çªãæ¯ããŸããããšãã°å®è£
åã«æé ã®èšç»ãåºããããšããããªããŸãã å®è£
èšç»: 1. å
¥åæ¬ã³ã³ããŒãã³ãã®äœçœã倿°å 2. ãã°ã€ã³ç»é¢ãžé©çš 3. ã¢ãã€ã«è¡šç€ºã®ã¹ã¿ã€ã«èª¿æŽ 4. ä»ç»é¢ã®ãã©ãŒã ãžæšªå±é 5. äžèŠã«ãªã£ãæ§ã¹ã¿ã€ã«ã®åé€ ã©ããŸã§é²ããŸããïŒ å°å³ã§ãã广ã¯å€§ãããå©çšè
㯠ãäžæŠ3ãŸã§é²ããŠãã4ãš5ã¯äžèŠã ã®ããã«çªå·ã ãã§æç€ºã§ããŸããAIãšã®ãã£ããã§ã¯å¯Ÿè±¡ãèšèã§èª¬æãçŽãããé·ãåŒçšãã³ããããããè² æ
ã«ãªããã¡ã§ãããèå¥åããããšããåããäžæ°ã«çããªããŸãã 10ååãã€ãžã§ã¹ãïŒæ®ãã®ååãèšèšã«å¯Ÿå¿ã¥ãã æ¹å1ã4ã§äœ¿ã£ãååïŒ1ã»2ã»5ã»6ïŒä»¥å€ãã /d ã®èšèšå€æã®ãã¡ãã¡ã«å¯Ÿå¿ããŠããŸããæ®ã6ã€ããã€ãžã§ã¹ãã§ç޹ä»ããŸãã åå3 ãŠãŒã¶ãŒã³ã³ãããŒã«ãšèªç± â Issueèµ·ç¹ã®ãããŒã«éå®ãããmainã§ã®æãã€ãçæã蚱容ãç Žå£çæäœã®åã«ã¯å¿
ã (y/n) ç¢ºèª åå4 äžè²«æ§ãšæšæº â issue commit ãªã©ã®çšèªã¯æè¡åŽã«åãããå©çšè
ã®çšèªç¿åŸããšã³ãžãã¢ãšã®ææçéãéèŠ åå7 æè»æ§ãšå¹çæ§ â åå¿è
㯠/d todo ã®ææ¡ã«ä¹ãã ãã§çæãŸã§é²ã¿ãæ
£ããã /d issue ãçŽæ¥æã€ã»ãšã€ãªã¢ã¹ïŒ /d i ïŒã䜿ããªã©å¹çåã§ãããããã« /d improve ã§ã¹ãã«èªäœãé²åããããã åå8 æå°éãã¶ã€ã³ â èŠããã¹ãã³ãã³ããå°ãªãããèªç¶èšèªã§ãåãããã«ããããšã§ãã¹ãã«ã®äœ¿ãæ¹ãã·ã³ãã«ã« åå9 ãšã©ãŒå埩 â ã¯ãŒã¯ãããŒæäœãAIã宿œããããšã§ããšã©ãŒæãAIãèœåçã«èª¿æ»ã»å埩ã§ããã䜿ãã¥ãããããã° /d improve ã§äžæºãæ¹åæ¡ãšããŠIssueåã§ãã åå10 ãã«ããšããã¥ã¡ã³ããŒã·ã§ã³ â /d help ã§å
šã³ãã³ããšå
žåãããŒã衚瀺 ãããã« æ¬èšäºã§ã¯ãGit/GitHubã䜿ã£ãéçºãããŒããšã³ãžãã¢ä»¥å€ã®ã¡ã³ããŒãšååããŠé²ããããã®ã¹ãã«ã«ã€ããŠç޹ä»ããŸããããšã³ãžãã¢ä»¥å€ã®ã¡ã³ããŒãšãšãã«éçºããããŒã ã§ã å
šå¡ãå®å¿ããŠéçºã§ããç°å¢ã¥ããã®äžå©ã«ãªãã°å¹žãã§ãã ãããããããã£ãšè¯ããªãããèªåã®ããŒã ã§ã¯ããããŠãããªã©ãããã°ãæ¯éã³ã¡ã³ããã ããïŒ