api-design-first

Pass

Audited by Gen Agent Trust Hub on Sep 29, 2026

Risk Level: SAFEINDIRECT_PROMPT_INJECTIONEXTERNAL_DOWNLOADSCOMMAND_EXECUTIONDYNAMIC_EXECUTION
Full Analysis
  • [INDIRECT_PROMPT_INJECTION]: The skill processes untrusted user requirements to generate architectural specifications and code.
  • Ingestion points: User-provided API requirements and resource models described in natural language are used to generate OpenAPI, GraphQL, and gRPC definitions in SKILL.md.
  • Boundary markers: None identified; the skill does not instruct the agent to ignore or delimit embedded commands in user-provided API descriptions.
  • Capability inventory: The skill provides shell scripts (scripts/validate-spec.sh, scripts/generate-mock.sh) that execute external tools via npx and invoke Python commands.
  • Sanitization: There is no explicit sanitization of user-provided resource names or descriptions before they are interpolated into the generated specifications.
  • [EXTERNAL_DOWNLOADS]: The skill invokes external package managers to fetch tools at runtime.
  • Evidence: scripts/generate-mock.sh and scripts/validate-spec.sh use npx to fetch and execute @stoplight/prism-cli and @stoplight/spectral-cli from the NPM registry.
  • [COMMAND_EXECUTION]: The provided YAML validation script contains a flaw that allows for arbitrary command execution.
  • Evidence: scripts/validate-spec.sh contains the command python3 -c "import yaml; yaml.safe_load(open('$SPEC'))". Because the $SPEC variable (the filename) is interpolated directly into the Python command string within single quotes, a filename containing a single quote (e.g., test.yaml'); import os; os.system('whoami'); #) will execute arbitrary Python code.
  • [DYNAMIC_EXECUTION]: The skill relies on dynamic loading and execution of Node.js packages.
  • Evidence: The mock and validation scripts dynamically resolve and run tools using npx, and the validation script generates and executes Python code snippets on the fly to check YAML integrity.
Audit Metadata
Risk Level
SAFE
Analyzed
Sep 29, 2026, 03:08 AM