一键导入
allow
Add a tool pattern to the global Claude Code permissions allow list in bin/sync-claude-settings
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Add a tool pattern to the global Claude Code permissions allow list in bin/sync-claude-settings
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Use when checking Buildkite CI/CD builds, investigating failures, viewing job logs, or answering questions about pipeline status.
Write a handoff brief summarizing the current conversation so a fresh agent can pick up the work. Writes to a file if given, otherwise copies to the clipboard.
Use when bootstrapping hk pre-commit hooks for a project.
Use when adding, updating, troubleshooting, or managing mise tool dependencies. Supplements /install with mise-specific context about backends, lockfiles, and the github-first policy.
Use when labeling GitHub issues or triaging the backlog. Applies the project's label taxonomy from docs/labels.md.
Morning update routine: merge Renovate PRs, rebase local work, apply chezmoi changes
| name | allow |
| description | Add a tool pattern to the global Claude Code permissions allow list in bin/sync-claude-settings |
| argument-hint | [tool pattern, e.g. 'git check-ignore', 'limactl', '/think', 'docs.rs'] |
| allowed-tools | ["Read(bin/sync-claude-settings)","Edit(bin/sync-claude-settings)","Bash(bin/sync-claude-settings)","Bash(git add:*)","Bash(git commit:*)","Bash(git diff:*)","Bash(git status:*)","Grep"] |
Add tool patterns to the global Claude Code permissions managed by bin/sync-claude-settings.
/allow git check-ignore
/allow limactl
/allow /think
/allow docs.rs
Infer the full permission string from the argument:
| Input | Resulting pattern | Why |
|---|---|---|
git check-ignore | Bash(git check-ignore:*) | bare words → Bash |
limactl | Bash(limactl:*) | bare word → Bash |
/think | Skill(think:*) | leading slash → Skill |
/commit | Skill(commit:*) | leading slash → Skill |
docs.rs | WebFetch(domain:docs.rs) | looks like a domain → WebFetch |
raw.githubusercontent.com | WebFetch(domain:raw.githubusercontent.com) | domain → WebFetch |
Bash(make:*) | Bash(make:*) | already formatted |
Skill(think:*) | Skill(think:*) | already formatted |
WebFetch(domain:docs.rs) | WebFetch(domain:docs.rs) | already formatted |
Heuristics:
/ → Skill(<name>:*). and looks like a domain (no spaces) → WebFetch(domain:<input>)Bash(...), Skill(...), WebFetch(...), Read(...) → pass throughBash(<input>:*)A command belongs on the allow list based on its side-effect profile:
Allow (no confirmation needed):
ps, stat, file, which, uname, dig)sort, uniq, cut, jq, base64, shasum)mkdir, touch, mktemp, rmdir empty dirs only)Reject (warn, require explicit confirmation): A command does NOT belong if it can:
tee, cp, mv, output redirectionxargs, sh, bash, eval, python, ruby, perl, nodecurl, wget, ssh, scp, rsync, git pushrm, kill, killallsudo, doaschmod, chowngpg, security, keychain, op, env, printenv, historyaws, gcloud, azgit config (can write ~/.gitconfig via --global)Warn and suggest narrowing for overly broad patterns:
Bash(*) — universal wildcardBash(git:*), Bash(npm:*), Bash(gh:*)WebFetch(domain:*) — wildcard domainRead(...) / Edit(...) with broad paths — can expose or modify sensitive filesFor reject and narrowing cases: explain which property is violated, suggest a safer alternative if possible, and ask the user to confirm. If they confirm, proceed.
Grep bin/sync-claude-settings for the exact resolved pattern. If it already exists, tell the user and stop.
Edit bin/sync-claude-settings, inserting the new pattern into the set_permissions() function's allow array in alphabetical order among its peers.
Run git diff bin/sync-claude-settings and verify:
bin/sync-claude-settings
Then use /commit to commit bin/sync-claude-settings.
/allow git check-ignore → adds "Bash(git check-ignore:*)", applies, commits
/allow limactl → adds "Bash(limactl:*)", applies, commits
/allow /think → adds "Skill(think:*)", applies, commits
/allow docs.rs → adds "WebFetch(domain:docs.rs)", applies, commits
/allow git push → REJECTS: publishes to remote. Proceeds only if user confirms.
/allow printenv → REJECTS: can leak secrets from environment. Proceeds only if user confirms.
/allow npm → NARROWS: too broad, suggests npm run, npm test, etc. Proceeds only if user confirms.