BLA
BLA (Blind LLM Agents) is the open-source Blue Defense MCP and CLI built to protect software artifacts against automated AI reverse-engineering workflows.
翻譯準備中
您的 AI 撰寫程式碼。Kompile 確保不外洩。檢查應用程式的暴露金鑰與開放入口,使用您自己的 AI 修補,並每週保持受保護。
AI 翻譯
Your AI writes the code. Kompile makes sure it does not leak. Check your app for exposed keys and open doors, fix them with your own AI, and stay protected every week.
安全TypeScriptGitHub @raheefJ上線中營運者未確認
試用過了嗎? 點一下就好,不需要登入。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證開源、唯讀安全檢查,針對使用 AI 建置的應用程式:洩漏金鑰、暴露檔案、開放面板、易受攻擊的 Next.js。CLI、GitHub Action 與 MCP 伺服器。
AI 翻譯
Open-source, read-only security checks for apps built with AI: leaked keys, exposed files, open panels, vulnerable Next.js. CLI, GitHub Action and MCP server.
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Read-only security checks for apps built with AI. Point it at a site you own. In a few seconds you get a grade, every problem it found, and a plain-English fix for each.
It is built for the mistakes that Lovable, Bolt, v0, Cursor and Replit apps actually ship with:
• secret API keys in the browser bundle
• .env files and backups served to anyone
• source maps that publish your source code
• open admin and AI tool panels
• vulnerable Next.js versions
• forgotten subdomains that someone else can take over
• Never attacks. It sends ordinary GET and檢視完整 README ↗Read-only security checks for apps built with AI. Point it at a site you own. In a few seconds you get a grade, every problem it found, and a plain-English fix for each.
npx kompile-scan yourapp.com --i-own-this
It is built for the mistakes that Lovable, Bolt, v0, Cursor and Replit apps actually ship with:
.env files and backups served to anyone| Area | Checks |
|---|---|
| HTTPS | Certificate validity and expiry, TLS version, HTTP to HTTPS redirect, HSTS strength, CAA record |
| Headers | Content-Security-Policy quality, clickjacking protection, nosniff, Referrer-Policy, cookie flags, version banners |
| Leaked secrets | About 25 secret key formats in the page and its scripts: Stripe, OpenAI, Anthropic, AWS, Supabase service_role, Groq, OpenRouter, Resend, SendGrid, Slack, GitHub and more. Publishable keys are ignored on purpose. |
| Exposed files | .env variants, .git, backups and SQL dumps, Dockerfile, build configs (next.config.js, vite.config, vercel.json), Prometheus /metrics, Spring actuator, Go pprof, logs |
| Exposure | Directory listings (including folders named in robots.txt), public source maps, verbose error pages (Python, Django, Laravel, Node, Express, Java, ASP.NET, Rails), public OpenAPI and Swagger UI, GraphQL introspection, admin, database and AI panels (phpMyAdmin, Adminer, Supabase Studio, Jupyter, Ollama, n8n and others) |
| Supply chain | Scripts from hijacked CDNs (polyfill.io), front-end libraries with known CVEs, Next.js versions npm marks as vulnerable, missing subresource integrity, mixed content |
| DNS and email | SPF and DMARC, subdomain takeover via certificate-transparency logs and dangling CNAMEs |
--i-own-this. The hosted version at kompile.tv verifies ownership with DNS or a file before every scan.The exit code is 1 when a problem at or above --fail-on is found (the default is medium), so a deploy that leaks a key can fail the build. The Action also puts the report in the job summary and the findings in your repository's Security tab.
# .github/workflows/kompile-scan.yml
name: Kompile Scan
on: [deployment_status]
permissions:
security-events: write
jobs:
scan:
if: github.event.deployment_status.state == 'success'
runs-on: ubuntu-latest
steps:
- uses: raheefJ/kompile-scan@v0
with:
hostname: ${{ vars.SITE_HOSTNAME }}
fail-on: high
- uses: github/codeql-action/upload-sarif@v3
if: always()
with:
sarif_file: kompile-scan.sarif
Kompile Scan ships an MCP server. Your agent (Claude, Cursor, Windsurf and others) can scan your live site, apply the fixes in your code, and scan again until you get an A.
{ "mcpServers": { "kompile-scan": { "command": "npx", "args": ["-y", "-p", "kompile-scan", "kompile-scan-mcp"] } } }
The scan_site tool needs i_own_this: true, so the agent has to confirm ownership with you first. It never logs in or changes anything on the site.
--format | Use it for |
|---|---|
text | your terminal (the default) |
json | scripts and dashboards |
markdown | pull-request comments and job summaries |
sarif | GitHub code scanning (the Security tab) |
prompt | pasting into Cursor, Claude, Lovable or Bolt so it fixes everything at once |
import { runScan } from "kompile-scan";
const report = await runScan("yourapp.com", { basePath: "/app" });
console.log(report.grade, report.findings.filter((f) => f.status === "fail"));
npm run bench # the corpus of local test sites with planted problems and traps
npm run bench:mutate # 400 generated sites mixing problems, traps, hosts and frameworks
New checks, fingerprints and test sites are very welcome. See CONTRIBUTING.md.
Copyright (C) 2026 Kompile contributors.
Licensed under the GNU Affero General Public License v3.0 or later. You may use, change and share it. If you run a modified version as a network service, you must share your changes under the same license. See LICENSE.