본문으로 건너뛰기
cccskills
무료GitHub에 공개

careful

Check shell commands before they run and warn about destructive actions such as file deletion, database removal, and Git history changes. Users can approve ordinary warnings, while certain catastrophic command patterns are denied.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

원문원문 설명 보기

Safety guardrails for destructive commands. (gstack)

연동 도구Kubernetes
설치 방법 보기

이럴 때 유용합니다

  • Check destructive commands in production
  • Review deletion commands in shared environments
  • Catch Git operations that discard work
  • Add project-specific command warnings

포함된 파일(4)

  • SKILL.md5.0 KB
  • bin/check-careful.sh19.4 KB
  • bin/hook-extract.sh10.2 KB
  • SKILL.md.tmpl4.8 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

<!-- AUTO-GENERATED from SKILL.md.tmpl — do not edit directly --> <!-- Regenerate: bun run gen:skill-docs -->

When to invoke this skill

Warns before rm -rf, DROP TABLE, force-push, git reset --hard, kubectl delete, and similar destructive operations. User can override each warning. Use when touching prod, debugging live systems, or working in a shared environment. Use when asked to "be careful", "safety mode", "prod mode", or "careful mode".

/careful — Destructive Command Guardrails

Safety mode is now active. Every Bash and PowerShell command will be checked for destructive patterns before running. If a destructive command is detected, you'll be warned and can choose to proceed or cancel.

GSTACK_STATE_ROOT=$(~/.claude/skills/gstack/bin/gstack-paths --get GSTACK_STATE_ROOT); : "${GSTACK_STATE_ROOT:?gstack-paths failed; reinstall with ./setup or /gstack-upgrade}"
mkdir -p "$GSTACK_STATE_ROOT"/analytics
echo '{"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_STATE_ROOT"/analytics/skill-usage.jsonl 2>/dev/null || true

What's protected

PatternExampleRisk
rm -rf / rm -r / rm --recursiverm -rf /var/dataRecursive delete
DROP TABLE / DROP DATABASEDROP TABLE users;Data loss
TRUNCATETRUNCATE orders;Data loss
git push --force / -fgit push -f origin mainHistory rewrite
git reset --hardgit reset --hard HEAD~3Uncommitted work loss
git checkout . / git restore .git checkout .Uncommitted work loss
kubectl deletekubectl delete podProduction impact
docker rm -f / docker system prunedocker system prune -aContainer/image loss

PowerShell and cmd (Windows)

The hook also checks the PowerShell tool (Claude Code's main Windows shell) and any pwsh/powershell/cmd launched from Bash. Matching ignores case, covers aliases in command position, accepts parameter prefixes (-r, -fo) and strips cmd ^ escapes. All rows above apply there too.

PatternExample
Remove-Item/rm/ri/del/erase/rd/rmdir + -Recurse or -Forcegci | ri -r -fo
cmd rd /s, rmdir /s, del /s, erase /scmd /c rd /s /q C:\proj
Format-Volume, Clear-Disk, Clear-Content, [IO.Directory]::Delete, [IO.File]::DeleteClear-Disk -Number 1
-EncodedCommand, iex, Start-Process of a shell, & $cmd (can't be inspected)irm $url | iex

Best-effort on PowerShell. String matching can't see a command built at runtime. For a hard stop, add Claude Code permission deny rules, which parse PowerShell and its aliases: "deny": ["PowerShell(Remove-Item *)"] in .claude/settings.json. The hook runs through bash, so Windows needs Git Bash.

Safe exceptions

These patterns are allowed without warning:

  • rm -rf node_modules / .next / dist / __pycache__ / .cache / build / .turbo / coverage

How it works

The hook reads tool_name and the command from the tool input JSON, checks it against the patterns above, and returns a hookSpecificOutput payload with permissionDecision: "ask" and a warning reason if a match is found (the decision must be nested under hookSpecificOutput — Claude Code ignores a top-level permissionDecision). You can always override a MEDIUM warning and proceed.

HIGH tier (hard deny)

Two catastrophic shapes are denied, not asked: rm -r/-R of exactly /, ~, or $HOME, and force-push to the repo's default branch. SIMPLE commands only (no ;, &&, ||, |, newline) — compound shapes fall through to the MEDIUM ask; --force-with-lease is never HIGH. A best-effort advisory hard-stop, not a policy boundary: the escape hatch is ending the opt-in, session-scoped /careful session.

Project patterns (additive only)

Add warn rules — one POSIX ERE per line, # comments OK — in ~/.gstack/careful-patterns.txt (global) or ~/.gstack/projects/<slug>/careful-patterns.txt (per-project). Consulted after the built-in families, so config can only ADD rules, never suppress a baseline warning. Invalid regex lines are skipped.

To deactivate, end the conversation or start a new one. Hooks are session-scoped.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

autoplan

무료

Run sequential reviews of a plan from business, design, engineering, and developer experience perspectives. Apply six principles to intermediate decisions, then bring close choices, scope questions, and reviewer disagreements to a final approval step.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Reviewing a plan from several perspectives
  • Running reviews without answering every intermediate question
  • Considering close choices and disagreements at final approval
garrytan/gstack13.7만2026년 10월 18일 업데이트

benchmark

무료

Measure web page loading times, rendering milestones, and resource sizes in a real browser. Save baseline measurements, compare results before and after code changes, and inspect historical trends to spot performance regressions.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Saving performance baselines before changes
  • Checking page speed after a code change
  • Finding slow resources and large transfers
garrytan/gstack13.7만2026년 10월 18일 업데이트

Compare Claude, GPT, and Gemini on the same skill or prompt. Get a table of response times, token usage, and costs, with optional AI scoring to help choose a model for the task.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Choosing a model for a specific skill
  • Comparing response times and costs
  • Comparing output quality with optional AI scoring
garrytan/gstack13.7만2026년 10월 18일 업데이트

browse

무료

Open web pages, follow navigation, and check form flows in a browser. Capture screenshots at different screen sizes, compare pages before and after actions, and collect console errors, the technical messages that can reveal page problems.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Checking navigation and form flows
  • Capturing mobile, tablet, and desktop views
  • Recording screenshots and console errors
garrytan/gstack13.7만2026년 10월 18일 업데이트

canary

무료

Monitor a live app after deployment for console errors, slower performance, and page failures. Periodic screenshots and comparisons with pre-deployment baselines help identify anomalies and check whether the release is behaving as expected.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Monitoring a live app after deployment
  • Checking for performance regressions after a release
  • Comparing screenshots before and after deployment
garrytan/gstack13.7만2026년 10월 18일 업데이트

codex

무료

Use OpenAI Codex CLI to review code changes, challenge an implementation by looking for ways it could fail, or discuss technical questions. Three modes provide an independent opinion, with follow-up questions supported in ongoing consultations.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Get an independent review of code changes
  • Challenge code to uncover possible failures
  • Continue a technical consultation with follow-up questions
garrytan/gstack13.7만2026년 10월 18일 업데이트

garrytan의 스킬 모두 보기

이 스킬의 문제 신고