Memindai repositori dan profil GitHub untuk mencari sinyal malware dan scam guna memberikan verdict risiko bagi AI agent dan developer.
Juga dikenal sebagai flagrix-io/flagrix-cli, flagrix-cli
- Stars
- 2
- Tools
- —
- Unduhan, 30 hari
- —
- Versi terbaru
- 0.5.1
- Commit terakhir
- 10 Nov 2026
- Lisensi
- MIT
Apa itu flagrix MCP?
flagrix adalah MCP server. Memindai repositori dan profil GitHub untuk mencari sinyal malware dan scam guna memberikan verdict risiko bagi AI agent dan developer.
Ringkasan dibuat dari README proyek
Tentang flagrix MCP server
Flagrix menyediakan lapisan pemindaian keamanan bagi developer dan AI agent untuk mengidentifikasi sinyal malware dan scam pada repositori GitHub dan profil pengguna. Tool ini berfungsi sebagai tool lokal yang dapat dijalankan melalui terminal, diintegrasikan ke dalam pipeline CI, atau dihubungkan ke AI client menggunakan protokol MCP stdio. Dengan menganalisis commit tertentu, sistem memastikan bahwa verdict risiko terikat pada state kode yang tepat, sehingga mencegah perubahan diam-diam yang dapat membatalkan hasil pemindaian.
Pengguna dapat melakukan pemindaian repositori menggunakan command scan atau evaluasi profil dengan scan-user. Tool ini beroperasi dengan rate limit default GitHub, namun dengan menyediakan GITHUB_TOKEN, kapasitas akan meningkat dari 60 menjadi 5.000 request per jam dan memungkinkan pemindaian repositori private. Semua logika pemindaian dan pengecekan dependency terhadap feed paket berbahaya OSV dilakukan secara lokal untuk menjaga privasi, karena tidak ada telemetry atau data yang dikirim ke backend pusat Flagrix.
Apa yang bisa Anda lakukan dengannya
- 1Verifikasi keamanan repositori sebelum melakukan cloningSebuah AI agent dapat menggunakan tool scan_github_repo untuk memeriksa pola eksfiltrasi data pada repositori sebelum mengunduh kodenya.
- 2Evaluasi risiko profil GitHubSeorang developer dapat memeriksa apakah profil pengguna GitHub menunjukkan tanda-tanda scammer atau recruiter palsu.
- 3Otomatisasi security gate di CIIntegrasikan scanner ke dalam pipeline continuous integration untuk menghentikan build secara otomatis jika terdeteksi kode berisiko tinggi.
Ditulis berdasarkan README proyek. Setiap use case diperiksa terhadap kutipan dari README tersebut.
Cara menginstal flagrix MCP
Format diverifikasi 10 Nov 2026Tambahkan ke CursorTambahkan ke GooseInstal flagrix MCP di Claude Code
$ claude mcp add --env 'GITHUB_TOKEN=<YOUR_GITHUB_TOKEN>' flagrix-cli -- npx -y flagrixInstal flagrix MCP di Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"flagrix-cli": {
"command": "npx",
"args": [
"-y",
"flagrix"
],
"env": {
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>"
}
}
}
}Instal flagrix MCP di VS Code
.vscode/mcp.json
{
"servers": {
"flagrix-cli": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"flagrix"
],
"env": {
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>"
}
}
}
}Instal flagrix MCP di VS Code CLI
$ code --add-mcp '{"name":"flagrix-cli","type":"stdio","command":"npx","args":["-y","flagrix"],"env":{"GITHUB_TOKEN":"<YOUR_GITHUB_TOKEN>"}}'Instal flagrix MCP di Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"flagrix-cli": {
"command": "npx",
"args": [
"-y",
"flagrix"
],
"env": {
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>"
}
}
}
}Instal flagrix MCP di Codex
$ codex mcp add flagrix-cli --env 'GITHUB_TOKEN=<YOUR_GITHUB_TOKEN>' -- npx -y flagrixInstal flagrix MCP di Codex config.toml
~/.codex/config.toml
[mcp_servers.flagrix-cli] command = "npx" args = ["-y", "flagrix"] [mcp_servers.flagrix-cli.env] GITHUB_TOKEN = "<YOUR_GITHUB_TOKEN>"
Instal flagrix MCP di Gemini CLI
$ gemini mcp add -s user -e 'GITHUB_TOKEN=<YOUR_GITHUB_TOKEN>' flagrix-cli npx -- -y flagrixInstal flagrix MCP di Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"flagrix-cli": {
"command": "npx",
"args": [
"-y",
"flagrix"
],
"env": {
"GITHUB_TOKEN": "<YOUR_GITHUB_TOKEN>"
}
}
}
}Konfigurasi
GITHUB_TOKENRahasiaOptional GitHub token — raises API rate limits and enables private-repo scans
| Nama | Deskripsi | Tipe |
|---|---|---|
| GITHUB_TOKEN | Optional GitHub token — raises API rate limits and enables private-repo scans | Rahasia |
Pengecekan otomatis
Berjalan 13 Nov 2026Laporan lengkap →Lolos checks otomatis kami. Ini bukan audit keamanan: baca kodenya dan berikan server akses paling terbatas yang dibutuhkannya. Cara kerja checks
- Source repository terhubung dan dapat dijangkauflagrix-io/flagrix-cli is public and reachablegithub.com/flagrix-io/flagrix-cli ↗Lolos
- Nama paket mencantumkan repositori ini sebagai sumbernyaflagrix names flagrix-io/flagrix-cli as sourcenpmjs.com/package/flagrix ↗Lolos
- Provenance build (atestasi Sigstore)Sigstore attestation for flagrixnpmjs.com/package/flagrix/v/0.5.1#provenance ↗Lolos
- Lisensi open source (OSI)MITspdx.org/licenses/MIT.html ↗Lolos
- Ada commit atau release dalam satu tahun terakhirLast commit or release 2026-11-10github.com/flagrix-io/flagrix-cli ↗Lolos
- OpenSSF ScorecardTidak diperiksa
- Nama package tidak mirip dengan package populerNo popular package one edit away from flagrixLolos
- Tidak ada advisory kritis pada paket atau dependensinya99 resolved dependencies checked; no critical advisoryosv.dev ↗Lolos
- Tidak ada instruksi tersembunyi untuk model0 tool descriptions and the README read; no override phrases, credential paths or hidden charactersLolos
- Tools yang bersifat destruktif telah diberi labelTidak diperiksa
- Endpoint remote merespons handshake MCPTidak diperiksa
README
Lihat di GitHubflagrix
Scan GitHub repositories and profiles for malware before you clone — from the terminal, CI, or an AI agent. The same commit-pinned verdict as the Flagrix browser extension, made callable.
npx flagrix scan https://github.com/some-org/coding-assignment
some-org/coding-assignment @ 3f9c2a1
HIGH RISK — Do not clone security score 12/100
3 files scanned · 10 dependencies · 2 issues
CRITICAL Data exfiltration patterns detected: Keylogger Pattern
assignment.js:14
14 document.addEventListener("keydown", (e) => send(e.key))
Built after real fake-recruiter campaigns ("coding assignment" repos that steal wallets, SSH keys, and browser sessions) started targeting developers.
Commands
flagrix scan <url | owner/repo> # scan a repository (--ref <branch|sha>)
flagrix scan-user <username> # score a GitHub profile for scam signals
flagrix mcp # MCP server (stdio) for AI agents
Exit codes
| code | meaning |
|---|---|
| 0 | low risk |
| 1 | scan failed |
| 2 | medium risk — review before proceeding |
| 3 | high risk — do not clone |
| 4 | scan incomplete — not enough of the repository was read to give a verdict |
--json (automatic when stdout is piped) emits the full result. The verdict is
pinned to the scanned commit (commitSha in the JSON): every file is read at
that SHA, so a push mid-scan or after the verdict can't silently invalidate it.
Incomplete scans (exit 4)
A repository scan is one tree request plus up to ~200 file reads, and GitHub allows 60 requests an hour without a token. When the budget runs out part way through, the rest of the repository is never looked at — so a "low risk, no findings" result over 30 of 180 files is the absence of looking, not a clean bill of health.
The result says so (scanSummary.complete: false, with
scanSummary.incompleteReason of "rate-limit" or "fetch-errors"), the
human output withholds the verdict and the score, and the exit code is 4
instead of 0. In CI the exit code is the decision and nobody reads stdout, so
a gate on flagrix scan stops here as it does on any non-zero code. Findings
are the other way round: evidence found is evidence however little else was
read, so a medium or high verdict keeps its own code and the coverage note
reads "there may be more".
In --json output, read verdict and coverage rather than riskLevel:
{
"verdict": "incomplete",
"coverage": {
"complete": false,
"unreliableClear": true,
"filesRead": 30,
"filesUnread": 150,
"reason": "rate-limit"
},
"riskLevel": "low",
"safeToClone": false,
...
}
verdictis"low","medium","high", or"incomplete"when a low result rests on files that were never read. It matches the exit code (0 / 2 / 3 / 4).coverage.unreliableClearis true exactly whenverdictis"incomplete";coverage.completeis false on any partial scan, including a medium or high one.reasonis present only when coverage is incomplete.riskLevel,riskScoreand the rest of the engine's result are unchanged, so existing consumers keep working — butriskLevelis the engine's reading of the files it did see, so on an incomplete scan it can still say"low".safeToCloneis kept for compatibility and is nowfalsewheneververdictis"incomplete"(in 0.4.0 and earlier it could betruethere). Gate onverdictor the exit code instead.
The MCP tool's JSON block carries the same fields.
Set a token to make this rare: GITHUB_TOKEN raises the budget to 5,000/h.
AI agents
claude mcp add flagrix -- npx -y flagrix mcp
Tools: scan_github_repo, scan_github_user. A Claude Code hook that gates every
git clone on a scan ships in hooks/ — see
docs/agent-gating.md.
Tokens & rate limits
Unauthenticated scans use GitHub's 60 req/h budget (a scan issues one request per
scanned file, up to ~200). Set GITHUB_TOKEN (or FLAGRIX_GITHUB_TOKEN, or
--token) to raise it to 5,000/h and to scan private repositories. A scan that
runs out of budget reports partial coverage and exits 4 — see
Incomplete scans.
Privacy
Fully local. No telemetry, no accounts, no Flagrix backend — the only network calls go to the GitHub/npm APIs and the public detection-rules repository (signature refresh, cached 6 h, with a bundled offline snapshot).
Dependencies are also checked against the OSV malicious-package feed
(osv-malicious.json from the same repository: every npm/PyPI package the
OpenSSF malicious-packages project has confirmed malicious). The feed is
downloaded and matched locally, so dependency names never leave your machine.
It is cached 6 h and revalidated with its ETag. Set FLAGRIX_OSV_FEED=0 to
skip it (the curated list in the signatures still applies).
How it works
Scanning logic lives in @flagrix/scanner-core (MIT), signatures in flagrix-detection-rules (MIT) — the same engine and rules the browser extension uses. Verdicts are risk assessments, not definitive fraud determinations; always verify through official channels.
AI Disclosure
This project leverages Claude AI for boilerplate generation, test-suite expansion, and optimization. All AI-generated code is strictly reviewed, refactored, and verified by human maintainers before merging.
License
MIT — see LICENSE.
Pertanyaan tentang flagrix MCP
Bagaimana cara menambahkan flagrix MCP ke Claude Code?
Jalankan claude mcp add --env 'GITHUB_TOKEN=<YOUR_GITHUB_TOKEN>' flagrix-cli -- npx -y flagrix di terminal Anda. Tambahkan --scope user agar tersedia di semua proyek.
Bagaimana cara menambahkan flagrix MCP ke Cursor?
Buka ~/.cursor/mcp.json dan tambahkan server di bawah mcpServers, menggunakan config Cursor yang ditunjukkan di bagian instalasi di atas.
Apakah data saya tetap privat saat menggunakan flagrix?
Ya, tool ini sepenuhnya lokal tanpa telemetry atau backend Flagrix; panggilan network hanya dilakukan ke API GitHub/npm dan repositori aturan deteksi.
Apa arti exit code 4?
Exit code 4 menunjukkan pemindaian yang tidak lengkap di mana repositori tidak terbaca sepenuhnya untuk memberikan verdict yang utuh, sering kali disebabkan oleh rate limiting.