mcpField
S
skill-awareness

skill-awareness

github.com/yanko-belovAgent 工作流1335 次安装40 周前更新
代码仓库

关于 skill-awareness

skill-awareness 是用于记录代码实践类 skill 使用情况的 Agent 技能,可跨 Claude Code 和 OpenCode 会话保存记录。它结合技能识别矩阵、JSONL 日志和用量分析命令。

主要功能

  1. 01技能使用识别矩阵
  2. 02持久化 JSONL 使用日志
  3. 03通过 jq 分析用量
  4. 04完成前日志检查清单

适用场景

  1. 01记录编码时应用的技能
  2. 02查看使用不足或未使用的技能
  3. 03比较不同项目的技能使用情况

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/yanko-belov/code-craft --skill skill-awareness

安装后在 Claude Code 中输入/skill-awareness确认已加载。

详细介绍

技能意识

概述

记录每次技能应用,建立实践记录。

应用任何代码工艺技能时,都要记录下来。这会在 Claude Code 和 OpenCode 会话之间创建一份持久记录,用于分析、识别使用不足的技能并衡量进步。

铁律

ALWAYS log when applying a code-craft skill. No silent applications.

使用日志

在 ~/.claude/skills/skill-usage.jsonl 中追加一行 JSON:

{"ts":"2026-01-22T10:30:00Z","skill":"single-responsibility","agent":"opencode","project":"/path/to/project","ctx":"Split UserManager into UserAuth and UserProfile"}
字段值
tsISO 8601 时间戳
skill技能名称(kebab-case)
agentclaude-code 或 opencode
project工作目录路径
ctx应用情况简述(少于 100 个字符)

技能检测矩阵

如果你正在……检查这些技能
创建或修改类single-responsibility、open-closed、composition-over-inheritance、encapsulation
构建继承层次结构liskov-substitution、composition-over-inheritance
添加依赖项dependency-inversion、interface-segregation
处理错误fail-fast、exception-hierarchies、error-boundaries
编写 API 端点rest-conventions、error-responses、api-versioning、idempotency、input-validation
编写数据库查询n-plus-one-prevention、caching、lazy-loading
编写测试tdd、test-isolation、aaa-pattern
处理机密信息或身份验证secrets-handling、auth-patterns、input-validation
执行并发操作race-conditions、deadlock-prevention、idempotency
复制粘贴代码dry
添加“未来”功能yagni、kiss
处理复杂逻辑kiss、separation-of-concerns、law-of-demeter
修改状态immutability、encapsulation

记录协议

应用技能后:

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

分析命令

查看总使用次数:

cat ~/.claude/skills/skill-usage.jsonl | jq -s 'group_by(.skill) | map({skill: .[0].skill, count: length}) | sort_by(-.count)'

最近的应用记录:

tail -20 ~/.claude/skills/skill-usage.jsonl | jq .

使用不足的技能(应用次数少于 3 次):

cat ~/.claude/skills/skill-usage.jsonl | jq -s 'group_by(.skill) | map({skill: .[0].skill, count: length}) | map(select(.count < 3))'

从未使用过的技能:

# 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)

按项目查看使用情况:

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}))})'

可用技能参考

SOLID(5)

single-responsibility、open-closed、liskov-substitution、interface-segregation、dependency-inversion

核心(6)

dry、yagni、kiss、composition-over-inheritance、law-of-demeter、fail-fast

测试(3)

tdd、test-isolation、aaa-pattern

安全(3)

input-validation、secrets-handling、auth-patterns

API 设计(4)

rest-conventions、error-responses、idempotency、api-versioning

性能(3)

n-plus-one-prevention、lazy-loading、caching

代码质量(3)

separation-of-concerns、encapsulation、immutability

错误处理(2)

exception-hierarchies、error-boundaries

并发(2)

race-conditions、deadlock-prevention

完成前检查清单

完成任何编码任务前,请自问:

  1. 检测矩阵中哪些技能适用?
  2. 我遵循这些技能了吗?
  3. 我记录每项应用了吗?
  4. 有什么违规之处需要提醒用户吗?

要点

每次技能应用都要记录。无一例外。

这会建立实践记录、揭示盲点,并助力持续改进。如果不确定某项技能是否适用,就记录下来并注明不确定性。

评论

支持 Markdown