Skip to content

fix(web-security): preflight tooling guard when pdtm tools unavailable (CAP-1174) - #114

Merged
GangGreenTemperTatum merged 2 commits into
mainfrom
ads/cap-1174-fix-pre-lim-recon-when-dnsx-and-katana-are-unavailable
Aug 11, 2026
Merged

fix(web-security): preflight tooling guard when pdtm tools unavailable (CAP-1174)#114
GangGreenTemperTatum merged 2 commits into
mainfrom
ads/cap-1174-fix-pre-lim-recon-when-dnsx-and-katana-are-unavailable

Conversation

@GangGreenTemperTatum

Copy link
Copy Markdown
Contributor

Problem

When a user has the web-security capability locally but its external tools are not installed (the ProjectDiscovery pdtm suite — nuclei, httpx, dnsx, katana, interactsh-client — plus caido-cli, jxscout, protoscope, Burp), the agent previously proceeded blind, called failing tools, and burned tokens delivering half an engagement. These tools are auto-installed in a Dreadnode sandbox but commonly missing on a local runtime.

Change

Adds a brief Preflight Tooling section to the web-security agent prompt: if the runtime reports a ## Runtime Tooling Health block (failed capability checks:), the agent must engage the operator (ask_user), name the missing tools, and either wait or explicitly scope down — rather than silently running a partial scan.

Pairs with

The SDK-side runtime change in dreadnode-tiger that:

  • Surfaces failed capability checks: into the agent system prompt (## Runtime Tooling Health) — scalable to all capabilities that declare checks:.
  • Logs check failures at WARNING so headless/--print operators get a signal even without the TUI health panel.

Non-blocking by design: the capability still loads; this only alerts.

Scope

Prompt-only; one file. No tooling/behavior change beyond the added guidance.

…e (CAP-1174)

Add a 'Preflight Tooling' section to the web-security agent prompt so that
when required external binaries (ProjectDiscovery pdtm suite: nuclei, httpx,
dnsx, katana, interactsh-client; plus caido-cli, jxscout, protoscope, burp)
are missing on a local runtime, the agent engages the operator instead of
silently delivering a half-run assessment.

Pairs with the SDK runtime change that surfaces failed capability 'checks:'
into the agent system prompt and logs them for headless operators.
Drop the hardcoded tool inventory (nuclei/httpx/caido-cli/...) from the agent
prompt. The runtime's '## Runtime Tooling Health' block already enumerates the
specific failed checks dynamically from capability.yaml checks:, so restating
the list in prose only invited drift. The prompt now defers to that block as
the authoritative source.
@GangGreenTemperTatum
GangGreenTemperTatum merged commit 672cae2 into main Aug 11, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant