diff --git a/AGENTS.md b/AGENTS.md index eee871d6..98828164 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -69,6 +69,7 @@ python3 .github/scripts/proper_term_check.py # 固有の語の検査 | イメージの大きさを受け入れ条件に書く | `docker images` の `.Size` は、containerd のイメージストア(Docker Desktop)では圧縮後、classic のストアでは展開後に近い値を出す。同じ条件が端末で二通りに読める(#402 は 611MB と 1.29GB に分かれた) | 用語集の「展開後の大きさ」(`du -sbx /`)で書き、測った端末とストアを記録に残す | | base から道具を外す前に、使う者を探す | `repos/*/` のプラグインだけを探すと、プロジェクトのコード(`projects/*/repo`)の `.mcp.json`・`package.json` が `npx` などで実行時に使う道具を見落とす(#401 で `chrome-devtools-mcp`・`@playwright/mcp` を承認ゲートで人が見つけた) | `projects/*/repo` も探す範囲に入れ、探した場所と探していない場所を要求に書く | | 非対話のセッション(`claude -p` の担当)で base を建てる | macOS の Docker Desktop がキーチェーンを開けず、`ubuntu` などの取得が `error getting credentials` で止まる(#400 の担当は建てられないまま PR を出した) | 担当は建てられなかったことを「判断が要る」で返す。建てる確認は対話できるセッションか、取得済みのイメージを `docker load` してから行う | +| 「base の無い端末」での `devbase build` を確かめる | 手元の `devbase-base:latest` などを消すと利用者の環境を壊す。base を実際に建てると取得がキーチェーンで止まり得る(上の行) | 端末に無い作業用の名前で、最下段を `FROM scratch` にした同じ形の連なり(`containers/<作業用>/`・`projects/<作業用>/`)を `git archive` で展開した一時の root に組み、`env -u DEVBASE_ROOT` で建てる。たどり方は名前に依らない。実の名前での確認は base の無い端末で利用者に頼む(#404 のリリース後テスト、#421 のコメント) | | `projects/*` の `compose.yml` やフックを直したい | `projects/*` はプラグインのリポジトリ(`repos/` の下)への symlink で、このリポジトリの管理外 | Pull Request はプラグインのリポジトリへ出す | | `projects/*` へ `cd` してから `../../` を書く | symlink の先から解決され、devbase の外を指す | 絶対パスで書く | | macOS で検査が通る | CI(Linux)と `ln` などの既定の振る舞いが違う。同時実行の競合が CI でだけ出た例がある | 振る舞いが分かれるオプションは明示する(例: `ln -P`) |