fix(autopilot): move edited inventories out of .claude/ to stop permission stalls#822
Merged
Merged
Conversation
…ssion stalls The autopilot runner's child Claude runs as root, where bypassPermissions and --dangerously-skip-permissions are refused. In acceptEdits mode, editing files under .claude/ still triggers the "edit its own settings" prompt, which stalled unattended implement/review runs (#631/#633) whenever they updated the prettier or marker inventories that CLAUDE.md requires. Fix the root cause instead of bypassing permissions: stop editing .claude/ for routine bookkeeping. - Drop the smalruby-prettier-files.md mirrors; .prettierignore is the single source of truth (it already carried the full whitelist). - Move the marker inventories to docs/maintenance/smalruby-markers-{gui,vm}.md (extracted the vm list out of scratch-vm/development.md). - Repoint CLAUDE.md and the rules/docs that referenced the old locations. Now a normal feature implement edits only source / locale / .prettierignore / docs / tests -- all outside .claude/ -- so acceptEdits never prompts. No root or sandbox bypass needed. Closes #820 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Author
🤖 autopilot status
Linked issue #633. Maintained by autopilot (single writer); do not edit. |
takaokouji
approved these changes
Jun 29, 2026
3 tasks
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
autopilot の implement/review が
.claude/配下ファイルの編集で stall する問題(#820)を、権限バイパスではなく根本原因の除去で解決する。
子 Claude は root で動くため
bypassPermissions/--dangerously-skip-permissionsは拒否される。acceptEditsでも.claude/配下の編集は「自分の設定の編集」確認プロンプトが出て、無人実行が止まっていた(#631/#633 の implement で実際に発生)。CLAUDE.md が必須とする prettier/マーカーの
一覧更新が
.claude/配下にあったのが原因。→ routine な bookkeeping で
.claude/を編集しないようにする。Changes
.claude/rules/{scratch-gui,scratch-vm}/smalruby-prettier-files.mdを削除。.prettierignore(既に全ホワイトリストを保持)を唯一の真実にする(二重管理の解消)。docs/maintenance/smalruby-markers-gui.md/-vm.mdへ(vm はマーカー節を
scratch-vm/development.mdから抽出)。CLAUDE.mdと、旧パスを指していた.claude/rules/*/docs/*(計 25 ファイル)。効果
通常の機能実装が編集するのは source / locale /
.prettierignore/docs// tests のみ=すべて
.claude/外 →acceptEditsがそのまま通り、確認プロンプトで止まらない。root / sandbox バイパスは不要。
.claude/の編集が残るのは autopilot 自身(スキル/ルール)を直す稀なケースだけで、そこは手動アンブロックで足りる。
注意
.prettierignoreは無変更=Prettier 対象は不変。.claude/stall なしで無人完走できる。Closes #820
🤖 Generated with Claude Code