skill-awareness
Always active. Tracks usage of code-craft skills across sessions. Log skill applications to enable analytics and identify gaps.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Always active. Tracks usage of code-craft skills across sessions. Log skill applications to enable analytics and identify gaps.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Use when writing tests. Use when test structure is unclear. Use when arrange/act/assert phases are mixed.
Use when designing or modifying APIs. Use when adding breaking changes. Use when clients depend on API stability.
Use when implementing authentication. Use when storing passwords. Use when asked to store credentials insecurely.
Use when same data is fetched repeatedly. Use when database queries are slow. Use when implementing caching without invalidation strategy.
Use when tempted to use class inheritance. Use when creating class hierarchies. Use when subclass needs only some parent behavior.
Use when acquiring multiple locks. Use when operations wait for each other. Use when system hangs without crashing.
| name | skill-awareness |
| description | Always active. Tracks usage of code-craft skills across sessions. Log skill applications to enable analytics and identify gaps. |
Track every skill application to build a practice record.
When you apply any code-craft skill, log it. This creates a persistent record across Claude Code and OpenCode sessions for analytics, identifying underused skills, and measuring improvement.
ALWAYS log when applying a code-craft skill. No silent applications.
Append one JSON line to ~/.claude/skills/skill-usage.jsonl:
{"ts":"2026-01-22T10:30:00Z","skill":"single-responsibility","agent":"opencode","project":"/path/to/project","ctx":"Split UserManager into UserAuth and UserProfile"}
| Field | Value |
|---|---|
ts | ISO 8601 timestamp |
skill | Skill name (kebab-case) |
agent | claude-code or opencode |
project | Working directory path |
ctx | Brief description of application (< 100 chars) |
| If you're doing... | Check these skills |
|---|---|
| Creating/modifying classes | single-responsibility, open-closed, composition-over-inheritance, encapsulation |
| Inheritance hierarchy | liskov-substitution, composition-over-inheritance |
| Adding dependencies | dependency-inversion, interface-segregation |
| Error handling | fail-fast, exception-hierarchies, error-boundaries |
| Writing API endpoints | rest-conventions, error-responses, api-versioning, idempotency, input-validation |
| Database queries | n-plus-one-prevention, caching, lazy-loading |
| Writing tests | tdd, test-isolation, aaa-pattern |
| Handling secrets/auth | secrets-handling, auth-patterns, input-validation |
| Concurrent operations | race-conditions, deadlock-prevention, idempotency |
| Copy-pasting code | dry |
| Adding "future" features | yagni, kiss |
| Complex logic | kiss, separation-of-concerns, law-of-demeter |
| Modifying state | immutability, encapsulation |
After applying a skill:
echo '{"ts":"'"$(date -u +%Y-%m-%dT%H:%M:%SZ)"'","skill":"SKILL_NAME","agent":"AGENT","project":"PROJECT_PATH","ctx":"BRIEF_CONTEXT"}' >> ~/.claude/skills/skill-usage.jsonl
View total usage:
cat ~/.claude/skills/skill-usage.jsonl | jq -s 'group_by(.skill) | map({skill: .[0].skill, count: length}) | sort_by(-.count)'
Recent applications:
tail -20 ~/.claude/skills/skill-usage.jsonl | jq .
Underused skills (applied < 3 times):
cat ~/.claude/skills/skill-usage.jsonl | jq -s 'group_by(.skill) | map({skill: .[0].skill, count: length}) | map(select(.count < 3))'
Never-used skills:
# Compare logged skills against all 31
comm -23 <(ls ~/.claude/skills/ | grep -v '\.' | sort) <(cat ~/.claude/skills/skill-usage.jsonl | jq -r '.skill' | sort -u)
Usage by project:
cat ~/.claude/skills/skill-usage.jsonl | jq -s 'group_by(.project) | map({project: .[0].project, skills: (group_by(.skill) | map({skill: .[0].skill, count: length}))})'
single-responsibility, open-closed, liskov-substitution, interface-segregation, dependency-inversion
dry, yagni, kiss, composition-over-inheritance, law-of-demeter, fail-fast
tdd, test-isolation, aaa-pattern
input-validation, secrets-handling, auth-patterns
rest-conventions, error-responses, idempotency, api-versioning
n-plus-one-prevention, lazy-loading, caching
separation-of-concerns, encapsulation, immutability
exception-hierarchies, error-boundaries
race-conditions, deadlock-prevention
Before finishing any coding task, ask:
Every skill application gets logged. No exceptions.
This builds a record of practice, reveals blind spots, and enables continuous improvement. When in doubt about whether a skill applies—log it and note the uncertainty.