AI Skills
代码生成不是交给一个 CLI,而是交给 AI 加一组 skill。skill 是该能力的接入规范: 配置怎么配、代码写在哪、测试怎么写、哪些坑不要踩。
为什么是 skill 而不是生成器
生成器二进制是"会过时的约定":它与库版本耦合,用户必须对齐版本才敢跑。
skill 是"给 AI 的约定":模板随仓库一起演进,改了 httpx 的中间件签名,
skill 在同一批提交里就改了。用户不需要额外装东西。
AGENTS.md 是总入口
仓库根目录的
AGENTS.md 写清了核心原则、布局与命令;skill 是它之下
针对单个能力的展开。AI 读这两个就能生成符合规范的代码。
安装
npx skills add smallnest/matex --all # 一次装齐 15 个
插件清单位于 .claude-plugin/plugin.json(插件名 matex-skills),
所以也可以只装某几个。
全部 skill
| Skill | 用途 | 怎么说 |
|---|---|---|
matex-add-domain |
新增业务域:handler / service / dao + 路由注册 + 装配 + 测试 | "新增一个订单业务域" |
matex-setup-database |
接 PostgreSQL / MySQL / SQLite:配置、迁移、DAO、Querier 进出事务、dbtest |
"接 postgres,写个表" |
matex-setup-redis |
接 Redis:缓存读写、分布式锁 | "加 redis 做缓存" |
matex-setup-nacos |
接 Nacos 配置中心:框架段/服务段两个 data_id、namespace/group/鉴权、服务段热更 | "接 nacos 配置中心,服务段热更" |
matex-setup-memcache |
接 Memcached:JSON 读写、TTL | "接 memcached" |
matex-setup-kafka |
接 Kafka:生产者、消费者、死信队列 | "接 kafka 消费订单事件" |
matex-setup-grpc |
接 gRPC:proto 生成、服务注册、client 拨号、健康检查与 reflection | "接 gRPC,暴露 OrderService" |
matex-setup-rpcx |
接 rpcx:无 IDL 的服务注册与调用 | "用 rpcx 暴露 Greeter" |
matex-setup-auth |
认证授权:HMAC/JWKS 验签、按路由分级、Principal 进 ctx |
"加认证,admin 才能删" |
matex-setup-tracing |
链路追踪:trace: 段、OTLP 导出、跨进程传播 |
"接链路追踪,导出到 collector" |
matex-setup-resilience |
限流 / 幂等 / 熔断 / 退避重试 | "给支付接口加幂等和限流" |
matex-setup-cache |
缓存模式:防击穿、防雪崩、写后失效 | "这个查询加缓存" |
matex-setup-cron |
定时任务:固定周期 / cron 表达式 / 一次性,多副本选主 | "每天 2 点跑对账" |
matex-setup-feature |
功能开关:声明、读取、运行时切换 | "新结算流程用开关控制" |
matex-setup-audit |
审计日志:谁对什么做了什么、结果如何 | "退款操作要记审计" |
一个 skill 里有什么
以 matex-setup-resilience 为例,它给出的是可执行的顺序,而不是 API 罗列:
flowchart TD
A["读 AGENTS.md 了解约定"] --> B["确认能力的开关与配置段"]
B --> C["在 Setup 里从 env 取句柄"]
C --> D["在 BuildRouter 里挂中间件 or 包住下游调用"]
D --> E["写测试:用进程内替身,离线可跑"]
E --> F["跑 make ci"]
classDef step fill:#f5f2ee,stroke:#8a8378,color:#2b2722
class A,B,C,D,E,F step
make ci 通过。规范不靠人记,
靠这一步兜底。