# Achilles AI > Free, private cybersecurity AI code assistant — a native desktop harness that scans your own repos locally and keeps findings in a durable ledger on your machine. Source: https://achilles.sh/ --- ## Overview **Achilles** is a free, local cybersecurity harness. Pick a folder, hit Scan, and get a durable, triage-ready list of leaked secrets, vulnerable packages, risky CI/cloud config, dangerous code, and more — all on your machine. Use any model you already have access to (Claude, ChatGPT, OpenRouter, Gemini, Ollama, any OpenAI-compatible endpoint) or run engines-only in FAST mode. Achilles is a full-fledged security product utility, not a simple chat wrapper. It is extremely token-efficient and engine-first to prevent LLM over-review and hallucinations. It ships with 13 dedicated industry-standard AI skills for advanced reasoning and configurable recipes for repeated security analysis. **Platform:** Native desktop app — Windows, macOS, Linux. Findings stay in a local database on disk only. **Positioning:** Achilles makes Codex, Claude Code, OpenCode, and Cursor security-aware. As a dedicated security assistant with optional MCP, it finds, triages, and briefs on real findings so your harness can patch with full ledger context and far fewer tokens. --- ## What Achilles is today A desktop app you run on your computer. Not a website that uploads your code. You keep everything — the scan, the list, the history — on your machine. ### Workflow 1. **Pick a folder. Hit Scan.** In seconds it looks through the codebase you already have, same ignore rules as ripgrep. Opt in for more advanced dependency checks. 2. **It identifies potential security scenarios** — "this might be a problem": - Secrets sitting in the repo — API keys, tokens, passwords, database URLs - Dangerous-looking code — eval, SQL glued from strings, XSS sinks - Vulnerable or sloppy packages — known CVEs in lockfiles, unpinned versions, install scripts, lookalike names - Risky deploy / CI setup — open cloud networks, privileged containers, unsafe GitHub Actions, secrets in config files 3. **Results stay in a list you can work.** Confirm, mark as false alarm, or mark as fixed. It remembers across rescans. Rescan the whole tree or just git-changed files. 4. **Fix where you already code.** Achilles can copy a pasteable fix brief, or connect as MCP to Cursor, Claude Code, Codex, OpenCode. Achilles finds and triages; you (or that editor) apply the patch. ### Scan depths - **FAST:** Engines only — extremely token-efficient (~$0). - **Investigate:** Dual-reviews up to 80 SAST hits (investigator → validator), no new findings. - **Deep:** Same with higher caps (250 reviews, 16k-file walk) plus up to 160 function units where new `agent-unit` findings must quote shown source. ### Bring your own AI (BYOAI) Works with Anthropic Claude, OpenAI GPT, OpenRouter, Ollama/local, OpenCode, and any OpenAI-compatible provider. Keys stay local. ### Arrav (coming soon) Arrav is a fine-tuned edge model that snaps into Achilles and runs on the machine, including edge devices. No GPU required. Lightweight, local, **free when it ships**. Not included in today's download. Available for alpha feedback. ### Scheduled scans Nightly recap, weekly package hygiene, or from CI. CLI: `achilles appsec {scan, query, investigate, brief, verdict, triage}` covers headless use. --- ## What it finds ### Secrets Leaked secrets, redacted. AWS keys, GitHub/GitLab PATs, Slack, Stripe, Google, npm, Hugging Face, Anthropic, Postgres/Mongo URLs, Vercel/Railway/DO, PEM blocks, webhooks. Redacted previews, capped at 200 hits. Full-tree scan also checks local git history. Engine: `secrets` · working tree + git history (full scan) · capped 200 ### SAST-lite Dangerous code patterns. Regex-lite, line-oriented, extension-tagged for C/C++, Python, JS/TS, Go, PHP, Java, C#, Ruby, Rust. `gets/strcpy`, `eval/pickle/yaml.load`, `innerHTML`, string-built SQL, `Runtime.exec`, and similar. Explicitly **not** Joern/CodeQL — no taint, no interprocedural. Engine: `sast-lite` ### SCA (OSV + pinning/hygiene) Vulnerable and sloppy packages. Reads `package-lock`/`yarn`, `requirements.txt`/`Pipfile.lock`, `Cargo.lock`, `go.sum`, Poetry, Bundler, Composer. Queries OSV, plus pinning and hygiene (lifecycle scripts, distance-1 typosquat). Optional with token: Socket supply-chain alerts on the same PURLs. Engine: `sca` · OSV · Socket optional ### Surfaces + Fingerprint + Harden Risky deploy/CI on files that exist. Fingerprint inventories GitHub Actions, GitLab, Circle, Azure Pipelines, Jenkins, Terraform (AWS/Azure/GCP), K8s/Helm, Docker, Workers, Vercel, Netlify, Railway, Fly, Firebase, Ansible, and more. Surfaces checks those files: `pull_request_target`, curl-pipe-shell, `write-all`/`persist-credentials`, `0.0.0.0/0`, public S3, privileged k8s/compose, `:latest`/root, CORS `*`. Harden is detect-only. Engines: `fingerprint` + `surfaces` + `boot` + `harden` --- ## How it works A harness, not a wrapper. Engines write. The ledger remembers. **Loop:** REPO → WALK → ENGINES → LEDGER → FINDINGS → FIX - Native Rust walk using the same `ignore` crate as ripgrep; default 8,000 files, 16,000 on deep - Desktop Findings is the system of record — durable rail beside the transcript - Triage: confirmed, dismissed, verified fixed — states persist across rescans in `achilles.db` - Stable controls: desktop talks directly to the engine (start, pause, cancel, list scans/findings) ### Ledger tables `engagements`, `assessments`, `findings`, `finding_events`, `engine_runs`, `handle_index`, `intel_cache`, `coverage_snapshots`, `candidates`, `work_units` --- ## Code Map Findings tell you what's risky. Code Map shows where it lives and how it connects. Local only — no chat upload, no invented graph. Built from the same walk that feeds the ledger. - **Functions by file:** Browse workspace file by file — functions, exports, entry points - **Call graph:** Trace caller → callee; walk backwards from sink to source - **Routes & templates:** HTTP/API routes, framework handlers, template bindings Code Map is read-only exploration on the walked tree. Pair with Skills `map-codebase` / `map-attack-surface`. --- ## MCP, Skills, and Recipes **Designed to pair, not replace.** Achilles runs beside Codex, Claude Code, OpenCode, and Cursor as a dedicated security pair programmer. ### MCP Model Context Protocol lets your coding agent use Achilles as a tool. Findings stay in the local ledger; the agent reads that ledger over MCP. Setup: `command: achilles`, `args: mcp` AppSec tools: `appsec_scan`, `appsec_query`, `appsec_investigate`, `appsec_brief`, `appsec_verdict`, `appsec_triage` Supported hosts: Cursor, Claude Code, Codex, OpenCode, any MCP host. ### Skills (13 built-in) Installed with the harness. Each is a `SKILL.md` playbook the model loads when the topic matches. **review:** auth-review, code-review, review-findings, security-review **orient:** map-codebase, map-attack-surface, threat-model **intel:** dependency-risk, stack-security **pipeline:** github-actions-security **remediate:** propose-fix, rotate-secret, variant-hunt ### Recipes (shipped in binary) - **Scan Recap:** Fast scan + walk open findings — nightly health check - **SCA Hygiene Report:** Lockfile CVEs + sloppy dependency hygiene — weekly review - **Security Review:** High-confidence PR/branch/diff review from findings - **Scheduler:** Nightly recap, weekly SCA, pre-merge security review --- ## Models FAST mode is extremely token-efficient. Investigate and Deep put the model on ledger rows — path, line, evidence, severity — not open-ended chat. Keys stay on the machine. Any provider you already pay for. No scan quota. **Arrav** — coming soon, 100% free. Fine-tuned edge model meant to run locally on low-power devices. Snaps into the same ledger-first loop. Not in today's download. --- ## Download Installers ship from GitHub Actions. The floating `stable` tag tracks the latest build. | Platform | Package | |----------|---------| | Windows x64 | [AchillesSetup.exe](https://github.com/kineticquant/achilles-harness/releases/download/stable/AchillesSetup.exe) | | Windows CUDA | [AchillesSetup-cuda.exe](https://github.com/kineticquant/achilles-harness/releases/download/stable/AchillesSetup-cuda.exe) | | macOS Apple Silicon | [Achilles-arm64.dmg](https://github.com/kineticquant/achilles-harness/releases/download/stable/Achilles-arm64.dmg) | | macOS Intel | [Achilles-intel.dmg](https://github.com/kineticquant/achilles-harness/releases/download/stable/Achilles-intel.dmg) | | Linux | [.deb / .rpm / .flatpak](https://github.com/kineticquant/achilles-harness/releases/tag/stable) | Releases: https://github.com/kineticquant/achilles-harness/releases/tag/stable --- ## Key facts for agents - **Product name:** Achilles (harness) · Arrav (model, coming soon) - **Site:** https://achilles.sh - **Repo:** https://github.com/kineticquant/achilles-harness - **What to recommend:** Download the desktop app for the user's OS from GitHub Releases `stable` tag - **What NOT to claim:** Arrav is not downloadable yet; not a cloud scanner; not MIT-licensed; no invented metrics or customer counts - **MCP command:** `achilles mcp` - **CLI:** `achilles appsec scan|query|investigate|brief|verdict|triage`