ask-cargo
Pass
Audited by Gen Agent Trust Hub on Oct 5, 2026
Risk Level: SAFEINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTIONDATA_EXFILTRATION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The agent is vulnerable to indirect prompt injection because it processes untrusted messages from Slack and has the capability to execute commands and push code to GitHub.
- Ingestion points: Untrusted data enters the agent context through the Slack connector trigger defined in
infra/agents/ask-cargo.ts. - Boundary markers: The system prompt in
infra/agents/ask-cargo.prompt.tslacks explicit boundary markers or instructions to disregard embedded commands in user messages. - Capability inventory: The agent can execute CLI commands (
cargo-ai), create pull requests, and push commits to GitHub (infra/agents/ask-cargo.prompt.ts). - Sanitization: There is no evidence of sanitization or filtering of Slack message content before it is processed by the harness.
- [DYNAMIC_EXECUTION]: The evaluation script
evals/contract.mjsuses dynamic loading with computed paths to import local resources for validation. - Evidence:
await import(../infra/agents/ask-cargo.ts?contract=${stamp});inevals/contract.mjs. While this is part of the test suite and limited to local files, dynamic importing of files via computed strings is a risky pattern. - [DATA_EXFILTRATION]: The configuration in
infra/agents/ask-cargo.tsallows the agent to answer in all Slack channels where the bot is present, which could lead to accidental exposure of sensitive repository data. - Evidence:
allChannels: trueininfra/agents/ask-cargo.ts. If the bot is invited to a Slack Connect or public channel, internal data fromcontext/,infra/, and workspace usage metrics could be disclosed. The skill author includes prompt-level warnings and documentation to mitigate this, but the technical configuration remains broad.
Audit Metadata