1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

npxで使える、AIエージェント向けリポジトリ安全チェックCLIを作った

1
Posted at

これは何?

AIコーディングエージェントに未知のリポジトリやパッケージを読ませる前に、危険な設定や怪しい指示がないかを確認するCLI「AgentRisk」を作りました。

npmにも公開しています。

npx agentrisk scan .

なぜ必要だと思ったか

AIエージェントは、リポジトリ内の指示ファイルや設定ファイルを読みます。

例えば以下のようなファイルです。

  • .mcp.json
  • AGENTS.md
  • SKILL.md
  • .cursor/rules/*
  • .github/copilot-instructions.md
  • package.json

これらに危険な命令や設定が入っていた場合、AIがそれに従ってしまう可能性があります。

そこで、実行前に静的にチェックできる道具を作りました。

使い方

現在のディレクトリをスキャンします。

npx agentrisk scan .

GitHubリポジトリを直接スキャンします。

npx agentrisk scan https://github.com/owner/repo

npmパッケージも確認できます。

npx agentrisk scan npm:some-package@1.2.3

検出例

例えば、以下のようなものを検出します。

  • curl | sh のようなリモートコード実行
  • 危険なMCPサーバー起動設定
  • secretをAIに読ませる指示
  • 承認を回避させる指示
  • package.jsonのpostinstallによるリモート実行

危険な設定があると、以下のようにBLOCKとして出力します。

Verdict: BLOCK

CRITICAL
  mcp-remote-fetch-exec
    MCP server appears to download and execute remote code.

特徴

AgentRiskは、対象のコードを実行しません。

  • MCPサーバーに接続しない
  • package scriptを実行しない
  • 対象の依存関係をインストールしない
  • LLMに安全判定を任せない

「実行してから気づく」のではなく、「AIに読ませる前に確認する」ためのツールです。

自分の背景

私はIT企業で働いていますが、これまでPMO系の業務が中心で、コードを書く経験はほとんどありませんでした。

ただ、AIツールやAI駆動開発に興味があり、AIを使ってさまざまなアプリやツールを作っています。

AgentRiskも、その延長で作ったOSSです。

コード経験が少なくても、AIを使うことでOSSを形にできるという実感がありました。

まとめ

AIエージェントを使う機会が増えるほど、リポジトリ内の指示やMCP設定もサプライチェーンの一部になっていくと思っています。

AgentRiskは、その入口で一度立ち止まるための「開く前スキャン」です。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?