Skip to content
Agentmart
Submit a tool

repo-scan

Use when the user wants to evaluate a GitHub repository before installing, running, forking, or depending on it.

Skill by KerberosClaw

IndexedMIT★ 79
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/kerberosclaw-repo-scan

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Use when the user wants to evaluate a GitHub repository before installing, running, forking, or depending on it. Takes a GitHub repo URL, cleans tracking params, shallow-clones to /tmp, inspects dependency/supply-chain risk, static vulnerability patterns, issue-reported security problems, maintainer health, and produces a risk summary. NOT for reviewing the user's own PR diff or for running untrusted code.

Use cases: security

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 26, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/repo-scan

What's inside

Skill name
repo-scan
Description
Use when the user wants to evaluate a GitHub repository before installing, running, forking, or depending on it. Takes a GitHub repo URL, cleans tracking params, shallow-clones to /tmp, inspects dependency/supply-chain risk, static vulnerability patterns, issue-reported security problems, maintainer health, and produces a risk summary. NOT for reviewing the user's own PR diff or for running untrusted code.
License
MIT
Instructions
301 lines in SKILL.md · view on GitHub

Before installing

  • Instructions call the network

Files (2)

  • SKILL.md
  • DESIGN.md · docs/

SKILL.md (first lines)

# Repo Scan — GitHub 開源專案安全掃描

You are a supply-chain security reviewer for open-source GitHub repositories. Your job is to help the user decide whether a repo is safe enough to install or depend on without executing its code.

## 使用方式

```
/repo-scan https://github.com/owner/repo
```

參數:
- **GitHub repo URL**(必要)— 支援含 query string 的 URL(自動清除 `?fbclid=` 等追蹤參數)

---

## 執行規則

1. **GitHub repo URL** 為必要參數。如果使用者沒有提供,直接詢問,不要猜測。
2. URL 清理:移除 `?fbclid=`、`?ref=` 等追蹤參數,保留 `https://github.com/owner/repo` 格式。
3. 前置檢查通過後才開始掃描流程。
4. 掃描完成後清理:刪除 clone 到 `/tmp/` 的 repo。

## 不適用

- 不執行 clone 下來的專案、不跑 install scripts、不啟動服務。
- 不取代 PR security review;這是安裝前第三方 repo 風險評估。
- 不把 star 數或 README 宣稱當作安全證據。

---

## 前置檢查

掃描前依序確認:

```bash
# 1. git 是否可用
git --version

# 2. gh 是否可用且已登入
gh auth status
```

- `git` 不可用 → 停止,提示安裝
- `gh` 不可用或未登入 → 警告,跳過 Phase 5(Issues 掃描),其餘照跑

---

## 掃描流程

### Phase 1:專案概覽

Clone repo 到 `/tmp/repo-scan-{repo_name}`(shallow clone 節省時間):

```bash
git clone --depth 50 {repo_url} /tmp/repo-scan-{repo_name}
```

分析並整理:

| 項目 | 內容 |
|------|------|
| 專案名稱 | |
| 用途說明 | 一句話描述這個專案做什麼 |
| 主要語言 | |
| 關鍵檔案 | 列出核心檔案及其功能 |
| 執行方式 | 如何安裝/使用(從 README 或程式碼判斷)|
| Stars / Forks | |
| License | |
| 最後 commit | 日期 + 內容摘要 |

**重點:用最少的字讓人搞懂這個 repo 在幹嘛。**

---

### Phase 2:依賴分析

掃描以下檔案(存在才掃):

- `package.json` / `package-lock.json`(Node.js)
- `requirements.txt` / `setup.py` / `pyproject.toml`(Python)
- `go.mod`(Go)
- `Cargo.toml`(Rust)
- `Gemfile`(Ruby)
- `pom.xml` / `build.gradle`(Java)
- `composer.json`(PHP)

檢查項目:
- [ ] 是否有已知高風險套件(如 `event-stream`、`ua-parser-js` 等曾被投毒的套件)
- [ ] 依賴數量是否合理(一個小工具拉了 200 個套件?)
- [ ] 是否有 `postinstall`、`preinstall` hook(package.json scripts)
- [ ] 是否鎖定版本(有無 lock file)
- [ ] 依賴是否仍在維護(看最後更新時間)
- [ ] 是否有 native binary 依賴(如 `sharp`、`node-gyp` 等,增加攻擊面)

---

### Phase 3:靜態弱點掃描

逐一讀取所有原始碼檔案,檢查以下類別:

#### 3.1 命令注入(Command Injection)
- `exec()`、`execSync()`、`spawn()` 使用未過濾的外部輸入
- `os.system()`、`subprocess.call()` 拼接字串
- `` `backtick` `` 或 `$()` 內含變數
- `eval()` 動態執行

#### 3.2 路徑穿越(Path Traversal)
- 使用者輸入直接拼接檔案路徑(無 `path.resolve` 或 sanitize)
- `../` 未被過濾

#### 3.3 硬編碼機密(Hardcoded Secrets)
- API key、token、password 寫死在程式碼中
- `.env` 檔案被追蹤到 git

#### 3.4 不安全的反序列化
- Python: `pickle.load()`、`yaml.load()`(無 `Loader=SafeLoader`)
- Node.js: `JSON.parse()` 後直接信任內容
- Java: `ObjectInputStream`

From KerberosClaw/kc_ai_skills, MIT.

More from KerberosClaw/kc_ai_skills

Signals

Stars
79
Forks
14
Open issues
0
Last commit (this folder)
Jul 30, 2026 (3 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from KerberosClaw

Cite this page

repo-scan skill. Agent Mart. https://agentmart.dev/skills/kerberosclaw-repo-scan (last updated 2026-10-24)