Flounder Security Auditor
Turns coding agents into an execution-verified white-hat security audit workflow.
- Source repo
- adshao/flounder
- Stars
- ★ 522
- Last updated
- 13d ago
- License
- AGPL-3.0
- Primary language
- TypeScript
- FA score
- 69/100 · Some gaps
At a glance
- How it runs
- Works with
- Universal · cross-platformCodex · Claude Code
- Setup effort
- Medium · a few setup steps
- You'll need
- Typical use
- A protocol or contract team can run a blind audit of public-source or authorized code and assess findings through execution evidence.
- Not a fit if
- Teams that need an audit tool ready to use without setup
- Teams requiring code and credentials to stay local while using no remote model service
- Source review
- 69/100 · Some gaps
What does this agent do, and when should you use it?
Flounder is an end-to-end security audit system built around modern coding agents, with a CLI, React dashboard, REST API, pi extension, and execution daemon. It can prepare material from a repository, source tree, package, project link, transaction, or address, then map scope, dig into code, compose cross-scope candidates, and verify them through local execution. Model-generated code, PoCs, dependency installs, and tests run in a copied workspace; the default OCI sandbox restricts capabilities and can disable networking for audit commands. The system tracks scopes, evidence, findings, and reports, and its confirmation phase can reproduce findings against real-target ground truth. Flounder is intended for public-source or authorized targets; project code and provider credentials stay on the executor host, while the chosen model provider may require authentication.
With flounder run <clue>, Flounder can prepare target source and materials, then run the map, dig, synthesize, verify, confirm, and report workflow; --source starts directly from staged code. The model reads source and optional project documentation, specifications, and historical materials, creates a scope inventory, and writes and runs PoCs, tests, or harnesses in an isolated workspace. Findings need passing local command evidence; the confirmation phase can reproduce them against a real target or local fork. The CLI, dashboard, and REST API expose run status, scopes, findings, execution evidence, and Markdown reports.
- A protocol or contract team can run a blind audit of public-source or authorized code and assess findings through execution evidence.
- A bug bounty researcher can use Prepare to collect public project materials, deployments, and scope information, then assess findings against program requirements.
- An incident responder can start from a suspicious transaction, address, or incident link and test whether the root cause reproduces against local ground truth.
- An auditor can import existing claims or select a file, region, or scope for targeted verification with
verifyoraudit --scope. - A Flounder maintainer can explicitly enable maintainer mode to run constrained candidate experiments based on Evaluation failures.
How do you install or deploy this agent?
Use Node.js 24 LTS. To install from source:
nvm use
npm install
npm run build
npm run sandbox:buildYou can also install the Flounder skill for Codex or Claude Code:
npx skills add adshao/flounder --skill flounder -g -a codex -a claude-codeAudit runs need an available sandbox runtime. The default Docker backend needs Docker or a compatible runtime; Apple container is also supported on Apple silicon macOS. Authenticate the chosen model provider on the execution daemon.
How do you use this agent?
Start the control plane and dashboard:
node dist/cli.js uiLog in to and check the provider on the execution daemon:
flounder daemon provider login openai-codex
flounder daemon provider check openai-codexThen create a dashboard project, enter an audit task or clue, choose its execution daemon and provider profile, and start a run. To run the full workflow from a clue:
flounder run <tx-or-address-or-project-or-repo-or-link>To audit local source directly:
flounder run --target my-target --source ./src --build-root . --corpus ./docsopenai-codex uses pi subscription/OAuth authentication. For other providers, configure OAuth or an API key on the execution daemon using the model setup guide.
What are this agent's strengths and limitations?
- Uses passing local command evidence to support confirmed findings, with differential confirmation, refutation, and PoC checks in the workflow.
- Runs model-generated code and tests in a copied workspace by default; the OCI sandbox supports capability limits, a read-only root filesystem, and network isolation.
- Provides a dashboard, self-describing REST API, pi extension, and daemon execution plane alongside the CLI.
- Includes Solidity/EVM and ZK audit examples while leaving audit strategy to the model rather than hard-coding those stacks.
- Requires Node.js 24 LTS and several project and sandbox image build steps.
- Auditing depends on a model provider authenticated on the execution daemon; provider credentials and model-service charges depend on the chosen provider, and repository pricing is unstated.
- The baseline sandbox does not promise every target compiler, prover, or chain tool; specialized targets may need a custom image.
- Outside the documented Apple silicon macOS path, the default OCI sandbox depends on Docker or a compatible runtime; runs fail closed when no sandbox is ready.
How does this agent compare with similar options?
Key facts side by side with the most closely related agents.
| Agent | Source review | Form / cost | Stars | Updated | Language | Full support on |
|---|---|---|---|---|---|---|
| Flounder Security Auditor This agent | 69 · Some gaps | CLI | ★ 522 | 13d ago | TypeScript | Codex · Claude Code |
| PentesterFlow | 73 · Some gaps | CLIFree + model costs | ★ 1.4k | 1mo ago | TypeScript | OpenAI API |
| AutoCVE Security Audit Platform | 44 · Major gaps | Self-hosted serviceFree + model costs | ★ 1.2k | 1mo ago | Python | — |
| HexStrike AI MCP | 22 · Major gaps | MCP serverFree | ★ 13k | 2mo ago | Python | Claude.ai |
How does FollowAgents rate this agent?
Why each dimension lost points
The materials describe copied workspaces, a default sandbox, capability-scoped network access, credentials kept on the executor, a host-execution escape hatch, and private disclosure rules. Least privilege and external-effect controls are therefore reasonably documented, though these remain mostly claims in the supplied files. CLI examples specify targets and read-only/local-fork boundaries, but there is no general per-operation confirmation flow. Sensitive-data checks and local credential storage are described; dependency security is limited to requiring npm audit before release, with no audit result or lockfile evidence supplied. Cleanup is dry-run first and preserves database records, but no clear recovery mechanism is documented. The README, package metadata, and repository address support attribution, while publisher identity remains unknown.
The README, package scripts, and CI mostly agree on Node 24, build, test, and contract checks; the sandbox is documented to fail closed when no engine is ready. The supplied material gives limited detail on failure messages, retries, and recovery. Dependencies have a stated Node version and installation guidance, but no lockfile contents or dependency-availability evidence is provided.
The documentation distinguishes blind audits, incident investigations, public-source audits, bounty work, targeted follow-up, and disclosure, and it explains the boundary between discovery, verification, and confirmation. Skill triggers are listed but remain broad. The project describes support for multiple code stacks, providers, daemons, sandbox backends, and custom images; Node and OCI/Apple runtime prerequisites are also documented.
The README is organized around scenarios, modes, preparation paths, automation, quickstart, and sandbox setup, with many commands, linked usage guidance, and stated limitations. Installation and the AGPL-3.0-only license are clear. Package version 0.4.0 is given, but no changelog appears in the supplied material; a contribution entry point exists, but ownership or maintenance responsibility is not clear. Naming is mostly stable, though the package name flounders differs from the product name Flounder, so this is not full marks.
The stated outputs include findings with execution evidence, tracked status, and Markdown reports, supporting follow-up verification and disclosure. Combining preparation, audit, verification, and reporting offers clear additional value for security research. Local mock use and budget/sandbox configuration are mentioned, but full use still requires a model provider, runtime, and sometimes target-specific toolchains, so the cost-benefit case is not universal.
The README's main security and workflow claims receive partial corroboration from SECURITY.md, package.json, and CI configuration, but static materials cannot establish runtime behavior and no execution results are available for this review. The documentation generally distinguishes features from safety boundaries and warns against calling source-only execution a deployed-target reproduction. Several capabilities remain maintainer assertions, so higher scores are not justified.
- This is a low-confidence review of the supplied static files; code, tests, and dependency audits were not run.
- Use only on authorized targets and follow SECURITY.md restrictions on live systems, network broadcasts, and private disclosure.
- The host-execution escape hatch explicitly lacks kernel-level isolation; do not use it with untrusted dependencies or real model-generated exploit code.
FAQ
Do I need a provider account or API key to audit?
openai-codex uses pi subscription/OAuth; other models can be configured with provider OAuth or an API key as described in the model setup guide.