The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Jikida listing page.
The hosted AI pentester for people who ship — not just security engineers.
Pentest your live app, scan your repo, protect it with a WAF, and watch its uptime. One account. No Docker, no LLM key, free tier.
Why it beats Nuclei / Strix / Shannon ↓ · Install · MCP · SDKs · Compare
Install it, scan it, or plug it into your AI editor:
Pentest and scan websites, web apps, code and GitHub for vulnerabilities and exposed keys. Secure vibe-coded apps, monitor uptime, SSL and domains, and rate-limit APIs. One platform.
Website & app pentest · Code & repo scan · Deep pentest · MCP for AI IDEs · Agentic & vibe-coded security · SDKs
Jikida.io is a developer-first security platform. The core is pentest and scanning: it pentests your live website and app, scans your code and connected GitHub/GitLab/Bitbucket repos for exposed secrets and vulnerable dependencies, runs a deeper authenticated pentest, and plugs into your AI IDE (Claude Code, Cursor, Windsurf) over MCP so it guides agentic and vibe-coded work to write secure code and catches mistakes before they ship. Uptime, SSL & domain monitoring, a managed WAF, and a compliance generator come bundled as complementary extras — installed in one line for Node, PHP/Laravel, Python, Go, Ruby, Java, .NET, Rust, Bun, or Deno.
Your security layer. Shipped in 30 seconds. One line — npx @jikida/init — and every SDK fails open, so if Jikida.io is ever down your app keeps serving.
The strongest open-source security tools are deep but narrow — pentest-only, self-hosted, bring-your-own-LLM-key. Jikida does the deep work and hosts it, runs with no key of your own, and adds a WAF, uptime and repo scan the pentest-only tools skip. ✅ full · ⚠️ partial · ❌ none.
| Jikida | Nuclei | Strix | Shannon | Snyk | Cloudflare | |
|---|---|---|---|---|---|---|
| Live-app pentest with real exploit | ✅ | ⚠️ match | ✅ | ✅ | ❌ | ❌ |
| SAST + DAST (code and live app) | ✅ | ⚠️ DAST | ✅ | ✅ | ⚠️ SAST | ❌ |
| Repo secret + CVE (OSV) scan | ✅ | ❌ | ⚠️ | ⚠️ | ✅ | ❌ |
| Managed WAF (blocks live attacks) | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ |
| Uptime + SSL / domain monitoring | ✅ | ❌ | ❌ | ❌ | ❌ | ⚠️ |
| Hosted — no Docker, no self-host | ✅ | ⚠️ cloud | ❌ | ❌ | ✅ | ✅ |
| Runs with no LLM key of yours | ✅ | ✅ | ❌ BYOK | ❌ BYOK | ✅ | ✅ |
Install: CLI + Docker + npx | ✅ all | ⚠️ CLI | ⚠️ Docker | ⚠️ npx | ⚠️ CLI | ⚠️ DNS |
| MCP tools in your AI editor | ✅ | ❌ | ❌ | ⚠️ | ❌ | ❌ |
| Free tier, no card | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
The one axis the AI pentesters still go deeper on is raw exploitation — exactly what our source-to-exploit deep pentest is closing. Everywhere else, the builder who shipped with Cursor last week wins with Jikida: nothing to self-host, no key to buy, the whole stack in one account. Full breakdowns: nuclei · strix · shannon · snyk · cloudflare.
Every command below sits in its own copy box. Lines that start with ! are notes, not commands — do not copy those.
Scan a URL or repo — no account needed.
! Scan a local repo for committed secrets:
Add the WAF + SDK — auto-detects your framework.
Install a language SDK — Node shown; PHP, Python, Go and the rest are in the SDK table.
MCP server for Claude Code, Cursor and Windsurf — add this to ~/.claude/mcp.json:
Agent skills — copy the skills/ folder into your assistant's skills folder (.claude/skills/, Cursor rules, and the like). Three skills: security, clean-code, UX design — see the table below.
Full details for each are below.
| Folder | What it holds |
|---|---|
sdks/ | Ten language SDKs — Node, PHP, Python, Go, Ruby, Java, .NET, Rust, Bun, Deno. |
tools/ | The scan CLI, the init onboarding CLI, and the mcp server. |
skills/ | The Jikida agent skill for Claude Code, Cursor and Windsurf. |
waf-rules/ | Versioned WAF rule packs (OWASP Top 10, API abuse, bot scanners, vibe-coder). |
Get a token at app.jikida.io/developer. Set it as JIKIDA_TOKEN.
One dashboard for a site's whole security posture — protection status, uptime, pentest grade, email security (SPF/DKIM/DMARC) and compliance — with instant alerts to your phone, Slack, Telegram, Discord, email or a webhook.

Most small teams ship without a Web Application Firewall in front of their app. They know they should. They put it on the backlog. Then the free trial ends, or a user reports a slow page, and the WAF ticket rots another quarter.
Jikida.io removes three specific frictions:
Everything in this repo is open source, and a lot of Jikida.io is usable before you ever sign up. The model is three tiers of friction, on purpose:
scan_domain, check_headers, guard_code, check_s3_bucket) run with no login at all — rate-limited by IP. You can protect an app or scan a URL in one command and never create an account. This is the open-source, try-it-now surface.Two different things are hosted, don't confuse them: the pentest and scan analysis runs on Jikida's own servers, which is why you never bring an LLM key for it. The MCP server is the opposite — it calls no model of its own and runs inside your AI editor (Claude Code, Claude chat, Cursor, Windsurf, VS Code), so it spends your editor's AI credits and enforces the same per-site plan quotas. Open where it helps, gated where it costs — usable first, paid when it's worth paying for.
| Layer | What it does |
|---|---|
| Managed WAF | OWASP Top 10 + CRS + your custom rules. Auto-detects APIs, applies per-route limits, caches safe GETs at the edge. |
| Uptime monitoring | Multi-region checks, faster intervals on higher plans. Public status page. Email + Slack + Discord + Telegram + webhook + mobile push on down/up. |
| Quick pentest | On-demand surface scan: headers, TLS, cookies, exposed .env / .git, email security (SPF / DKIM / DMARC), and compliance-style findings, each with a clear fix. |
| Vibe-coder scan | Catches the mistakes vibe-coded projects tend to ship: exposed secrets, open S3 buckets, Supabase RLS off, wide-open Firebase rules. |
| Cloudflare DDoS wrap | One-click attach + per-site Under-Attack toggle. |
| Bot detection | UA classification, headless-browser challenges, per-IP rate limits, ASN allowlist for Google/Bing. |
| Active deception | Serves plausible fakes to verified attackers. Fingerprint logged, real error message hidden. |
| Upload scanning | MIME + magic bytes + polyglot detection + optional ClamAV. |
| CVE feed | Live feed from NVD, tagged with which Jikida.io rule covers each entry. |
| Real-time logs | Full context per attack (IP, ASN, country, payload, route, verdict). Retention grows with your plan. |
| MCP server | Claude Code, Cursor, Windsurf, VS Code get real security tools. Scan, monitor, block from AI chat. |
| Alert integrations | Mobile push, email (primary + 3 CCs), Slack, Discord, Telegram, generic webhook. Fires on down/up, attack burst, plan limit. |
The init CLI detects your framework (Next.js, Express, Fastify, Laravel, Symfony, FastAPI, Django, Rails, Go chi, Rust axum, Spring, .NET, Bun, Deno) and adds the right middleware in the right spot. Then set JIKIDA_TOKEN from https://app.jikida.io/developer and ship.
Or, install the SDK for your language directly:
Framework helpers:
import { jikida } from '@jikida/sdk-node/express'import { jikida } from '@jikida/sdk-node/fastify'import { jikida } from '@jikida/sdk-node/next'Laravel — bootstrap/app.php:
Symfony — register \Jikida\Middleware\JikidaSymfonyListener as a kernel event listener.
Every SDK exposes the same inspect(request) -> { action, rule, reason } contract and fails open. Scaffolds for these languages live under the sdks/, tools/ and skills/ folders — see jikida.io/install for the current registry-publish status of each. You can protect any app today with zero code by:
Same platform, framed for what you're building. Each links to the install for that stack:
@jikida/scan + the MCP server in your editor..env / keys. → jikida/sdk-php.@jikida/sdk-node.jikida (Python).inspect(request) contract, one line to wire. → sdks/.npx @jikida/scan.All SDKs live in sdks/. The CLI, init and MCP tools live in tools/:
| Language | Package | Directory |
|---|---|---|
| Node / Bun / Deno | @jikida/sdk-node | sdks/node |
| PHP / Laravel | jikida/sdk-php | sdks/php |
| Python | jikida | sdks/python |
| Go | github.com/jikida/sdk-go | sdks/go |
| Ruby | jikida | sdks/ruby |
| Java | io.jikida:sdk | sdks/java |
| .NET | Jikida | sdks/dotnet |
| Rust | jikida | sdks/rust |
| Bun (re-exports Node) | @jikida/sdk-node | sdks/bun |
| Deno (re-exports Node) | @jikida/sdk-node | sdks/deno |
| Scanner CLI | @jikida/scan | tools/scan |
| Init CLI | @jikida/init | tools/init |
| MCP server | @jikida/mcp | tools/mcp |
| WAF rule packs | — | waf-rules |
Each SDK:
{ action: 'allow' | 'block' | 'challenge', rule, category, reason } across every language.Give Claude Code, Claude chat, Cursor, Windsurf, and VS Code real security tools. The Jikida.io MCP pentests sites, scans domains and repos, checks headers, guards code, lists uptime monitors, adds WAF rules, blocks IPs, and explains WAF verdicts — deterministic, auditable, safe to run inline. Scan output now also surfaces email-security (SPF / DKIM / DMARC) and compliance-style findings alongside the usual header/TLS grade.
Live at mcp.jikida.io. Install via ~/.claude/mcp.json:
Tools: run_pentest, run_deep_pentest, scan_domain, check_headers, check_s3_bucket, guard_code, scan_repo, run_vibe_scan, verify_finding, pentest_status, list_sites, list_monitors, list_recent_attacks, list_recent_scans, list_cves, explain_verdict, add_waf_rule, block_ip, get_security_preferences, set_security_preference. Four run keyless (scan_domain, check_headers, guard_code, check_s3_bucket) — no token, IP-rate-limited. The MCP calls no LLM of its own: it runs inside your AI editor and uses its credits, enforcing your per-site plan quotas. See tools/mcp for the full tool reference.
No login required:
Three Anthropic-format Agent Skills you drop in .claude/skills/ (or Cursor rules). Together they turn AI-generated code into an app you'd be proud to ship — secure, maintainable, and usable. Each activates on its own triggers; use them together.
| Skill | What it does | Folder |
|---|---|---|
| Security | Reaches for Jikida on WAF, uptime, pentest, repo-scan and secret-leak tasks; runs the MCP tools safely inline; maps findings to OWASP / MITRE / NIST. The judgement to the MCP's hands. | skills/security |
| Clean code | Refactors and de-slops what an AI editor generated — naming, duplication, god-functions, dead code, error handling — without over-engineering. SOLID/DRY/YAGNI with judgement. | skills/clean-code |
| UX design | Applies proven UX laws (Hick's, Fitts's, Jakob's, Miller's, aesthetic-usability) + clear ASD-STE100 UI copy, so generated UIs read as intentional, not generic. | skills/ux-design |
The split is deliberate: secure code can still be slop, and a beautiful UI can still ship a secret in the bundle. Run all three, plus a Jikida scan, before you ship. English + UI copy across all three follow ASD-STE100 (Simplified Technical English) — one idea per sentence, active voice, say what the control does.
Every managed WAF rule + skill flow is mapped to industry frameworks. Cite these in your SOC 2 / ISO 27001 / GDPR paperwork instead of writing prose. Flat JSON manifests live under skills/security/mappings/:
| File | Framework | Coverage |
|---|---|---|
mitre-attack.json | MITRE ATT&CK v14 | 20 techniques — T1190, T1110.004, T1552.001, T1580, T1499, T1557, … |
owasp-top10.json | OWASP Top 10 (2021) | A01 through A10 — all ten |
nist-csf.json | NIST CSF 2.0 | GOVERN · IDENTIFY · PROTECT · DETECT · RESPOND · RECOVER |
Every YAML rule under waf-rules/ also carries inline mitre_attack: [T…], owasp: [A…], and cwe: [n] fields — machine-readable at the rule level too.
SQL injection, XSS (reflected / stored / DOM), CSRF, SSRF, path traversal, XXE, NoSQL / LDAP / command injection, brute force, credential stuffing, account takeover, malicious file uploads (polyglots, PHP-in-PNG, EXIF tampering), bot scrapers, headless browser abuse, TOR exit nodes, ASN-flagged attackers, DDoS L3-L7 (via Cloudflare wrap), API abuse, exposed secrets, open S3 buckets, wide-open Firebase / Supabase rules, .env / .git exposure.
Threat-to-rule mapping is public at jikida.io/threats.
Bug in an SDK? Open an issue at https://github.com/unesLam/jikida/issues. Include:
Security disclosures: mail info@jikida.io — please don't file public issues for security bugs.
Apache-2.0. See LICENSE.