å·»ç©ãæ¢ã
19ä»¶ã®å·»ç©
Google Meet èªååå &åç»é ä¿¡Bot éçºæç€ºæž
æå®ããæå»ã« Google Meet ãžèªååå ããåç»ãåçããªããç»é¢å ±æãã Bot ããClaude Code ã«äžçºã§äœãããéçºæç€º MDãæäŒã®å®äŸåç»é ä¿¡ã»ãŠã§ãããŒã®èªåæŸéã«ã
ç¡äººå®è¡ãžã§ãããåããã®ã«äœãæ®ããªãããæœ°ãèšèš
cron/ã¿ã¹ã¯ã¹ã±ãžã¥ãŒã©ããAIãšãŒãžã§ã³ããé·æéåŠçãç¡äººã§èµ°ãããéã®2å€§äºæ ïŒã¿ã€ã ã¢ãŠãkillã§åºåãäžžããšæ¶ããïŒå®è¡ãããã³ãŒãããã®ç¬éã®HEADã§æ±ºãŸãïŒãæ§é çã«æœ°ãå®è£ æç€ºæžã鿬¡é²æãã¡ã€ã«ã»åŸ æ©æéã®äžéã»äœææå»ããã®å®è¡ID埩å ã»åºå®worktreeãžã®pinã»å®èµ°åã ãã®åŸçä»ããŸã§ããã¹ã芳ç¹ãšå®äºæ¡ä»¶ä»ãã
æ¯æ©ãæ¶åããŠãããã€ããã®ããããåãå é Nä»¶ãããçŽããŠããã®ãèŠæããŠçŽã
æ®ã¿ã¹ã¯äžèЧãç¡äººããããäžããæ¶åããæ§æã§ãå®äºã®æžãæ»ããæªé ç·ã ãšæ¯æ©ããªãå é Nä»¶ã ããåãã以éã«æ°žä¹ ã«å°éããªãããšã©ãŒããã°ãåºãªããã¹ã±ãžã¥ãŒã©ã®3é ç®ã§ãæ°èšå®ã®ååã¯ãã€ããã確å®ããæžãæ»ãã®2ã€ã®å£ãæ¹ïŒæ¢çŽ¢ã¹ã³ãŒãã®ãºã¬ïŒdead exportïŒãæ€æ»ããrunneråŽã§æ©æ¢°çã«æžãæ»ãé ç·ãšãå®ããŒã¿ã§ no-match 0 ã確èªããæ€èšŒæé ãŸã§ã
Windows宿ã¿ã¹ã¯ãåãç§ã«èµ·åãããšçæ¹ãç¡é³æ»ããïŒé ãã©ã³ããŒã®å ±æãã°ãšcmd >> æä»ïŒ
result=1ã»ãã°0è¡ã§æ»ã¬å®æã¿ã¹ã¯ã®çå ããé ãã©ã³ããŒãå šã¿ã¹ã¯ã®ãã°ã1ãã¡ã€ã«ã«æµã cmd ã® >> ãæä»ã§éãããšã ã£ãä»¶ãåçŸæé ã»åãåãã»ãã°ååé¢ãšèšçœ®å ã®èªå·±æŽæ°ã»åäžç§èµ·åãã¹ããŸã§
ç¡äººã§Google Meetã«å®æèªååå ãé³å£°ä»ãé ä¿¡
Playwright + Chrome èµ·åãã©ã° --auto-select-tab-capture-source-by-title ã§å ±æããã«ãŒãåºããã¿ã(é³å£°èŸŒã¿)ãèªåéžæããå®æã« Google Meet ãžç¡äººåå ããŠåç»é ä¿¡ããä»çµã¿ãã³ã³ãããªã³ã¢ãŒãèªåãã©ãŒã«ããã¯ã»OOM察ç(preload=metadata)ã»åšå®€ãŠã©ããããã°ã»ã¿ã¹ã¯ç»é²ã®æååãåé¿ãŸã§å®éçšããŠããŠèŸŒã¿ã
é åžããèªååããèªåãæŽæ°ã§ããªããåé¡ã®æ ¹æ²»ãšäººæãŒã埩æ§ã®3å±€èšèš
è€æ°ç«¯æ«ãžé ã£ãhook/åžžé§ã¹ã¯ãªãããç¡èšã§å€ããŸãŸæ¢ãŸãåå (åçµã³ããŒã»å®è¡ã·ã§ã«å·®)ãšãäžå€®ãã¥ãŒ/èªå·±ä¿®åŸ©æé /çådigestã®3å±€ã§äººã®æäœãŒãã§åŸ©æ§ãããèšèšã宿ž¬ã§èžãã ãç·ãªã®ã«äœãèµ·ããªããçœ ã€ãã
ç¡äººãããã®ãé»ã£ã空æ¯ãããçºèŠããŠæ¢ããïŒåªçå蟌ã®èšèšïŒ
宿ãããããšã©ãŒãåºããªããŸãŸæ¯ååãä»äºãããçŽããŠããç¶æ ã®æ€åºæ³ã»å žåçãªçå ïŒå蟌æžã¿éåãå®äœã®åäžã«ã©ã ã§æã€ïŒã»å°åž³ã«ããä¿®æ£ã»æã¡åãä»ãå詊è¡ã»CI課éã§ã®å¹æå®æž¬ãŸã§ã
è€æ°ããŒã¿æºâCIã§æ¥æ¬¡AIãµããªãŒçæâèªäœPWAãžé ä¿¡ããä»çµã¿
æ¯æããŒã¿æºã暪æããŠLLMã«èŠçŽã»åªå é äœä»ããããçµæãèªäœPWAããã·ã¥ããŒãã«èªå衚瀺ãéãååŸãšLLMåŒã³åºãã¯ã·ãŒã¯ã¬ãããæã€CIåŽãPWAã¯çµæJSONãingeståä¿¡ããã ããCIç©ºå€æ°ã»æ¬çªãã«ãstaleã»dry-runæ€èšŒã®çœ ã€ãã
䞊è¡AIã»ãã·ã§ã³ãå ±æãªããžããªã§äºæ ããªãå
è€æ°ã®AIãšãŒãžã§ã³ããåãäœæ¥ããªãŒãå ±æããæã®äºæ 鲿¢ãšãé åžç©ããé åžå¯ããšèšãåã®3å±€æ€èšŒïŒã³ãŒãã»ç»é²ã»é åžïŒãæé åããMD
å€éã®ç¡äººAIãšãŒãžã§ã³ããããããéãã«å šæ» ãããã®ãæ¢ããïŒèŠ³æž¬ã¿ã¹ã¯ã®ç«ãŠæ¹ïŒ
å€éãããã§AIãšãŒãžã§ã³ããç¡äººå®è¡ãããšã倱æãã®ãã®ã誰ã«ãå±ããªãã芳枬ã»åãåãã»èªå·±ä¿®åŸ©ã»å ±åãå¥ã¿ã¹ã¯ãšããŠç«ãŠãæé ãšã宿ž¬ã§èžãã 4ã€ã®éããªå šæ» çµè·¯ïŒspawnã®åæthrowïŒå é ãããã¯ããèªãŸãªãããŒãµïŒã³ã³ãœãŒã«ã®ãšã³ã³ãŒãã£ã³ã°ïŒã¹ãªãŒãã§æªçºç«ïŒã®å¡ãæ¹ã
æ£ãã°ã£ãæ¥åã·ãŒããããçºæ³šãå¿ãããæ©æ¢°çã«æ€ç¥ããéçŽè¡šãäœã(GAS)
æ¡ä»¶ããšã«åãããã¹ãã¬ããã·ãŒããšå€éšã¹ãã¬ãŒãžãçªãåãããã衚ã«ãããããŒã¿ãç¡ãããããŒã¿ã¯ããã衚ã«ç¡ããã®åæ¹åã§æããåºããåååãè€æ°ãã/ãã³ãã¬ãã©ã«ãã空/6åå¶é/ããªã¬ãŒäžéãªã©ã宿ž¬ã§èžãã çœ ãšåé¿çã€ãã
reCAPTCHA ã®ãããµã€ãã AI ã«äœåºŠãèªãŸããïŒãã°ã€ã³çªãã»ãã·ã§ã³ããåãé¢ããŠåžžé§ããã
Playwright ã® launchPersistentContext ã¯èŠªããã»ã¹ãæ»ã¬ãšãã©ãŠã¶ãæ»ã¬ãããAI ãšãŒãžã§ã³ãã®ã»ãã·ã§ã³ãå€ãããã³ã«äººã reCAPTCHA ãæŒãçŽãããšã«ãªããdetached èµ·åïŒCDP æ¥ç¶ããããã¡ã€ã«åºå®ãšãã°ã€ã³ä¿æã管çè æš©éã䜿ããªããã°ãªã³åžžé§ã®3å±€ã§è§£æ¶ããæé ãexit code å¥çŽãšãå®éã«å£ããŠç¢ºãããæ€èšŒæé ã€ãã
Discord webhook ã®æ»æŽ»ç£èŠãšèªå修埩
åé€ããã webhook ã§éç¥ãç¡èšåæ¢ããã®ãé²ããçåäžã«ãã£ã³ãã«å°åž³ãäœããæ»ãã ãåäžãã£ã³ãã«ã®çå webhook ãžèªåã§å·®ãæ¿ããèšèšãšå®è£ èŠä»¶
宿ã¿ã¹ã¯ãéçºããªãŒãçŽæ¥å©ããŠå€ãã³ãŒãã§åãç¶ããã®ãæ€åºããŠçŽã
æ¯æ©åããŠããã¯ãã®ããããæ°åã³ãããåã®ã³ãŒãã§èµ°ããçµæã¯æ¯åexit 0ãå°çšã¯ããŒã³+åæã©ãããžåŒµãæ¿ããå€±ææ³šå ¥ãšæé垯ã²ãŒãã®çœ ãŸã§å«ããŠæ€èšŒããæé ã
åžžé§ãžã§ããäœæ¥ããªãŒã® HEAD ã«äŸåãããªãïŒåºå® worktree ïŒ åºåå åé¢ïŒ
æ¯æèµ°ããžã§ãã Cannot find module ã§èœã¡ãã®ã¯ãå®è¡å Žæã人ãå¥ã»ãã·ã§ã³ã®äœæ¥ããªãŒã§ãHEAD ãåãããããžã§ãå°çš worktree ã§ã³ãŒããåºå®ããææç©ã ã --out-root ã§å ±æãªããžè¿ãèšèšãšãçµäºã³ãŒãã§åã5段éã®æ€èšŒæé ã
ç¡äººãžã§ãã®æ²é»ãã倱æãšå¹ææ€èšŒã®èªåå€å®
宿ãžã§ãã1è¡ããã°ãæ®ããã¹ããããããäºæ ã®æ€ç¥ãšãæä¹ 察çã®å¹ææ€èšŒããžã§ãèªèº«ã«å€å®ãããåãWindows Interactive ã¿ã¹ã¯ãç¡äººåèµ·åã§æšãŠãããçœ ãæ€èšŒãå£ãèŠåæã®æ¯æ£ãå šåå²ã®æéåœè£ ãã¹ããŸã§ã
宿ãžã§ããé»ã£ãŠæ¢ãŸã£ãã®ãæ€ç¥ããŠèªå修埩ããèŠåŒµãçªã®å
ç¡äººãžã§ãã®æ»æŽ»ã3å±€ïŒèµ·åã»çµäºã³ãŒãã»ä»æ¥ã®ææç©ïŒã§å€å®ããåºå®ããäœæ¥ã³ããŒã§ã®åå®è¡ã§èªå修埩ããåãå€å®äžèœãšéåªçãè§Šããªãåãåãã1æ¥1åã»3æ¥ã§æã¡åãæŽèµ°é²æ¢ãçžäºç£èŠãå®è£ ãå®äŸ¡ã¢ãã«ãžå§è²ãããšãã«å®è¡ããŠåããŠåºãæ¬ é¥ãŸã§ã
èªåèµ·åããCLIãšãŒãžã§ã³ããååããã³ããã§åºãŸãåé¡ã朰ã
ç¡äººã§èµ·åãã Claude Code çã® TUI ããããŒãéžæãããã©ã«ãä¿¡é Œãã®ååããã³ããã§ç¡èšã®ãŸãŸæ¢ãŸãåé¡ã®æä¹ 察çãtheme ã settings.json ã«çœ®ãçç±ïŒå¥ãã¡ã€ã«ã«æžããšæ¶ããïŒãä¿¡é Œã²ãŒãã人ã®åæä»ãã§éãåãã¹ã¯ãªãŒã³ã·ã§ããã§å ¥ååŸ ã¡å°éãŸã§ç®èŠããæ€èšŒæé ãå¹ããªãæ€èšŒæ¹æ³3ã€ã
å§è²ããå®è£ ããæ¬çªã§èµ·åãããç°å¢ãã§åãå ¥ãæ€èšŒãã
AIã«å®è£ ãå§è²ãããšãã¹ãã¯ç·ã§è¿ãããããã¯å§è²å ã®ç°å¢ã§ã®ç·ã§ãããªããWSLãšãã€ãã£ããªã©å®è¡ç°å¢ã2ã€ãããšçæ¹ã§ã ãéãã³ãŒããçãŸããæ¬çªãžé ç·ããæ¥ããéãã«å€±æãããæ¬çªã®èµ·åçµè·¯ã§åãå ¥ãæ€èšŒããåãšãç°å¢å·®ã§æ»ã¬å®çª3ã€ãç Žå£çããŒã«ã®è¿œå ã²ãŒã4ã€ã