
軽量なセキュリティ監査およびサンドボックス for シェルスクリプト。Oversight は静的解析エンジン (Rust) と動的強制 (Linux Landlock) を組み合わせ、悪意のあるスクリプトからシステムを保護します。
Oversight は、シェルスクリプトやコマンドがシステムに影響を及ぼす前に監査するために設計された、ターミナルベースのセキュリティインテリジェンスツールです。「盲目的な信頼」と「手動監査」の間を埋めるもので、ローカルファイルと Raw URL を介したリモートスクリプトの両方を高速かつ対話的に分析します。

Live AUR Update



ほとんどのシステム侵害は、検証されていないパッケージのアップグレードを実行したり、生のセットアップスクリプトを実行するといった「飛躍的な信頼」によって発生します。Oversight はこれらのバッファを明確に可視化し、悪意のあるパターンをフラグ付けし、セキュリティリスクを平易な言葉で説明することで、インストールを確定する前に十分な情報に基づいた判断を下せるようにします。
.install スクリプトや .patch ファイルを取得して監査します。rm $0)、サイレントパイプライン (> /dev/null)、RAM のみの実行パス (/dev/shm)、リロードフック (crontab、systemctl) などのステルス行動を監視します。Oversight はパフォーマンスとバイナリ分離のために Rust で構築されています。コンパイルには以下のネイティブコンポーネントが必要です。
cargo および rustc(Edition 2021)でネイティブエンジンをコンパイル。reqwest が安全なリモート TLS/SSL フェッチ操作を確立するために必要なシステムライブラリ。ratatui、crossterm、tokio、reqwest、clap、および regex。yay -S oversight-git
git clone [https://aur.archlinux.org/oversight-git.git](https://aur.archlinux.org/oversight-git.git)
cd oversight-git
makepkg -si
git clone https://github.com/Rakosn1cek/oversight.git
cd oversight
~/.local/bin に移動し、必要なフックをシェル設定(.zshrc、.bashrc、または config.fish)に注入します。chmod +x install.sh
./install.sh
source ~/.zshrc または該当するシェル設定ファイル
oversight ./install.shoversight https://raw.githubusercontent.com/...oversight ~/.local/share/oversight/rules.jsoncurl https://... のようなスタンドアロンコマンドや rm -rf / のような危険なパターンを自動的にインターセプトし、複数オプションのトリアージメニューを提供し、実行前にダウンストリームの AUR キャッシュプロファイルを深く検査します。Oversight を主要なテキストおよびアップグレードページャーとして恒久的に展開するには、以下の設定ルールのいずれかをシェルプロファイルファイル(例:~/.zshrc、~/.bashrc、または ~/.config/fish/config.fish)に追加します:
ヘルパーに Oversight をパッケージアップグレード専用で使用させ、他のシステムコマンドには影響を与えません:
yay の場合(~/.zshrc または ~/.bashrc):
alias yay="yay --diffpager oversight"
paru の場合(~/.config/paru/paru.conf): 以下の行を ~/.config/paru/paru.conf に追加します。CombinedUpgrade オプションを含める必要があります。含めないと、paru はテキストを Oversight に渡す前に ANSI カラーコードを取り除き、白黒のテキストになります。
[options]
Pager = oversight
CombinedUpgrade
Shelly などの他のヘルパーの場合 別のヘルパーを使用している場合は、AUDIT_HELPER 変数を使用して Oversight にキャッシュファイルの場所を伝える必要があります。例えば、次のように実行できます:
AUDIT_HELPER=shelly shelly -Sua | oversight
または、シェルプロファイルにグローバルにヘルパー変数をエクスポートして、Oversight が常にどのキャッシュパスを確認すべきかを認識できるようにすることもできます:
export AUDIT_HELPER="shelly"
この設定は、Oversight をデフォルトのシステムテキストページャーとして登録します。これにより、パッケージ、マニュアルページ、git ストリームが自動的にインターフェース内で開かれます。
以下の行を ~/.zshrc または ~/.bashrc に追加します:
export PAGER="oversight"
export MANPAGER="oversight"
2 行目は、システム設定ですでに MANPAGER が less や他のツールに設定されている場合に必要です。
man pacman などのコマンドリファレンスを参照すると、命令マニュアルが直接エンジンを経由してリダイレクトされます。テキストはクリーンストリームとして解析されるため、標準のビューポートホットキーを使用して統一された TUI フレーム内でドキュメントを確認できます。git log や git diff などのコアコマンドは、静的ルールデータベースを通過します。コミットに一致するシグネチャパターンが含まれている場合、エンジンアラートがトリガーされます。それ以外の場合は、メインペイン内に標準のコードレビューがクリーンに表示されます。キーバインド:
注記: Oversight は助言ツールです。堅牢な正規表現パターンマッチングを使用していますが、100% 完全なセキュリティツールはありません。常に「最終判定」をガイドとして使用し、ソースに確信が持てない場合はハイライトされたコードを手動でレビューしてください。
注記2: Oversight は現在活発に開発中です。そのため、現段階での機能やシステムへの影響については保証されません。
プロジェクトをサポートまたは貢献したい場合は、大歓迎です。
Oversight について話し合ったり質問したい場合は、私の Discord サーバー Rakosn1cek にご参加ください。<- これは任意であり、必須ではありません。
Issue を開いたり、Discussions にメッセージを残したりすることもできます。
MIT © 2026 Rakosn1cek。再配布や派生作品には帰属表示が必要です。