repo-tidy

Pass

Audited by Gen Agent Trust Hub on Sep 1, 2026

Risk Level: SAFEPERSISTENCEINDIRECT_PROMPT_INJECTIONCOMMAND_EXECUTION
Full Analysis
  • [PERSISTENCE]: The skill instructions advise the user to register a shell script (scripts/git-repo-status.sh) as a SessionStart hook within the agent's global configuration file (~/.claude/settings.json). This configuration enables the automatic execution of the script at the beginning of every session to provide repository status context, which acts as a persistence mechanism.
  • [INDIRECT_PROMPT_INJECTION]: The skill processes untrusted metadata from Git repositories, such as branch names and tracking information, creating a surface for indirect prompt injection.
  • Ingestion points: Data enters the context via git for-each-ref and git status output processed in scripts/repo_tidy.py and scripts/git-repo-status.sh.
  • Boundary markers: The skill does not employ explicit delimiters or instructions to help the agent distinguish repository metadata from valid instructions.
  • Capability inventory: The skill possesses capabilities for destructive file system operations, including deleting branches (git branch -D) and removing worktrees (git worktree remove).
  • Sanitization: The Python script utilizes subprocess.run with argument lists (shell=False), effectively preventing direct shell command injection, though the logic remains theoretically susceptible to manipulation through carefully crafted branch names or Git metadata.
  • [COMMAND_EXECUTION]: The skill core logic in scripts/repo_tidy.py frequently executes shell commands via the subprocess module to interact with Git. While these operations include destructive actions, the script implements a default dry-run behavior and the skill instructions require the agent to obtain user confirmation before executing changes with the --apply flag.
Audit Metadata
Risk Level
SAFE
Analyzed
Sep 1, 2026, 03:14 AM
Security Audit — agent-trust-hub — repo-tidy