@spardutti/claude-skills 1.8.0 → 1.8.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 CHANGED
@@ -33,13 +33,16 @@ Together, these force Claude to explicitly evaluate and activate relevant skills
33
33
  | `react-query` | TanStack React Query with query-key-factory patterns |
34
34
  | `tanstack-router-best-practices` | TanStack Router — file-based routing, type-safe navigation, loaders, search params, auth guards |
35
35
  | `typescript-best-practices` | TypeScript 5.x — type design, type safety, generics, error handling, tsconfig |
36
- | `single-responsibility` | Single responsibility, file size limits, complexity rules |
36
+ | `react-single-responsibility` | React single responsibility — component splitting, hook isolation, file size limits, complexity rules |
37
37
  | `tailwind-tokens` | Enforce Tailwind CSS design tokens — no arbitrary values when a token exists |
38
38
  | `drf-best-practices` | Django REST Framework — thin serializers, service layer, queryset optimization, object-level permissions |
39
39
  | `fastapi-best-practices` | FastAPI — async correctness, Pydantic validation, dependency injection, service layer, structured error handling |
40
40
  | `security-practices` | Web security — OWASP Top 10 prevention, input validation, auth, SQL injection, XSS, CSRF, secure defaults |
41
41
  | `alembic-migrations` | Alembic — naming conventions, autogenerate review, data migration safety, downgrades, production deployment |
42
42
  | `testing-best-practices` | Testing — Arrange-Act-Assert, factory-based test data, test isolation, mocking boundaries, pyramid-balanced coverage |
43
+ | `docker-best-practices` | Docker — multi-stage builds, layer caching, security hardening, Compose Watch for local dev, health checks |
44
+ | `trpc-react-query` | tRPC v11 — queryOptions/mutationOptions patterns, router organization, middleware, cache invalidation, optimistic updates |
45
+ | `express-best-practices` | Express.js — feature-based structure, 3-layer architecture, Zod validation, centralized error handling, security middleware |
43
46
 
44
47
  ## GitHub Authentication
45
48
 
@@ -42,8 +42,6 @@ exit 0
42
42
 
43
43
  const HOOK_FILENAME = "skill-forced-eval-hook.sh";
44
44
 
45
- const PRETOOL_PROMPT = `REMINDER: This project has skills installed in .claude/skills/. Before writing code you MUST evaluate and activate relevant skills using the Skill() tool. If you have not done this yet in the current conversation, STOP and do it now before proceeding with this edit. Always return 'approve'.`;
46
-
47
45
  export async function setupHook(targetDir = process.cwd()) {
48
46
  const resolved = resolve(targetDir);
49
47
  const hooksDir = join(resolved, ".claude", "hooks");
@@ -84,34 +82,10 @@ export async function setupHook(targetDir = process.cwd()) {
84
82
  settings.hooks.UserPromptSubmit = [promptHookEntry];
85
83
  }
86
84
 
87
- // --- PreToolUse hook (LLM prompt reminder to evaluate skills before writing code) ---
88
- const pretoolHookEntry = {
89
- matcher: "Edit|Write|NotebookEdit",
90
- hooks: [
91
- {
92
- type: "prompt",
93
- prompt: PRETOOL_PROMPT,
94
- timeout: 15,
95
- },
96
- ],
97
- };
98
-
99
- if (Array.isArray(settings.hooks.PreToolUse)) {
100
- const alreadyInstalled = settings.hooks.PreToolUse.some((entry) =>
101
- entry.hooks?.some((h) => h.type === "prompt" && h.prompt?.includes("REMINDER"))
102
- );
103
- if (!alreadyInstalled) {
104
- settings.hooks.PreToolUse.push(pretoolHookEntry);
105
- }
106
- } else {
107
- settings.hooks.PreToolUse = [pretoolHookEntry];
108
- }
109
-
110
85
  await writeFile(settingsPath, JSON.stringify(settings, null, 2) + "\n", {
111
86
  mode: 0o644,
112
87
  });
113
88
 
114
89
  console.log(` Hook installed: .claude/hooks/${HOOK_FILENAME}`);
115
- console.log(` Hook installed: PreToolUse prompt hook (Edit|Write|NotebookEdit)`);
116
90
  console.log(` Settings updated: .claude/settings.json`);
117
91
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spardutti/claude-skills",
3
- "version": "1.8.0",
3
+ "version": "1.8.1",
4
4
  "description": "CLI to install Claude Code skills from the claude-skills collection",
5
5
  "type": "module",
6
6
  "bin": {