freeze
Pass
Audited by Gen Agent Trust Hub on Oct 26, 2026
Risk Level: SAFECOMMAND_EXECUTIONINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill's setup instructions direct the agent to interpolate user-provided text directly into a shell command.
- Ingestion points: User input provided via the
AskUserQuestiontool regarding the directory path to restrict edits to. - Boundary markers: None identified; the instructions do not specify delimiters or warnings to ignore embedded commands in the user input.
- Capability inventory: The skill uses the
Bashtool to resolve paths, create directories, and write state files. It also usesevalfor dynamic execution. - Sanitization: There is no evidence of sanitization or escaping (e.g., using printf %q) before the user input is placed inside the
cd "<user-provided-path>"command, creating a command injection surface if the agent does not manually sanitize the input. - [DYNAMIC_EXECUTION]: The skill uses
evalto execute the output of a local script to resolve environment paths. - Evidence:
eval "$(~/.claude/skills/gstack/bin/gstack-paths)"is used in the directory resolution logic inSKILL.mdto establish the$GSTACK_STATE_ROOTenvironment variable. - [COMMAND_EXECUTION]: The skill relies on shell command execution for its primary logic and state management.
- Evidence: Uses
PreToolUsehooks to executebash ${CLAUDE_SKILL_DIR}/bin/check-freeze.shwhenever theEditorWritetools are invoked. - Evidence: Records usage telemetry (skill name, timestamp, and repository name via
git rev-parse) to a local file at~/.gstack/analytics/skill-usage.jsonl.
Audit Metadata