@spardutti/claude-skills 2.43.0 → 2.44.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/hooks/skill-gate.sh +2 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -102,7 +102,7 @@ That last one is the difference. Your agent says the tests pass. This finds out.
|
|
|
102
102
|
| `fastapi` 📦 | FastAPI — async correctness, `Annotated` dependency injection, `lifespan`, response models, testing with dependency overrides; bundle covers Pydantic, Alembic, Celery, and list endpoints (pagination/filtering/search/sorting) |
|
|
103
103
|
| `express` 📦 | Express 5 — automatic async error forwarding, the four-argument error handler, named wildcards, `req.query` as a getter, validation at the boundary, thin routes, the helmet/CORS/rate-limit baseline; bundle covers tRPC v11 and Better Auth on Express |
|
|
104
104
|
| `drf-best-practices` | Django REST Framework — thin serializers, service layer, queryset optimization, object-level permissions |
|
|
105
|
-
| `drizzle-orm` | Drizzle ORM —
|
|
105
|
+
| `drizzle-orm` 📦 | Drizzle ORM — identity columns, timestamptz, indexed foreign keys, working relations, safe writes and transactions; bundle covers migrations and the 1.0 upgrade, row-level security, connections and test databases |
|
|
106
106
|
| `docker-best-practices` 📦 | Multi-stage builds, layer caching, security hardening, Compose Watch, health checks; bundle covers production Compose (restarts, limits, secrets, migrations, backups) |
|
|
107
107
|
|
|
108
108
|
### Database
|
package/hooks/skill-gate.sh
CHANGED
|
@@ -116,6 +116,7 @@ MISSING=""
|
|
|
116
116
|
ACKS=""
|
|
117
117
|
MANIFESTS=""
|
|
118
118
|
if [ -n "$TARGETS" ]; then
|
|
119
|
+
INSTALLED=$(tr -d ' \n' 2>/dev/null < "$PROJECT_DIR/.claude/.claude-skills.json" | grep -o '"skills":\[[^]]*\]')
|
|
119
120
|
MANIFESTS=$(find "$PROJECT_DIR" -maxdepth 4 \( -name node_modules -o -name .git -o -name .venv -o -name dist \) -prune -o \( -name package.json -o -name pyproject.toml -o -name requirements.txt \) -print 2>/dev/null)
|
|
120
121
|
fi
|
|
121
122
|
if [ -n "$TARGETS" ]; then
|
|
@@ -135,6 +136,7 @@ if [ -n "$TARGETS" ]; then
|
|
|
135
136
|
SNAME=$(sed -n 's/^name:[[:space:]]*//p' "$SKILL_FILE" | head -1 | sed "$UNQUOTE")
|
|
136
137
|
[ -z "$SPATHS" ] && continue
|
|
137
138
|
[ -z "$SNAME" ] && continue
|
|
139
|
+
case "$INSTALLED" in *"\"$SNAME\""*) ;; *) continue ;; esac # automark never marks a hand-made skill
|
|
138
140
|
|
|
139
141
|
HIT=""
|
|
140
142
|
for G in $(printf '%s' "$SPATHS" | tr ',' ' '); do
|