AIエージェントが守りを外そうとしたら? 止める「omamori」

omamori
AI CLI ツールが実行しようとする危険なコマンドを、実行前に止める macOS 向けのツール
GitHub
公開
正式公開 2026-03-19(リポジトリ作成 2026-03-13)
作り手
yotta(個人)
対応
Mac
価格
無料(Apache-2.0 または MIT ライセンス)
評価
GitHub のスター 9(2026-10-12)

どんなアプリか

omamori は、AI CLI ツールが実行しようとする危険なコマンドからシステムを守るためのコマンドラインツールです。自分でふつうのターミナルに打ったコマンドはそのまま通り、omamori が働くのは AI ツールの環境が検知されたときです。

Deterministic semantic guard for AI CLI tools. Blocks covered destructive commands and self-disablement attempts, with tamper-evident audit trails.

yotta さん、omamori の GitHub README

README によると、rm -rf は macOS のゴミ箱へ移す動きに置き換え、git reset –hard は先に stash を取ってから実行します。git push –force、git clean -f、chmod 777、find -delete、rsync –delete は止めます。$‘rm’ や bash -c “$(cmd)” のように、形を崩したり動的に組み立てたりしたコマンドも止める対象です。

AI 側が omamori 自体を止めようとする操作にも備えています。AI ツールが検知されている間は、config disable や uninstall、PATH の上書き、環境変数の書き換えを止めます。組み込みのルールは config.toml からは無効にできません。

止めた記録も残します。Claude Code と Codex のフックで拒否したものは、HMAC で署名しハッシュでつないだ監査ログに書き込まれ、omamori audit verify で改ざんがないかを確かめられます。omamori doctor では、防御の層がすべて入ったままかを確かめられます。

対応は Claude Code が Tier 1、Codex CLI と Cursor が Tier 2 で、そのほかのツールには PATH のシムで対応します。導入は Homebrew で入れて omamori setup を実行する手順で、omamori explain を使うと、あるコマンドを実行せずに omamori がどう扱うかを確かめられます。

料金とデータの置き場所

ライセンスは Apache License 2.0 と MIT ライセンスのどちらかを選べる形です。判定は手元のマシンの中で行われ、AI モデルの呼び出しや常駐プロセス、ネットワークには頼らないと README に書かれています。

同じ分野のアプリ

名前型仕掛け対応料金
omamoriコマンドのガードAI CLI ツールの危険なコマンドと自己無効化を実行前に止めるmacOS(CLI)無料(OSS, Apache-2.0 / MIT)
mori(杜)サンドボックスsandbox-exec と eBPF でファイル I/O とネットワークを制御CLI(Rust、macOS / Linux)無料(OSS, GPL-2.0)
Alcoholless(alcless)サンドボックスAI コーディングエージェントなどを別ユーザーで隔離して動かすmacOS(CLI)無料(OSS, Apache-2.0)
Prompt Hardenerリスク分析LLM エージェントのプロンプトインジェクション由来のリスクを分析Python無料(OSS, Apache-2.0)

入れる前に

対応する OS は macOS です。また、omamori はサンドボックスではなく、README ではサンドボックスと一緒に使うよう案内しています。

防げない範囲も公開されています。無効化を止める仕組みには既知の抜け道が issue として挙がっており、対象外のすり抜け方があり得ることは SECURITY.md にまとめられています。Cursor のフックで拒否したものは標準エラーへの出力にとどまり、監査ログには入りません。

1.0 以降、どの種類のコマンドを止めたり置き換えたりするか、サブコマンドと終了コード、アップグレードをまたいだ監査ログの検証は、次のメジャーバージョンまで変えない約束になっています。config.toml の形式と Rust のライブラリ API はこの約束に含まれません。