Loading...
Loading...
Acts as the persistent supervisor, launching and monitoring the automated review campaign. Use when running a long-running, continuous security review campaign that needs autonomous coordination. Don't use for executing individual review stages directly.
npx skill4agent add google/mantis mantis-meta-agent/mantis-meta-agent--syncactive_snapshotsnapshot_historysnapshot_pinned--target_root--snapshot_keep=<N><state_root>/.mantis_snapshots/--state_root=<absolute path>workspace/.mantis_snapshots/workspace/state_rootCODE_ROOT--state_rootCODE_ROOT--auto_relocate_stateworkspace/.mantis_snapshots/CODE_ROOTstate_rootmantis-pipeline-adapterworkspace/.workspace_edit.lockrename(2)rename(2)--auto_relocate_statestate_rootCODE_ROOT--state_rootworkspace/.mantis_state.jsonactive_snapshotsnapshot_historyworkspace/findings/patch_statusworkspace/.workspace_edit.lock*.bak-*CODE_ROOT/.mantis_snapshot_idworkspace/archive/findings_pass_N/.trash/workspace/.mantis_state.jsonworkspace/kb/THREAT_MODEL.mdworkspace/.mantis_state.jsonpass_numberlast_updatedvcs_info--syncactive_snapshot{root, snapshot_id, snapshot_pinned, pass, vcs_type}snapshot_pinnedtruefalsesnapshot_history{pass, snapshot_id, snapshot_pinned, timestamp}schema.json#/$defs/state--sync--sync<state_root>/.mantis_snapshots/pass_<N>//workspace/CODE_ROOT/.mantis_snapshot_idchmod -R a-wworkspace/findings/SNAPSHOT_ID--snapshot_keepTarget Agnosticism Directive: The target you are evaluating may be raw source code, a compiled binary, a firmware blob, or a live staging/dev endpoint. Ground your analysis in whatever format the target is currently in. You are authorized and encouraged to use whatever suitable tools are at your disposal (e.g., standard Unix tools,,unblob,radare2,angr,objdump,Ghidra,qemu, emulator harnesses) to extract, analyze, reproduce, and test the findings. If source code is not available, do not attempt to force a source-code workflow; adapt and 'do what works' for the artifact at hand. Ensure your subagents are aware of the tools available to them.unicorn
NN"pass_number"workspace/.mantis_state.jsonworkspace/archive/findings_pass_NloopN_findingsNmax_found + 1schema.json--syncactive_snapshotsnapshot_historysnapshot_pinnedvcs_infosnapshot_idactive_snapshotchmod--sync*.bak-*@mantis-patchworkspace/.workspace_edit.lock*.bak-*workspace/findings/patch_statuspatch_statusmantis-patch<target>.bak-[finding_id]finding_idschema.json#/$defs/uuid*.bak-*config.yaml.bak-olddata.bak-2024find <target_root> -regextype posix-extended -regex '.*\.bak-[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$' -not -path '*/.mantis_snapshots/*' -not -path '*/workspace/*' -deleteworkspace/findings/*.jsonid<anything>.bak-<that-id>workspace/<state_root>/.mantis_snapshots/mantis-summary.md*.bak-<uuid>*.bak-*git status --porcelain -- ':(exclude)**/mantis-summary.md' ':(exclude)**/*.bak-*' ':(exclude)workspace/' ':(exclude).mantis_snapshots/'git rev-list --count @{u}..HEAD 2>/dev/nullgit symbolic-ref -q HEADhg status -X '**/mantis-summary.md' -X '*.bak-*' -X 'workspace/**' -X '.mantis_snapshots/**'repo forall -c "git status --porcelain -- ':(exclude)**/mantis-summary.md' ':(exclude)**/*.bak-*' ':(exclude)workspace/' ':(exclude).mantis_snapshots/'"workspace/workspace/.mantis_state.jsonworkspace/git rev-parse --is-inside-work-treetruevcs_type"git"commit_hashgit rev-parse HEADbranchgit branch --show-currentgit rev-parse --abbrev-ref HEADdirtygit status --porcelain -- ':(exclude)**/mantis-summary.md' ':(exclude)**/*.bak-*' ':(exclude)workspace/' ':(exclude).mantis_snapshots/'workspace/.mantis_snapshots/.hghg rootvcs_type"hg"commit_hashhg id -ibranchhg branchdirtyhg status -X '**/mantis-summary.md' -X '*.bak-*' -X 'workspace/**' -X '.mantis_snapshots/**'.reporevisiondirtyvcs_type"multi-vcs"vcs_type"none"gitvcs_type"unknown"--syncstate.active_snapshot.pass == Nactive_snapshotpass_numberactive_snapshot.pass == state.pass_numbermantis-pipeline-adaptersnapshot_pinnedsnapshot_historydu -sdfgit worktree add --detach <SNAPSHOT_ROOT>hg archive <SNAPSHOT_ROOT>state_rootstate_rootpass == Nsnapshot_historypass == Nsignaturediscovery_commitactive_snapshotsnapshot_historysnapshot_history--snapshot_keepsnapshot_pinned=falseactive_snapshot--snapshot_root--snapshot_idcontent_hashSNAPSHOT_IDCODE_ROOT/.mantis_snapshot_idchmod -R a-w--snapshot_keeplive:snapshot_pinned=falsesnapshot_pinned=falseactive_snapshot--snapshot_root--snapshot_idworkspace/.mantis_state.jsonschema.json#/$defs/state"vcs_info"--sync"active_snapshot"{ "root": <root>, "snapshot_id": <SNAPSHOT_ID>, "snapshot_pinned": <true if pinned, false if HALT>, "pass": <N>, "vcs_type": <vcs_type> }snapshot_pinnedtruefalse"snapshot_history"{ "pass": <N>, "snapshot_id": <SNAPSHOT_ID>, "snapshot_pinned": <bool>, "timestamp": <ISO 8601> }snapshot_historysnapshot_historypass == Nactive_snapshotschema.json#/$defs/statepasspass_numberstate.pass_number--syncactive_snapshotsnapshot_historyactive_snapshot--syncactive_snapshotpass == N-1active_snapshotworkspace/.mantis_state.json--syncvcs_infosnapshot_historypass_numberactive_snapshot.pass != state.pass_numbermantis-calibratemantis-chainmantis-architectureactive_snapshotsnapshot_historyactive_snapshotsnapshot_pinned=falseactive_snapshotsnapshot_pinned=falseactive_snapshot--syncactive_snapshotsnapshot_pinned=trueN"pass_number""last_updated"workspace/.mantis_state.json"vcs_info""active_snapshot""snapshot_history"@agent_name--syncactive_snapshot@stageactive_snapshot--snapshot_root=<active_snapshot.root> --snapshot_id=<active_snapshot.snapshot_id> --state_root=<absolute path of the directory that contains workspace/>active_snapshot.snapshot_pinned == falseactive_snapshot--sync--state_root=<...>--target_root=<...>--snapshot_id--sync--snapshot_root--snapshot_idsnapshot_pinned=falselive:@mantis-historyworkspace/historical_learnings.jsonl@mantis-structural-indexworkspace/kb/structural_index/manifest.jsoncatalog.sqlitestructural_index.jsonlworkspace/helpers/query_structural_index.pysnapshot_id"unknown"@mantis-summarizemantis-summary.md@mantis-architectureworkspace/learnings.jsonlworkspace/kb/@mantis-threat-modelworkspace/kb/THREAT_MODEL.md@mantis-planworkspace/plan.json@mantis-researcherworkspace/plan.jsonworkspace/findings/@mantis-dedupeworkspace/findings/@mantis-reviewworkspace/findings/@mantis-criticworkspace/findings/@mantis-reproduceworkspace/findings/@mantis-chainworkspace/findings/@mantis-patchworkspace/findings/@mantis-reproduce@mantis-calibrateworkspace/findings/@mantis-reflectworkspace/learnings.jsonltranscript.jsonl@mantis-reflect<appDataDir>/brain/<conversation_id>/.system_generated/logs/transcript.jsonl@mantis-reflect@mantis-reportworkspace/report/review_packet-latest.mdworkspace/report/review_packet_pass_<N>.mdreview_packet_pass_<N>_<snapshot_id>.mdreview_packet-latest.md@mantis-architecture"FALSE_POSITIVE""NON_VIABLE""SAMPLE_OR_TEST""VERIFIED_SECURE"workspace/kb/workspace/learnings.jsonlNworkspace/.mantis_state.jsonworkspace/archive/findings_pass_N/findings/workspace/archive/findings_pass_N/workspace/.mantis_state.jsonworkspace/archive/findings_pass_N/.mantis_state.jsonpass_numbervcs_infoactive_snapshotsnapshot_history@mantis-planworkspace/kb/workspace/kb/THREAT_MODEL.mdworkspace/archive/findings_pass_N/kb/workspace/kb/workspace/.mantis_state.jsonworkspace/findings/.json.trash/workspace/archive/findings_pass_N/mv workspace/findings/*.json workspace/archive/findings_pass_N/NN_new = N + 1N_new"pass_number""last_updated"workspace/.mantis_state.json"vcs_info""active_snapshot""snapshot_history"@mantis-planworkspace/findings/@mantis-patch@mantis-calibraterepro_status: "failed_to_reproduce"LOWNON_VIABLE--target_root--syncworkspace/findings/discovery_commitfindings/