farm-out
Warn
Audited by Gen Agent Trust Hub on Oct 5, 2026
Risk Level: MEDIUMDYNAMIC_CONTEXT_INJECTIONCOMMAND_EXECUTIONDATA_EXFILTRATIONINDIRECT_PROMPT_INJECTION
Full Analysis
- [DYNAMIC_CONTEXT_INJECTION]: The
SKILL.mdfile contains a shell command within the!command`` syntax that executes automatically when the skill is loaded by the agent. This command attempts to executeskill-tocor a script from a local directory to generate a table of contents. - Evidence:
!d=${CLAUDE_SKILL_DIR}; command -v skill-toc >/dev/null 2>&1 && exec skill-toc "$d"; s=$HOME/.claude/skills/plugin-utils/bin/skill-toc; [ -x "$s" ] && exec "$s" "$d"; echo "(skill-toc unavailable: references and scripts are NOT listed here — install the plugin-utils plugin, or start a new session so its bin/ reaches PATH)"`` - [DATA_EXFILTRATION]: The script
scripts/bgjobs.pyperforms system-level inspection by reading from the/procfilesystem. Specifically, it reads the environment variables of other processes to identify tasks associated with a specific row ID. This behavior exposes potentially sensitive environment data to the skill's logic. - Evidence: In
scripts/bgjobs.py, theprocs()function iterates through/procand opens/proc/{d}/stat,/proc/{d}/cmdline, and/proc/{d}/environto extractFARM_ROW_IDand other process metadata. - [COMMAND_EXECUTION]: The skill makes extensive use of shell command execution and subprocess management to orchestrate sub-agents and monitor their resources.
- Evidence:
scripts/farm.shandscripts/farm-team.shuse shell wrappers (claude-code,codex-code,gemini-code) with the-pflag to launch new agent sessions.scripts/watchdog.pyusessubprocess.run(["ps", "-o", "stat=", "-p", str(pid)], ...)to check the status of child processes.scripts/farm.shusessetsid nohupto detach long-running tasks.- [INDIRECT_PROMPT_INJECTION]: The skill provides an orchestration layer that ingests external data (task prompts) and interpolates them into instructions for downstream agents, creating a surface for indirect injection attacks.
- Ingestion points:
scripts/farm.shreads task prompts from a JSON file provided via the--tasksargument. - Boundary markers: The script appends hardcoded "anti-simulation" and "child standing" instructions to the prompts to guide sub-agent behavior, but these are not cryptographic or structural boundaries.
- Capability inventory: Spawns sub-agents that typically have access to
Bash,Edit,Write, andWorkflowtools, allowing for significant system impact. - Sanitization: The skill employs an artifact verification mechanism (
--expect) that checks for the existence and non-zero size of expected output files, which serves as a basic validation of work performed.
Audit Metadata