careful
“Safety guardrails for destructive commands. (gstack)”
bin
aipkg.jsonbin/check-careful.shLICENSE.txtREADME.mdSKILL.mdSKILL.md.tmpl- 01SDI-185%MEDIUM
SKILL.md:39
detailhide
The skill collects analytics data (skill name, timestamp, repo info) by writing to ~/.gstack/analytics/skill-usage.jsonl without declaring this in the manifest. This violates transparency principles and creates unexpected side effects that users may not consent to.
3738```bash39mkdir -p ~/.gstack/analytics40echo '{"skill":"careful","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true41```fix Declare the analytics collection in the skill manifest under a 'side-effects' or 'telemetry' field. Add explicit user consent or provide clear documentation. Consider making telemetry opt-in rather than default-on.
- 02SDI-385%MEDIUM
SKILL.md.tmpl:34
detailhide
The skill silently writes analytics data to ~/.gstack/analytics/skill-usage.jsonl without explicit user consent or opt-in. This violates transparency principles and user privacy expectations. Users may not realize their skill usage is being logged.
3233```bash34mkdir -p ~/.gstack/analytics35echo '{"skill":"careful","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true36```fix Remove the analytics logging code entirely, or if usage tracking is necessary, require explicit opt-in via a configuration file or environment variable that users must actively enable. Document the telemetry clearly in the skill description.
- 03SDI-295%MEDIUM
bin/check-careful.sh:105
detailhide
The skill manifest describes it as 'Safety guardrails for destructive commands' but the implementation secretly writes analytics data to ~/.gstack/analytics/skill-usage.jsonl. This violates user trust and privacy expectations. Users believe they are using a safety tool, not a telemetry-enabled agent. The undisclosed analytics collection persists data on the user's filesystem without consent.
103if [ -n "$WARN" ]; then104 # Log hook fire event (pattern name only, never command content)105 mkdir -p ~/.gstack/analytics 2>/dev/null || true106 echo '{"event":"hook_fire","skill":"careful","pattern":"'"$PATTERN"'","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true107fix Remove or comment out the analytics logging code (lines 105-106). If analytics are necessary, add explicit disclosure to the skill manifest and obtain user opt-in consent. Provide a way for users to disable analytics. Never collect data from safety/guardrail tools without explicit user knowledge.
- 04SQP-175%MEDIUM
SKILL.md:6
detailhide
The trigger phrase 'be careful' is extremely common in everyday conversation and will cause the skill to activate unintentionally in many contexts unrelated to destructive commands. This leads to unnecessary friction and potential misuse of the skill's capabilities.
4description: Safety guardrails for destructive commands. (gstack)5triggers:6 - be careful7 - warn before destructive8 - safety modefix Use more specific trigger phrases such as 'activate careful mode', 'enable safety guardrails', or 'careful-mode on'. Avoid single common words that appear in natural conversation. Document alternative longer phrases that reduce false positives.
- 05SQP-175%MEDIUM
SKILL.md.tmpl:11
detailhide
The trigger phrase 'be careful' is extremely vague and overlaps with common everyday speech. This creates a high risk of accidental activation when users casually mention safety or caution in conversation, potentially activating the skill unintentionally.
09 "prod mode", or "careful mode". (gstack)10triggers:11 - be careful12 - warn before destructive13 - safety modefix Replace generic triggers like 'be careful' with more specific, distinctive phrases such as 'activate careful mode', 'enable destructive command guards', or skill-specific identifiers. Use compound phrases that are unlikely to appear in normal conversation.
- 06SQP-292%MEDIUM
bin/check-careful.sh:105
detailhide
Analytics logging occurs without user disclosure or consent. The comment claims 'pattern name only, never command content' but this is insufficient justification for undisclosed telemetry. Even metadata like repository name and timestamps can reveal patterns of user behavior, development practices, and when destructive operations are being considered.
103if [ -n "$WARN" ]; then104 # Log hook fire event (pattern name only, never command content)105 mkdir -p ~/.gstack/analytics 2>/dev/null || true106 echo '{"event":"hook_fire","skill":"careful","pattern":"'"$PATTERN"'","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || true107fix Implement explicit user consent for analytics before any logging. Add clear disclosure in manifest and CLI output. Provide environment variable or config file option to disable analytics. Document what is collected and how it is used. Remove analytics entirely if not critical to skill function.
- 07SSD-388%MEDIUM
SKILL.md.tmpl:33
detailhide
The skill collects repository name, timestamp, and skill name without any user notification or consent mechanism. Silent telemetry collection violates user privacy and transparency expectations, particularly when the collected data includes repository context that could reveal sensitive project information.
31and can choose to proceed or cancel.3233```bash34mkdir -p ~/.gstack/analytics35echo '{"skill":"careful","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null || echo "unknown")'"}' >> ~/.gstack/analytics/skill-usage.jsonl 2>/dev/null || truefix Either eliminate telemetry entirely or implement a mandatory opt-in system with clear user consent. If retention is necessary, anonymize collected data and document all telemetry practices in the skill description and a privacy notice.