story-publish
Pass
Audited by Gen Agent Trust Hub on Aug 30, 2026
Risk Level: SAFECOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTION
Full Analysis
- [COMMAND_EXECUTION]: The skill utilizes a Python bridge script
scripts/publish_bridge.pyto execute local publishing adapters viasubprocess.run(). The implementation correctly uses list-based arguments instead of shell strings, mitigating potential shell injection vulnerabilities. Additionally, the script validates that adapters reside within the designated working directory and enforces a strict whitelist of allowed actions (preview,books,preflight,login,draft,edit,publish,schedule). - [INDIRECT_PROMPT_INJECTION]: As the skill is designed to process and publish novel chapters, it is exposed to potential indirect prompt injection if the source text contains malicious instructions aimed at the AI agent. The skill attempts to mitigate this risk through defensive instructions in
SKILL.md(e.g., prohibiting automatic updates) and by requiring specific confirmation flags (--confirm-remote-draft,--confirm-live, and--ai-declaration) for all non-read-only operations. - Ingestion points: Novel chapters read by the agent before being passed to the bridge script (referenced in
SKILL.md). - Boundary markers: The skill documentation requires manual verification of chapter hashes and explicit user confirmation before remote writing.
- Capability inventory: Local script execution via
subprocess.runand project-local file system access (.story-publish.json). - Sanitization: The bridge script uses structured argument passing for subprocesses and validates all inputs against a predefined schema and whitelist.
- [DATA_EXPOSURE]: The skill manages a local configuration file
.story-publish.jsonto store paths to local adapters and Python interpreters. Thescripts/publish_bridge.pyscript implements atomic writing and restricts file permissions to0o600(read/write for the owner only) to prevent local data exposure to other users.
Audit Metadata