Loading...
Loading...
Compare original and translation side by side
scripts/scanner/scripts/scanner//matonhttps://github.com/matonhttps://github.comREPO_URL="<url>"
HASH=$(echo -n "$REPO_URL" | md5 | cut -c1-8)
SCAN_DIR="/tmp/maton-scan-${HASH}"
git clone --depth 1 "$REPO_URL" "$SCAN_DIR" 2>&1REPO_URL="<url>"
HASH=$(echo -n "$REPO_URL" | md5 | cut -c1-8)
SCAN_DIR="/tmp/maton-scan-${HASH}"
git clone --depth 1 "$REPO_URL" "$SCAN_DIR" 2>&1scripts/.claude/skills/.gemini/skills/MATON_DIR=$(find . -path "*/skills/maton/scripts/scanner/__main__.py" -print -quit 2>/dev/null | sed 's|/scripts/scanner/__main__.py||')
if [ -z "$MATON_DIR" ]; then
MATON_DIR=$(find "$HOME" -maxdepth 5 -path "*/skills/maton/scripts/scanner/__main__.py" -print -quit 2>/dev/null | sed 's|/scripts/scanner/__main__.py||')
fi
PYTHONPATH="$MATON_DIR/scripts" python3 -m scanner "<path-to-scan>" --format json 2>&1
echo "EXIT_CODE=$?"<path-to-scan>SCAN_DIRscripts/.claude/skills/.gemini/skills/MATON_DIR=$(find . -path "*/skills/maton/scripts/scanner/__main__.py" -print -quit 2>/dev/null | sed 's|/scripts/scanner/__main__.py||')
if [ -z "$MATON_DIR" ]; then
MATON_DIR=$(find "$HOME" -maxdepth 5 -path "*/skills/maton/scripts/scanner/__main__.py" -print -quit 2>/dev/null | sed 's|/scripts/scanner/__main__.py||')
fi
PYTHONPATH="$MATON_DIR/scripts" python3 -m scanner "<path-to-scan>" --format json 2>&1
echo "EXIT_CODE=$?"<path-to-scan>SCAN_DIRREFERENCE.mdverdict"OK""WARNING""CRITICAL"summaryfindings[]severitycategoryrule_idfilelinematchdescriptionmatchdescriptionREFERENCE.mdverdict"OK""WARNING""CRITICAL"summaryfindings[]severitycategoryrule_idfilelinematchdescriptionmatchdescriptionundefinedundefined<source><scan_date>
Scanner verdict badges (report exactly what the scanner returned):
- `OK` — No significant threats detected.
- `WARNING` — Findings to review carefully.
- `CRITICAL` — Immediate action required.
**Summary table:**
| Severity | Count |
|----------|-------|
| CRITICAL | N |
| WARNING | N |
| INFO | N |
**Findings tables** — one section per severity level that has findings (skip empty sections):
| Rule | File | Line | Description |
|------|------|------|-------------|
| PI-001 | skill.md | 42 | Direct prompt injection detected |
If zero findings: "No findings. The scanned content looks clean."<source><scan_date>
扫描器判定标识(严格按照扫描器返回结果呈现):
- `OK` — 未检测到重大威胁。
- `WARNING` — 需仔细审查检测结果。
- `CRITICAL` — 需立即采取行动。
**Summary table:**
| Severity | Count |
|----------|-------|
| CRITICAL | N |
| WARNING | N |
| INFO | N |
**检测结果表格** — 每个有检测结果的风险级别单独成节(跳过无结果的节):
| Rule | File | Line | Description |
|------|------|------|-------------|
| PI-001 | skill.md | 42 | Direct prompt injection detected |
若无检测结果:"未发现任何问题,扫描内容看起来安全。"undefinedundefined
Contextual verdict rules:
- If ALL findings are false positives → `OK`
- If SOME findings are benign but others remain concerning → `WARNING`
- If ANY finding represents a credible, unexplained threat → `CRITICAL`
- If the scanner verdict was `OK`, the contextual verdict is also `OK` (no need to upgrade)
上下文判定规则:
- 若所有检测结果均为误报 → `OK`
- 若部分检测结果为良性,但其余结果仍存在风险 → `WARNING`
- 若存在任何可信且无法解释的威胁 → `CRITICAL`
- 若扫描器判定为`OK`,则上下文判定也为`OK`(无需升级)trashrmtrash "<SCAN_DIR>"trashrmtrash "<SCAN_DIR>"REFERENCE.mdREFERENCE.md