Trace scan (§4.1/§4.2): before a commit, scans the staged changes and the message for AI traces (co-author trailers, footers, robot emoji, tool names) and vendor template names. The git hooks apply it automatically.
Scanned 9/5/2026
Install to Claude Code
npx -y skills add byerlikaya/claude-starter-kit --skill trace-scan --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Trace Scan?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/byerlikaya-trace-scan-claude-starter-kit)More formats (shields.io, HTML) on the badges page.
---
name: trace-scan
description: |
Trace scan (§4.1/§4.2): before a commit, scans the staged changes and the message for AI traces (co-author
trailers, footers, robot emoji, tool names) and vendor template names. The git hooks apply it automatically.
---
# Trace Scan (trace-scan)
<!-- routing-eval reads this line; it lives in the BODY so the always-on skill LISTING stays inside
Claude Code's budget (1% of the context window) — an overflowing listing gets descriptions
truncated or dropped, which strips the very keywords a match depends on. -->
Trigger phrases: "scan traces", "trace scan", "AI trace", "check vendor name", "pre-commit audit"
Purpose: to bind §4.1/§4.2 to a *gate* rather than to *memory*. If the rule lives only in text,
a trace leaks sooner or later; this skill + the hooks stop the leak at commit time.
## When
- Before every commit (automatic: `pre-commit` + `commit-msg` hooks).
- Before commit-agent-csk proposes a message (manual verification).
## How
Pattern list: `./.claude/hooks/trace-blocklist.txt` (grep -iE, one pattern per line).
- **Defaults are high-hit:** co-author trailers, auto-generation footers, robot emoji, and AI-assistant/tool
brand names. Standalone words that occur too often (model/assistant) are DELIBERATELY excluded. See trace-blocklist.txt for the exact list.
- **Vendor name is project-specific:** ADD the name of the third-party template in use to the list (§4.2).
Manual scan (a quick look without the hook):
```bash
git diff --cached --unified=0 | grep -E '^\+' | grep -Ev '^\+\+\+' \
| grep -iEf .claude/hooks/trace-blocklist.txt
```
## Hook setup
`start.sh` sets `git config core.hooksPath .claude/hooks` (if there is a git repo). The hooks live
under `.claude` → they are in gitignore and stay local (§4.3). To do it later for a repo:
```bash
git config core.hooksPath .claude/hooks
chmod +x .claude/hooks/pre-commit .claude/hooks/commit-msg
```
## Rules
- If there is a finding, the commit STOPS; the phrase is removed and the real rationale is written in human Turkish.
- Skipping with `--no-verify` only on an EXPLICIT request (§4.5); the hook is not skipped silently.
- On a false positive, narrow/remove the pattern — the list is set up by the project owner.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!