å·»ç©ãæ¢ã
121ä»¶ã®å·»ç©
Codex CLI ã WSL çµç±ã§ã ã 401 token_revoked ã«ãªãæã®åŸ©æ§ïŒãã©ãŠã¶åãã°ã€ã³äžèŠïŒ
Windows ãš WSL ã§å¥ã ã® auth.json ãæã€ Codex ã®çæ¹ã ãã倱å¹ããæã®åãåã2ã³ãã³ããšãçããŠããåŽã®èªèšŒãå®å šã«ã³ããŒããŠåŸ©æ§ããæé
Codex å§è²ã®æç€ºæžã§ãã·ã§ã«çŠæ¢ããæžããšå€æŽãŒãã§æ¢ãŸã â ãã³ãã¬ãšå·®åããŒã¹ã®æåŠå€å®
ClaudeâCodex ã®æç€ºæžã«åãæž¡ãèŠçŽã®ãã·ã§ã«çŠæ¢ãã転èšãããš Codex ã確èªåŸ ã¡ã§æ¢ãŸã exit 0ã»å€æŽãŒãã«ãªããåå ã»æç€ºæžãã³ãã¬ã»exit code ã§ãªã git diff ãšãã¹ãä»¶æ°ã§æåŠå€å®ããæé ã
æ€èšŒããã®ã«äœãæ€èšŒããŠããªãã£ã â 宿å®è¡ã®åæ ã3å±€ã§exit codeå€å®ãã
cronããããã®åæ 確èªã空æ¯ããã2ã€ã®åïŒexit 0ã ãèŠãïŒããŒã«ãæ¢å®ãã©ã³ãã«ç¡ãïŒãšãAå®è¡ã»BããŒã¿ã»Cå®è¡šç€ºã1æ¬ã«ç¹ãã§æ©æ¢°å€å®ããã¹ã±ã«ãã³ãå¯Ÿç §ãå ¥ããŠå¥èŠå ã®æ··å ¥ãæ€ç¥ããã
Node CLI ãé»ã£ãŠ exit 13 ã§æ¢ãŸã â ESM ã®åç import 埪ç°ããã¹ãã§æ¢ãã
ãããã¬ãã« await ã® CLI ãšåç import ã®åŸªç°ã§èµ·ãã exit 13 ã®åå ã»çŽãæ¹ãšã埪ç°ã CI ã§æ€åºãã node:test äžåŒ
Windows ã§ AI ãšãŒãžã§ã³ã/Node ã exit 3221226505 ã§çªç¶æ»ããæã®èšºææé
0xC0000409 ã®åå ããã³ãããå¶éæ¯æž / libuv / V8 OOM / ãã€ãã£ãã¢ãžã¥ãŒã«ãã«æ ¹æ ä»ãã§åãåãã宿ž¬æé ã誀蚺ãããã WER ã®èªã¿æ¹2ç¹ãšãé广ã«ãªã NODE_OPTIONS 察åŠã®æ»ãæ¹ãŸã§å«ãã
äŸåãŒãã®MCPãµãŒããäœããnpmå ¬éã«è©°ãŸã£ãŠãnpx github:ã§ä»æ¥ããé ã
èªäœããŒã«ãAIãšãŒãžã§ã³ããã䜿ãããMCPãµãŒããäŸåããã±ãŒãžãŒãã§å®è£ ããnpmå ¬éã2FAå¶çŽã§æ¢ãŸã£ãŠãé åžãæç«ãããæé ãJSON-RPCèªåå®è£ ã®èŠç¹4ã€ãäºåæµbinã.mcp.jsonèªåç»é²ãå®ãã³ãã·ã§ã€ã¯æ€èšŒããããŠbinã®./ã§å ¬éç©ãå£ããçœ ãŸã§ã
é åžããhookãWindowsã§éãã«æ»ã¬ã®ãå¡ã â process.exit ãš top-level await
AIãšãŒãžã§ã³ãã®hookããåºåã¯æ£ããã®ã«åæ ãããªãã圢ã§ç¡å¹åãããçå ãšããããã¯ãŒã¯ã«äŸåããªãååž°ãã¹ãã»å€ç°ãã¹ãã®å
Node.js ESM ã® CLI ãç¡èšã§ exit 13 â åŸªç° import à top-level await ãããããã¯ã®èšºæãšä¿®æ£
ãã¹ãã¯éãã®ã«CLIçŽæ¥èµ·åã ãæ¢ãŸãåå ïŒTLAã§åŸ ã€ãšã³ããªãžåçimportå ã埪ç°importïŒã®ç¢ºèªæé ã»ã³ãŒãç¡å€æŽã®åé¿çã»æä¹ ä¿®æ£ã»ã¹ã¢ãŒã¯ãã¹ã
WSL/Codexå°å ¥ãBIOSã§æ¢ãŸãåå åãåã
wsl --installã倱æ/忢ãããšãããããã¯ãŒã¯èµ·å ã»ç®¡çè æš©éäžè¶³ã»BIOSä»®æ³åç¡å¹ã®ã©ãããåãåãã蚺æã³ãã³ããšèªååãšãŒãžã§ã³ããšããŠã®å¯ŸåŠæ¹é
MCP ãµãŒããŒã npm å ¬éããã« GitHub çŽæ¥æå®ïŒnpx github:ïŒã§é åžãã
npm publish ã 2FA/æš©éã§æ¢ãŸã£ãæã«ãLPã»READMEã»initã»ãã¹ãã®å°ç·ã github: æå®ãžå¯ããpush æŒããšãã£ãã·ã¥ã«éšãããªãæ€èšŒãŸã§å«ããæé
ã¹ãã¬ããã·ãŒãéèšæ¥åãNext.js+Supabaseã¢ããªãžæ®µéç§»è¡ããèšèšæç€ºæž
éçšäžã®Sheetsæ¥åãæ¢ããã«Webã¢ããª(DBæ£)ãžæ®µéç§»è¡ãåæ¹ååæã®ãšã³ãŒã«ãŒãæ ¹çµ¶ã»ç§»è¡6ååã»ã³ãŒãå è¡/ã¹ããŒãåŸè¿œããªãªãŒã¹ã»ãã¬ãŒã¹ãã«ãåã®æ°Žå¢ã鲿¢ã»worktreeéé¢ãŸã§å®æŠç¥èŠãååã
è€æ°PCã»è€æ°AIãžèšå®ãšç§å¿å€ãé ãä»çµã¿ã®äœãæ¹ïŒéãã«å£ãã7ã€ã®åïŒ
AIãšãŒãžã§ã³ããè€æ°å°éçšããæã®é åžç³»(ã«ãŒã«ã»hookã»ã¹ã¯ãªããã»APIããŒ)ããäŸå€ããšã©ãŒãåºããç¡èšã§æ»ã¬7ã€ã®åãšæœ°ãæ¹ãsymlinkå€å®ã»ååŸå€±æã®å·»ãæ·»ãã»asyncå process.exitã»èšå®JSONã®BOMã»ç§å¿å€ã®æé ã»éå°æš©éã»éµããŒããŒã·ã§ã³ã§å šå°æ»äº¡ãæ€èšŒæé 6ã€èŸŒã¿ã
é åžããããŒã«ãåPCã§æ¬åœã«ææ°çãæ€ç¥ããïŒçããªããæ€ç¥ïŒ
å šPCãžGitçµç±ã§é ãCLI/hookããããŒãžæžã¿ãªã®ã«ç«¯æ«ã ãæ§çãã§éãã«æ¢ãŸãã®ãæ€ç¥ãããããªãŒAPIã®blob SHAç §åãWindows CRLFã§å šæ» ããªãindex SHAæ¯èŒãããŒã«ã«ç·šéãšé åžå€±æã®åãåããawait远å ã§process.exitãèœã¡ãçœ ãŸã§ã
Drive ã AIã«ãŒã«å ±éããã«ããé åžã»çµ±ååæ
AI(Claude Code ç)ã®ã«ãŒã«/ã¹ãã«ã Drive ã®1ãã©ã«ãã§æ£æ¬ç®¡çããpull(å šå¡ãžé åž)ãš merge(inboxæçš¿ãæ£æ¬ãžçµ±å)ã®2ã¢ãŒãã§åæããä»çµã¿ãdownload_file_content å¿ é ã»latest-by-titleã»manifest ç管çãªã© Drive ã³ãã¯ã¿ã®çœ ãšå¯Ÿç蟌ã¿ã
å 容ã¯åããªã®ã« PR ã CONFLICTING â CRLF æ··å ¥ã®èŠããäžã®è¡çªãä¿®æ£ãå£ããè§£æ¶ãã
å¥ã³ãããã®æ¹è¡ã³ãŒã倿Žã§ PR å šäœãè¡çªã«èŠããåé¡ã --ignore-all-space ã§å€å®ããrebase -X renormalize ã§å ã®ä¿®æ£ã ããä¹ãçŽãæé ãæ€èšŒã³ãã³ãã.gitattributes ã§ã®åçºé²æ¢ãè€æ° PR ã worktree ã§åæã«æ±ãæã®çœ ãšå ±åæã®åãŸã§ã
ãšãŒãžã§ã³ãåã®å§è²ãå šæ» ããããAPI çŽå©ãã®ãã¡ã€ã«åäœçæïŒèš±å¯ãªã¹ãæžãåºããã§å®è£ ãéã
Codex/gemini-cli/å®äŸ¡ agentic ã©ã³ããŒãå šéšèœã¡ããšããChat Completions ã1åå©ããŠãã¡ã€ã«å šæãåºãããèš±å¯ãªã¹ãã®ãã¹ã ãæžãåºãã18ãã¡ã€ã«ã4䞊åã»çŽ$0.02 ã§éãã宿ž¬ãš gen/split ã¹ã¯ãªãããæ€åã®èŠç¹ã
MCP stdio ãµãŒãã Windows ã§ãæ¥ç¶æžã¿ãã®ãŸãŸæ»ãã§ããã®ãèŠæã
MCPãµãŒãäžèЧãç·ã§ãããŒã«åŒã³åºãã ã spawn ENOENT ã§æ»ã¬æ éã®3å±€æ§é ãšãinitialize/tools-list/tools-call ãå±€ããšã«å®æž¬ããŠèšŒæããæé ãnpx圢åŒãäœãååã ãã®æ¥ç¶ã¿ã€ã ã¢ãŠããèšå®ã¹ããŒãç§»è¡ã«ããéããªèªèšŒç¡å¹åãèªå修埩ã³ãŒããéµã空æåã§æœ°ãçœ ãå«ãã
ç¿æã®ãããçµæã§å€å®ããã²ãŒããæãåŸ ããã«éãã
å€éãããã®å€æŽãææã®ã¬ããŒãã§ç¢ºèªãã宿é¡ãã--dry ãšåºåå å·®ãæ¿ãã§åœæ¥äžã«å€å®ããåãåºåå ãå ¥åãšããŠèªã忥æ¯ã®åŠçãé»ã£ãŠå£ããçœ ãšãgrep exit 2 ã0ä»¶ãšèª€èªããªãå€å®æé ã€ãã
WSL ãããã£ã¹ããªãç¡ããããã«èŠããæãçãã®ã¯å°å ¥ç¶æ ã§ã¯ãªãæ»çããã»ã¹
wsl --status ã¯å³çããã®ã« wsl -e ãç¡éãã³ã°ããé察称ã誀蚺ãçããçå ã¯æ»çãã wsl.exe ã¯ã©ã€ã¢ã³ããåãåãã»åŸ©æ§ã»æéå¶éä»ãåŒã³åºãã»PATH interop ã®çœ ãŸã§ã
GASãŠã§ãã¢ããªã®ç»é¢ãjsdomã§æ€èšŒãã â åäœãã¹ãã§ã¯åççã«èŠã€ãããªãç»é¢ãã°ãæãŸãã
GASã®ç»é¢JSã¯ãã©ãŠã¶ç¡ãã§ã¯æ€èšŒã§ãããåäœãã¹ãå špassã»APIæ£åžžã»ããŒã¿æ£åžžã®ãŸãŸäž»èŠå°ç·ãæ»ã¬ãIndex/Style/Scriptãé£çµããŠjsdomã§å®è¡ããå®ããŒã¿ãæµããŠèŠçŽ ã®æç¡ãšãã¿ã³ã®æŽ»æ§ãŸã§èªåå€å®ããããŒãã¹ã®äœãæ¹ã
èµ·åæããã¯ãå¢ããããŠãšãŒãžã§ã³ããç«ã¡äžãããªããªãã®ãçŽã
Claude Code ãå šã¿ãã§ 'Subprocess initialization did not complete within 60000ms' ãåºãã®ã¯èªèšŒã§ããããã¯ãŒã¯ã§ããªããèµ·åæããã¯ã®åèšæéè¶ éãåèšã®æž¬ãæ¹ãtimeout ãåããã«è£åãïŒcache-first ã§æžããåãnpx èµ·åã® MCP ã 30ç§ã¿ã€ã ã¢ãŠãããä»¶ããããŠãéããªã£ãçç±ããåãéããªãããã®æ€èšŒãŸã§ãå®äŸ 93ç§â18.7ç§
ãã°ãªã³ããã ãã§IDEãéãAIãšãŒãžã§ã³ããèµ°ãåºãç¶æ ãäœãïŒWindows/VS CodeïŒ
æ¯æã¿ãŒããã«ãéããŠãšãŒãžã§ã³ãCLIãæã€æéããŒãã«ãããfolderOpenã¿ã¹ã¯+ã¹ã¿ãŒãã¢ãã.lnkã®æ§æã«å ããçŽ çŽã«äœããšå¿ ãèžã3ã€ã®ããšã©ãŒãåºããã«äœãèµ·ããªãã倱æïŒ8.3ççž®åãã¯ãŒã¯ã¹ããŒã¹å€å®ãå£ã/ãµã³ãããã¯ã¹äžã¯exit 0ãè¿ãã®ã«GUIãèµ·åããªã/Restricted Modeãèªåã¿ã¹ã¯ãç¡èšã§æ¢ããïŒãšãããã»ã¹ã®ç¥å ã§æåŠãå€å®ããæ€èšŒæ³ãŸã§ã
AIãšãŒãžã§ã³ããçªç¶æ»ããæã®åãåã â ã¢ããªã®ãã°ãOSã®è³æºæ¯æžã
exit 3221226505 ã®åå ãã€ãã³ããã°ãšã³ãããçã§5åã§ç¢ºå®ãããæé ãšãçŽãæ¹ãéãšã³ãžãã¢ã«1ã¯ãªãã¯ã§æž¡ãå
AIéçºããŠããŠãããŒã å ±éãããžæçš¿ããå
ã»ãã·ã§ã³äžã«åŸã AI ã³ãŒãã£ã³ã°ã®ã«ãŒã«ã»å€±æãã¿ãŒã³ããDrive ã®è¿œèšå°çš inbox ãã©ã«ãã«å®åãã©ãŒãããã§æçš¿ãã管çè ãæ£æ¬ãžçµ±åããä»çµã¿ãå人ã®ããŒã«ã«ã«ã«ãŒã«ãæ£ãã°ãã®ãé²ããæ©å¯å€ã®æžãæ¹ãèŠå®ã
èªåã管çããŠããªãäžæµãã¡ã€ã«ãå·®ã蟌ã¿ã§ç¶æããå â æ»ãã ããããæ€ç¥ã㊠retired ã«ç§»ã
äžæµãæŽæ°ãç¶ããã¹ã¯ãªããã«èªåã®ä¿®æ£ãåœãŠç¶ããä»çµã¿ãfind/marker/replace ã®4ç¶æ ãšã³ãžã³ãanchor-missing ã«å°çš exit code ãäžããèŠå ±èšèšãå·®ã蟌ã¿ã®é£éãæ»ãã å·®ã蟌ã¿ã® retired åããã¹ããè¶³ããªãå€ãæ³šå ¥ããŠããŠå£ããã³ãŒããç·ã ã£ãå®å®³ãšããã®å¡ãæ¹ãŸã§ã
äºéå®çŸ©ãçæ¹ãžå¯ããæåäžå€ãªãã¡ã¯ã¿ããAIå§è²ã§å®å šã«çµãããã
åã衚ãçŽæžããšå°åºã§2ç®æã«ããç¶æ ãçæ¹ãžå¯ããæããã¹ããç·ã§ãçµãã£ãŠããªããçæåã«å®ããŒã¿ã®JSONãä¿åããŠæ©æ¢°æ¯èŒããåãšãæåãfixtureãé åºéãã§åœfailãåºãçœ ãå°åºã«å€ããåŸã®çž®éã®æ±ºãæ¹ãŸã§ã
åæã§å·»ãæ»ãèšå®ããåºå®æå»ã®è²ŒãçŽããã§å®ãããšããŠå€±æãã â ç¶æ ã®æ€åºã§é§åããåæã«å€ãã
é åžç©ã®åæã§äžæžããããèšå®ã«ããããåœãŠç¶ãããæãåæã®çŽåŸã®æå»ã«è²ŒãçŽããžã§ãã眮ããšå€±æãããäžæžãåŽãNæéã¬ãŒãã§çºç«ããããå£æèšæå»ãæ¯æ¥æŒããããæå»ã§ãªããåœãã£ãŠããããã§é§åããåæãžã®äœãæ¿ãæ¹ãno-opãç¡é³ã»exit0ã«ããçç±ãæ¬çªãè§Šããå¯Ÿç §çŸ€ã§æ€å®ããæé ãcmdã®exit=è¡ãæ¶ããçœ ãŸã§ã
offset ããŒãžã³ã°ã§å€éšAPIãèªããšãååŸäžã«äžèº«ãå€ãã£ãŠéãã«å£ãã
ã²ãŒããŠã§ã€ãæ¯åå šæãåãçŽã㊠offset ã§åãæ§æã¯ãååŸäžã«å ããŒã¿ãå€ãããšé£çµãå£ãããrawLength ã®äžè²«æ§æ€æ»ãšäžžããšåãçŽãã§çŽãæé ãšãå¯Ÿç §çŸ€ã§æ€å®ã§ãããã¹ãã®æžãæ¹ïŒtry ã®äžã§ assert ãæžããªãã»å é ãå ±éã® fixture ãé¿ããïŒãŸã§ã
æ¿èªãåãèšèšæžã¯ãã²ãšç®ã§ãããçã1æãå®ãAIã«äžæžããããŠå ã«åºã
æè¡è åãã®èŠæ±å®çŸ©ã»èšèšæžããã¹ããã§1åã§èªãã1ããŒãžã«å€æããŠæ¿èªã®åŸåŸ©ãæžãããäžæžãã¯å®äŸ¡ãªLLMãç£ç£AIã¯çŠæ¢èªã»ã¿ã°ã»375pxæç»ã®æ©æ¢°ãã§ãã¯ã®ã¿
䞊走ããAIã»ãã·ã§ã³ãåãç®çãäºéçæããäºæ ãæ¢ãã
è€æ°ã®AIã³ãŒãã£ã³ã°ã»ãã·ã§ã³ãåæã«èµ°ããããšãåãåŒãç¶ããèªãã§åããã¡ã€ã«ãæžã朰ããã¬ãŒãå¶éã®ããAPIã®ã¯ã¬ãžãããé£ãåã£ãŠäž¡æ¹ã429ã«ãªããçæåã®æ€ç¥3ç¹ã»ããïŒmtimeïŒå®è¡äžããã»ã¹ïŒgit statusïŒãšãè¡çªæã«å®è£ ãè²ãåºæºãè²ã£ãåŽãä»äžããã¹ãä»äºãæ€èšŒããŒã«ã«å¿ ãèŠã4ç¹ïŒåæ¯ã»çªã®æåã»exit codeã»ããŒãžãã£ãã·ã¥ïŒã
Windows ã® .cmd ã«æ¥æ¬èªã³ã¡ã³ããæžããš REM æçãåœä»€ãšããŠå®è¡ãããïŒASCII only ã§é²ãã»å€å®ã¯ã³ã³ãœãŒã«è¡æ°ïŒ
ã¿ã¹ã¯ã¹ã±ãžã¥ãŒã©çšã® .cmd/.bat ã«æ¥æ¬èª REM ããããš cmd.exe ãè¡ã®æçãåœä»€ãšããŠå®è¡ãããchcp ãå é ã«ç§»ããŠãçŽããªããASCII only ã«ããé ASCII æ°ãšã³ã³ãœãŒã«åºåè¡æ°ã®2å€å®ã§æ©æ¢°ç¢ºèªããæé ãšãã³ãã¬ãŒãã
ã¹ãã(Remote Control)ããå³çžè«ã§ãã Claude Code ã¿ãã VS Code ã«æ¯æèªåã§çšæãã
èªäœVS Codeæ¡åŒµã§å ¬åŒClaude Codeã®ã³ãã³ã(editor.openLast/newConversation/renameSessionTab)ãå©ããååä»ãã¿ããNæ¬èªåè£å ãå€éã¯WM_CLOSEâåèµ·åã§æ¯ææããã--bg/ã¿ãŒããã«çµè·¯ã»ã¿ã0ã§ã®newConversationã»SendKeysåèªã¿èŸŒã¿ã倱æãã宿ž¬ä»ã
å€éãžã§ãç°åžžãéç¥ã§çµããããèªå修埩âAIä¿®çPRâ人ãžåŒãæž¡ãéã«ãŒã
ç£èŠã®ãæ€ç¥ããŠéç¥ãã®åŸæ®µã«ã決å®çPlaybookâAIã³ãŒããŒã®éé¢worktreeä¿®çPRâæã¡è¶ãâ人ãžã®3èŠçŽ åŒãæž¡ãããè¶³ãå®è£ æç€ºæžãargvã§æç€ºãæž¡ããªçã®å®æž¬ã®èœãšã穎ã€ã
Discord bot ã® Administrator ãå¥ãã â ãèªåã§ã¯å€ããªããå£ã®è¶ãæ¹
bot ã¯èªåã®æäžäœããŒã«ãç·šéã§ããªããposition ã®æž¬ãæ¹ãæç€º overwrite ãžã®çœ®ãæã(VIEW_CHANNEL æãã®æ€ç®)ãtoken ãèªããªãäžäœ bot ã®ãããã€ç°å¢ã䜿ãå¯äžã®çµè·¯ãåŸçä»ããŸã§ã
AIã«æç€ºæžããŒã±ãããèªååç §ãããçµäºæã«èªååºåãããMD
éçºäŸé Œãåããç¬éã«ããŒã±ããã®å®ææžã¿æç€ºæžãæ€çŽ¢ããŠAIã«èªãŸããã»ãã·ã§ã³çµäºæã«ã¯æ±çšããŠããŠãèªååºåãããä»çµã¿ã®äœãæ¹ãå šå°é åžã»ç§å¯æ å ±ã¹ãã£ã³ã»å®éã«èžãã é åžãã°3ã€ã®åé¿èŸŒã¿ã
ããã®PCã«ããçŽããªãé害ããAIã«èªåã§æ°ä»ãããŠçæããã
ç¹å®ã®1å°ã«ãããªããžããªãç¡ãæ©èœã¯ãä¿®æ£æé ãæžããŠã誰ã«ãå®è¡ãããæŸçœ®ããããSessionStart hook ã§åœè©²PCã®AIã ãã«æç€ºãåºããå®äºåŸã¯æç€ºæžãžç¶æ ãæžãæ»ããŠåå®è£ äºæ ãé²ãåãèµ°æ»ã®æéäºç®ãšã»ãã·ã§ã³è·šãã®åéãã¡ãŒã«äžèŽã ãã®èªåæ¿èªããªãããŸãããçç±ãšçœ²åããŒæ¹åŒãç¶æ åãåããAPIãéµã®èªåé åžãno-opéç¥ã®ææ¢ãŸã§ãå®éã«94ä»¶ã®æ»çãè§£æ¶ããå®äŸã«åºã¥ãæé ã
ãŠãŒã¶ãŒæçš¿ã®å¯©æ»ãç¡äººåãã â æ©å¯ã¯æ±ºå®çå€å®ã»éè€ã¯ã°ã«ãŒãã§1æ¬ã«å¯ãã
æçš¿ãã¥ãŒãäººææ¿èªã§æ»çãããµãŒãã¹ããæ¯æ¥1åã®ç¡äººãããã§åãå®è£ æé ãæ©å¯ã¯æ£èŠè¡šçŸã§æ±ºå®çã«èœãšããéè€ã¯åè£åºãã ãæ©æ¢°ïŒLLMã«ã¯åäž»é¡å€å®ãšç¶²çŸ é ç®ã®æœåºã ãããããŠæ®ã1æ¬ã¯ã³ãŒãã§æ±ºããããã¢åäœã§æ±ºãããšæ®ããåŽãå¥ã®çµã§åŽäžãããçœ ãåŽäžã®ä¿åå ãç¡ãèšèšãã¹ãã¢é害ã空ããŒã¿ã«åããŠäºéå ¬éãæã fail-openã誀æ€åºã§å šéšåŽäžã«ãªã4ãã¿ãŒã³ãŸã§ã
æ¢åã¹ãã¬ããã·ãŒããæ£æ¬ã«ããæ¥åã¢ããªã®åãããã³ã°ãå£ããªãèšèšã«ãã
çŸå Žã䜿ãç¶ããGoogleã¹ãã¬ããã·ãŒããã¢ããªããèªã¿æžããããšãã®å解決èšèšããããååªå ïŒåã¬ã¿ãŒfallbackãåååã®æ€åºãå®ããã蚺æCLIãæ€èšŒæé ãŸã§ãå¥ã®åã«æžã蟌ãã§å°åž³ãå£ãäºæ ãé²ãã
Beds24âAirbnb ã®æéåæãå šæ¥çšã§æ¢ãŸãåå ïŒUS0 æªæºã®äŸ¡æ Œãå«ãéä¿¡ã¯äžžããšæåŠïŒãšçŽãæ¹ã»æ€èšŒ
Airbnb ã¯1æ³US0æªæºãå«ãã«ã¬ã³ããŒéä¿¡ãäžžããšæåŠããç¡é¢ä¿ãªæ¥ä»ãŸã§åçµãããäŸ¡æ ŒçæåŽã®åºãäžãããã¹ãçšãã«ãã«ã¬ã³ããŒã§çªå€æ¥ä»ãå¯Ÿç §çŸ€ã«èªã¿æ»ãæé ã
è€æ°PCã® Claude Code ãçµã¶ PC éã¡ãŒã«ã¯ãé éæžã¿ããšãèªãŸããããåãã â 13æéé»ã£ãŠæ¢ãŸã£ãäºæ ããã®ç¶æ æ©æ¢°åèšèš
Sheet+Apps Script çµç±ã® PC éã¡ãŒã«ã§ãé éæžã¿â æ¢èªã®ãŸãŸ 13 æéæ¢ãŸã£ãäºæ ã®çå 10 ä»¶ãšãnewâdeliveredâseenâdone ã®ç¶æ æ©æ¢°ã»å®å å®å šäžèŽã»hook ã®æ°çé æç€ºã»ãµãŒããŒåŽ SLA ç£èŠã»ã«ãŒã鮿ã»Sheets å倿ã®çœ ãŸã§ããã®ãŸãŸå®è£ ã§ããç²åºŠã§
Claude Code ã® auto-memory ãè€æ°PCã»è€æ°ã¢ã«ãŠã³ããžæ¯æ¥èªåé åžããïŒé ä¿¡å£ã¯éµé åžãµãŒããšåé¢ããèªèšŒã ãå§è²ããïŒ
auto-memory ãå€éãã³ãã«åãåå²é ä¿¡ãèªèšŒã¯éµé åžãµãŒããžå§è²ããŠå šPCãžæ¥æ¬¡åæããæ§æãšèœãšã穎
å¥ã¢ã«ãŠã³ãã® Claude Code å士ã人ã®è»¢èšãªãã§çŽæ¥ãããšããããïŒå ±æã¡ãŒã«ããã¯ã¹æ¹åŒïŒ
çµã¿èŸŒã¿SendMessage/Remote Controlã¯åäžã¢ã«ãŠã³ãéå®ãæ¢åã®ããŒã¯ã³ä»ãWeb AppïŒã·ãŒããã¡ãŒã«ããã¯ã¹ã«ããŠä»»æPCéãåæ¹åã»2åé éãpromptã¯æ¿è«Ÿå¶ã§èªã¿åãå°çšheadlesså®è¡
é åžããèªååããèªåãæŽæ°ã§ããªããåé¡ã®æ ¹æ²»ãšäººæãŒã埩æ§ã®3å±€èšèš
è€æ°ç«¯æ«ãžé ã£ãhook/åžžé§ã¹ã¯ãªãããç¡èšã§å€ããŸãŸæ¢ãŸãåå (åçµã³ããŒã»å®è¡ã·ã§ã«å·®)ãšãäžå€®ãã¥ãŒ/èªå·±ä¿®åŸ©æé /çådigestã®3å±€ã§äººã®æäœãŒãã§åŸ©æ§ãããèšèšã宿ž¬ã§èžãã ãç·ãªã®ã«äœãèµ·ããªããçœ ã€ãã
ç¡äººãšãŒãžã§ã³ãã®å€éäœæ¥ãKPIåããïŒãå®èµ°ããŸããããææã®èšŒæã«ããªãïŒ
å€éã®ç¡äººã»ãã·ã§ã³ããN/Nå®èµ°ã»å€±æ0ãã§ãå®ã¯éåã空åãããšããç¶æ ãæ°åã§æŽãææšèšèšãæ¶åçã»ç©ºåãçã»ã³ã¹ãåæžå¹æã®3æ¬ãšã空åãåãåæžå¹æããå·®ãåŒãçç±ã宿ž¬ã§æ©èœããªãã£ãææšãæ£åŽããèšé²ã€ãã
ã¢ããªéçºã®äž»äœãå¥ã¢ã«ãŠã³ãã® Claude Code ãžç§»ç®¡ããïŒæš©éä»ãæ¿ãïŒå€æäŸé Œã®çµè·¯ã€ãïŒ
åŒãç¶ãæžã»GitHub/Drive æš©éä»äžã»å€æäŸé Œãããã³ã«ã»ã«ãããªãŒããŒæ¡ä»¶ã»éäžã§ç§»ç®¡å ãå€ããæé ã1ã»ãã·ã§ã³ã§å®äºãããåãçžæåŽã®äººã®æäœã¯èµ·åæ1åãš OAuth åæ1å
ç¡äººãããã®ãé»ã£ã空æ¯ãããçºèŠããŠæ¢ããïŒåªçå蟌ã®èšèšïŒ
宿ãããããšã©ãŒãåºããªããŸãŸæ¯ååãä»äºãããçŽããŠããç¶æ ã®æ€åºæ³ã»å žåçãªçå ïŒå蟌æžã¿éåãå®äœã®åäžã«ã©ã ã§æã€ïŒã»å°åž³ã«ããä¿®æ£ã»æã¡åãä»ãå詊è¡ã»CI課éã§ã®å¹æå®æž¬ãŸã§ã
é åžããããŒã«ãæ¢å端æ«ã«ã ãå±ããªãé害ã®èšºæãšåçºé²æ¢
å šPCãžé ã£ãhook/ã¹ã¯ãªããããæ°èŠç«¯æ«ã§ã¯åãã®ã«æ¢å端æ«ã«ã ãæ°žä¹ ã«å±ããªããåçµã³ããŒã»æ¡åŒµåãç¡èŠããéè€å€å®ã»ç¡èšreturn ã®3éå¥ã§ããã¹ãã¯å šgreenã»èªå·±èšºæãNG 0ã®ãŸãŸæ°ã¥ããªããå®éã«èžãã§çŽãã蚺ææé ãšãåçºãæ¢ãããã¹ãèšèš(æ¢å端æ«ãã£ã¯ã¹ãã£/ãã§ãã¯ãªã¹ãç¶²çŸ æ§ã®æ©æ¢°ç §å/æ éæ³šå ¥)ã
Claude Code ã®ãã°ã€ã³ã¢ã«ãŠã³ããå¥ã¢ã«ãŠã³ããžåãæ¿ããïŒãã©ãŠã¶æ¿èª1åã»auth login ãçµäºããªãçœ ã€ãïŒ
åãPCã§ Claude Code ã® claude.ai ãã°ã€ã³ãå¥ã¢ã«ãŠã³ããžç§»ãæé ãèªèšŒãã¡ã€ã«1æ¬ã®æ§é ãäºåæ£åžãïŒenväžæžãã»ç¡äººã¿ã¹ã¯ã»ã³ãã¯ã¿ã»routineïŒãéåæãã°ã€ã³ïŒstatus ããŒãªã³ã°ã®ã¹ã¯ãªãã骚åãlogout ã埩å äžèœãªç¹ãšåãæ»ããŸã§ã
é«é¡ã¢ãã«ãçžè«åœ¹ã«åºå®ããå®è¡ãå®ãAIãžèªåã§æ¯ãåãã hook ã®åïŒClaude CodeïŒ
äžäœã¢ãã«ãæ¢å®ã«ãããšäžéãåéã§æžãåå ã¯æ¬äœãããŒã«ãäœååãèªåã§å©ãæ§é (æ¶è²»ã®85%ã¯å ¥ååŽ)ãäŸé Œãã¬ãŒã³åé¡ããŠå é ã«1è¡æ³šå ¥ããUserPromptSubmitãæ¬äœã®çŽæ¥å®è¡ãæ°ããŠ8åã§æ¢ããPreToolUseããµããšãŒãžã§ã³ãã®modelçç¥ãæ¢ããã¬ãŒãã®3æ¬ã»ãããšããã®æ€èšŒã»å¹ææž¬å®ã®æé ã
GitHub Actions ã®èª²éåã宿ž¬ããŒã¹ã§åã
Actions ã®è«æ±ãæšæž¬ã§ãªã宿ž¬ããåãæé ããžã§ãåäœã®ååãäžããšããèª²éæ§é ãã¹ãããå¥ã«æéãå²ã API ã®å©ãæ¹ãçæéé«é »åºŠã¯çµ±åã»é·æé㯠per-row åŸåŸ©ã®äžæ¬åãšããæã¡åãã䞊å床ãäžããŠãå¹ããªãã±ãŒã¹ã®èŠåãæ¹ããããŠãé ãã¹ããããå®ã¯åãããŒã¿ãæ¯ååŠçãçŽããŠããæ¬ é¥ãã®èŠã€ãæ¹ãŸã§ãæ¬çªã®å€éãžã§ãã宿ž¬ç®çã§åå®è¡ããŠéè€ã¬ã³ãŒãã倧éçæãã倱æäŸãšããã®å·»ãæ»ãã®äœæ³ãå«ãã
AIãšãŒãžã§ã³ãã®ãå§è²çããæ£ããæž¬ãææšèšèš
ç£ç£AIãå®è£ ãå®ããšãŒãžã§ã³ããžæž¡ããŠããããæ¯æ¥èªåèšæž¬ããææšã®äœãæ¹ãããŒã¯ã³æ¯ã飜åãã/忝ã landed è¡ã«ãããš100%ã«è²Œãä»ã/ç·šéããŒã«ã ãæ°ãããšéåãã«åãã€ããã®3倱æãšå¯Ÿçã»å¢åãã£ãã·ã¥ã§ã®é«éåãŸã§
fail-open ã®ã¬ãŒãããå¿ èŠãªå Žé¢ã§ããå¹ããªããã®ãèšè𿮵éã§æœ°ã
ææ¢ã»éè€é²æ¢ã»ã¬ãŒãå¶éã fail-open ã§äœããš unknown ã®ç¯å²ãåºãåããããŠã¬ãŒããåžžæ open ã«ãªãããŠããããã¹ãã¯ç·ã®ãŸãŸæ©èœã ãæ»ã¬åãunknown ãšãäžåšãšããç©æ¥µçãªèšŒæ ããåããæ£åžã衚ã3å€å€å®ããšã©ãŒç²åºŠã®åãæ¹ãå®ããŒã¿ã§äž¡åŽã芳枬ããæ€èšŒæé ãŸã§ã
å®ãLLMãããã€ãã®ãã©ãŒã«ããã¯é£éãæ¬åœã«çå°ããã
ç¡ææ ãæ¯ããŠé»ã£ãŠæ»ã¬ã®ãé²ã倿®µãã©ãŒã«ããã¯ã®èšèšã倱æã³ãŒãã®2åé¡ã»ãããã€ãã®ã¯ãŒã«ããŠã³ã»æ¥æ¬¡äžéã»å šåŒã³åºãåŽã®äžæ¬åã»ãã¹ããå®ç°å¢ãå£ãçœ ãŸã§ã
åæããæŽæ°ããŸããããšåãã€ã â é åžãå±ããªã2ã€ã®æ¬ é¥ã朰ã
èšå®ã»ã«ãŒã«ã®é åžåŠçãæåå ±åãåºãã®ã«å®éã¯å±ããŠããªããpullã®äžæµåãéããšãèªåãé ã£ãæ§çã人ã®ç·šéãšããŠä¿è·ãç¶ãã2æ¬ é¥ããå®ã³ãããã®å·®åã»ãã¹ãã»èªã¿æ»ãæ€èšŒæé ãŸã§å«ããŠæœ°ãã
瀟å ã¢ããªã®å¿ é æ©èœããã«ãŒã«ææžã§ã¯ãªããããã€çŽåã® hook ã§åŒ·å¶ããïŒClaude CodeïŒ
ãå šã¢ããªã«ââãå ¥ããããææžã ãã§å®ãããªãåé¡ããæ¬çªåæ ã³ãã³ãçŽåã® PreToolUse hook ã§æªæèŒã»å°åž³æªç»é²ã deny ããŠæœ°ãåãé€å€ãã¡ã€ã«ã»fail-openã»å šPCé åžã»ãã¹ãäžèЧã€ã
ç¡äººå®è¡ãžã§ãããåããã®ã«äœãæ®ããªãããæœ°ãèšèš
cron/ã¿ã¹ã¯ã¹ã±ãžã¥ãŒã©ããAIãšãŒãžã§ã³ããé·æéåŠçãç¡äººã§èµ°ãããéã®2å€§äºæ ïŒã¿ã€ã ã¢ãŠãkillã§åºåãäžžããšæ¶ããïŒå®è¡ãããã³ãŒãããã®ç¬éã®HEADã§æ±ºãŸãïŒãæ§é çã«æœ°ãå®è£ æç€ºæžã鿬¡é²æãã¡ã€ã«ã»åŸ æ©æéã®äžéã»äœææå»ããã®å®è¡ID埩å ã»åºå®worktreeãžã®pinã»å®èµ°åã ãã®åŸçä»ããŸã§ããã¹ã芳ç¹ãšå®äºæ¡ä»¶ä»ãã
ãå€ã空ããšæå®ããåã«å®è¡šç€ºããã©ãŠã¶ã§èªã¿æ»ã
API/DBã®å€ã§ã¯ãªãå®éã«ç»é¢ã«åºãŠããç¶æ ãèªã¿æ»ããŠããæå®ããæé ã倿Žã®æç¡ãåãããäŸ¡æ Œã»åšåº«ã»æ²èŒæãªã©å€éšé²åºç¶æ ã®èª¿æ»ã»å ±åã«äœ¿ãæ±çšã¹ã¯ãªããä»ãã
Claude Code ã®ã»ãã·ã§ã³äžèЧããéãããèªåã§æ¶ãããããã«ãã
C:/Program Files/Git/clear ã¯åé€ã³ãã³ãã§ã¯ãªããhook + éããå°åž³ + åžžé§ãŠã©ããã£ãŒã§ãã»ãã·ã§ã³ãéãããäžèЧããèªåéé¿ïŒåé€ãã moveïŒããå®è£ æé ãšã䞊è¡ã¿ãã»åçµã³ããŒé åžã®èœãšã穎
GitHub Actions ã®èª²éåã宿ž¬ããŠåãæé ïŒcron çµ±åãã€ãšããïŒ
GHA ã¯ãžã§ãããšã«ååäœã§åãäžã課éãããããæ°ç§Ãé«é »åºŠã® cron ãæãå²é«ã«ãªãã/timing API ã§å šã¯ãŒã¯ãããŒã®èª²éåã宿ž¬ããcron åŒãå®å šäžèŽããã¯ãŒã¯ãããŒã®ã¹ããããžçµ±åããŠé »åºŠãåŠçãå€ããã«åãæé ãschedule ã¯å€§éã«éåŒãããããåã²ãŒãã§ã®éåŒããæç«ããªãããšãçµ±åãããšåã¹ãããã®å€±æã§åŸç¶ã silent skip ãããããšãäºç®äžéã§ãžã§ãæªèµ·åã«ãªã£ãæã®èŠåãæ¹ãŸã§å«ãã
Claude Code ã®äŒè©±ãã°ãèªåéé¿ããŠã VSCode ã®ã¿ããå£ããªãïŒstate.vscdb ã§éããŠããã»ãã·ã§ã³ãæ€åºïŒ
ã»ãã·ã§ã³äžèЧã®èªåæŽçã§ jsonl ãåãããš VSCode æ¡åŒµã®ã¿ãããCouldn't load this conversation's saved historyãã«ãªããæ¡åŒµã state.vscdb ã«å¹³æã§æã€ã»ãã·ã§ã³ ID ããã€ãæ€çŽ¢ããŠãåç §äžã®ãã°ã¯çç±ãåããåãããªãã¬ãŒãã®å®è£ ã»ãã¹ãã»åŸ©æ§æé ã
ãããã€/UI倿Žãå¿ ã2段æ€èšŒããŠããå®äºå ±å
ã³ãŒãã»ãããã€ã»cronã»envã»UI倿ŽåŸã«ãããžãã¯å±€(NodeåçŸ)ãšãã©ãŠã¶å±€(Playwright)ã®2段ã§assertæ€èšŒããæ€èšŒæžã¿ã ããå®äºå ±åãããæé ããç»é¢ã§ç¢ºèªããŠãã®äžžæããçŠæ¢ã
ç¡äººå®è¡ã API ãä¹±æããªãèšèš â 倱ææã¡åãã¬ãŒãå®è£ æé
cron/ã¹ã±ãžã¥ãŒã«ããªã¬ãŒã§æä¹ çã«å€±æããã¬ã³ãŒããç¡éãªãã©ã€ãããæ§é ãå¡ããã§ãã¯ãªã¹ããšå®è£ ãã¿ãŒã³ã倱æã«ãŠã³ã¿ã¯è©Šè¡ã®åã«ä¿åãåªçãªãªãœãŒã¹çæã埩垰ã³ãã³ãã®çšæãŸã§ãAPIä¹±æã«ããã¢ã«ãŠã³ãåçµã®äºé²ã
AIã«å£ãããªãã倿ãã®äœãæ¹(äžå€æ¡ä»¶ãšãªãã©ã€éŸå€)
AIã«å§çž®ã»ç§»è¡ã»æŽçãä»»ãããšãæç€ºã©ããåããã®ã«æ å ±ãæ¶ããããIDã ããassertããŠã¿ã€ãã«ãšèª¬æãæ¶ããå®äŸãšã人éãèªãå šãã£ãŒã«ãã«äžå€æ¡ä»¶ãæããæžãæ¹ãããããŠãNå倱æã§æã¡åããã詊è¡ã¬ãŒã倿Žã§1æ©ã§çºåãã倱æãšãç°ãªãæ¥æ°ã§æ°ããå®è£ ã
äºçŽããŒã¿ãããäŸ¡æ Œãé«ãããã®ãããå€å®ããæé ïŒãªãŒãã¿ã€ã ã»ããŒã¹æ²ç·ïŒ
å ã®äºçŽãèãæã«æ¶æž¬ã§å€äžãããããªãŒãã¿ã€ã å¥ã®å®å¢å䟡ã»éå»ã®åãNæ¥åã®ããŒã¹ã»æç€ºäŸ¡æ Œã®å®è¡šç€ºãçªãåãããŠå€ããŠãã垯ã1ã€ã«çµãæé ãåšåº«ã®ç©Žã®èŠã€ãæ¹ã€ãã
éå ¬éã»preview API ãçžæã«ããåã«ãæ¬åœã«äœ¿ããããã確å®ããæé
limited preview ã®æ°æ©èœã«èªååãè³ããåã«ãå ¬éãã£ã¹ã«ããªç §åã»403/404ã®å¯Ÿç §å®éšã«ãããã¹ãå®åšå€å®ã»ç®¡çç»é¢ã®é ç®æç¡ç¢ºèªã§ãå°éå¯èœãããäžæ¬¡ãœãŒã¹ã§ç¢ºå®ãã9æé ãAIãæšæž¬ã§preview APIãæé ããã®ãé²ãéèªã³ãŒãæž¡ããå®åšå€å®ã€ãé²åŸ¡å®è£ ã宣èšãšå®è£ ã®èå¥åç §åãŸã§å«ãã
ã¢ããªå ãã£ãŒãããã¯â責任è DMâIssueâèªåä¿®æ£PRâ1ã¿ããæ¿èª
瀟å ã¢ããªã®äžå ·åå ±åãã責任è ã®åå¥DMã«å±ããIssueã«ããŠå€éã«ä¿®æ£PRãŸã§èªåã§äœããæ¿èªã¯æ¢åã®PRç»é¢ã®Mergeãã¿ã³1ã¿ããã§æžãŸããèšèšãéç¥å ãäžç¶1ç®æã«éçŽããŠããŒã¯ã³æ¡æ£ãé²ããæ¢èªã¯éç¥ã®ãªã¢ã¯ã·ã§ã³ã§æã¡ãçµµæåã§èªåã®éç¥ãæŸãç¡éã«ãŒããæã€ã
è€æ°LLMãããã€ãã®ç¡ææ åããæ€ç¥ããŠèªåã§æ¬¡åè£ãžå·®ãæ¿ãã
å®ãLLMãžåŠçãéããæ§æã¯ç¡ææ ãåãããšé»ã£ãŠèœã¡ãèšé²ãæ®ããäžçªé«ãã¢ãã«ãžéæµããã402ã¯å³æ¬¡åè£/429ã®ã¿ãªãã©ã€ãšããåé¡ã課éããŒã«ãè·šãåè£åã倱æãæ®ãå°åž³ã1ããã1è¡ã®ãã°ãŸã§ã®å®è£ æé ãé£éã®é çªã宿ž¬ã§æ±ºããæ¹æ³ïŒå䟡æå®â å®å¹æå®/ãã³ã飜å/æ£èŠè¡šçŸæ¡ç¹ãäžäœã¢ãã«ãèœãšãçœ ïŒãåé²ã
人ã«ãã°ã€ã³ããããã©ãŠã¶èªååã1åã§æžãŸããïŒåæã«éããªãã»æ£èŠChromeã»Cookieå€å®ïŒ
Playwrightæ°žç¶ãããã¡ã€ã«ã§äººã«ãã°ã€ã³ãããæã2段éèªèšŒéäžã§éããã»å梱Chromiumãèœã¡ãäºæ ãé²ãå ±é颿°ãšCIã¬ãŒãã®å
Claude ã¢ããªã® Code äžèŠ§ã«æºãŸãå€ããªã¢ãŒãã»ãã·ã§ã³ãèªåã¢ãŒã«ã€ããã
PCåŽãã°ãæ¶ããŠãæžããªãã¹ãã/Webã®åææžã¿ã»ãã·ã§ã³ããå éšAPIã§24hè¶ ã®ãã®ã ã6æéããšã«ã¢ãŒã«ã€ããã hook
å¥ç°å¢ã§äœãããæªããŒãžPRããçŸè¡ã³ãŒããžå®å šã«ç§»æ€ããã
æŸçœ®ãããæªããŒãžPRã¯ãç«¶åããããèšå®ã®è»žãäºéã«ãªãããææžã®åæãå€ããã»ããå±éºãAIã« cherry-pick ããããèšèšã ãåãåºããŠçŸè¡ã®èªåœãžçµ±åãçŽãããæé æžãå®è£ ãAIãžå§è²ããæã«ãã¹ãåæ Œã®ããã«æ¢åã®èšèšå€æãå£ãããå®äŸãšããã®åãå ¥ãã¬ãã¥ãŒæé ã€ãã
LLMã®åºåãå®éã«åãããŠæ¡ç¹ããevalããŒãã¹ã®äœãæ¹
å®ãã¢ãã«ãžèœãšããŠè¯ãããæž¬ã瀟å evalã§ãæ£èŠè¡šçŸæ¡ç¹ãæ£ããçããèœãšãåé¡ã解決ãããçæã³ãŒããnode:vmã§å®è¡ãæ¯ãèãã§æ¡ç¹ããæ¹æ³ã課é¡èªäœã®æ¬ é¥(èšåãäºçŸ©ç/æ¡ç¹ãå®è£ ã¹ã¿ã€ã«ãéå°æå®)ã®åãåãæ¹ããããŠå€ãã®å®è£ ãèžãvmãµã³ãããã¯ã¹è±åºçµè·¯ã®å¡ãæ¹ãŸã§ã
é åžãã PowerShell ã€ã³ã¹ããŒã©ã CI ã§æ€æ»ããïŒPS5.1ã»BOM ã®çœ ïŒ
瀟å ã«1è¡ã³ãã³ãã§é ã .ps1 ããJSã®ãã¹ãç·ã®ãŸãŸæ§æãšã©ãŒã§å šPCãžå±ã穎ãå¡ããããŒã¹+BOMæ€æ»ã¹ã¯ãªãããšãwindows-latest ã®æ¢å® pwsh ã§ã¯æ€åºã§ããªãçç±ãæ éæ³šå ¥ã§ã®åãå ¥ã確èªãŸã§ã
AI ãæ¢ããããæäœãããŠãŒã¶ãŒã®ããã«ã¯ãªãã¯1åãã«èœãšãææž¡ãã¹ã¯ãªããã®äœãæ¹ïŒWindowsïŒ
æš©éã¬ãŒãã§ AI ãå®è¡ã§ããªãæäœãæäœæ¥1åã«å§çž®ããŠæž¡ãåã.cmd ã« chcp ãšæ¥æ¬èªãåå± ããããšå šè¡ãå£ããçœ ãnode ã®ãã«ãã¹æå®ãšãã°éé¿ãæ¬çªããªããžããªãšä¹é¢ããŠããåæã® pull-patch-push æé ããŸãšããã
äœæ¥ããªãŒãæ±ãã端æ«ã«ã ãé åžãå±ããªã â ãã©ãŒã«ããã¯ã®èªå®¶äžæ¯ãŸã§å«ããŠå¡ã
è€æ°ç«¯æ«ãžgit pullã§ããŒã«ãé ãéçšã§ãéçºç«¯æ«ã«ã ãé åžãæ°žä¹ ã«å±ããªãé害ããã©ãŒã«ããã¯ã®çºåæ¡ä»¶ã»äººã®äœæ¥ã®ä¿è·ã»èªåã®åºåã人ã®ç·šéãšèª€èªããŠåçµããäºæ¬¡äžå ·åã»èªå·±ä¿®åŸ©ã®åŸªç°ã»å®æã¿ã¹ã¯ã®åç §å ãããŸã§ãå®éã«èžãã§çŽããæé ãšãã§ãã¯ãªã¹ãã
æ¢ãŸã£ãäœæ¥ãæ¯æ©æ€ç¥ããé²ãããããã®ã ãèªåã§åã«é²ãã
CIééæžã¿PRã18æ¥æŸçœ®ãããå®äŸãããç· åã»éç¥ã»èªååé²ã®3ç¹ãåããå€éæ€ç¥ãäœããéç¥ãåãããªãèšèšïŒè¡åã§ãããã®ãšåšåº«ã®åé¢ïŒãšã宿ž¬ã§èžãã èœãšã穎ãŸã§å«ãã
Claude Code ã®éªéãªUIé¢ãå ¬åŒã¹ã€ããã§æ¶ããå¹ããããšã宿ž¬ãã
ã¢ã³ã±ãŒããããŒçã®UIé¢ã¯é åžãã€ããªã« CLAUDE_CODE_DISABLE_* ã®å ¬åŒã¹ã€ããããããgrep ã§ switch ãš gate ãåãåºããsettings.json ã® env ã«å ¥ããäžæ SessionStart hook ã§ env å°éã宿ž¬ãããA/B ãåããªãé¢ã¯ã³ãŒãèªã¿ã§ç¢ºå®ããã宿ž¬ãšåããŠå ±åãã
HMACéµé åžãµãŒãã®ç· ãåºãäºæ ãé²ãèšèšïŒè€æ°ç§å¯ïŒäœ¿ãæšãŠenrollããŒã¯ã³ïŒå€±æã®èªå·±éå ±ïŒ
å ±æç§å¯ã§èšå®ãã¡ã€ã«ãé ãæ§æã¯ãç§å¯ãããŒããŒã·ã§ã³ããç¬éã«æªåé ã®ç«¯æ«ãæ°žä¹ ã«ç· ãåºããè€æ°ç§å¯ã®åæåä»ã»äœ¿ãæšãŠenrollããŒã¯ã³ã»å€±æã端æ«èªèº«ãéå ±ããèšèšãšãå®çµè·¯e2eãã¹ãã®æžãæ¹ãŸã§ã
ãã°ã€ã³ã§ããªãGitHubã¢ã«ãŠã³ãã«çžãããéçºããæ¢ããã«åãžé²ãã
ãã¹ã¯ãŒãäžæã»2FAã§å ¥ããªãGitHubã¢ã«ãŠã³ãã®PATã«workflowã¹ã³ãŒããç¡ããã¯ãŒã¯ãããŒãpushã§ããªãè©°ã¿ã®è§£ãæ¹ã埩æ§ã«èµ°ãåã«æœ°ãã¹ã5ã€ã®çµè·¯ïŒæå ã¢ã«ãŠã³ãã®ã¹ã³ãŒã確èªïŒäŸåã確èªããŠçœ®ãæãïŒã³ãããauthorããç»é²ã¡ãŒã«ç¹å®ïŒæåŸ ã®APIå諟ã§Webãã°ã€ã³åé¿ïŒsecretsç»é²ã¯repo+adminã§è¶³ããåæ ïŒãæé åã
åããã©ã«ãã§è€æ°ã®AIãšãŒãžã§ã³ããèµ°ããããšãã®è¡çªãæ€ç¥ããŠåŸ©æ§ãã
2ã€ä»¥äžã®ã³ãŒãã£ã³ã°ãšãŒãžã§ã³ããåäžäœæ¥ãã©ã«ãã§èµ°ããããšãçæ¹ãçæ¹ã®æªã³ãããäœæ¥ãéãã«æ¶ããè³æºããã¯ã§ã¯é²ããªãçç±ãmtime ã«ããæ€ç¥ãgit checkout--/stash/commit -a ãªã©ã®çŠæ¢åè©ãå£ãããšãã®åŸ©æ§æé ãå§è²ããçæç©ãå€ããªãçœ ãŸã§ããŸãšããéçšæé ã
ã³ãŒãã£ã³ã°ãšãŒãžã§ã³ãæ¬äœããå®ãäºæããã¯ãšã³ããã§èµ°ããã
ãšãŒãžã§ã³ãCLIã®æ¥ç¶å ãäºæãšã³ããã€ã³ããžå·®ãæ¿ããŠå®è¡ã³ã¹ããäžããæé ãenvãåããã»ã¹ã«ã ãæ³šå ¥ããåãã«ã¿ãã°å€ã¢ãã«ã§çªã誀仮å®ãããçœ ããšã€ãªã¢ã¹æ¢å®ã®çœ ãå¥çŽã¢ã«ãŠã³ãã®å®æž¬å€å®ãã«ãŒãå šæ» æã®æ±ºæžåãåããŸã§ã
ãéããªãã£ãè¡ã¯ãŒããã§åšåº«ãæ¶ããäºæ ãé²ã
åšåº«ã»æ£åžã»åç°¿ãªã©å šä»¶çœ®æAPIã«éšåå ¥åãéããšãå ¥åããªãã£ãè¡ãéãã«ãŒãã§äžæžãããããäºæ ã®èŠã€ãæ¹ãçç¥æã®3æ¹éãæžã蟌ã¿åã«çŸåšå€ãåãæ®ã眮ãå®è£ ãè¡ãæ¶ããã«åŸ©æ§ããæé ãæ ç¹ãåãéããªãUIããããŠãéããªãã£ãããŒãã®ååž°ãã¹ããŸã§ã®åã
APIã success ãè¿ãã®ã«åæ ãããªããšãã®åãåãæé
å€éšAPIãžã®æžã蟌ã¿ã HTTP 201 / success:true ãè¿ãã®ã«å€ãå€ãããªãââãšã©ãŒãåºãªãããæãå±éºãªå€±æãå·®åãšã³ãŒ(modified)ã§å€å®ããæžããé ç®ãéé£ãã«éã£ãŠè¡åäœãé ç®åäœããåãåããèšç®å€ãšå ¥åãèŠåããŠãå€ã®ææè ãã«æžãããŸã§ã®æé ãšãã§ãã¯ãªã¹ãã
ãããã€æžã¿ã®æ¬çªã git ããæ°ãããããžã§ã¯ãããå£ããã«è§Šã
git 飿ºãç¡ã CLI ããçŽæ¥ãããã€ãããŠããæ¬çªã¯ãclone ã㊠deploy ãããšæ¬çªã«ã ãããæ©èœãæ¶ãããè§Šãåã«æ¬çªãœãŒã¹ã API ã§ååã㊠git ãšçªãåãããå€å®ãšæé ãç§å¯ãã¡ã€ã«ã®æ··å ¥å¯Ÿå¿ãæ¢åèªèšŒã³ãŒãã«è§Šããªãå€æåºæºãŸã§ã
ãšãŒãžã§ã³ãã®åºåã³ã¹ããæ£ããæž¬ãïŒusageè€è£œã®äºéèšäžãšthinkingã7å²ãšããçŸå®ïŒ
äŒè©±ãã°JSONLããåºåããŒã¯ã³ãéèšããæã«å¿ ãèžã2ã€ã®çœ ïŒusageãã¬ã³ãŒãããšã«è€è£œãã2.27åã«èšããïŒthinkingã¯æ¬æãä¿åãããæåã§ã¯æž¬ããªãïŒãæ€èšŒã³ãŒãä»ãã§æœ°ããããããå質ãèœãšããªãåæžã¬ããŒ=ã¬ã¹ãã³ã¹æ°ã®åæžãå°ãæé ã
ãããã€æŽæ°ã®ãçéããæ¬çªããŒã¿ãå£ã â æ°æ§ã®çãåæã«åãåæã§åªçæ§ãèšèšãã
ãµãŒãã¬ã¹/GAS Web App ã§ãããã€åæ¿ã¯å³æã§ãååçã§ããªããåæ¿ã®çéã§æ°æ§ã®çãæ··åšããæ§çã®æžãæ»ããæ°çã®ç§»è¡ããžãã¯ãç¡æ¡ä»¶å€æããŠããŒã¿ãå£ãåãšãåªçæ§ã®å®çŸ©æ¡åŒµã»ä¿®åŸ©é¢æ°ã»åãåãæé ã»read-backæ€èšŒãŸã§ããŸãšããã
Discord webhook ã®æ»æŽ»ç£èŠãšèªå修埩
åé€ããã webhook ã§éç¥ãç¡èšåæ¢ããã®ãé²ããçåäžã«ãã£ã³ãã«å°åž³ãäœããæ»ãã ãåäžãã£ã³ãã«ã®çå webhook ãžèªåã§å·®ãæ¿ããèšèšãšå®è£ èŠä»¶
ã»ãã·ã§ã³ãéãããæ¬¡ã®ã»ãã·ã§ã³ãèªåããåéããããã«ããïŒ2ã€ã®å±ãæ¹ãšããã®éçïŒ
ãšãŒãžã§ã³ãCLIã®å€ããæ°ã»ãã·ã§ã³åã¯çºç«ã§ããªãããã®å¶çŽäžã§åããã window / inline ã®2æ¹åŒãæŽèµ°ãæ¢ããæ¡ä»¶ã宿ž¬ã§èžãã çœ ãšæ€èšŒé ç®ãŸã§ã®å®è£ æç€ºæžã
ãã£ãš skipped ã ã£ã CI ãžã§ããæãèµ·ãããŠç·ã«ãã
CI ãé·æéèµ€ããš needs: ã®åŸæ®µãžã§ã㯠skipped ã®ãŸãŸæ¬ é¥ãé ãããéå»å®è¡ã®ç¢ºèªæ¹æ³ãããã±ãŒãžãããŒãžã£ã®äºéæå®ã»éçããªã¬ã³ããŒã® DB æ¥ç¶ã»Playwright ã® webServer æªèµ·åãšããå žå4段ããCI ããŒã«ã«åçŸã§åŸåŸ©ãæžãããªããé ã«æœ°ãæé æžã
CIããèªãã¹ããžpushãã飿ºããå±ããªãæ¥ãããartifactããã®pullã§åãã
èªå® /瀟å PCããã³ãã«å ¬éå ãžCIããPOSTãã飿ºãå°éã§ããèœã¡ãåé¡ããé éå ããartifactãåãã«è¡ãpullçµè·¯ã§åããæé ãçæãšé éã®åãåããå€å®è¡šã®èšèšãCIã®å®æé å»¶ã«ããäºéçæã®åé¿ãread-backãç£èŠææšã®ä»ãæ¿ããèšæž¬ããŒã«èªèº«ã®åœéœæ§ã®æœ°ãæ¹ãŸã§ã
ã³ãŒãã®æ¢å®ãçŽããã®ã«æåãå€ãããªã â èšå®ãã¡ã€ã«ã® env æ³šå ¥ãçã
CLI ãšãŒãžã§ã³ãã®åå²ãçŽããŠãå¹ããªãæã®èšºææé ãèšå®ãã¡ã€ã«ã® env æ³šå ¥ãã³ãŒãã®æ¢å®ãšãŠãŒã¶ãŒç°å¢å€æ°ããäžäœã«ããæ§é ãåªå é äœè¡šã§ç€ºããå®å¹ããã»ã¹ env ã®èªã¿æ¹ã»å šã³ããŒã® dry-runã»èŠªããã»ã¹ã§ã®å®ç©ç¢ºèªãŸã§ãæ©æ¢°çãªé åºã§è¡ãã
è€æ°LLMãããã€ãã®ãã©ãŒã«ããã¯é£éã«æ°ããå®è¡è ãå®å šã«è¿œå ãã
å®ãLLMããé ã«è©Šããã©ãŒã«ããã¯é£éãžãæ°ãããã€ãã宿ž¬(æåç/å䟡/å°éæ§)ã«ããšã¥ãæ£ããäœçœ®ã«å·®ã蟌ã¿ã䞊è¡ç·šéã§éãã«æ¶ããªãããé åå šäœãpinããååž°ãã¹ããš4段éã®å®èµ°æ€èšŒãŸã§éãæé ã
CLIãã©ããããMCPãµãŒããäžæµã®ç¡ææ çµäºã§æ»ãã ãRESTçŽå©ããžå¯ãã
å€éšAIã®CLIãåããã»ã¹ã§èµ·åããMCPãµãŒããèªèšŒçµäºã»æ§ã¢ãã«åºå®ã»æ©èœå¥ã®æ åãã§æ»ã¬ãåå ã4å±€ã§åãåããããŒã«åãå€ããã«å®è¡éšã ãRESTãžçœ®ãæããæé ãšãæ¥ç¶ç·ã»ãã¹ãç·ã§ã¯è¶³ããªãæ€èšŒæ¹æ³ã
åžžé§ãžã§ããäœæ¥ããªãŒã® HEAD ã«äŸåãããªãïŒåºå® worktree ïŒ åºåå åé¢ïŒ
æ¯æèµ°ããžã§ãã Cannot find module ã§èœã¡ãã®ã¯ãå®è¡å Žæã人ãå¥ã»ãã·ã§ã³ã®äœæ¥ããªãŒã§ãHEAD ãåãããããžã§ãå°çš worktree ã§ã³ãŒããåºå®ããææç©ã ã --out-root ã§å ±æãªããžè¿ãèšèšãšãçµäºã³ãŒãã§åã5段éã®æ€èšŒæé ã
æ±ããäœæ¥ããªãŒãããã¬ãã¥ãŒæžã¿ã®çã ãããæ¬çªã«åºãïŒgit worktree + VercelïŒ
æªã³ãããå·®åã ããã»originãšãºã¬ãããŒã«ã«ãã誀ã£ãçãæ¬çªã«åºãäºæ ããdetached worktree + .vercelã³ã㌠+ æ¬çªURLãžã®å®æç»æ€èšŒã§å¡ãæé
ããã·ã¥ããŒãããartifact ãèŠã€ãããªããã§çã£èµ€ã«ãªãã®ãå¡ã
GitHub Actions ã®ææç©ãç»é¢ã«åºãæ§æã no valid artifacts found ã§èœã¡ãçå ïŒpreflight skip ãã run ã success ã ã artifact ç¡ãïŒãšãartifact å®åšç¢ºèªïŒçŽè¿æåãžã®ãã©ãŒã«ããã¯ã§ç»é¢ã殺ããªãçŽãæ¹ãåžžé§ããã»ã¹ã®äžä»£ç¢ºèªãšå®ãã©ãŠã¶æç»ãŸã§ã®æ€èšŒæé ã€ãã
AI ãšãŒãžã§ã³ãã«æ¬çª DB ã® migration ãä»»ããïŒç Žå£ç SQL ãæ§é çã«å®è¡ã§ããªãã©ã³ããŒïŒ
æ¬çª DDL ã ãæ¯å人ã SQL ãšãã£ã¿ã«è²Œã£ãŠããç¶æ ãè§£æ¶ããæé ãçŠæ¢èª grep ã§ã¯ãªã allowlist ææ³ã§ããŒã¹ããŠèš±å¯æ§æã ãå®è¡ããã©ã³ããŒã1æ¬äœãããã®ãã¹ã ããèš±å¯ãããæåå€å®ã«ãæåŸ ã«ã©ã ã®å®åšç¢ºèªããå¿ é åããŠæ²é» failure ãæœ°ããTLS ã®ãã©ã€ããŒã CAããããŒãžã DB æšæºã® event triggerãå±¥æŽåºæºã®ãæªé©çšã誀èªãšãã3ã€ã®èœãšã穎ã®åé¿èŸŒã¿ã
ææ¡ãã¥ãŒãæºãŸãã ãã®ãŽãç®±ã«ããªã â å€éã®èªåããªã¢ãŒãž
AIãåºããææ¡ãæºããä»çµã¿ã ãäœããšå¿ ãè ããWebæ€çŽ¢ã§è£åããå®ãLLMãverdict/adoptãè¿ããdone/rejected/TODO起祚ãŸã§ç¡äººã§åãèšèšãunclearã¯æšãŠãNåã§æã¡åãèŠåãç¡ææ ãçŒããªãæ¢å®å€ãPowerShellã®BOM/æååãã®çœ ãŸã§ã
GUIæ¡åŒµã®ãä»ã®ç°å¢ã«ã¯åºãã®ã«ãããã«ã¯åºãªãããèšå®æ¢ãããå§ããªã
GUIæ¡åŒµã®æ©èœæ¬ èœã¯èšå®ã§ã¯ãªãçã®äžäžèŽã皌åäžã®çãããã»ã¹ãã¹ã§ç¢ºå®ããå¥ãŠã£ã³ããŠã§æ°çãA/BïŒä¿¡é Œç¡å¹åãå¿ é ïŒããŠã¹ã¯ã·ã§ç®èŠãŸã§èªåã§ãã£ãŠãããåèªã¿èŸŒã¿ãåæä»ãã§æž¡ãæé
å 容ã§è¡ãç¹å®ããæžãæ»ãããããæ¥ããæ°žä¹ ã«äžèŽããªããªã
ã¹ãã¬ããã·ãŒããæ£æ¬ã«ããæ¥åã¢ããªã§ãç»é²ã§ããã®ã«åæ ãããªãããèµ·ããå žåãæ£èŠåã®trimãšsliceã®é åºã§ä¿åå€ã®åŸåŸ©ãéåªçã«ãªããå šè¡èµ°æ»ã§0ä»¶ãããã«ãªããæ¬çªãã°ããã®è¿œãæ¹ãããã·ã¥ãå€ããã«çŽãæ¹æ³ãéè€è¡äºæ ãé²ãåºå®å€ãã¹ããŸã§ã
ãçŽããã®ã«çŽããªããâ åãç»é¢ã«æžã蟌ãçµè·¯ã2æ¬ããã®ãèŠèœãšã
å©çšè ã®äžå ·åãçŽããã®ã«çŽããªãæã®å®çªåå ãåãè¡šç€ºã«æžã蟌ãã³ãŒããè€æ°ããçæ¹ããçŽããŠããªããã¬ã€ã¢ãŠãçæ°ãçæ¹ã®çµè·¯ã ããèŠãŠãããèšé²ã®æåŠã確èªãããå¥ã®å ŽæãèŠãããšæ¡å ãããã®3é¡åãšãåºå®æèšããã®éåŒãã»å ±æãã«ããŒãžã®éçŽã»å®ããŒã¿èªã¿æ»ãã§ã®æ€èšŒæé ã
æŸçœ®ããã open PR ãå®å šã«æ£åžãããïŒããŒãžãããšéè¡ãã PR ã®èŠæãæ¹ïŒ
CI ãç·ã§ããåŸããèŠãããçµè«ãå«ã PR ãããŒãžãããšä»æ§ãå·»ãæ»ããäœ¿ãæšãŠ worktree ã§æ®å·®åãŒãå€å®ã»é³è åºŠã®æ°å€åã»éè¡æ€ç¥ãè¡ããããŒãž/ã¯ããŒãºãæ©æ¢°çã«æ¯ãåããæé ãread-back ãšã¯ããŒãºæ ¹æ ã³ã¡ã³ãã®ãã³ãã¬ä»ãã
远å ãããã¹ããæ¬åœã«ãã®äžå ·åãæãŸããããå¯Ÿç §çŸ€ã§ç¢ºããã
ãã¹ããç·ã§ããçŽãåã®ã³ãŒãã«åœãŠãŠãç·ãªããšããããçŽããç®æã1ã€ãã€ç¡å¹åããŠèµ€ããªãã確ãããæé ã眮æãåœãããçŽ éãããçœ ïŒCRLFïŒãšãæåŸ æååãå®è£ ãéããªãçµè·¯ã§åºåã«æ··å ¥ããçœ ïŒäŸå€ã¡ãã»ãŒãžã®ã³ãã³ãã©ã€ã³å šæïŒã®2ã€ã朰ãé圢ã€ãã
ã1å°ã ããã®ãµã€ããéããªããã30åã§ç¢ºå®ããã â IPv4å°çšãµã€ã à IPv6åç·
Cookieåé€ãã·ãŒã¯ã¬ãããå¹ããªãERR_CONNECTION_TIMED_OUTãããµãŒãåŽã®ç¡çœªã宿ž¬ã§èšŒæããŠãã端æ«åŽãèªã¿åãå°çšã³ãã³ãã ãã§ç¢ºå®ãããæé ããªã¢ãŒãæ¥ç¶ãäŒè°ãåããã«åå ãäžæã«æ±ºããã
å€éšé£æºã®å€ãå éšãã£ãŒã«ãã§æ€èšŒããŠèª€èšºããªãæé
ãã£ãã«é£æºã»åšåº«/äŸ¡æ Œåæã§ãéã£ãå€ãå€ã«ã©ãåºãŠãããããå éšAPIã®ãã£ãŒã«ãã§ç¢ºèªãããšèª€èšºãããæŽŸçå€/åèå€ã®æ··åããã£ãã«åäœã®ä¿æ°ãã¬ã¹ãã³ã¹ã®ç¡èšåãæšãŠãšãã3ã€ã®çœ ãšãæ¶è²»è åããšã³ããã€ã³ãâå šä»¶çªåâãã©ãŠã¶å®æç»ãšããæœ°ãæ¹ã
宿å®è¡ããæåãªãåãããŸãŸäœé±éãæ¢ãŸã£ãŠããã®ãèŠæããŠçŽã
GitHub Actions ã® schedule ã ãã 403 ã§å šæ» ããŠãæåå®è¡ã¯æåãç¶ããããæ°ä»ããªãã--event=schedule ã§ã®çåå€å®ãactions:read ã®ä»äžãçŽããåŸã«é²åºããæ¬¡ã®å±€ã®æœ°ãæ¹ãæ»æŽ»ç£èŠã®ä»çµã¿åãŸã§ãæé åããã
審æ»åŸ ã¡ãã¥ãŒã«åãäž»é¡ãç©ã¿äžããã®ããåºãåãã«æ¢ãã
åãäžãAPIãç¡ãæçš¿å ã«ã䞊è¡ã»ãã·ã§ã³ãåãäž»é¡ãéè€æçš¿ããã®ãæçš¿çŽåã®ãããå€ã²ãŒãã§æ¢ããããããå€ã¯åã§çœ®ããæ¢åãã°ã®åçã§æ±ºããæé ãŸã§å«ãã
AI ã«å®è£ ãå§è²ããŠããéã« main ãåã â çæåã®PR確èªãä¿¡çšããªã
ã³ãŒãã£ã³ã°ãšãŒãžã§ã³ããžã®å§è²äžã«ä»è ãåããã¡ã€ã«ã main ãžå ¥ãããCIã1æ¬ãèµ°ããªã/mergeable UNKNOWN ã¯ãããŒã¹ãå€ããåå³ãpushçŽåã®fetch+rebaseãšãrebaseåŸã®å šäœãã¹ãåå®è¡ãŸã§ãåã«ãã
æåããŠããã®ã«ãã¹ãããããšåºããã°ã®æœ°ãæ¹(ãã£ã¹ãããã£ã®æ»ãå€èŠçŽ)
ãã¿ã³äžèЧâã³ãã³ã颿°ããã£ã¹ãããããåã®ããŒã«ã§ãç¶æ ãã©ã°ãšæçްé åã«åãããŒåã䜿ããšç©ºé åãtruthyã§åžžã«æç«ããæåããŠããã¹ãããã衚瀺ã«ãªããåå ç¹å®ã®é åºã»ä¿®æ£ã»æèšãã®ãã®ããã¹ãããéè¡é²æ¢ãŸã§
æ¢åã® Claude Code ç°å¢ã«ãåŠã³å°åž³ã»Decision Recordã»æ¯æ°ç §åã»HANDOFFããåŸä»ãããæé
CLAUDE.md ãšã»ãã·ã§ã³çµäºæé ãæ¢ã«æã€ç°å¢ãžãåãåŠã³ã3åæ°ããŠä»çµã¿åããå°åž³ã»åæãå€ãã£ããèŠçŽãæææ±ºå®èšé²ã»æ¯æ°ç §åã®å®äºæ¡ä»¶ã»å®è¡åœ¹ãžã® HANDOFF ãã³ãã¬ããæ¢åäœç³»ã眮ãæããã«å·®åå°å ¥ããæé ã
ãæ°åãå€ãããªããâ 宿åºåãæ¢ãŸã£ãæã«æåã«çãå Žæãééããªã
宿ã¬ããŒããæŽæ°ãããªãã»ãšã©ãŒãã°ã¯ç©ºã»æåå®è¡ã¯æåããã®çµã¿åããã¯ãèµ·åããŠããªããã®ãµã€ã³ã蚺æé åºïŒããªã¬ãŒç»é²âæåå®è¡âå®è£ ïŒãšãäºåºŠãšæ²é»ãããªãå®è£ ãã¿ãŒã³ïŒãã£ãã·ã¥é®®åºŠèŠåã»stderrä¿åã»finallyè§£æŸïŒ
æ©èœãå°éãããçžä¹ãã®æ€èšŒãæ»ã¬ â æªæ€èšŒã®ãŒããç»é¢ãã远ãåºã
å±éºãªæ©èœãåŸããå°éãããšãåããã©ã°ã«ã¶ãäžãã£ãŠããæ€èšŒåŠçãéé£ãã§æ»ã«ãããŒã«ã¯æªæ€èšŒã®ãŒããã確èªããçµæãŒããã®é¡ã§åºãç¶ãããå®äŸã§ã¯1é±éã12ä»¶ã¶ãã®åã®èŠå ±ãåºããŠããããã©ã°åç §ã®ä»åãæ¹ãæªç¢ºèªã空éåã§è¡šçŸããªãæã¡æ¹ãåå ãã±ãã®åèšãäžå€æ¡ä»¶ã«ããæ°ãæ¹ã0/1/2 ã®çµäºã³ãŒãèšèšãä¿®æ£ååŸãæ¬çªããŒã¿ã§äžŠã¹ãæ€èšŒæé ãå§è²å®è£ ã®åãå ¥ãåºæºãŸã§ã
èšå®ããªããç §ååšããæ¯æãã£ãšèµ€ãã«ãªãã®ãæ¢ããïŒç §å察象å€ã®å€ã®æ±ããšguardã®åœãŠæ¹ïŒ
決å®å°åž³ãšæ¬çªèšå®ãæ¯æ¥ç §åããä»çµã¿ã¯ãAPIã«çŸããªãå€ããã¹æ¬ã«èª¬ææã§æžããç¬éã«æ°žä¹ MISSINGãžèœã¡ãæ¬ç©ã®ããªãããåããããç §å察象å€ã第3ç¶æ (null=DOC)ã«åããèšèšãå€ãå·»ã蟌ãŸãæžåŒã ãçŽãæé ãæ§ããŒã¿ã§failãããŠããåœãŠãguardã®æ€å®é ã瀺ãã
ããŒãžã³ã°APIã§ãå šä»¶åããã€ãããã4%ã ã£ã â éããªåãããŒãã®æ€åºæ³
limit ãç¡èŠããŠåžžã«20ä»¶è¿ãAPIã«å¯Ÿã offset ãèŠæ±limitåé²ããŠãããã6,902ä»¶äž280ä»¶ããåããŠããªãã£ãããã¹ããCIãç·ã ã£ãçç±ãšãæ¬çªã®æå°æªããåçŸããã¢ãã¯ã®æžãæ¹ã
CI ãå šéš green ãªã®ã« auto-merge ãããªã PR ãåå ããç¹å®ããŠèªåããŒãžã«ä¹ãã
GitHub ã® auto-merge ãå¹ããªãåå ã¯æš©éã§ã¯ãªã fork ã§ããããšãå€ããåãåãã³ãã³ããã¯ãŒã¯ãããŒã®5æ¡ä»¶ã®èªã¿æ¹ãæ£ããæåºçµè·¯ãã©ãã«å¿ããæåã«èŠããèœãšã穎ãGraphQL ãš REST ã®2系統ã宿ž¬ä»ãã§ç€ºã
squash ããŒãžæžã¿ã®ãã©ã³ã / worktree ãå®å šã«æ¶ãå€å®æé
çšæžã¿ã®äœæ¥ãã©ã³ãã git worktree ããæªåã蟌ã¿ã®äœæ¥ã倱ããã«æ¶ãããã®å€å®æé ãsquash ããŒãžã¯ç¥å é¢ä¿ãåããã git branch --merged / --contains / origin/main..HEAD ã¯ãã¹ãŠãæªããŒãžããšèª€å ±ãããããã«ããŒã«ã«ã® origin/main ref ãå€ããšå 容 diff ã§ãçããééããããã®2ã€ã®èª€ããæœ°ãã2ç¹diffãš3ç¹diffã®åãåãã»åäžé¡åã³ãããã«ããæ±ºå®æã»åé€åŸã® read-back ãŸã§å«ããŠç¢ºå®ããããAI ãšãŒãžã§ã³ãã«æããéã®æ³šæïŒèª¿æ»ãšåé€ãæ··ããªãïŒä»ãã
飿ºããæš©éäžè¶³ãã«èŠããŠå®ã¯ã身å éããã®ãšã â äž¡åŽã®ã¢ã«ãŠã³ããå ã«å®æž¬ãã
ãããã€ãµãŒãã¹ãšGitãã¹ãã£ã³ã°ã®é£æºãç¹ãããªãæãè³æºåŽã®æš©éããããç¶ããŠåŸåŸ©ã溶ãã倱æãæ¢ãããèŠæ±åŽãå€éšã§åä¹ãååãšè³æºã®ææè ã宿ž¬ã§çªãåãããæé ãè©°ãŸã£ãæã«ç®çãžæ»ã代æ¿ãç°å¢å€æ°ã®ã¹ãããã·ã§ããé åºãªã©äœµçºããçœ ãŸã§ã
å§è²ããå®è£ ããæ¬çªã§èµ·åãããç°å¢ãã§åãå ¥ãæ€èšŒãã
AIã«å®è£ ãå§è²ãããšãã¹ãã¯ç·ã§è¿ãããããã¯å§è²å ã®ç°å¢ã§ã®ç·ã§ãããªããWSLãšãã€ãã£ããªã©å®è¡ç°å¢ã2ã€ãããšçæ¹ã§ã ãéãã³ãŒããçãŸããæ¬çªãžé ç·ããæ¥ããéãã«å€±æãããæ¬çªã®èµ·åçµè·¯ã§åãå ¥ãæ€èšŒããåãšãç°å¢å·®ã§æ»ã¬å®çª3ã€ãç Žå£çããŒã«ã®è¿œå ã²ãŒã4ã€ã
fork PR ããåºããªã AI ãšãŒãžã§ã³ãã«ãããŒãžãŸã§ããå®äºæ¡ä»¶ã«ãããªã
pushæš©éã®ãªãã¢ã«ãŠã³ãã§åãAIãšãŒãžã§ã³ãããCIå šgreenã§ãããŒãžã§ããã¿ã¹ã¯ãæ°žä¹ ã«åŒãç¶ãç¶ããæ»çã®èšºæ3ã³ãã³ããšãå®äºæ¡ä»¶ã®ç«ãŠæ¹ã»ãªããžããªåŽã®æä¹ ç2æ¡ã
å®ãLLMã«ã³ãŒãããã¡ã€ã«åäœã§çæãããŠå®å šã«æžãåºãïŒåºåãããŒã«ãŒïŒèš±å¯ãªã¹ãïŒæ€åïŒ
ã³ãŒãã£ã³ã°ãšãŒãžã§ã³ããåããªãç°å¢ã§ãDeepSeekçã®ãã£ããAPIã«è€æ°ãã¡ã€ã«ã®å®å šå 容ãåºãããèš±å¯ãªã¹ãä»ãsplitterã§æžãåºãããã¹ãã»diffã»èŽåœãã¿ãŒã³ã§æ€åããåãã«ãŒãã£ã³ã°äžæžããã³ããŒçãªã©ã®å€±æè¡šã€ã
GAS Webã¢ã㪠åå äžæã®å€±æ åãåããã§ãã¯ãªã¹ã
æåå®è¡ã¯æåããã®ã«Webã¢ããªçµç±ã ã倱æããGASã®è¬ãšã©ãŒãããµãŒããŒæé©åããå ã«å¥ç«¯æ«ãã¹ãâãã£ãã·ã¥ç¢ºèªã®é ã§åãåããæé
ãµãŒããŒã¬ã¹ã«æ°secretãè¶³ããããŒã«ã«CLI+宿ã¿ã¹ã¯ã§å€éšAPI飿ºãè£å®ãã
Vercelçã«æ°èŠtokenãå¢ãããããªãæãéçºæ©ã®èªèšŒæžã¿CLI(ghç)+OS宿ã¿ã¹ã¯ã§åªçãªå·®ååæã«ããèšèšãã¿ãŒã³ãthrowawayã¬ã³ãŒãã§ã®å®å šãªE2Eæ€èšŒæ³ãšWindows PowerShellã©ãããŒã®æååã/ããŒã¹ãšã©ãŒåé¿ãå«ãã