
- TOP
- ã¿ã°äžèЧ
- Linux
Linux
ã€ãã³ã
ãã¬ãžã³
æè¡ããã°
AI ãšãŒãžã§ã³ãããããã¿ã€ãããæ¬çªç°å¢ã«ç§»è¡ãããšãã€ã³ãã©ã¹ãã©ã¯ãã£ã®èª²é¡ã¯åå¢ããŸãããšãŒãžã§ã³ãã¯ãæ°æéãŸãã¯æ°æ¥éå®è¡ãããè€æ°ã¹ãããã®ã¯ãŒã¯ãããŒã«ããã£ãŠç¶æ
ãç¶æããå¿
èŠããããŸããä»ã®ãšãŒãžã§ã³ããšèª¿æŽããããã³ã³ããã¹ããå
±æããããç¹æ®ãªã¿ã¹ã¯ã®ããã« GPU ã«ã¢ã¯ã»ã¹ãããããå¿
èŠããããŸããAmazon Bedrock AgentCore Runtime microVM ã¯ãæå€§ 8 æéå®è¡ã§ããå®å
šãããŒãžãåã®åŒã³åºãç°å¢ãæäŸãããããŒãžãã»ãã·ã§ã³ã¹ãã¬ãŒãžãéããŠã¹ããŒããã«ã¯ãŒã¯ãããŒããµããŒãããŸããã¯ãŒã¯ããŒãã«ãã£ãŠã¯ãå°çšã®å€§å®¹éç°å¢ã®ã¡ãªããããããŸããããšãã°ããšãŒãžã§ã³ããè€æ°æ¥éç¶ç¶ããŠå®è¡ããããGPU ãåºç€ãšãªã OS ã«ã¢ã¯ã»ã¹ããããåããã¹ãäžã§è€æ°ã®é£æºãšãŒãžã§ã³ããå®è¡ãããããå¿
èŠãããå Žåãªã©ã§ãã 2026 幎 8 æ 6 æ¥ãã©ã³ã¿ã€ã ã€ã³ã¹ã¿ã³ã¹ãçºè¡šã§ããããšãå¬ããæããŸãããã㯠Amazon Bedrock AgentCore Runtime ã®æ°ããè£å®çãªã³ã³ãã¥ãŒãã£ã³ã°ãªãã·ã§ã³ã§ãè€éãªãšãŒãžã§ã³ãã¯ãŒã¯ããŒãåãã«æ§ç¯ãããæ°žç¶çã§ãããŒãžãåã®ã€ã³ãã©ã¹ãã©ã¯ãã£ããšãŒãžã§ã³ãã«æäŸããŸãã åŸããããã® ã©ã³ã¿ã€ã ã€ã³ã¹ã¿ã³ã¹ã¯ããããããç¬èªã®äŸåé¢ä¿ãšã¢ãŒãã£ãã¡ã¯ãã¿ã€ããæã€è€æ°ã®ãšãŒãžã§ã³ãã 1 ã€ã®ã©ã³ã¿ã€ã ã«ãããã€ãã AWS ãããŒãžã EC2 ã€ã³ãã©ã¹ãã©ã¯ãã£ãæäŸããŸãããšãŒãžã§ã³ãã¯ãæå€§ 14 æ¥éæç¶ããå
±æã»ãã·ã§ã³å
ã§åããã¹ãã§å
±åäœæ¥ã§ããŸãããã®ãµãŒãã¹ã¯ãèšç®éã®å€ãã¿ã¹ã¯ã®ããã® GPU ã¢ã¯ã»ã©ã¬ãŒã·ã§ã³ãã¢ã€ãã«æéäžã®ã³ã¹ãåæžã®ããã®ã»ãã·ã§ã³åæ¢/åèµ·åãããã³ç¬ç«ããŠåºè·ãããããŒã åãã®ã³ã³ããåããããããã€ããµããŒãããŸããã»ãã·ã§ã³çµäºåŸãåç¶ãããå¿
èŠã®ããç¥èã«ã€ããŠã¯ãã©ã³ã¿ã€ã ã€ã³ã¹ã¿ã³ã¹ã Amazon Elastic Block Store (Amazon EBS) ãš AgentCore Memory ãšèªç¶ã«çµã¿åããããŸããããã«ããããšãŒãžã§ã³ãã¯ã»ãã·ã§ã³ãç°å¢ãè¶
ããŠé·æçã«æãåºãããšãã§ããŸãã ãããŸã§ããšãŒãžã§ã³ããäœæ¥ã皌åããããå ŽåããGPU ã¢ã¯ã»ã¹ããã«ããšãŒãžã§ã³ãã®é£æºãå¿
èŠãªå Žåã¯ããã®ã€ã³ãã©ã¹ãã©ã¯ãã£ãèªåã§æ§ç¯ããŠç®¡çããå¿
èŠããããŸãããEC2 ã€ã³ã¹ã¿ã³ã¹ã®ããããžã§ãã³ã°ããããã¯ãŒãã³ã°ã®èšå®ãã»ãã·ã§ã³ç®¡çã®ã»ããã¢ãããã¹ã±ãŒãªã³ã°ã®åŠçãã¢ãã¿ãªã³ã°ã®çµ±åãè¡ããŸãããã©ã³ã¿ã€ã ã€ã³ã¹ã¿ã³ã¹ã¯ãAgentCore Runtime MicroVM ã§ãã§ã«äœ¿çšããŠããã®ãšåã AgentCore APIãID å¶åŸ¡ãããã³ãªãã¶ãŒãããªãã£ãšçµ±åããªãããããããã¹ãŠãèªåçã«åŠçããŸãã ãšãŒãžã§ã³ãéçºè
ãç¬é¡ã«ããã¹ãããšãããã€ããããŸããããã¯ããšãŒãžã§ã³ããå
±æã»ãã·ã§ã³å
ã§ãäºããããŒã«ãšåŒã³ãä»äºãå®äºãããŸã§èªåŸçã«å埩ã§ããããšã§ããã©ããªãã¬ãŒã ã¯ãŒã¯ïŒ CrewAI ã LangGraph ã LamaIndex ãStrands ã§ãã©ããªã¢ãã«ã§ãæã¡èŸŒããŸããããã±ãŒãžã¯æå°éã§ã @app.entrypoint ãã³ã¬ãŒã¿ãš zip ãã¡ã€ã«ãŸãã¯ã³ã³ããã€ã¡ãŒãžã ãã§ãããŸããã¯ãŒã¯ãããŒãäœæ¥ã«ãåã¶å Žåã¯ãæææ¥ã®å€ã«äŒæ¢ç¶æ
ã«ããŠãæ°Žææ¥ã®æã«ãã¹ãŠãã®ãŸãŸã®ç¶æ
ã§åéããŠãã ããã Runtime MicroVM ãšã©ã³ã¿ã€ã ã€ã³ã¹ã¿ã³ã¹ã¯è£å®çãªã³ã³ãã¥ãŒãã£ã³ã°ãªãã·ã§ã³ã§ãããåç¬ã§äœ¿çšããããšããåã AgentCore Runtime API ã䜿çšããŠäžç·ã«äœ¿çšããããšãã§ããŸããRuntime MicroVM äžã®è»œéãªãŒã±ã¹ãã¬ãŒã¿ãŒãšãŒãžã§ã³ãã¯ãã€ã³ã¹ã¿ã³ã¹äžã§å®è¡ãããŠããå°çšã®ã¯ãŒã«ãŒãšãŒãžã§ã³ãã«äœæ¥ã調æŽããŠãã£ã¹ãããã§ããŸãããªãŒã±ã¹ãã¬ãŒã¿ãŒã¯ Runtime MicroVM ã®é«éã¹ã±ãŒãªã³ã°ã䜿çšã㊠API ã³ãŒã«ãã¿ã¹ã¯ã«ãŒãã£ã³ã°ãçµæéçŽãåŠçããŸããäžæ¹ãã€ã³ã¹ã¿ã³ã¹äžã®ã¯ãŒã«ãŒã¯ãã³ãŒãã®ã³ã³ãã€ã«ãã»ãã¥ãªãã£ã¹ãã£ã³ãGUI èªååãªã©ãæ°žç¶çãªç¶æ
ãš OS ãžã®çŽæ¥ã¢ã¯ã»ã¹ãå¿
èŠãšããèšç®éã®å€ãã¿ã¹ã¯ãå®è¡ããŸãã ä»çµã¿ãèŠãŠãããŸããã ãã®ãã¢çšã« 2 ã€ã®ãšãŒãžã§ã³ããäœæããŸããã1 ã€ã¯èªç¶èšèªã«ããèšè¿°ãã Python ã³ãŒããçæãã Code writer ãšãŒãžã§ã³ãã§ããã 1 ã€ã¯çæãããã³ãŒãã®ãã°ãã»ãã¥ãªãã£åé¡ãã¹ã¿ã€ã«ã®æ¹åãåæãã Code reviewer ãšãŒãžã§ã³ãã§ããã©ã¡ãã®ãšãŒãžã§ã³ããåããã¡ã€ã«ã·ã¹ãã ãå
±æããŠãããããã¬ãã¥ãŒæ
åœè
ã¯ããŒã¿è»¢éã API ã³ãŒã«ãè¡ããã«ãã©ã€ã¿ãŒãäœæãããã®ããã¹ãŠèªãããšãã§ããŸãã ãããã³ãŒãã©ã€ã¿ãŒã§ãïŒç°¡ç¥åãããŠããããšã©ãŒåŠçã¯ãããŸããïŒã ã©ã€ã¿ãŒ = ãšãŒãžã§ã³ã ( model=âus.anthropic.claude-sonnet-4-5-20250929-v 1:0â, system_prompt=( ãããªãã¯Pythonã®ã·ãã¢ãšã³ãžãã¢ã§ããã ãã¿ã¹ã¯ãäžããããããPython ã®ã³ãŒããããã¯ã1ã€ã ãè¿ããæ£æã¯è¿ããªããã ), ) @app.entrypoint def handler(event, context): task = event.get(âtaskâ) or event.get(âpromptâ) session_id = getattr(context, âsession_idâ, None) or event.get(âsession_idâ) session_dir = SHARED_DIR / session_id session_dir.mkdir(parents=True, exist_ok=True) code = str(writer(task)) (session_dir / âcode.pyâ).write_text(code) return {âagentâ: âwriterâ, âwroteâ: str(session_dir / âcode.pyâ), âcodeâ: code} ããã Code reviewer ãšãŒãžã§ã³ãã§ãïŒç°¡ç¥åããããšã©ãŒåŠçã¯ãããŸããïŒã ã¬ãã¥ã¢ãŒ = ãšãŒãžã§ã³ã ( model=âus.anthropic.claude-sonnet-4-5-20250929-v 1:0â, system_prompt=( ãã客æ§ã¯å³æ ŒãªPythonã³ãŒãã¬ãã¥ã¢ãŒã§ããã ãäžããããã³ãŒãã«å¯ŸããŠããã°ãã¹ã¿ã€ã«ãææ¡ãšãã3ã€ã®ç®æ¡æžããè¿ããã ), ) @app.entrypoint def handler(event, context): session_id = getattr(context, âsession_idâ, None) or event.get(âsession_idâ) code_path = SHARED_DIR / session_id / "code.py" code = code_path.read_text() review = str(âreviewer(f âReview this code:\n\n{code}â)) return {âagentâ: âreviewerâ, âreadâ: str(code_path), âreviewâ: review} åãšãŒãžã§ã³ãã¯ã Strands Agents ã䜿çšãã Python ã¢ããªã±ãŒã·ã§ã³ã§ã @app .entrypoint ãã³ã¬ãŒã¿ãšã奜ã¿ã®ã¢ãã«ãåããŠããŸããããããã zip ãã¡ã€ã«ãšããŠããã±ãŒãžåããŸããä»å㯠AWS ãããžã¡ã³ãã³ã³ãœãŒã« ã䜿çšããŸãã AgentCore CLI ã AWS ã³ãã³ãã©ã€ã³ã€ã³ã¿ãŒãã§ã€ã¹ (AWS CLI) ããŸãã¯ã€ã³ãã©ã¹ãã©ã¯ãã£ãŒã¢ãºã³ãŒã (Infrastructure as Code) ã䜿çšããããšãå¯èœã§ãã ã¹ããã 1: 容éãããã€ããŒãäœæããŸãã 容éãããã€ããŒã¯ããšãŒãžã§ã³ããå®è¡ããã EC2 ã€ã³ãã©ã¹ãã©ã¯ãã£ãå®çŸ©ããŸããAgentCore ã³ã³ãœãŒã«ã§ã¯ãå·ŠåŽã®ããã²ãŒã·ã§ã³ã§ [ ã©ã³ã¿ã€ã ] ãéžæããæ¬¡ã« [ 容éãããã€ã㌠] ã¿ããš [ 容éãããã€ããŒã®äœæ ] ãéžæããŸãã ååãä»ã㊠ã Operating system ãšã㊠Linux (64ãããARM) ãéžæãã èš±å¯ããã€ã³ã¹ã¿ã³ã¹ã¿ã€ã ãšã㊠c7g.2xlarge ãéžæããŸããããã«ããã8 åã® vCPU ãš16GiB ã®ã¡ã¢ãªãåŸãããäž¡æ¹ã®ãšãŒãžã§ã³ããå¿«é©ã«äžŠã¹ãŠå®è¡ããããšãã§ããŸãã ããã«ããããã¯ãŒã¯ã¢ã¯ã»ã¹çšã« VPC ã ãµãããã ã ã»ãã¥ãªãã£ã°ã«ãŒããæ§æããŸã ã ã¹ãã¬ãŒãžæ§æ ã§ã¯ãããã©ã«ãã® gp3 ããªã¥ãŒã ã®ãŸãŸã«ããŸãã[ ãµãŒãã¹ã¢ã¯ã»ã¹ ] ã§ [ æ°ãããµãŒãã¹ããŒã«ã®äœæ ] ãéžæããç§ã«ä»£ãã£ãŠ EC2 ã€ã³ã¹ã¿ã³ã¹ã管çããã€ã³ãã©ã¹ãã©ã¯ãã£ããŒã«ãã³ã³ãœãŒã«ã«äœæãããŸãã [ 容éãããã€ããŒã®äœæ ] ãéžæããæ°ç§åŸ
ã¡ãŸããã¹ããŒã¿ã¹ã [ ã¢ã¯ãã£ã ] ã«ç§»åããŸãã 容éãããã€ããŒèšå®ã®æŠèŠ (ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ãã€ã³ã¹ã¿ã³ã¹ã¿ã€ãããµãããããã»ãã¥ãªãã£ã°ã«ãŒããã€ã³ã¹ã¿ã³ã¹ãããã¡ã€ã«ãã€ã³ãã©ã¹ãã©ã¯ãã£ãŒããŒã«) ã«æ³šæããŠãã ãããäœæåŸã¯èª¬æã®ã¿ãç·šéã§ããã®ã§ãå
ã«é²ãåã«èšå®ã確èªããŠãã ããã ã¹ããã 2: ã©ã³ã¿ã€ã ãäœæããæåã®ãšãŒãžã§ã³ãããããã€ããŸãã ã ã©ã³ã¿ã€ã ãããŒãžã«æ»ããã ã©ã³ã¿ã€ã ã®äœæ ããéžæããŸãã Name ãå
¥åãã Compute type ãšããŠã€ã³ã¹ã¿ã³ã¹ãéžæããåã®ã¹ãããã§äœæãã 容éãããã€ã㌠ãéžæããŸãã [ ãšãŒãžã§ã³ããœãŒã¹ ] ã§ [ S3 ãœãŒã¹ ] ãéžæããæ¬¡ã« [ S3 ã«ã¢ããããŒã ] ãéžæããŸãããšãŒãžã§ã³ãã® zip ãã¡ã€ã« ( ACIDemoWriter.zip ) ãéžæãã èšèªã©ã³ã¿ã€ã ã Python 3.13 ã«èšå®ãã agent.py ã Agewnt entry point ãšããŠæå®ããŸãããã㯠@app .entrypoint ã§ãã³ã¬ãŒããã颿°ãå«ããã¡ã€ã«ã§ãã[ æš©é ] ã§ [ ããã©ã«ãããŒã«ã®äœæ ] ãéžæããŠããšãŒãžã§ã³ããå¿
èŠãšãã IAM ããŒã«ãã³ã³ãœãŒã«ã«ããããžã§ãã³ã°ãããŸãã ã ã©ã³ã¿ã€ã ãäœæ ããéžæããã¹ããŒã¿ã¹ãã æºåå®äº ãã«ãªãã®ãåŸ
ã¡ãŸãã ã³ãŒãã¬ãã¥ãŒæ
åœè
ã«ãåãããã»ã¹ãç¹°ãè¿ããŸãã2 çªç®ã®ã©ã³ã¿ã€ã ãäœæããåã容éãããã€ããŒãéžæããã¬ãã¥ãŒã¢ãŒãšãŒãžã§ã³ãã® zip ãã¡ã€ã«ãã¢ããããŒãããŠã Ready ã«ãªãã®ãåŸ
ã¡ãŸããäž¡æ¹ã®ãšãŒãžã§ã³ãã¯ãåºç€ãšãªãåã EC2 ã€ã³ãã©ã¹ãã©ã¯ãã£ãå
±æããããã«ãªããŸããã ã³ã³ãœãŒã«ã«ã¯ã ãšãŒãžã§ã³ããããã°ã©ã ã§åŒã³åºãããã®ããã«äœ¿çšã§ãã PythonãTypeScriptãJavaScript ã®ã¹ãããããå«ã [ åŒã³åºãã³ãŒãã®è¡šç€º ] ã»ã¯ã·ã§ã³ã衚瀺ãããŸãããã ãããã®ãã¢ã§ã¯ãçµã¿èŸŒã¿ã®ãã¹ãæ©èœã䜿çšããŸããã©ã€ã¿ãŒãšãŒãžã§ã³ãã®ããŒãžã§ [ ãã¹ã ] ãéžæããŸãã ã¹ããã 3: ãšãŒãžã§ã³ããåŒã³åºããã³ã©ãã¬ãŒã·ã§ã³ã芳å¯ããŸãã ã©ã³ã¿ã€ã ãã¬ã€ã°ã©ãŠã³ããéããŸã ãäžéšã«ã¯ãã ã©ã³ã¿ã€ã ãšãŒãžã§ã³ã ããã ãšã³ããã€ã³ã ããã ã»ãã·ã§ã³ID ãã® 3 ã€ã®ãã£ãŒã«ãããããŸããã³ã³ãœãŒã«ã¯ã»ãã·ã§ã³ ID ãèªåçã«çæããŸããã¬ãã¥ã¢ãŒãšãŒãžã§ã³ãã§åå©çšããã®ã§ã¡ã¢ããŠãããŸãã å
¥åãã£ãŒã«ã ã«ãã©ã€ã¿ãŒãšãŒãžã§ã³ãã«ã³ãŒããçæããããã«èŠæ±ãã JSON ãã€ããŒããå
¥åããŸãã {âpromptâ: âwrite a fibonacci suiteâ} [ å®è¡ ] ãéžæããŸããæ°ç§åŸã ã¢ãŠããããããã«ã«ãšãŒãžã§ã³ãã®å¿çã衚瀺ãããŸã ã ã©ã€ã¿ãŒãšãŒãžã§ã³ãã¯ããã£ããããæ°åã® 2 ã€ã®å®è£
(ãªã¹ãããŒã¹ã®é¢æ°ãšãžã§ãã¬ãŒã¿ãŒ) ãå«ã Python ã¢ãžã¥ãŒã«ãçæããããã /tmp/agentcore-session/ca5ec24d-07f5-4eeb-add1-5ba416bf9eb2/code.py ã«æžã蟌ã¿ãŸããã ãã¡ã€ã«ãã¹ã«ããã»ãã·ã§ã³ ID ã«æ³šæããŠãã ããããã®ãã£ã¬ã¯ããªã¯ããã®ã»ãã·ã§ã³ã®å
±æãã¡ã€ã«ã·ã¹ãã ã§ãã ã¹ããã 4: åãã»ãã·ã§ã³ã§ã¬ãã¥ãŒæ
åœè
ãšãŒãžã§ã³ããåŒã³åºããŸãã æ¬¡ã«ã ã©ã³ã¿ã€ã ãšãŒãžã§ã³ã ã®ããããããŠã³ã ACIDEMoreViewer ã«åãæ¿ããŸããéèŠãªéšåïŒåãã»ãã·ã§ã³IDïŒ ca5ec24d-07f5-4eeb-add1-5ba416bf9eb2 ïŒã ã»ãã·ã§ã³ ID ãã£ãŒã«ãã«è²Œãä»ããŸããããã 2 ã€ã®ãšãŒãžã§ã³ããã€ãªããã®ã§ãã ç°¡åãªããã³ãããå
¥åããŸãã {âpromptâ: âreview the codeâ} [ å®è¡ ] ãéžæããŸããã¬ãã¥ãŒæ
åœãšãŒãžã§ã³ãã¯ãã©ã€ã¿ãŒãå
±æã»ãã·ã§ã³ãã£ã¬ã¯ããªããäœæãããã¡ã€ã«ãèªã¿åãã詳现ãªã³ãŒãã¬ãã¥ãŒãè¿ããŸããé倧ãªãã°ã¯èŠã€ãããŸããããã¿ã€ããã³ãã®è¿œå ãå
¥åæ€èšŒããšããžã±ãŒã¹åŠçã®ç°¡ç¥åãææ¡ããŸãã 2ã€ã®ãšãŒãžã§ã³ããã¡ãã»ãŒãžã亀æããããäºãã® API ãåŒã³åºãããããããšã¯ãããŸããã§ããã圌ãã¯ãã©ã³ã¿ã€ã ã€ã³ã¹ã¿ã³ã¹ãã»ãã·ã§ã³å
ã§æäŸããå
±æãã¡ã€ã«ã·ã¹ãã ãä»ããŠå
±åäœæ¥ãè¡ããŸããããã®ãã¿ãŒã³ã¯ãã³ãŒããå®è¡ãããã¹ããšãŒãžã§ã³ããREADME ãã¡ã€ã«ãçæããããã¥ã¡ã³ããŒã·ã§ã³ãšãŒãžã§ã³ããè匱æ§ãã¹ãã£ã³ããã»ãã¥ãªãã£ãšãŒãžã§ã³ããªã©ãä»»æã®æ°ã®ãšãŒãžã§ã³ãã«æ¡åŒµã§ããŸãããããã¯ãã¹ãŠåãäœæ¥ãã£ã¬ã¯ããªãå
±æããŸãã äž»ãªè©³çް å§ããã«ããã£ãŠç¥ã£ãŠããã¹ãããšãããã€ããããŸãã ãµããŒã察象 OS : ããŒã³ãæã¯Linux (ARM64ããã³x86_64)ã ã»ãã·ã§ã³ã®æç¶æ§ : ã»ãã·ã§ã³ã¯æå€§ 14 æ¥éæç¶ããŸãã ã©ã³ã¿ã€ã : ãã€ãã£ãã³ãŒãããµããŒãããPython 3.11-14ãã³ã³ããã€ã¡ãŒãžããµããŒããããŠããŸãã GPU : GPU ã¢ã¯ã»ã©ã¬ãŒã·ã§ã³å¯Ÿå¿ã®ã€ã³ã¹ã¿ã³ã¹ã¿ã€ãããµããŒãããŸãã çµ±å : AgentCore Runtime ãšåã AgentCore APIãã¢ã€ãã³ãã£ãã£ããªãã¶ãŒãããªãã£ãããªã·ãŒã³ã³ãããŒã«ã䜿çšããŸãã æé : æšæºã® EC2 æéãš AgentCore ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ã®ç®¡çæéãå ç®ãããŸãã å°å : ç±³åœæ±éš (ãªãã€ãªãããŒãžãã¢åéš)ãç±³åœè¥¿éš (ãªã¬ãŽã³)ãã¢ãžã¢å€ªå¹³æŽ (ã ã³ãã€ãã·ã³ã¬ããŒã«ãã·ãããŒãæ±äº¬)ããšãŒããã (ãã©ã³ã¯ãã«ããã¢ã€ã«ã©ã³ã) To get started, visit the runtime instance in éå§ããã«ã¯ã Amazon Bedrock AgentCore documentation ã®ã©ã³ã¿ã€ã ã€ã³ã¹ã¿ã³ã¹ã«ã¢ã¯ã»ã¹ããæåã®å®¹éãããã€ããŒãäœæããŠãã ããã â seb åæã¯ ãã¡ã ã§ãã
Claude Code ã¯èªèšŒããŒã¯ã³ã»èšå®ã»äŒè©±å±¥æŽãããã¹ãŠ ~/.claude ã®äžïŒãšãããé£ã® ~/.claude.json ïŒã«çœ®ããŸããDev Container ã§äœ¿ããšãã¯ãåãã«ãã®ãã³ã®åãã°ã€ã³ãé¿ããããã«ããã®ãã£ã¬ã¯ããªããã¹ãããäžžããšããŠã³ãããã®ãå®çªã§ãã ãã®æ§æãè€æ°ã®ãããžã§ã¯ãã§äœ¿ã£ãŠããŠãæ°ã«ãªãå§ããããšããããŸãã å
šéšã®ã³ã³ãããããã¹ãã«ããåã ~/.claude ãæžãæãåã£ãŠãã ããšããããšã§ãã æå
ã® ~/.claude.json ã®äžèº«ãæ°ãããšããããªã£ãŠããŸããã $ python3 -c "import json,os; d=json.load(open(os.path.expanduser('~/.claude.json'))); \ print('projects:', len(d['projects']), '/ githubRepoPaths:', len(d['githubRepoPaths']), '/ numStartups:', d['numStartups'])" projects: 36 / githubRepoPaths: 13 / numStartups: 1278 36ãããžã§ã¯ãåã®ç¶æ
ã1ãã¡ã€ã«ã«å
¥ã£ãŠããŸãã projects/ é
äžã®äŒè©±å±¥æŽãåãã§ã ããŸäœæ¥ããŠãããªããžããªãšã¯é¢ä¿ã®ãªããããžã§ã¯ãã®å±¥æŽããã©ã®ã³ã³ãããããèŠããŸã ãéæ¹åãèµ·ããŸããèªåãããã³ã³ããã®å€ã§èµ°ã£ã Claude Code ã®æžã蟌ã¿ããç¥ããªããã¡ã«æå
ã®ãã¡ã€ã«ã«åæ ãããŸãã å
ã«æ£çŽã«æžããŠãããšã ãã®æ§æã§å£ããçµéšã¯äžåºŠããããŸãã ãçŽãããã£ãçç±ã¯åçŽã§ã ã³ã³ããã«éããã¯ãã®äœæ¥ããã³ã³ããã®å€ãšæ··ãã£ãŠããã®ãæ°æã¡æªã ããã§ããã³ã³ããã«å
¥ããæå³ãèããŸãã æ¬èšäºã§ã¯ã ~/.claude ã®äžèº«ã æŽæ°é »åºŠã§åé¡ ããŠãã³ã³ããããŸããã§å
±æãç¶ãããã®ãšããããžã§ã¯ãããšã«ç¬ç«ããããã®ã®ç·ãåŒããŸãããã®ããã§åŸåã§ã¯ããã®ç·åŒãã Dev ContainerïŒdocker-compose çãšçŽ ã® devcontainer.json çïŒã§å®è£
ããŸãããã£ã¬ã¯ããªã®äžèº«ãã®ãã®ã«ã€ããŠã¯ãåãããã°ã« Claude Codeãäœæãã~/.claudeãã£ã¬ã¯ããªã®è©³çŽ°è§£æ ããããŸãã .credentials.json ã projects/ ãäœãããŠãããã¡ã€ã«ãªã®ãã¯ãã¡ãã詳ããã®ã§ã圹å²ããç¥ãããå Žåã¯å
ã«èªããšæ©ãã§ãã ãã®èšäºã§ãããããš : ~/.claude ã®äžèº«ãæŽæ°é »åºŠã§2ã€ã«åããç·åŒãïŒå
±æãç¶ãããã® / ã³ã³ããããšã«åãããã®ïŒ .claude.json ãæ¢å®ã§ã¯ã©ãã«ããã®ãããªãããããå
šã³ã³ããã®å
±çšããŒããã«ãªãã®ã å±¥æŽãšèšå®ããããžã§ã¯ãããšã«ç¬ç«ããã€ã€ãåãã°ã€ã³ã¯äžèŠã«ä¿ã€å®è£
ïŒcompose ããŒã¹ãšçŽ ã® devcontainer.json ã®äž¡æ¹ïŒ named volume ã®ææè
åé¡ïŒ chown ã éååž° ã«ããçç±ïŒ ãçšæŽæ°ãªãå
±æããŠãããã®äŸå€ïŒ plugins/ ãå
±æãããšå£ããçç±ïŒ æ€èšŒç°å¢ : ãã¹ã㯠Linux / WSL2 ã§ãããªããžããªã WSL äžã«çœ®ããŸããmacOS ã¯èªèšŒæ
å ±ã®ä¿åå
ãç°ãªãæ¬æ§æããã®ãŸãŸã¯æç«ããŸããïŒæ«å°Ÿã®ãå¶çŽã»åæãã§æ±ããŸãïŒã åã / äžåã : 察象㯠ãã¹ãã® ~/.claude.json ãŸã§ bind ããŠãã人 ã§ãããã§ã« volume ã ãã§éçšããŠãããªããããã§æ±ããæ··ãããçŸè±¡ã¯èµ·ããŠããŸããããªãåãæ¿ããŠã ãã¹ãåŽã®å±¥æŽãæ¶ããããšã¯ãããŸãã ããã¹ãã«ã¯ãã®ãŸãŸæ®ãã以éã®äŒè©±ãã³ã³ããåŽã«ã ãå¢ããŠãããŸããèŠããªããªãã ãã§ããã --resume ã§ãã¹ãåŽã®éå»ãé »ç¹ã«é¡ãäœ¿ãæ¹ãšã¯æ£é¢ããã¶ã€ãããŸãïŒäžåºŠããã®æã¡èŸŒã¿æé ã¯åŸè¿°ããŸãïŒã ~/.claude ã¯å
šã³ã³ããã®å
±çšããŒãã«ãªã£ãŠãã .claude.json 㯠~/.claude ã®äžã«ç¡ã ãŸãäœçœ®é¢ä¿ããæŒãããŸããå
±æãããšæ··ãããã¡ã€ã«ã®äž»åœ¹ã¯ .claude.json ã§ããã ããã¯æ¢å®ã§ã¯ ~/.claude ã®äžã«ãããŸãã ã ~/.claude.json ãšããã ~/.claude ãšäžŠã¶å¥ã®ãã¹ã«çœ®ãããŸãã $ ls -la ~/.claude.json ~/.claude/.claude.json -rw-r--r-- 1 vscode vscode 104786 Jul 30 15:27 /home/vscode/.claude.json ls: cannot access '/home/vscode/.claude/.claude.json': No such file or directory ã ãããä»¥åæžãã Claude CodeÃDevContainer ç°å¢æ§ç¯ã¬ã€ã ã®èšå®ãããã®2ã€ãå¥ã
ã« bind ããŠããŸããã "mounts": [ "source=${localEnv:HOME}/.claude,target=/home/vscode/.claude,type=bind,consistency=cached", "source=${localEnv:HOME}/.claude.json,target=/home/vscode/.claude.json,type=bind,consistency=cached" ] ã€ãŸããããžã§ã¯ãã®ç¶æ
ãå
šã³ã³ããã§æ··ããã®ã¯ãæ£ç¢ºã«ã¯ 2è¡ç®ã®ã»ããå
±æããŠãããã ã§ãã ~/.claude ã ãã bind ã㊠~/.claude.json ãå
±æããŠããªã人ã¯ãæ··ããã®äž»åœ¹ããŸã å
±æããŠããŸããã äžèº«ãæŽæ°é »åºŠã§äžŠã¹çŽã settings.json ã skills/ ã®ãã㪠user ã¬ãã«ã®ãã®ã¯ãããããã©ãã§äœæ¥ããŠããŠãåããã®ã䜿ãåæã§çšæãããŠããŸããå
±æãããã®ã¯èªæã§ãè¿·ããŸããã è¿·ãã®ã¯ .claude.json ã§ããååãäžèº«ããèšå®ãã¡ã€ã«ãã®é¡ãããŠããŠãå®éã« user ã¬ãã«ã®èšå®ãå
¥ã£ãŠããŸãã圹å²ã§äžŠã¹ããšå
±æåŽã«èœã¡ãŸãããšããããã®ãã¡ã€ã«ã¯èµ·åãæäœã®ãã³ã«æžãæãããäžèº«ã®å€§åã¯ãããžã§ã¯ãããšã®ç¶æ
ã§ãã æžã蟌ã¿é »åºŠã§äžŠã¹ããšããããç¶æ
åŽã«èœã¡ãŸãã äžèº« åœ¹å² æžã蟌ã¿é »åºŠ .credentials.json èªèšŒããŒã¯ã³ çš ïŒãã°ã€ã³æã»ããŒã¯ã³æŽæ°æã®ã¿ïŒ settings.json user ã¬ãã«èšå®ïŒæš©éã®èš±å¯ãªã¹ããªã©ïŒ çš ïŒèšå®ãå€ãããšãã ãïŒ CLAUDE.md user ã¬ãã«ã®ã¡ã¢ãª çš ïŒæžãããšãã ãïŒ skills/ user ã¬ãã«ã® skill çš .claude.json ïŒæ¢å®ã§ã¯ ~/.claude.json ïŒ èšå®ã»ãããžã§ã¯ãã®ä¿¡é Œç¶æ
ãªã© é« ïŒèµ·åã»æäœã®ãã³ã«æžãæããïŒ projects/ ã» sessions/ ã» history.jsonl äŒè©±å±¥æŽã»ããã³ããå±¥æŽã»å®è¡äžã»ãã·ã§ã³ã®æ€åº é« ïŒæäœã®ãã³ã«æžãæããïŒ ãã®è¡šã§äžäžããããã«åãããŸãã ã³ã³ããããŸããã§å
±æããŠå¬ããã®ã¯äžã®çšæŽæ°ã°ã«ãŒãã ã ã§ããèªèšŒããŒã¯ã³ã¯å
±æãããããå
±æããŠãããuser ã¬ãã«ã®èšå®ã»ã¡ã¢ãªã»skill ããã©ã®ãããžã§ã¯ãã§äœæ¥ããŠããŠãåããã®ã䜿ãããçš®é¡ã®ãã®ã§ãã æ··ãã£ãŠå°ãã®ã¯äžã®é«é »åºŠã°ã«ãŒã ã§ããããã«ã¯2ã€ã®åãã®å°ãããããããŸãã ä»ã®ãããžã§ã¯ãã®ç¶æ
ãèŠããŠãã : .claude.json ã® projects ã¯å
šãããžã§ã¯ãåã®ä¿¡é Œç¶æ
ã1ãã¡ã€ã«ã«æã¡ãŸãã projects/ é
äžã®äŒè©±å±¥æŽããããŸéããŠãããªããžããªãšç¡é¢ä¿ãªãã®ãŸã§äžŠã³ãŸã èªåã®ããã³ã³ããã®å€ããã®æžã蟌ã¿ãå
¥ã£ãŠãã : å¥ã®ã³ã³ããïŒãããã¯ãã¹ãïŒã§èµ°ã£ã Claude Code ããåããã¡ã€ã«ãæŽæ°ããŸããæå
ã§ã¯äœãããŠããªãã®ã«äžèº«ãå€ãããŸã åãã°ã€ã³äžèŠã®ããã«æ¬åœã«æ¬²ããã®ã¯ããŒã¯ã³1ã€ãªã®ã«ãäžžããšå
±æã¯ãã®å·»ãæ·»ãã§ãæ··ãã£ãŠå°ããã®ãŸã§å
šéšå
±æããŠããŸãããããçŽãããã£ãç¶æ
ã§ãã ãã®äžåŽã®åãæ¹ã¯ããã¡ãã§çºæãããã®ã§ã¯ãããŸãããå
¬åŒã® claude project purge ïŒv2.1.124 以éïŒã¯ããããžã§ã¯ã1ã€ã¶ãã®ç¶æ
ãæ¶ãã³ãã³ãã§ãããã®åé€å¯Ÿè±¡ã projects/ ã®äŒè©±ãã°ã history.jsonl ã®è©²åœè¡ããã㊠~/.claude.json ã®ãã®ãããžã§ã¯ãã®ãšã³ããªââ æ¬èšäºãéé¢ãããã®ãšã»ãŒåã ã§ããAnthropic èªèº«ãããã®3ã€ãããããžã§ã¯ãåºæã®ç¶æ
ããšããŠæ°ããŠããŸãããã ã purge ã¯æºãŸã£ããã®ãåŸããæ¶ãã³ãã³ããªã®ã§ãäœæ¥ããŠããæäžã«ä»ãããžã§ã¯ãã®ç¶æ
ãèŠããããšã¯å€ãããŸããã ããã§ããäžžããšå
±æããåºãŸã£ãã®ã¯ããã®ã»ããæè»œã ãã ãã®åé¡ãç¡èŠããŠäžžããšæ±ãæ¹åŒãåºã䜿ãããŠããã®ã«ã¯çç±ããããŸããDev Container ã§åãã«ãã®ãã³ã«åãã°ã€ã³ããããªãããšããèŠæã«å¯ŸããŠã ~/.claude ããŸãšããŠã³ã³ããã«æž¡ãã®ãäžçªææ°ãå°ãªãããã§ãã 以é㯠bind ãš volume ãããã®èšäºã®è»žã§èªã¿åããŠãã ããã bind ã¯ãã¹ãåŽã®å®äœãæãã®ã§å
±æããã ã named volume ã¯ã³ã³ããåŽã®å®äœãªã®ã§å
±æãããªã ããã®èšäºãããããšããŠããã®ã¯ããã®2ã€ã1ã€ã®ãã£ã¬ã¯ããªã®äžã§äœ¿ãåããããšã§ãã å®çªã®æ¹åŒã¯ã倧ãã2ã€ã«åãããŸãã å®çªæ¹åŒ äœãããã éæã§ããããš æ±ããåé¡ äžžããš named volumeïŒå
¬åŒãªãã¡ã¬ã³ã¹å®è£
ãããïŒ ~/.claude å
šäœã named volume ã§æ°žç¶åãã åãã«ããè·šãã§èšå®ã»å±¥æŽã»èªèšŒãä¿æã§ãã ã³ã³ããããšã«ç¬ç«ãã ãã¹ããšãã°ã€ã³ãå
±æããªãïŒ ã³ã³ããåŽã§å¥éãã°ã€ã³ãèŠã äžžããš bindïŒãã¹ãå
±æç³»ïŒ ãã¹ãã® ~/.claude ããã®ãŸãŸ bind ãã ãã¹ãã®ãã°ã€ã³ããã®ãŸãŸäœ¿ãã åãã°ã€ã³ãäžèŠ å
šã³ã³ãããåããã¡ã€ã«ãæžãæãåã åè
㯠Anthropic èªèº«ã® ãªãã¡ã¬ã³ã¹å®è£
ãæ¡ã£ãŠãã圢ã§ãã "source=claude-code-config-${devcontainerId},target=/home/node/.claude,type=volume" åŸè
ã¯ããã»ã©ã®å
¥éç·šã§æ¡ã£ããã®ã§ãã衚ãèŠããšã2ã€ã®æ¹åŒã¯ãåãã°ã€ã³ã®æéããšãã³ã³ããããšã®ç¬ç«ãããã¬ãŒããªãã«ããŠããŸããã©ã¡ããæšãŠãããªãããšããã®ãæ¬èšäºã®åºçºç¹ã§ãã ãªãå
¬åŒã®ãã®å®è£
ã¯ã CLAUDE_CONFIG_DIR ã«ãåã /home/node/.claude ãæå®ããŠããŸããåŸè¿°ãããšããæ¬èšäºãåãããšãããŸããç°å¢å€æ°ã®ãªãã¡ã¬ã³ã¹ã«é
ç®ãç¡ã倿°ã§ãããå
¬åŒã®ãªãã¡ã¬ã³ã¹å®è£
èªèº«ã䜿ã£ãŠããããšããäœçœ®ã¥ãã®ãã®ã§ãã åé¢èšèšïŒå
±æãç¶ãããã®ãšããããžã§ã¯ãããšã«åãããã® ãããããæ¬èšäºã®äž»åŒµã®äžå¿ã§ããæ¹éã¯ çšæŽæ°ã®ãã®ã¯ãã¹ããšå
±æãç¶ããé »ç¹æŽæ°ã®ãã®ã¯ named volume ã§ã³ã³ããããšã«ç¬ç«ããã ããšãåè¿°ã®äºæïŒäžžããš volume / äžžããš bindïŒã®ã©ã¡ãã§ããªãã 第3ã®äžéèšèš ã§ãã å
ã«æ§æ Œãæã£ãŠãããŸãããã㯠å
¬åŒã®ãªãã¡ã¬ã³ã¹å®è£
ã瀺ã圢ããå€ããåé¿ç ã§ããDocker ãããŠã³ããæ·±ãé ã«äžŠã¹æ¿ããããšã CLAUDE_CONFIG_DIR ãéçŽå
ãåããããšââãã®2ã€ã®æåã«ä¹ã£ãŠæç«ããŠããŸããã©ã¡ããåŸã§å®ç©ã§ç¢ºãããŸãããå
¬åŒãä¿èšŒããçµã¿åããã§ã¯ãªãã®ã§ã ã©ã¡ãããå€ããã°è¿œåŸãèŠã åæã§æ¡ã£ãŠãã ããã 察象 æ±ã ãªã .credentials.json ïŒããŒã¯ã³ïŒ ãã¹ããš bind å
±æ åãã°ã€ã³ãäžèŠã«ããããæŽæ°ã¯çš settings.json ã»user CLAUDE.md ã» skills/ ãã¹ããš bind å
±æ çšæŽæ°ãã©ã®ãããžã§ã¯ãã§ãåããã®ã䜿ããããåãããšãã¹ãåŽã§è²ãŠãèš±å¯èšå®ã user è³ç£ãã³ã³ããã§äœ¿ããªããªã .claude.json ã» projects/ ã» sessions/ ã» history.jsonl named volume ã§ã³ã³ããããšã«ç¬ç« é »ç¹ã«æŽæ°ããããä»ãããžã§ã¯ãã®ç¶æ
ãèŠãããå€ããã®æžã蟌ã¿ãå
¥ããªããvolume ã¯åãã«ãã§æ¶ããæ°žç¶ãã plugins/ å
±æããªãïŒã³ã³ããããšïŒ çšæŽæ°ã ãäŸå€ãçç±ã¯ããããæãã§è¿°ã¹ãŸã ãã€ããªïŒ ~/.local/ ïŒ ã³ã³ããåºæïŒå
±æããªãïŒ åãã«ãæã«å
¥ãçŽãã代åãšããŠåãã«ããŸã§çãåºå®ããã volume åããããžã§ã¯ãããšã«å€ããã®ãè ã§ããåãååã䜿ãåããšããã£ãã volume ã«ããŠããããžã§ã¯ãéã§äžèº«ãå
±æããŠããŸããŸãããªããžããªåãå«ããååïŒäŸ: myrepo-claude-config ïŒã«ããŠããã°ãå±¥æŽãš .claude.json ã¯ãããžã§ã¯ãããšã«å®å
šã«ç¬ç«ããŸãã ãã®èšèšã¯æ¬¡ã®2段æ§ãã§æç«ããŸãã 1段ç®: CLAUDE_CONFIG_DIR ã§éçŽå
ã $HOME/.claude ã«åºå®ããã ãã€ã³ãã¯ãããã æ¢å®ãšåããã¹ã®æç€ºæå® ã§ããããšã§ãã广ã¯ãå€ã«ãã£ã .claude.json ã ~/.claude ã®äžã«å
¥ããããšã§ããããã§ .claude.json ã volume ã®å
åŽã«å
¥ãã ãªãã«ããè·šãã§æ®ããããã«ãªããŸã ãæå®ããªããŠãã³ã³ããããšã«ç¬ç«ã¯ããŸããããã®å Žå㯠volume ã®å€ïŒãªãã«ãã§æ¶ããå Žæã«æžãããã®ã§ãç¬ç«ãšæ°žç¶ã®äž¡æ¹ãåãã«ã¯ãã®1段ãèŠããŸããèªèšŒæ
å ±ã«ã€ããŠããLinux / Windows ã§ã¯ CLAUDE_CONFIG_DIR ãèšå®ãããš .credentials.json ããã®ãã£ã¬ã¯ããªé
äžã«çœ®ãããããšã èªèšŒããã¥ã¡ã³ã ã«æèšãããŠããŸãã å
¬åŒã®ãªãã¡ã¬ã³ã¹å®è£
ãçŸã«äœ¿ã£ãŠãã倿°ã§ã .claude ãã£ã¬ã¯ããªã®è§£èª¬ ã«ãããããèšå®ããã° ~/.claude é
äžã®ãã¹ã¯ãã¡ãã®äžã«ç§»ãããšæžãããŠããŸããããã§ãç°å¢å€æ°ã® å
¬åŒãªãã¡ã¬ã³ã¹ ã«ã¯é
ç®ãšããŠèŒã£ãŠããŸããã åè
ã¯åŸè
ãžãªã³ã¯ã匵ã£ãŠããã®ã«ãé£ãã å
ã«ãã®é
ç®ãç¡ã ããšããç¶æ
ã§ãïŒ2026-08-02 æç¹ïŒãããã¥ã¡ã³ãåãæ±ãã Issue #33430 㯠not planned ãšã㊠close ãããŸãã ãèŒããŠã»ãããšããèŠæãããã®å€æ°ãå¹ããŠããªãããšãããã°å ±åãäžãã£ãŠããã®ã«é
ç®ã¯ç¡ãââ åããã䜿ãããŠãã ããšããäœçœ®ã¥ãã®å€æ°ã§ãã ããã«ããã®å
¬åŒã®èšè¿°ã¯ ~/.claude é
äž ã®ãã¹ã«ã€ããŠã®ãã®ã§ããæ¬èšäºãé Œã£ãŠããã®ã¯ããã®å€ã«ãã ~/.claude.json ãé
äžãžåŒã蟌ãæåã®ã»ãã§ããã¡ãã¯ã©ã®å
¬åŒããã¥ã¡ã³ãã«ãæžãããŠããŸããïŒåŸè¿°ã®ãåäœç¢ºèªãã§å®ç©ãèŠãŸãïŒãæ©èœã¯ããŸããããªãã¡ã¬ã³ã¹ã«è£ä»ããããå
¬åŒä»æ§ã§ã¯ãªãç¹ã¯æ¿ç¥ã®äžã§æ¡ã£ãŠãã ããã æ¢å®ãšåããã¹ãæå®ããããšã«ã¯å¯ç£ç©ããããŸãã CLAUDE_CONFIG_DIR ãå°éãã ~/.claude ãèŠã«ãã£ãŠããŸãæ¢ç¥ãã°ïŒ #4739 㯠/ide 飿ºã®ããã¯ãã¡ã€ã«ãåŸç¶ã® #30538 㯠VS Code æ¡åŒµæ©èœãåŸè
ã¯çŸåšã openïŒããããŸããããã©ãŒã«ããã¯å
ãšæå®å
ãåããã£ã¬ã¯ããªã«ãªãããããã®äžæã®ãã°ã¯å®è³ªçã«ç¡å¹åãããŸãã ãªãã©ã¡ãã IDE 飿ºåŽã®äžå
·åã§ãCLI æ¬äœã®è³æ Œæ
å ±ã®éçŽã«ã¯åã³ãŸããã 2段ç®: éçŽå
ã named volume ã«ãããã®äžã«çšæŽæ°ã®ãã®ã ããæ·±ããã¹ã§ bind ããŠéããã ãã£ã¬ã¯ããªå
šäœãæã volume ã«å¯ŸããŠãããæ·±ããã¹ãåæããã bind ãéããŸããåŸè
ãåè
ã®äžã«ä¹ãã®ã§ããã£ã¬ã¯ããªå
šäœã¯ volumeïŒã³ã³ããåºæïŒã®ãŸãŸãåæãããå°æ°ã®ãã¡ã€ã«ã ãããã¹ãå
±æã«ãªããŸãã ãã®éãªã㯠æžãé çªã«äŸåããŸãã ããããš bind 4æ¬ã volume ããå
ã«æžããã³ã³ãããèµ·åããŠãäžããå®éã®ããŠã³ãé ãèŠããšãããªããŸãã $ grep -i claude /proc/self/mountinfo | awk '{print $5}' /home/vscode/.claude /home/vscode/.claude/.credentials.json /home/vscode/.claude/settings.json /home/vscode/.claude/CLAUDE.md /home/vscode/.claude/skills æå®ããé ã§ã¯ãªãã æµ
ããã®ããé 㫠䞊ã³çŽã£ãŠããŸããvolume ãå
ã»åŸã»çãäžã«çœ®ãã3éãã§è©ŠããŸããããã©ããåã䞊ã³ã«ãªããå
±æãã4ã€ã®äžèº«ããã¹ãåŽã®ãã®ãèŠããŸããã äžŠã¹æ¿ããŠããã®ã¯ Docker ããŒã¢ã³ã§ãïŒäžã®å¯Ÿç
§ã¯ docker run ã§çŽæ¥çµã¿ãŸããããcompose ã devcontainer.json ãæåŸã¯åãããŒã¢ã³ãéããŸãïŒãmoby ã® daemon/volumes.go ã«ãtarget ã®ãã¹åºåãã®æ°ã§ããŠã³ããæŽåãã sortMounts ããããŸããã³ã¡ã³ãã¯ãããŠã³ããä»ã®ããŠã³ããèŠãé ããªãããã«ãããããããšãã° /etc ãš /etc/resolv.conf ãããŠã³ããããªãã /etc/resolv.conf ãå
ã«ããŠã³ãããŠã¯ãªããªãããšããŸãã«ãã®çšéãæžããŠããŸãã æžãé çªã¯æ°ã«ããªããŠæ§ããŸãããæ·±ãã®é¢ä¿ããäœããŠããã°çã£ãéãªãã«ãªããŸããå®éã«éãªã£ããã©ããã¯ãåŸè¿°ã®ãåäœç¢ºèªãã§èªåã®ç°å¢ã§ç®èŠã§ããŸãã ã€ãŸããã³ã³ããåºæã® volume ã®äžã«ãå
±æããããã®ã ããã¹ããžã®çªãéãããæ§æã§ããããã§ãåãã°ã€ã³äžèŠããšãå±¥æŽãç¶æ
ããããžã§ã¯ãããšã«ç¬ç«ããããåæã«æºãããŸããæ£ç¢ºã«ã¯ã å°å
¥æã®1åã ãã¯ãã°ã€ã³ãå¿
èŠ ã§ãããã§æžãããããŒã¯ã³ããã¹ãåŽã«æ®ããã2åç®ä»¥éã®ãªãã«ãã§äžèŠã«ãªããŸãïŒå®æž¬ã¯åŸè¿°ã®ãåäœç¢ºèªãïŒã åŒãæãã«ãå±¥æŽã®çœ®ãå Žæã匱ããªã åŸããã®ã ãæžãã®ã¯äžèª å®ãªã®ã§ãå
ã«æããã®ã1ã€åºããŠãããŸãã ãã®èšèšã¯ãäŒè©±å±¥æŽã®èä¹
æ§ã確å®ã«äžããŸãã äžžããš bind ã®æ§æã§ã¯ãå±¥æŽã¯ãã¹ãã® ~/.claude/projects/ ã«ãããŸãããããŒã ãã£ã¬ã¯ããªããšããã¯ã¢ãããåã£ãŠããã°ãã®äžã«å
¥ããŸãããã³ã³ãããäœåäœãçŽããŠãæ®ããŸããæ¬æ§æã«ç§»ããšãå±¥æŽã¯ named volume ã®äžãžç§»ããŸãããªãã«ãã§ã¯æ¶ããŸãããã ããŒã ã®ããã¯ã¢ãã察象ããã¯å€ããŸã ããã㊠docker volume prune ã docker system prune -a --volumes ã§æ¶ããŸãããã£ã¹ã¯ãéŒè¿«ãããšãã«åå°ã§å©ãã³ãã³ãã§ãã ãåãã«ãã§æ¶ããªããããšãšãæ¶ããªããããšã¯å¥ã ããšçè§£ããããã§æ¡ã£ãŠãã ãããå±¥æŽãè³ç£ãšããŠæ±ã£ãŠãããªããvolume ã察象ã«ããããã¯ã¢ãããå¥éçµãå¿
èŠããããŸãïŒæ¬èšäºã§ã¯ãããŸã§èžã¿èŸŒã¿ãŸããïŒãæ··ãããªãããšãšåŒãæãã«äœãå·®ãåºãã®ãã¯ãæ«å°Ÿã®ãå¶çŽã»åæãã«ãäžèЧã§çœ®ããŠããŸãã Dev Container ã§å®è£
ãã ããããã¯ãäžã®ç·åŒããå®éã®èšå®ãã¡ã€ã«ã«èœãšããŸããèªè
ã®ç°å¢ãã©ã¡ãã§ãåãããã«ãcompose ããŒã¹ãšçŽ ã® devcontainer.json ã®äž¡æ¹ã®å®æã³ãŒããèŒããŸãã æ€èšŒç¶æ³ : compose çã¯å¥ã®ãªããžããªã§éçšäžã®æ§æã§ããçŽ ã® devcontainer.json çã¯ãã®èšäºãæžããŠãããªããžããªã«é©çšãããªãã«ãã2åè·šãã 宿ž¬ãåŸè¿°ã®ãåäœç¢ºèªãã«èŒããŠããŸãïŒClaude Code v2.1.220 / WSL2ïŒã compose ããŒã¹ã®å Žå workspace ãµãŒãã¹ã«ãç°å¢å€æ°ã»named volumeã»éã bind ãå®çŸ©ããŸãã services: workspace: environment: CLAUDE_CONFIG_DIR: /home/vscode/.claude DISABLE_AUTOUPDATER: "1" volumes: # é »ç¹æŽæ°åïŒ.claude.json / projects / sessions / history.jsonlïŒã¯ã³ã³ããéé¢ - type: volume source: claude_config target: /home/vscode/.claude # çšæŽæ°åã ããæ·±ããã¹ã® bind ãéããŠãã¹ãå
±æãã - type: bind source: ${HOME}/.claude/.credentials.json target: /home/vscode/.claude/.credentials.json - type: bind source: ${HOME}/.claude/settings.json target: /home/vscode/.claude/settings.json volumes: claude_config: CLAUDE_CONFIG_DIR ã¯éçŽå
ãåºå®ããŸããåè¿°ã®ãšãããå€ã«ãã .claude.json ã ~/.claude é
äžã«åŒã蟌ãã®ãçãã§ãã DISABLE_AUTOUPDATER: "1" ã¯ããŒãžã§ã³ã決å®çã«ããŸãããã€ããªã¯ ~/.local/ ïŒã³ã³ããåºæïŒã«ãããããæŽæ°ã¯åãã«ãæã«å
¥ãçŽã圢ã«ãªããŸããè£ãè¿ãã° åãã«ããããŸã§å€ãçã«çãŸã ãšããããšãªã®ã§ãæŽæ°ãåã蟌ã¿ããã¿ã€ãã³ã°ã§åãã«ãããŠãã ããã named volume ã /home/vscode/.claude ã«ããŠã³ãããèšå®ã»å±¥æŽã» .claude.json ãã³ã³ããã«éé¢ããŠåãã«ããè·šãã§æ°žç¶ãããŸãã çšæŽæ°ã®ãã¡ã€ã«ãååãã¹ãžéã bind ããŸããããæ·±ããã¹ã® bind ã volume ã®äžã«éãªãããããã®ãã¡ã€ã«ã ãããã¹ãå
±æã«ãªããŸãã consistency: cached ã¯ä»ããŠããŸãããDocker Desktop for MacïŒosxfsïŒæä»£ã®ãªãã·ã§ã³ã§ã Linux ã§ã¯ç¡èŠããã ããã§ããæ¢åã®èšå®ã«æ®ã£ãŠããå Žåã¯æ©èœäžç¡å®³ã§ãããæå³ãããããã«èŠããã¶ãçŽããããã®ã§å€ããŠããã®ã芪åã§ãã ç°å¢å€æ°ããã1ã€å
¥ãããªã CLAUDE_CODE_DISABLE_AUTO_MEMORY: "1" ãåè£ã§ãå
±æãšéé¢ã®ç·åŒããšã¯ç¬ç«ãã話é¡ã«ãªããŸãããããŒã ã§äœ¿ããšãã®èãæ¹ã¯ Claude Code Auto Memory ãããŒã ã§ã¯äœ¿ããªãçç± ã«æžããŠããŸãã çŽ ã® devcontainer.json ã®å Žå compose ã䜿ããªãæ§æã§ã¯ãããŠã³ã㯠devcontainer.json ã® mounts é
åã«æžããŸããClaude Code ã«é¢ä¿ããéšåã ãæãåºããšæ¬¡ã®åœ¢ã§ãã { "remoteUser": "vscode", // ãã¹ããšã³ã³ããã§ uid ãé£ãéãå Žåã«æãããéã bind ãããã¡ã€ã«ã® // æš©é調æŽãããã«å§ãããããæ¬æ§æã§ã¯æç€ºçã«æå¹åããŠãã "updateRemoteUserUID": true, "remoteEnv": { // æ¢å®ã® $HOME/.claude ãšåäžãã¹ãæç€ºæå®ããïŒ.claude.json ãé
äžã«åŒã蟌ãïŒ "CLAUDE_CONFIG_DIR": "/home/vscode/.claude" }, // bind ã®ãœãŒã¹ã¯ã³ã³ããçæåã«ãã¹ãåŽãžå®äœãäœã£ãŠããïŒãã¹ãäžã§å®è¡ãããïŒ "initializeCommand": "mkdir -p ~/.claude/skills && touch -a ~/.claude/.credentials.json ~/.claude/CLAUDE.md && chmod 600 ~/.claude/.credentials.json && { [ -s ~/.claude/settings.json ] || echo '{}' > ~/.claude/settings.json; }", // å
é ã® chown ã« -R ãä»ããŠã¯ãããªãïŒçç±ã¯åŸè¿°ïŒ "postCreateCommand": "sudo chown vscode:vscode /home/vscode/.claude && curl -fsSL https://claude.ai/install.sh | bash", "mounts": [ // é »ç¹æŽæ°åã¯ã³ã³ããéé¢ãvolume ãªã®ã§ãªãã«ãã§æ¶ããªãã // volume åã«ã¯ãªããžããªåãå
¥ããïŒçç±ã¯çŽåŸã®ã3ç¹ç®ããåç
§ïŒ "source=myrepo-claude-config,target=/home/vscode/.claude,type=volume", // çšæŽæ°åã ãæ·±ããã¹ã® bind ãéãã "source=${localEnv:HOME}/.claude/.credentials.json,target=/home/vscode/.claude/.credentials.json,type=bind", "source=${localEnv:HOME}/.claude/settings.json,target=/home/vscode/.claude/settings.json,type=bind", "source=${localEnv:HOME}/.claude/CLAUDE.md,target=/home/vscode/.claude/CLAUDE.md,type=bind", // ãã£ã¬ã¯ããªã§ãåãããã«éãããã "source=${localEnv:HOME}/.claude/skills,target=/home/vscode/.claude/skills,type=bind" ] } compose çãšã®éãã¯3ç¹ã§ãã ããŠã³ããæžãå Žæ ïŒåãµãŒãã¹ã® volumes: ãã devcontainer.json ã® mounts é
åãïŒã HOME ã®å€æ°èšæ³ ïŒ ${HOME} ã ${localEnv:HOME} ãïŒããã㊠volume åã®æ±ã ãåã®2ã€ã¯æžãæããã ãã§ããã3ç¹ç®ã¯èšèšã®èã«é¢ããã®ã§åç¬ã§èª¬æããŸãã compose ã® top-level volumes: ã«æžããååã¯ã compose ãããžã§ã¯ãåã§ãã¬ãã£ãã¯ã¹ãããŸã ã Compose Specification ãæ¢å®åäœãšããŠå®ããŠããŠãäŸå€ã¯ name: ãæç€ºãããšãã ãã§ããã ãã claude_config ãšããæ±çšåã®ãŸãŸã§ãããããžã§ã¯ãããšã«å¥ã® volume ã«ãªããŸãã äžæ¹ devcontainer.json ã® mounts 㯠compose ãçµç±ãããDocker CLI ã®ããŠã³ãæ§æãžãã®ãŸãŸæž¡ããŸãã ãã¬ãã£ãã¯ã¹ã®ä»çµã¿ãæãŸããªãã®ã§ãæžããååããã®ãŸãŸ volume åã«ãªããŸã ãããã¯åŸè¿°ã®ç¢ºèª2ã§å®éã«èŠããŸããæå
ã® devcontainer.json ã«ã¯ source=sios-claude-config ãšæžããŠããã findmnt ãè¿ãå®äœã /var/lib/docker/volumes/sios-claude-config/_data ã§ãããªããžããªåã¯ä»ããŠããŸããã ã€ãŸãæ±çšåã®ãŸãŸã ãšå
šãããžã§ã¯ããåã volume ãæŽã¿ãåè¿°ã®ããããžã§ã¯ãããšã«ç¬ç«ãããããæç«ããªããªããŸãã ãã ãååãæã§ä»ãåããã®ã¯èŠåŸã«é Œãéçšã§ããå¿ããã°éãã«å£ããŸããããã¯å€æ°ã§èªååã§ããŸãã // ãªããžããªã®ãã©ã«ãåããå°åºããïŒèªããååã«ãªãïŒ "source=claude-config-${localWorkspaceFolderBasename},target=/home/vscode/.claude,type=volume" ${localWorkspaceFolderBasename} 㯠devcontainer 仿§ã®å€æ°ã§ã json_reference ã mounts ã§ã®å©çšãèªããŠããŸãã ãã ããã㯠ãã©ã«ãåããå°åºããã®ã§ãå¥ã®å Žæã«ããååãªããžããªãšã¯è¡çªããŸã ã ~/work/app ãš ~/oss/app ãäž¡æ¹ Dev Container ã§éããŠããã°ãã©ã¡ãã claude-config-app ãæŽã¿ãŸããæã§åœåããããã¯å®å
šã§ãããè¡çªãæ¶ããããã§ã¯ãããŸããã ãããŸã§æœ°ããªã ${devcontainerId} ã䜿ããŸããAnthropic èªèº«ã®ãªãã¡ã¬ã³ã¹å®è£
ãããã§ããäžãšåã json_reference ãããã® dev container ã«åºæã§ããªãã«ããè·šãã§å®å®ããèå¥åããšå®ããŠããã®ã§ãååãã©ã«ãã§ãè¡çªããŸããã代ããã«ååãäžéæã«ãªãã docker volume ls ã§ç®èŠã§ããªããªããŸãã ååãªããžããªãè€æ°éãå¯èœæ§ããããªã ${devcontainerId} ãèªããååãåªå
ãããªããã©ã«ãå ããšããéžã³æ¹ã«ãªããŸãã initializeCommand ã«ã€ããŠè£è¶³ããŸãããã¡ã€ã« bind ã¯ãœãŒã¹ãååšããªããšãDocker ãããã root ææã®ãã£ã¬ã¯ããªãšããŠèª€çæããŠããŸããŸãããããé²ãããããã¹ãåŽã«ç©ºãã¡ã€ã«ãå
ã«äœããŸãã initializeCommand ã¯ã³ã³ããçæåã«ãã¹ãäžã§å®è¡ãããã®ã§ããããé©åãªçœ®ãå Žæã§ãã 3ç¹ã现ãããå€ããªã泚æããããŸãã chmod 600 ãä»ãã ãå
¬åŒããã¥ã¡ã³ã㯠Linux ã® .credentials.json ã “file mode 0600 ” ãšæèšããŠããŸãã touch ã ãã ãšæ¢å®ã® umask ã§ 644 ã®ããŒã¯ã³ãã¡ã€ã«ãã§ãããããããæç€ºçã«çµããŸãã settings.json ã¯ç©ºãã¡ã€ã«ã«ããªã ã {} ã§åæåããŸãã .credentials.json ã¯ç©ºã§ã “Not logged in” ãšããŠæ±ãããŸããã settings.json ã空ã ãš JSON ããŒã¹ã«å€±æãããããã§ãã mkdir -p / touch -a ã¯åªç ãªã®ã§ããã§ã«ãã¡ã€ã«ãæã£ãŠããã¡ã³ããŒã®ç°å¢ã§ã¯äœãããŸããã postCreate ã§ã®ææè
ä¿®æ£ãšã€ã³ã¹ããŒã« ã³ã³ããçæåŸã¯ãææè
ä¿®æ£ â ã€ã³ã¹ããŒã©ã®é ã§å®è¡ããŸãã # æ°èŠ named volume ã¯ããŠã³ããã€ã³ãïŒ~/.claudeïŒã root ææã§åæåãããã # éååž°ã§ãã«ãŒãã ããã vscode ãžã-R ã¯äœ¿ããªãïŒéã bind ãããã¹ãåŽã® # å®äœãå·»ã蟌ããããçç±ã¯åŸè¿°ïŒ if [ -d "$HOME/.claude" ]; then echo "[postCreate] Fixing ownership of .claude volume root (non-recursive)" sudo chown vscode:vscode "$HOME/.claude" fi # éããããã³ã°: ãããã¯ãŒã¯/ãããã·èµ·å ã®å€±æã§ postCreate å
šäœãæ¢ããªã echo "[postCreate] Installing Claude Code (native installer)" if curl -fsSL https://claude.ai/install.sh | bash; then echo "[postCreate] Claude Code installed" else echo "[postCreate][WARN] Claude Code install failed (network/proxy?); continuing" fi echo "[postCreate] Completed" ã€ã³ã¹ããŒã©ã if ã§å
ãã§ããã®ã¯ãäŒæ¥ãããã·ãªã©ã§å°éã§ããªãã£ããšãã« postCreate å
šäœãæ¢ããªãããã§ãã æ¢åã®å±¥æŽãæã¡èŸŒã ãã®æ§æã«ç§»ããš projects/ ã¯ç©ºããå§ãŸããŸãããã¹ãã«æ®ã£ãéå»ã®äŒè©±ãåŒãç¶ãããå Žåã¯ãæã§ã³ããŒã§ããŸãããã ã cp ã ãã§ã¯è¶³ããã ãã£ã¬ã¯ããªåã®ä»ãæ¿ããèŠããŸã ã projects/ é
äžã®ãã£ã¬ã¯ããªåã¯ãéããŠããã¯ãŒã¯ã¹ããŒã¹ã®ãã¹ããæ©æ¢°çã«å°ãããŸãããã¹ãã§ /home/ryu/product/blog/sios-tech-blog-with-claude ãéããŠãããªã -home-ryu-product-blog-sios-tech-blog-with-claude ãã³ã³ããã§ /workspaces/sios-tech-blog-with-claude ãéãã° -workspaces-sios-tech-blog-with-claude ã§ããååãéãã®ã§ããã®ãŸãŸã³ããŒããŠãã³ã³ããåŽã¯ããã®ãããžã§ã¯ãã®äŒè©±ã¯ç¡ãããšèšããŸããå®éã«ååãæããã«å
¥ããŠã¿ããšããã claude --resume ã¯ç©ºã®ãŸãŸã§ããã ãã¹ãåŽã§ ls ~/.claude/projects/ ãèŠãŠèªåã®ãã£ã¬ã¯ããªåã確ãããŠãããååãä»ãæ¿ãã€ã€ volume ãžæµã蟌ã¿ãŸãã # ãã¹ãåŽã§å®è¡ã<volume> 㯠devcontainer.json ã«æžãã volume å docker run --rm \ -v <volume>:/dst \ -v ~/.claude/projects/-home-ryu-product-blog-sios-tech-blog-with-claude:/src:ro \ alpine sh -c 'mkdir -p "/dst/projects/-workspaces-sios-tech-blog-with-claude" \ && cp -a /src/. "/dst/projects/-workspaces-sios-tech-blog-with-claude/" \ && chown -R 1000:1000 /dst/projects' chown ã® 1000 ã¯ã³ã³ããåŽ vscode ã® uid ã§ããroot ææã®ãŸãŸçœ®ããš Claude Code ãæžã蟌ããŸããã å¿
èŠãªã®ã¯ãããŸã§ã§ã .jsonl ã®äžèº«ãæžãæããå¿
èŠã¯ãããŸãã ãåè¡ã¯ cwd ã«ãã¹ãåŽã®çµ¶å¯Ÿãã¹ïŒ /home/ryu/... ïŒãæã£ããŸãŸã§ããã sessions-index.json ã® originalPath ããã¹ãã®ãã¹ã®ãŸãŸã§ãããã³ã³ããå
ã® claude --resume ã¯ãã£ã¬ã¯ããªåã ããèŠãŠã»ãã·ã§ã³ãæŸããŸããæã¡èŸŒãã ã»ãã·ã§ã³ãå®éã«éããšããªãã«ãåã®ããåãããã®ãŸãŸåŸ©å
ãããŠç¶ãããäŒè©±ã§ããŸããã ãã ãæã¡èŸŒããã®ã¯ ãã®æç¹ã®æé¢ã ã ã§ãããã以éãã¹ãåŽã§å¢ããäŒè©±ã¯å
¥ã£ãŠããŸãããããšããªããžããªã«ãã£ãŠã¯ projects/ é
äžãæ°çŸMBããã®ã§ïŒæå
ã®1ãªããžããªã§885MBïŒãæµã蟌ãåã«ãµã€ãºã¯èŠãŠãããŠãã ããã ãããæ ããããã¯å®è£
äžã®èœãšã穎ã§ããæ¬æ§æãå®éã«çµãã ãšãã«èžãã ãã®ã ãã䞊ã¹ãŸãã named volume ã®åæææè
㯠root ãªã®ã§ chown ã¯éååž°ã§ named volume ã æ°èŠäœæ ãããšãããŠã³ããã€ã³ãïŒ ~/.claude ïŒã¯ rootïŒuid 0ïŒææ ã§åæåãããŸãããã®ãŸãŸã ãš vscode ãŠãŒã¶ãŒãé
äžã«æžã蟌ãããèšå®ã®ä¿åã倱æããŸãããã®ãã postCreate ã§ ~/.claude ã®ææè
ã vscode ã«çŽããŸããvolume ã¯åãã«ãã§æ¶ããªããããååäœæåŸã¯ãã§ã« vscode ææãšãªãããã®åŠçã¯åªçã§ãã ããã§éèŠãªã®ãã chown ã« -R ïŒååž°ïŒãä»ããŠã¯ãããªã ããšã§ãã ãã®æç¹ã® ~/.claude ã¯ãæ°èŠ volumeïŒç©ºïŒã«éã bind ãããã¡ã€ã«ãä¹ã£ãŠããã ãã®ç¶æ
ã§ããroot ææãªã®ã¯ã«ãŒããã£ã¬ã¯ããªèªèº«ã ãã§ããµããã£ã¬ã¯ããªã¯ Claude ååèµ·åæã« vscode ææãšããŠäœãããŸããã«ãŒãã ãçŽãã°ååã§ãã -R ãä»ãããšãéã bind ãããã¡ã€ã«ãŸã§ååž°ã®å¯Ÿè±¡ã«å
¥ããŸãããã® bind å
㯠ãã¹ãåŽã®ãã¡ã€ã«ãã®ãã®ïŒã³ã³ãããšãã¹ãã§åãå®äœãæããŠããŸãïŒ ãªã®ã§ãã³ã³ããå
ã§ã®ååž° chown ã ãã¹ãåŽã®æææš©ãŸã§æžãæããŸã ããã¹ãã® uid ã 1000 ã§ãªãç°å¢ã§ã¯ãæžãæããããçµæãã¹ãåŽã® Claude Code ãããŒã¯ã³ãèªããªããªããŸããå
±æãããã¡ã€ã«ãå¢ããã»ã©ããã®äºæ
ã®åœ±é¿ç¯å²ã¯åºãããŸãã éååž°ãªãå
±æãã¡ã€ã«ã«ã¯äžåè§ŠããŸãããæš©é調æŽã¯ initializeCommand ïŒãã¹ãåŽã§å®è¡ïŒãš updateRemoteUserUID: true ã«å§ããŸãã plugins/ ã¯çšæŽæ°ã§ãå
±æã§ããªã ãçšæŽæ°ãªãå
±æããŠãããã®äŸå€ã§ãã plugins/ ã¯æŽæ°é »åºŠããäœãã®ã§ããã ã¬ãžã¹ããªã®äžèº«ãã³ã³ããã®çµ¶å¯Ÿãã¹ãæã£ãŠããŸã ã known_marketplaces.json ã® installLocation installed_plugins.json ã® installPath / projectPath ãããã« /home/vscode/.claude/plugins/... ã /workspaces/... ãšãã£ãã³ã³ããåŽã®ãã¹ãèšé²ãããŸãããããŸã§ã¯å®ç©ãéããŠç¢ºèªããäºå®ã§ãã ãã¹ããšå
±æãããšãäž¡è
ãäºãã«è§£æ±ºã§ããªããã¹ãèŠãããšã«ãªããŸããçæ¹ããååšããªããã¹ãæããŠããïŒå£ããŠããããšå€æããŠã¬ãžã¹ããªãèªåã®ãã¹ã§äžæžãããæ¬¡ã¯ããçæ¹ãåãããšãããââãšãããã³ãã³ãèµ·ããã¯ãã§ãã ãã ãããã¯èšé²ããããã¹ããå°ããæšæž¬ã§ãå®éã«åŸåŸ©ãããŠç¢ºãããããã§ã¯ãããŸãã ã確ããã䟡å€ããæã€ã³ã¹ãã®ã»ããå®ãã®ã§ãæ§æã§åã£ãŠããŸãã å
±æããããå Žåã®åŸ©æ§ã³ã¹ã㯠/plugin install ã1åããçŽãã ãã§ããå
±æãã settings.json ã« marketplace ã®æ
å ±ãæ®ãã®ã§ããããã埩å
ã§ããŸãã æªå°å
¥ã¡ã³ããŒãžã®é
åžã§ã¯ç©ºãã¡ã€ã«ãå
ã«äœã ããã¯ããŒã ãžé
åžãããšãã«å®éã«èžãã çœ ã§ãããã¹ãã« ~/.claude/.credentials.json ãç¡ããšãDocker ã bind ãœãŒã¹ã root ææã®ãã£ã¬ã¯ããªãšããŠèª€çæ ããŸããClaude Code ããŸã 䜿ã£ãŠããªãã¡ã³ããŒã®ç°å¢ã§ã¯ bind ãœãŒã¹ãååšãããroot ææã§çæãããçµæã vscode ããæžã蟌ããªããªã£ãŠå£ããŸããã 察å¿ã¯åè¿°ã® initializeCommand ã§ãã空㮠.credentials.json 㯠“Not logged in” ãšããŠæ±ãããããã¯ã©ãã·ã¥ãããååã« claude /login ãããšããŒã¯ã³ããã®ãã¡ã€ã«ã«æžã蟌ãŸãã以éã¯æ°žç¶ããŸãã å£ããŠããŸã£ãç¶æ
ããã®åŸ©æ§ ãã§ã« root ææã®ãã£ã¬ã¯ããªãšããŠèª€çæãããŠããå Žåã¯ããããæ¶ããŠããããçŽããŸãã # ãã¹ãåŽã§å®è¡ïŒroot ææãã£ã¬ã¯ããªã«ãªã£ãŠãããã®ãåé€ïŒ sudo rm -rf ~/.claude/.credentials.json ãã®ãšã泚æãããã®ãã initializeCommand ã®äžã§æš©éãçŽãããšã㊠chown ãæžãå Žåã§ãããã¹ãäžã§ sudo ãªãã«å®è¡ããããããroot ææã®ãã®ã«å¯ŸããŠã¯å€±æããŸãããã㊠initializeCommand ã倱æãããšã³ã³ããã®äœæèªäœãæ¢ãŸããŸã ïŒ json_reference ã¯ã©ã€ããµã€ã¯ã«ã¹ã¯ãªããã®å€±æã«ã€ããŠãåŸç¶ã¯å®è¡ãããªãããšã ãæžããŠããããã¹ãåŽã§èµ°ã initializeCommand ã®å€±ææã«ã©ããªããã¯æèšããŠããŸãããããã¯ä»æ§ã®è£ãåããŠããªãæåã§ãïŒããå£ãããç¶æ
ã§æ€çŽ¢ããŠæ¥ãèªè
ããŸãèžãã®ã¯ãããªã®ã§ãå
ã«ãã¹ãåŽã§æ¶ããŠããã®ã確å®ã§ãã volume åŽãå£ããå Žå㯠docker volume rm ã§äœãçŽããŸããã äžã®å±¥æŽãšèšå®ãäžç·ã«æ¶ããŸã ïŒåŸè¿°ã®å¶çŽãåç
§ïŒã åäœç¢ºèª æ¬æ§æã®äžæ žã¯ã CLAUDE_CONFIG_DIR ã«ããéçŽå
ã®ç§»åãšãvolume ã®äžãžã® bind ã®éãªãã§ããã©ã¡ããèšå®ãã¡ã€ã«ãèªãã ã ãã§ã¯å¹ãããã©ããåãããŸãããçµãã ããšã«ç¢ºèªããŠãã ããã以äžã¯æ¬èšäºã®çŽ ã® devcontainer.json çããã®ãªããžããªã«é©çšãããªãã«ãã2åè·šãã ããã§ãããã«3æ¥ãã®ãŸãŸäœ¿ã£ãŠåã£ã宿ž¬ã§ãã 4æ¬ãããŸãã ã©ããã³ã³ããã®äžã§ã³ãã³ã1〠ãªã®ã§ãé ã«å©ãã°æ°åã§çµãããŸãã1ãš2ã§èšèšã®2段ãå¹ããããèŠãŠã3ã§çæ¿ïŒåãã°ã€ã³äžèŠïŒãã4ã§ãã®çµæãšããŠäœãå€ãã£ããã確ãããæµãã§ãã å
ã«ãèšäºã®äž»åŒµãæ£ç¢ºãªåœ¢ã«çŽããŠãããŸãã ããªãã«ãããŠãåãã°ã€ã³äžèŠãã§ã¯ãããŸãããå°å
¥æã«1åã ããã°ã€ã³ãå¿
èŠã§ããã®ãšãæžãããããŒã¯ã³ããã¹ãåŽã«æ®ãããã2åç®ä»¥éã®ãªãã«ãã§äžèŠã«ãªããŸãã initializeCommand ãäœãã®ã¯0ãã€ãã®ç©ºãã¡ã€ã«ãªã®ã§ãå°å
¥æç¹ã§ãã¹ãã«ããŒã¯ã³ãæã£ãŠããªããã°ååã®1åã¯å¿
ããã°ã€ã³ãèŠããŸããå®éã1åç®ã®ãªãã«ãçŽåŸã¯ãã°ã€ã³ãæ±ããããŸããããããé£ã°ããŠèªããšãå°å
¥çŽåŸã«ãå¹ããŠããªãããšèª€è§£ããŸãã 1. .claude.json ã ~/.claude ã®äžã«å
¥ã£ãã ãŸã1段ç®ããã§ããèšäºã®åé ã§ãæ¢å®ã§ã¯ .claude.json ã ~/.claude ã® å€ ã«ããããšã ls ã§èŠãŸãããåãã³ãã³ããæ°æ§æã®ã³ã³ããå
ã§å©ããšããã£ããå転ããŸãã $ ls -la ~/.claude.json ~/.claude/.claude.json ls: cannot access '/home/vscode/.claude.json': No such file or directory -rw------- 1 vscode vscode 42482 Aug 1 12:56 /home/vscode/.claude/.claude.json å€ã«ãã£ãã¯ãã®ãã¡ã€ã«ãæ¶ãã ~/.claude ã®äžã«çŸããŠããŸãã CLAUDE_CONFIG_DIR ãå¹ãã蚌æ ãããã§ãããããå転ããŠããªããã°ã .claude.json 㯠volume ã®å€ã«æ®ã£ãŠããŸãããã®å Žåãã³ã³ããåºæã§ã¯ãããã®ã® ãªãã«ãã§æ¶ãã å Žæã«æžãããŠããã®ã§ãéé¢ã§ããããã«èŠããŠæ°žç¶ããŸããã 2. bind ã volume ã®äžã«ä¹ã£ãŠããã 2段ç®ã§ãã findmnt ãé局衚瀺ã®ãŸãŸ .claude ã§çµããšãéãªãæ¹ã1ç»é¢ã§èŠããŸãã $ findmnt -o TARGET,SOURCE | grep -i claude ââ/home/vscode/.claude /dev/sdc[/var/lib/docker/volumes/sios-claude-config/_data] â ââ/home/vscode/.claude/CLAUDE.md /dev/sdc[/home/ryu/.claude/CLAUDE.md] â ââ/home/vscode/.claude/skills /dev/sdc[/home/ryu/.claude/skills] â ââ/home/vscode/.claude/settings.json /dev/sdc[/home/ryu/.claude/settings.json] â ââ/home/vscode/.claude/.credentials.json /dev/sdc[/home/ryu/.claude/.credentials.json] ãã£ã¬ã¯ããªèªäœã¯ volumeïŒ /var/lib/docker/volumes/... ïŒãæãããã® å
åŽã«ã¶ãäžãã£ã4ã€ã ã ããã¹ãã®ãã¹ïŒ /home/ryu/.claude/... ïŒãæããŠããŸããçã£ãéãªãæ¹ã§ããå
±æãããšæ±ºãããã®ã4ã€ãšãåãšããŠäžŠãã§ããããšããããã§åæã«ç¢ºèªã§ããŸããã¶ãäžããã1ã€ãåºãªããªã bind ãå¹ããŠãããã以éã®ç¢ºèªã¯éããŸããã ãªã skills ã¯ãã¡ã€ã«ã§ã¯ãªããã£ã¬ã¯ããªã§ãããæ±ãã¯åãã§ããvolume åŽã®ååãã£ã¬ã¯ããªãäžžããšèŠãé ããŠããã¹ãã®äžèº«ãèŠããŸãã åºåã¯ãã®ãªããžããªã®å®æž¬ãã®ãŸãŸãªã®ã§ãvolume åããµã³ãã«ã® myrepo-claude-config ã§ã¯ãªã sios-claude-config ã«ãªã£ãŠããŸããåè¿°ã®ãšãããªããžããªåãå
¥ããååã«ããŠããããã§ãèªã¿æ¿ããŠãã ããã ãããŸã§åºãŠããã°ãããŒã¯ã³ããã¹ããšåãå®äœã§ããããšãåæã«æ±ºãŸããŸãã source ããã¹ãã®ãã¹ãæããŠããæç¹ã§ããã®ãã¹ã§ã¯ volume åŽã®ã³ããŒãé ããŠãã ããã§ããã³ã³ããããèªããäžèº«ã¯ããã¹ãã®ãã¡ã€ã«ä»¥å€ã«ãããŸãããéã« .credentials.json ã®è¡ã ããã¹ã以å€ãæããŠãããªãã ${localEnv:HOME} ã®è§£æ±ºå
ããããŠããŸãïŒWindows ã®ãã¡ã€ã«ã·ã¹ãã äžã§ãªããžããªãéããå Žåã«èµ·ããããŸããæ«å°Ÿã®ãå¶çŽã»åæããåç
§ïŒã 3. åãã°ã€ã³ãèŠããªãã claude auth status ããã°ã€ã³ç¶æ
ã JSON ã§è¿ããŸãã察話ã»ãã·ã§ã³ãèµ·ããåã«ç¢ºãããããã®ã§ããããäžçªæ©ã確èªã§ãã $ claude auth status { "loggedIn": true, "authMethod": "claude.ai", "apiProvider": "firstParty", ... } ãã ãããã°ã€ã³ç»é¢ãåºãªãã£ããã ãã§ã¯ãè£ã§æ°ãããã°ã€ã³ãçŽããŠããªãããšã®èšŒæã«ãªããŸãããå€å¥ã§ããã®ã¯ .credentials.json ã®äžèº«ã§ãã ãªãã¬ãã·ã¥ããŒã¯ã³ã®æå¹æéãå€ãã£ãŠããªããã°ãæ°èŠãã°ã€ã³ã¯èµ·ããŠããŸãã ãæ°èŠãã°ã€ã³ãªããªãã¬ãã·ã¥ããŒã¯ã³ãåçºè¡ãããæéãããã«åãããŠå
ãžåãããã§ãã ãã®æšè«ã¯çéã§ã ã䜿ã£ãŠãã ããããåããŠããªã â ãã°ã€ã³ããŠããªããã¯èšããŸãããéã®ãåãã â ãã°ã€ã³ãããã¯èšããŸãããããŒã¯ã³æŽæ°ã®ãã³ã«ãªãã¬ãã·ã¥ããŒã¯ã³èªäœãåçºè¡ããå®è£
ãªãããã°ã€ã³ãªãã§ãããã¯åãããããã§ãïŒæå
ã® v2.1.220 ã§ã¯ãåŸè¿°ã®ãšããæŽæ°ããŸããã§ãåããŸããã§ããïŒã $ python3 -c "import json,os,datetime as dt; \ d=json.load(open(os.path.expanduser('~/.claude/.credentials.json')))['claudeAiOauth']; \ [print(k, dt.datetime.fromtimestamp(d[k]/1000).strftime('%Y-%m-%d %H:%M:%S')) \ for k in ('expiresAt','refreshTokenExpiresAt')]" expiresAt 2026-07-31 00:20:05 refreshTokenExpiresAt 2026-08-27 19:01:56 ãªãã«ãã®ååŸãšãããã«3æ¥ãã®ãŸãŸäœ¿ã£ãããšã§äžŠã¹ããšãããªããŸããã3æ¥åŸã®åã¯æåãèŠæ¥µããããã«ãã¡ãã§åã£ã远詊ã§ãã èªè
ã3æ¥åŸ
ã€å¿
èŠã¯ãããŸãã ã é
ç® ãªãã«ãåïŒ7/30ïŒ ãªãã«ãåŸïŒ7/30ïŒ 3æ¥åŸïŒ8/1ïŒ inode 1396334 1396334 1396334 ãµã€ãº 509 509 509 mtime 07-30 16:20:05.958 07-30 16:20:05.958 08-01 11:21:35.319 expiresAt ïŒã¢ã¯ã»ã¹ããŒã¯ã³ïŒ 2026-07-31 00:20:05 2026-07-31 00:20:05 2026-08-01 19:21:35 refreshTokenExpiresAt 2026-08-27 19:01:56 2026-08-27 19:01:56 2026-08-27 19:01:56 refreshTokenExpiresAt ãåããŠããªãã®ã§ã2åç®ã®ãªãã«ãã§æ°èŠãã°ã€ã³ã¯çºçããŠããŸããã ãªãã«ãã®çŽåŸã ããèŠããšãã¢ã¯ã»ã¹ããŒã¯ã³ã®æéïŒ7/31 00:20ïŒããŸã çããŠãããã mtime ããåããŠããŸããã1åç®ãæžãããã¡ã€ã«ããã®ãŸãŸèªãã ã ãã§ãã3æ¥åŸã®åã§ããã®å
ãèŠããŸããã¢ã¯ã»ã¹ããŒã¯ã³ã¯æéåããè¿ããŠæŽæ°ããã mtime ãš expiresAt ã¯åããŸããã ããã¯ãã°ã€ã³äžèŠã®ãŸãŸèµ·ããæ£åžžç³» ã§ããäžæ¹ã§ refreshTokenExpiresAt ã¯åããŠããŸãããå€å®ã«äœ¿ãã®ããã¡ãã§ããçç±ãããã®1åã§ç¢ºãããããŸãã åãåããã1ã€ç€ºããŠããã®ã inode ã®äžå€ ã§ããããŒã¯ã³ãæžãæãã£ãŠãçªå·ãå€ãã£ãŠããªãïŒClaude Code ã¯ãã®ãã¡ã€ã«ã ãã®å Žã§äžæžã ããŠãããäžæãã¡ã€ã«ãäœã£ãŠ rename ã§å·®ãæ¿ããŠã¯ããŸãããåäžãã¡ã€ã«ã® bind ãåããå
žåçãªåå ããã® rename ãªã®ã§ããããåããªãããšã¯æ¬æ§æãé·æçã«ä¿ã€ãã©ããã®ç®å®ã«ãªããŸãïŒåŸè¿°ã®å¶çŽãåç
§ïŒã 4. ä»ã®ãããžã§ã¯ããèŠããªããªã£ãã ãããŸã§ã®3ã€ã¯ãèšèšãå¹ãããããèŠãŠããŸãããæåŸã¯ãå¹ããçµæãšã㊠äœãå€ãã£ãã ã§ããèšäºã®åé ã§ .claude.json ãæ°ããã®ãšåãã³ãã³ãããæ°æ§æã®ã³ã³ããå
ã§å©ããŸãã $ python3 -c "import json,os; d=json.load(open(os.path.expanduser('~/.claude/.claude.json'))); \ print('projects:', len(d['projects']), '/ githubRepoPaths:', len(d['githubRepoPaths']), '/ numStartups:', d['numStartups']); \ print('project keys:', list(d['projects'].keys()))" projects: 1 / githubRepoPaths: 1 / numStartups: 10 project keys: ['/workspaces/sios-tech-blog-with-claude'] 36ãããžã§ã¯ãã1ã€ã«ãªããŸãã ãããããã®1ã€ã¯ãããŸéããŠãããªããžããªãã®ãã®ã§ãã numStartups ã 1278 ãã 10 ã«èœã¡ãŠããŠããã®ã«ãŠã³ã¿ãã³ã³ããã®äžã ãã§æ°ãçŽãããŠããããšãåãããŸããä»ãããžã§ã¯ãã®ä¿¡é Œç¶æ
ã¯ãããããããã¯èŠããŸããã äŒè©±å±¥æŽãåãã§ãã $ ls ~/.claude/projects/ -workspaces-sios-tech-blog-with-claude ãã£ã¬ã¯ããªã1ã€ã ããããã«ç¡é¢ä¿ãªãªããžããªã®ååã䞊ãã§ãããã .claude.json ã projects/ ã®ã©ã¡ããã volume ã®å€ã«æ®ã£ãŠããŸããéã« äžãèŠããŠãªãã«ãåã®ã»ãã·ã§ã³ã® .jsonl ããã®ãŸãŸèªããã° ãéé¢ããåŽãæ¶ããã«æ°žç¶ããŠããããšãåæã«ç¢ºèªã§ããŸããããã空ãªããæå³ãã named volume ã§ã¯ãªãå¿åããªã¥ãŒã ãã³ã³ããã®ã¬ã€ã€ã«æžããŠããå¯èœæ§ããããŸãã å¶çŽã»åæ æ¬æ§æãæ¡ãåã«ç¥ã£ãŠããã¹ãå¶çŽãæŽçããŸãã é
ç® å
容 èªèšŒããŒã¯ã³ã®é²åº .credentials.json ã¯ã³ã³ããããèªã¿æžãã§ããŸããã³ã³ããå
ã®ä»»æã®ã³ãŒãã»MCPã»ãšãŒãžã§ã³ããããŒã¯ã³ãååŸãããããšããå
±æã®æ¬è³ªçãªãã¬ãŒããªãã§ãã蚱容ã§ããªãå Žåã¯å
±æããããååéœåºŠãã°ã€ã³ããæ§æïŒvolume ã®ã¿ã»bind ãªãïŒã«ããŸã volume ãæ¶ããšèšå®ã»å±¥æŽãæ¶ãã docker compose down -v / docker volume rm / docker volume prune ãå®è¡ãããšãéé¢ãã .claude.json ãšäŒè©±å±¥æŽã¯å€±ãããŸããããŒã ãã£ã¬ã¯ããªããšããã¯ã¢ããããŠããå Žåããéé¢ããåã¯ãã®å¯Ÿè±¡ããå€ããŸãããåãã«ãã§æ¶ããªããããšãšãæ¶ããªããããšã¯å¥ã§ã åããããšã®ä»£å ãããžã§ã¯ãã®ä¿¡é Œç¶æ
ã» projects/ ã®äŒè©±å±¥æŽã» history.jsonl ã¯ã³ã³ããåŽã§ç©ºããå§ãŸããŸãã --resume ããã¹ãåŽã®éå»ã»ãã·ã§ã³ãèªåã§æŸãããšã¯ãããŸããïŒãã£ã¬ã¯ããªåãä»ãæ¿ã㊠volume ãžã³ããŒããã°ãäžåºŠããã®æã¡èŸŒã¿ã¯ã§ããŸãããæ¢åã®å±¥æŽãæã¡èŸŒãããåç
§ïŒãååã«ãããžã§ã¯ãã®ä¿¡é Œããã³ãããåºãŸãã**ãæ··ãããªããã®è£è¿ãã¯ãæãåãããªããšå
¥ã£ãŠããªãã**ãªã®ã§ãéå»ã®å±¥æŽãé »ç¹ã«é¡ãäœ¿ãæ¹ãããŠããå Žåã¯ããã®æ§æã¯åããŸãã user ã¹ã³ãŒãã® MCP ãµãŒããåŒãç¶ãããªã claude mcp add --scope user ã§ç»é²ãã MCP ãµãŒã㯠.mcp.json ã§ã¯ãªã ~/.claude.json ã«æžã蟌ãŸããããšã å
¬åŒããã¥ã¡ã³ã ã«æèšãããŠããŸãããã®ãã¡ã€ã«ãéé¢ããã®ã§ã user ã¹ã³ãŒãã§ç»é²ãã MCP ãµãŒãã¯ã³ã³ããããšã«ç»é²ãçŽã ã«ãªããŸãããªããžããªã«çœ®ãã .mcp.json ïŒãããžã§ã¯ãã¹ã³ãŒãïŒã¯ bind ã®å¯Ÿè±¡å€ãªã®ã§åœ±é¿ãåããŸããããªãæå
㯠user ã¹ã³ãŒãã®ç»é²ã0ä»¶ã§ããã®äžäŸ¿èªäœã¯èžãã§ããŸããïŒããã¥ã¡ã³ãããã®ææã§ãïŒ æãŠãã®ã¯ãã¹ã ã³ã³ããçµè·¯ã ã æ··ãããæãŠãã®ã¯ãã¹ããšåã³ã³ããã®ããã ã§ããåäžã³ã³ããå
ã§ claude ãè€æ°èµ·åããã°ããããã¯åã volume äžã®åã .claude.json ãå
±æããŸã ããŒã¯ã³æŽæ°ããŸããã é·ææå åäžãã¡ã€ã«ã® bind ã¯ãæžãæããäžæãã¡ã€ã«ã«æžã㊠rename ã§å·®ãæ¿ãããæ¹åŒãæ¡ããšå®äœã®å¯Ÿå¿ãåããããšããããŸããv2.1.220 ã®å®æž¬ã§ã¯ãååãã°ã€ã³ã§ã³ã³ããå
ããæžãããããŒã¯ã³ã inode ãå€ããã«ãã¹ããžè²«éããæ¬¡ã®ãªãã«ãã§èªã¿åºããŸãããããã«3æ¥åŸãã¢ã¯ã»ã¹ããŒã¯ã³ã®æéåãã«ããæŽæ°ãå®éã«èµ°ã£ãããšã inode ã¯åããŸãŸã§ããïŒïŒäžæžãæ¹åŒïŒããã ãããã¯å®è£
ã®èгå¯ã§ãã£ãŠä¿èšŒããã仿§ã§ã¯ãªãã®ã§ãçãäžãã£ããäžèšãåäœç¢ºèªãã§ç¢ºããçŽããŠãã ãã ãã¹ãåæ Linux / WSL2 ã§æ€èšŒããŠããŸããmacOS ã§ã¯èªèšŒæ
å ±ã Keychain ã«ä¿åãã .credentials.json ãšããŠãã¡ã€ã«åãããªãããšã èªèšŒããã¥ã¡ã³ã ã«æèšãããŠãããããããŒã¯ã³ã® bind å
±æã¯æç«ããŸããïŒã³ã³ããåŽã§ claude /login ããvolume ã§ä»¥éæ°žç¶ããã圢ã«ãªããŸãïŒãä¿åå
ã¯ãããããã°ã€ã³ããŒãã§ãŒã³å
ã®ã¢ããªã±ãŒã·ã§ã³ãã¹ã¯ãŒãçžåœã®é
ç®ã ãšæãããŸããã macOS 宿©ã§ã¯æªæ€èšŒ ãªã®ã§ãå Žæã®ç¹å®ã¯åèªã§ç¢ºèªããŠãã ãã $HOME ã®é£ãéã Windows ã®ãã¡ã€ã«ã·ã¹ãã äžã§ãªããžããªãéããšã initializeCommand ã® $HOME ãš compose ã® ${HOME} ããããæãããããŸãããªããžããªã¯ WSL äžã«çœ®ããŠãã ãã CLAUDE_CONFIG_DIR ã®äœçœ®ã¥ã æ©èœããŸãããç°å¢å€æ°ã® å
¬åŒãªãã¡ã¬ã³ã¹ ã«ã¯é
ç®ãšããŠèŒã£ãŠããŸããïŒ èªèšŒããã¥ã¡ã³ã ãš .claude ãã£ã¬ã¯ããªã®è§£èª¬ ã§æåãèšåãããã®ã¿ãåŸè
ã¯ãªãã¡ã¬ã³ã¹ãžãªã³ã¯ã匵ã£ãŠããŸãããé£ãã å
ã«é
ç®ã¯ãããŸããïŒ2026-08-02 æç¹ïŒãããã¥ã¡ã³ãåãæ±ãã Issue #33430 㯠not planned ã§ close ãããŠããããªãã¡ã¬ã³ã¹åãåŸ
ã€åæã§ã¯çµãŸãªãã»ããå®å
šã§ã ãªããèªèšŒæ
å ±ããã¹ãã«ä¿æããŠã³ã³ããããåç
§ããèãæ¹ãã®ãã®ã¯ãClaude Code ã«éã£ã話ã§ã¯ãããŸããã Azure CLI ãš gh ãããŒã ã§çµ±äžããæ§æ ã Gemini CLI ã®èªèšŒå
±æ ã§ãåãçºæ³ãæ¡ã£ãŠããŸããæ¬èšäºã¯ããã«ãäœãå
±æããäœããããžã§ã¯ãããšã«åãããããšããç·åŒããäžæ®µæã¡èŸŒãã 圢ã§ãã ãŸãšã ~/.claude ãäžžããšããŠã³ããããšã å
šã³ã³ããããã¹ãã®åããã¡ã€ã«ãæžãæãåã ç¶æ
ã«ãªããŸããæå
ã® .claude.json ã«ã¯36ãããžã§ã¯ãåã®ç¶æ
ãå
¥ã£ãŠããŸãããä»ãããžã§ã¯ãã®å±¥æŽãèŠããã³ã³ããã®å€ããã®æžã蟌ã¿ãå
¥ã£ãŠãããå£ããªããŠããã³ã³ããã«éããã¯ãã®äœæ¥ãå€ãšæ··ãã£ãŠããã®ã¯æ°æã¡æªãã§ãã ~/.claude ã®äžèº«ã¯ æŽæ°é »åºŠã®éããã®ã®å¯ãéã ã§ãäžäžã§ãããã«åãããŸããå
±æãããã®ã¯çšã«ããæŽæ°ãããªããã®ïŒèªèšŒããŒã¯ã³ã»user èšå®ã»user ã¡ã¢ãªã»user skillïŒã ããæ··ãã£ãŠå°ãã®ã¯èµ·åãæäœã®ãã³ã«æžãæãã .claude.json ãšå±¥æŽã§ããããã .claude.json ã¯æ¢å®ã§ã¯ ~/.claude ã®å€ã«ããããããäžžããšãã§æ±ãããšãããšåãããŒããããäœçœ®ã«ããŸãã é »ç¹æŽæ°åã named volume ã§ã³ã³ããããšã«ç¬ç«ãããçšæŽæ°åã ãã bind å
±æããã°ã å±¥æŽãšç¶æ
ããããžã§ã¯ãããšã«åãããŸãŸãåãã°ã€ã³ã®æéãå°å
¥æã®1åã§æžãŸããããŸã ïŒããã§æžãããããŒã¯ã³ããã¹ãã«æ®ãããã2åç®ä»¥éã®ãªãã«ãã§ã¯äžèŠïŒã宿ž¬ã§ã¯ã36ãããžã§ã¯ãåãã£ã .claude.json ã®ç¶æ
ã ããŸéããŠãããªããžããª1ã€ã ã ã«ãªããŸãããvolume åã¯ãããžã§ã¯ãããšã«å€ããŠãã ãããçŽ ã® devcontainer.json ã® volume å㯠compose ãšéã£ãŠãã¬ãã£ãã¯ã¹ãããªãã®ã§ããããæ±çšåã®ãŸãŸã«ãããšåããã€ããã§åãããŸããã ãã ã ã¿ãã§ã¯ãããŸãã ãå±¥æŽã¯ãã¹ãã®ããŒã ãã named volume ãžç§»ãã®ã§ãããŒã ã®ããã¯ã¢ããããå€ãã docker volume prune ã§æ¶ããŸããéå»ã®ã»ãã·ã§ã³ãé »ç¹ã«é¡ãäœ¿ãæ¹ãããŠãããªãããã®æ§æã¯åããŸããããæ··ãããªããã®è£è¿ãã¯ãæãåãããªããšå
¥ã£ãŠããªããã§ãïŒå°å
¥æã®æã¡èŸŒã¿ã ãã¯ããã£ã¬ã¯ããªåãä»ãæ¿ã㊠volume ãžã³ããŒããã°éããŸãïŒã ãçšæŽæ°ãªãå
±æããŠãããã«ãäŸå€ããããŸãã plugins/ ã¯ã¬ãžã¹ããªãã³ã³ããã®çµ¶å¯Ÿãã¹ãæã€ãããå
±æãããšãã¹ããšã³ã³ããã§å£ãåããŸãã ããã¯å
¬åŒã®ãªãã¡ã¬ã³ã¹å®è£
ãæ¡ããäžžããš volumeãã§ããå€ãã®èšäºããããäžžããš bindãã§ããªã äžéèšèš ã§ããæŽæ°é »åºŠã§ç·ãåŒããšãåãã°ã€ã³ã®æéãšã³ã³ããããšã®ç¬ç«ãäž¡æ¹åããŸãã ã芧ããã ãããããšãããããŸãïŒ ãã®æçš¿ã¯ã圹ã«ç«ã¡ãŸãããïŒ åœ¹ã«ç«ã£ã 圹ã«ç«ããªãã£ã 0人ããã®æçš¿ã¯åœ¹ã«ç«ã£ããšèšã£ãŠããŸãã The post Claude Codeã®~/.claudeãã©ããå
±æããŠã©ããåããïŒ first appeared on SIOS Tech Lab .
1. ã¯ããã« 2026幎8æ5æ¥ãKiro Crewãå
¬éãããŸããã https://kiro.dev/crew/ Kiro Crewã¯ãKiro CLIãå®è¡åºç€ãšããŠãèªåã®PCããµãŒããŒäžã§åããããªãŒãã³ãœãŒã¹ã®éçºã¯ãŒã¯ã¹ããŒã¹ã§ãã å
¬åŒããŒãžã§ã¯ãã»ãã·ã§ã³ããŸããMemoryã宿å®è¡ãé·æéã¿ã¹ã¯ãè€æ°ãšãŒãžã§ã³ãã®äžŠåå®è¡ãWebããã·ã¥ããŒããªã©ã玹ä»ãããŠããŸããKiro IDEãKiro CLIã眮ãæãããšãããããKiro CLIãšæ¢åã®.kiroèšå®ã䜿ããªãããäœæ¥ãã»ãã·ã§ã³ã®å€ãŸã§åºãããããã¯ããšããäœçœ®ä»ãã§ãã ä»åã¯EC2äžã®Ubun

















