Repolode
kaplanelad

kaplanelad/shellfirm

人間やAIコーディングエージェントによる危険なコマンドを止め、確認を求めるシェルのガードレール。

スター
948
フォーク
33
未解決の Issue
3
最終コミット
5 か月前

これは何?

shellfirmはユーザーとシェルの間に入り、コマンドの実行前に内容をチェックします。再帰的な削除、強制プッシュ、Kubernetes・Terraform・Docker・データベースに対する破壊的な操作など、組み込みパターンに該当するコマンドがあると、危険度、影響範囲、安全な代替案を表示し、続行する前に簡単なチャレンジへの回答を求めます。

Zsh、Bash、Fish、Nushell、PowerShell、Elvish、Xonsh、Oilsに対応しています。SSHセッション、rootシェル、保護対象のgitブランチ、本番Kubernetesクラスターなど、リスクの高い環境では保護レベルを自動的に引き上げられます。チームでルールを共有するには`.shellfirm.yaml`ファイルを使えます。また、実行を止めたコマンドとその判断はすべて、JSON Lines形式の監査ログに記録されます。

AIエージェント向けには、`shellfirm connect claude-code`を実行すると、Bashコマンドの実行前にチェックするフックをインストールし、コマンドのチェック、説明、代替案の提案を行うツールを提供するMCPサーバーを登録できます。

主な機能

  • 01ファイルシステム、git、Kubernetes、Terraform、Docker、AWS、GCP/Azure、Heroku、データベースに関する100種類以上の危険なコマンドパターンを検出します。
  • 02Zsh、Bash、Fish、Nushell、PowerShellを含む8種類のシェルに対応しています。
  • 03SSH、root、保護対象ブランチ、本番Kubernetes環境では、チャレンジの難易度を引き上げます。
  • 04警告とあわせて、より安全な代替コマンドを表示します。
  • 05制限の追加のみ可能な`.shellfirm.yaml`プロジェクトポリシーを使って、チームの安全ルールを共有できます。
  • 06実行を止めたコマンドと判断をすべてJSON Lines形式で記録します。

ユースケース

  • rm -rfや強制プッシュなど、破壊的なコマンドの誤実行から自分のターミナルを守る。
  • Claude CodeなどのAIエージェントがシェルコマンドを実行する際、Bash呼び出しごとに安全チェックを行う。
  • チームが本番インフラを扱う際に、共通の安全ルールを適用する。
  • 共有環境で実行された危険なコマンドの監査ログを確認する。

クイックスタート

  1. 1

    npmでインストール

    npm install -g @shellfirm/cli
  2. 2

    shell hookをインストール(使用中のシェルを自動検出)

    shellfirm init
  3. 3

    シェルを再起動するか、rcファイルを読み込む

  4. 4

    動作を確認:コマンドを実行するとshellfirmが起動します

    git reset --hard

使う前に知っておきたいこと

  • hookをインストールしたシェルでのみ保護されます。また、シェルごとに個別の設定が必要です。

トピック

よくある質問

shellfirm とは?
人間やAIコーディングエージェントによる危険なコマンドを止め、確認を求めるシェルのガードレール。 shellfirmはユーザーとシェルの間に入り、コマンドの実行前に内容をチェックします。再帰的な削除、強制プッシュ、Kubernetes・Terraform・Docker・データベースに対する破壊的な操作など、組み込みパターンに該当するコマンドがあると、危険度、影響範囲、安全な代替案を表示し、続行する前に簡単なチャレンジへの回答を求めます。
shellfirm は無料で使えますか?ライセンスは?
shellfirm は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
shellfirm は今もメンテナンスされていますか?
半年以内に更新あり。shellfirm の最終コミットは 2026年5月15日 です。
shellfirm は何に使えますか?
rm -rfや強制プッシュなど、破壊的なコマンドの誤実行から自分のターミナルを守る。 Claude CodeなどのAIエージェントがシェルコマンドを実行する際、Bash呼び出しごとに安全チェックを行う。 チームが本番インフラを扱う際に、共通の安全ルールを適用する。 共有環境で実行された危険なコマンドの監査ログを確認する。
shellfirm のインストール方法は?
npmでインストール: npm install -g @shellfirm/cli shell hookをインストール(使用中のシェルを自動検出): shellfirm init シェルを再起動するか、rcファイルを読み込む 動作を確認:コマンドを実行するとshellfirmが起動します: git reset --hard
shellfirm はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/kaplanelad/shellfirm

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト