13:12AI LABS
Log in to leave a comment
No posts yet
Claude Codeをターミナルで起動しておくと、開発スピードは確実に上がります。しかし、エージェントに広すぎる自由を与えてしまうと、思わぬ設定ファイルをいじってビルドを壊したり、わずか数分で数十ドルのAPI費用を使い果たしたりすることがあります。ツールの自律性が、かえって開発者の管理リソースを削ってしまうわけです。小規模なチームや個人プロジェクトを運営しているなら、エージェントの行動を制限する最低限の安全装置が必要です。
Claude Codeはデフォルトでプロジェクト全体に対する読み取り/書き込み権限を持っています。しかし、エージェントが .env ファイルを読み取ったり、ルートにある複雑な設定ファイルを勝手に修正したりするのは危険です。Anthropicの権限システムは拒否(Deny)ルールが最も強力に機能するため、これを活用してエージェントの活動範囲を物理的に制限する必要があります。
.clauderules ファイルを作成します。Edit(/src/features/**/*.ts) のように正規表現を使って、エージェントが触れるディレクトリをホワイトリスト化してください。Deny(Read(./*.env)) ルールを追加して、機密情報の近くには一切近づけないようにブロックする必要があります。このように設定すれば、エージェントが許可されていないパスを修正しようとした際、システムが即座に遮断します。無関係なファイルを触ることで発生するビルドエラーを根本から防ぐことができます。
コストの爆発は、多くの場合、無差別なファイルの読み込みから始まります。node_modules や package-lock.json のような巨大なファイルをエージェントが読み込み始めると、数十万個のトークンが一瞬で消えてしまいます。Anthropicのデータによると、適切な .claudeignore 設定だけでAPI支出の40%以上を削減できるといいます。
.claudeignore ファイルに dist/、build/、node_modules/ を必ず追加してください。claude select [ファイル名] を使って必要なファイルだけを指定する習慣をつけましょう。最新モデルはプロンプトキャッシュをサポートしており、キャッシュされたトークンは新規トークンより90%安価です。作業中に /cost コマンドを頻繁に入力してキャッシュヒット率を確認するだけでも、月末の請求書の数字が変わってきます。
エージェントに一度に数百行のコードをリファクタリングさせてしまうと、レビューが不可能になります。Claude Codeのフック(Hooks)機能を使って、変更内容が大きすぎる場合に自動で承認を拒否するガードレールを立てるべきです。
.claude/hooks/check-diff-size.sh スクリプトを作成しましょう。 git diff --stat コマンドで変更行数をチェックし、100行を超えたら exit 2 を出すようにすればOKです。エージェントが大規模な修正を試みた時に強制的にストップさせ、分割コミットを促す仕組みです。スクリプトの最後に npm test を入れておけば、テストを通過していないコードがステージングに上がるのも防げます。
人間とAIが同じブランチで混ざって作業すると、Gitの履歴は一瞬でめちゃくちゃになります。Stripeのようなテック企業は、エージェントに必ず専用ブランチを割り当て、PR(Pull Request)プロセスを経由させます。この単純なルールが、デプロイサイクルを早めながらもコードの品質を維持する秘訣です。
CLAUDE.md に「作業開始前に必ず agent/ プレフィックスが付いたブランチを作成せよ」と明記してください。エージェントが作業を終えたら gh pr create --draft を実行してドラフトPRを作成させます。自分が直接コードを確認してマージした後にブランチを削除する構造が、最も安全です。エージェントを同僚の開発者として扱いながらも、最終的な決定権は自分が握っていることを明確にするわけです。