@haus-tech/haus-workflow 0.1.0 → 0.3.0
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/CHANGELOG.md +143 -0
- package/README.md +35 -26
- package/dist/cli.js +319 -111
- package/library/catalog/allowed-stacks.json +4 -1
- package/library/catalog/haus-lock.schema.json +2 -41
- package/library/catalog/manifest.json +836 -198
- package/package.json +5 -4
- package/tests/fixtures/catalog/manifest.json +83 -38
- package/tests/fixtures/catalog/skills/jest-patterns/SKILL.md +9 -0
- package/tests/fixtures/catalog/skills/vitest-patterns/SKILL.md +9 -0
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@haus-tech/haus-workflow",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Haus AI workflow CLI for Claude Code.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
7
|
-
"haus": "
|
|
7
|
+
"haus": "dist/cli.js"
|
|
8
8
|
},
|
|
9
9
|
"repository": {
|
|
10
10
|
"type": "git",
|
|
11
|
-
"url": "https://github.com/WeAreHausTech/haus-workflow.git"
|
|
11
|
+
"url": "git+https://github.com/WeAreHausTech/haus-workflow.git"
|
|
12
12
|
},
|
|
13
13
|
"homepage": "https://github.com/WeAreHausTech/haus-workflow",
|
|
14
14
|
"files": [
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"NOTICE"
|
|
24
24
|
],
|
|
25
25
|
"scripts": {
|
|
26
|
-
"build": "tsup src/cli.ts --format esm --dts --clean --out-dir dist",
|
|
26
|
+
"build": "tsup src/cli.ts --format esm --dts --clean --out-dir dist --external @inquirer/checkbox",
|
|
27
27
|
"dev": "tsx src/cli.ts",
|
|
28
28
|
"test": "node --test tests/**/*.test.js",
|
|
29
29
|
"lint": "eslint src scripts",
|
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
"security:audit": "yarn npm audit -A -R --severity high --environment production"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
+
"@inquirer/checkbox": "5.1.5",
|
|
47
48
|
"commander": "13.1.0",
|
|
48
49
|
"diff": "8.0.4",
|
|
49
50
|
"execa": "9.6.1",
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
"id": "haus.global-engineering-rules",
|
|
7
7
|
"source": "haus",
|
|
8
8
|
"type": "skill",
|
|
9
|
-
"path": "
|
|
9
|
+
"path": "skills/global-engineering-rules",
|
|
10
10
|
"title": "Haus global engineering rules",
|
|
11
11
|
"purpose": "Provide baseline deterministic engineering, validation, and security guardrails.",
|
|
12
12
|
"whenToUse": "Use as default baseline in supported Haus workflows.",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"id": "haus.nextjs-patterns",
|
|
26
26
|
"source": "haus",
|
|
27
27
|
"type": "skill",
|
|
28
|
-
"path": "
|
|
28
|
+
"path": "skills/nextjs-patterns",
|
|
29
29
|
"title": "Haus Next.js patterns",
|
|
30
30
|
"purpose": "Guide Next.js route, server/client boundary, and middleware-safe changes.",
|
|
31
31
|
"whenToUse": "Use for App Router pages, layouts, route handlers, and middleware behavior updates.",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"id": "haus.react19-patterns",
|
|
44
44
|
"source": "haus",
|
|
45
45
|
"type": "skill",
|
|
46
|
-
"path": "
|
|
46
|
+
"path": "skills/react19-patterns",
|
|
47
47
|
"title": "Haus React 19 patterns",
|
|
48
48
|
"purpose": "Guide React component, hook, and state-boundary changes.",
|
|
49
49
|
"whenToUse": "Use for React component behavior, hooks, and UI state flow updates.",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"id": "haus.typescript6-patterns",
|
|
62
62
|
"source": "haus",
|
|
63
63
|
"type": "skill",
|
|
64
|
-
"path": "
|
|
64
|
+
"path": "skills/typescript6-patterns",
|
|
65
65
|
"title": "Haus TypeScript patterns",
|
|
66
66
|
"purpose": "Guide TypeScript contract and migration-safe typing changes.",
|
|
67
67
|
"whenToUse": "Use for shared types, DTOs, interface boundaries, and type-safe refactors.",
|
|
@@ -88,7 +88,7 @@
|
|
|
88
88
|
"id": "haus.vite8-patterns",
|
|
89
89
|
"source": "haus",
|
|
90
90
|
"type": "skill",
|
|
91
|
-
"path": "
|
|
91
|
+
"path": "skills/vite8-patterns",
|
|
92
92
|
"title": "Haus Vite 8 patterns",
|
|
93
93
|
"purpose": "Guide Vite config, plugin wiring, and deterministic build pipeline changes.",
|
|
94
94
|
"whenToUse": "Use for vite config, alias/plugin, and build mode behavior updates.",
|
|
@@ -109,7 +109,7 @@
|
|
|
109
109
|
"id": "haus.vendure-plugin-patterns",
|
|
110
110
|
"source": "haus",
|
|
111
111
|
"type": "skill",
|
|
112
|
-
"path": "
|
|
112
|
+
"path": "skills/vendure-plugin-patterns",
|
|
113
113
|
"title": "Haus Vendure plugin patterns",
|
|
114
114
|
"purpose": "Guide Vendure plugin boundary, schema, and migration-safe development.",
|
|
115
115
|
"whenToUse": "Use for Vendure plugin resolvers, services, entities, and plugin migrations.",
|
|
@@ -131,7 +131,7 @@
|
|
|
131
131
|
"id": "haus.laravel-patterns",
|
|
132
132
|
"source": "haus",
|
|
133
133
|
"type": "skill",
|
|
134
|
-
"path": "
|
|
134
|
+
"path": "skills/laravel-patterns",
|
|
135
135
|
"title": "Haus Laravel patterns",
|
|
136
136
|
"purpose": "Guide Laravel domain, routing, policy, and persistence changes.",
|
|
137
137
|
"whenToUse": "Use for Laravel controllers/services/models/jobs/policies and route changes.",
|
|
@@ -152,7 +152,7 @@
|
|
|
152
152
|
"id": "haus.wordpress-patterns",
|
|
153
153
|
"source": "haus",
|
|
154
154
|
"type": "skill",
|
|
155
|
-
"path": "
|
|
155
|
+
"path": "skills/wordpress-patterns",
|
|
156
156
|
"title": "Haus WordPress patterns",
|
|
157
157
|
"purpose": "Guide WordPress hook/template/plugin/theme runtime changes.",
|
|
158
158
|
"whenToUse": "Use for WordPress hook/filter/template/plugin/theme behavior updates.",
|
|
@@ -173,7 +173,7 @@
|
|
|
173
173
|
"id": "haus.dotnet-patterns",
|
|
174
174
|
"source": "haus",
|
|
175
175
|
"type": "skill",
|
|
176
|
-
"path": "
|
|
176
|
+
"path": "skills/dotnet-patterns",
|
|
177
177
|
"title": "Haus .NET patterns",
|
|
178
178
|
"purpose": "Guide .NET API/service/domain/persistence layer changes.",
|
|
179
179
|
"whenToUse": "Use for .NET service and endpoint behavior changes with domain impact.",
|
|
@@ -191,7 +191,7 @@
|
|
|
191
191
|
"id": "haus.playwright-patterns",
|
|
192
192
|
"source": "haus",
|
|
193
193
|
"type": "skill",
|
|
194
|
-
"path": "
|
|
194
|
+
"path": "skills/playwright-patterns",
|
|
195
195
|
"title": "Haus Playwright workflow",
|
|
196
196
|
"purpose": "Guide deterministic E2E browser test flow changes.",
|
|
197
197
|
"whenToUse": "Use for Playwright specs, fixtures, and browser test stability work.",
|
|
@@ -211,7 +211,7 @@
|
|
|
211
211
|
"id": "haus.code-reviewer-agent",
|
|
212
212
|
"source": "haus",
|
|
213
213
|
"type": "agent",
|
|
214
|
-
"path": "
|
|
214
|
+
"path": "agents/code-reviewer.md",
|
|
215
215
|
"title": "Haus code reviewer agent",
|
|
216
216
|
"tags": ["review", "quality", "security"],
|
|
217
217
|
"repoRoles": [],
|
|
@@ -224,7 +224,7 @@
|
|
|
224
224
|
"id": "haus.test-reviewer-agent",
|
|
225
225
|
"source": "haus",
|
|
226
226
|
"type": "agent",
|
|
227
|
-
"path": "
|
|
227
|
+
"path": "agents/test-reviewer.md",
|
|
228
228
|
"title": "Haus test reviewer agent",
|
|
229
229
|
"tags": ["review", "testing", "quality"],
|
|
230
230
|
"repoRoles": [],
|
|
@@ -236,7 +236,7 @@
|
|
|
236
236
|
"id": "haus.security-reviewer-agent",
|
|
237
237
|
"source": "haus",
|
|
238
238
|
"type": "agent",
|
|
239
|
-
"path": "
|
|
239
|
+
"path": "agents/security-reviewer.md",
|
|
240
240
|
"title": "Haus security reviewer agent",
|
|
241
241
|
"tags": ["review", "security"],
|
|
242
242
|
"repoRoles": [],
|
|
@@ -248,7 +248,7 @@
|
|
|
248
248
|
"id": "haus.docs-researcher-agent",
|
|
249
249
|
"source": "haus",
|
|
250
250
|
"type": "agent",
|
|
251
|
-
"path": "
|
|
251
|
+
"path": "agents/docs-researcher.md",
|
|
252
252
|
"title": "Haus docs researcher agent",
|
|
253
253
|
"tags": ["review", "quality", "workflow"],
|
|
254
254
|
"repoRoles": [],
|
|
@@ -260,7 +260,7 @@
|
|
|
260
260
|
"id": "haus.planner-agent",
|
|
261
261
|
"source": "haus",
|
|
262
262
|
"type": "agent",
|
|
263
|
-
"path": "
|
|
263
|
+
"path": "agents/planner.md",
|
|
264
264
|
"title": "Haus planner agent",
|
|
265
265
|
"tags": ["workflow", "quality", "review"],
|
|
266
266
|
"repoRoles": [],
|
|
@@ -272,7 +272,7 @@
|
|
|
272
272
|
"id": "haus.vendure-app-patterns",
|
|
273
273
|
"source": "haus",
|
|
274
274
|
"type": "skill",
|
|
275
|
-
"path": "
|
|
275
|
+
"path": "skills/vendure-app-patterns",
|
|
276
276
|
"title": "Haus Vendure app patterns",
|
|
277
277
|
"purpose": "Guide Vendure app-level config, worker, bootstrap, and plugin wiring changes.",
|
|
278
278
|
"whenToUse": "Use for Vendure app config, worker, bootstrap, and system wiring updates.",
|
|
@@ -293,7 +293,7 @@
|
|
|
293
293
|
"id": "haus.nestjs-graphql-patterns",
|
|
294
294
|
"source": "haus",
|
|
295
295
|
"type": "skill",
|
|
296
|
-
"path": "
|
|
296
|
+
"path": "skills/nestjs-graphql-patterns",
|
|
297
297
|
"title": "Haus NestJS GraphQL patterns",
|
|
298
298
|
"purpose": "Guide resolver/module/guard/DTO-safe GraphQL implementation in NestJS.",
|
|
299
299
|
"whenToUse": "Use for NestJS GraphQL resolver, module, DTO/input, and guard changes.",
|
|
@@ -315,7 +315,7 @@
|
|
|
315
315
|
"id": "haus.nx21-monorepo-patterns",
|
|
316
316
|
"source": "haus",
|
|
317
317
|
"type": "skill",
|
|
318
|
-
"path": "
|
|
318
|
+
"path": "skills/nx21-monorepo-patterns",
|
|
319
319
|
"title": "Haus Nx 21 monorepo patterns",
|
|
320
320
|
"purpose": "Guide Nx project graph, target pipeline, and workspace boundaries.",
|
|
321
321
|
"whenToUse": "Use for Nx workspace graph, target, and generator configuration updates.",
|
|
@@ -337,7 +337,7 @@
|
|
|
337
337
|
"id": "haus.turbo-monorepo-patterns",
|
|
338
338
|
"source": "haus",
|
|
339
339
|
"type": "skill",
|
|
340
|
-
"path": "
|
|
340
|
+
"path": "skills/turbo-monorepo-patterns",
|
|
341
341
|
"title": "Haus Turbo monorepo patterns",
|
|
342
342
|
"purpose": "Guide Turbo pipeline and cache-safe monorepo orchestration changes.",
|
|
343
343
|
"whenToUse": "Use for turbo pipeline graph and package task orchestration updates.",
|
|
@@ -358,7 +358,7 @@
|
|
|
358
358
|
"id": "haus.tanstack-query-router-patterns",
|
|
359
359
|
"source": "haus",
|
|
360
360
|
"type": "skill",
|
|
361
|
-
"path": "
|
|
361
|
+
"path": "skills/tanstack-query-router-patterns",
|
|
362
362
|
"title": "Haus TanStack query/router patterns",
|
|
363
363
|
"purpose": "Guide query key, invalidation, and route loader/data-flow changes.",
|
|
364
364
|
"whenToUse": "Use for TanStack query cache behavior and TanStack router flow updates.",
|
|
@@ -381,7 +381,7 @@
|
|
|
381
381
|
"id": "haus.radix-shadcn-patterns",
|
|
382
382
|
"source": "haus",
|
|
383
383
|
"type": "skill",
|
|
384
|
-
"path": "
|
|
384
|
+
"path": "skills/radix-shadcn-patterns",
|
|
385
385
|
"title": "Haus Radix shadcn patterns",
|
|
386
386
|
"purpose": "Guide accessible UI primitive and wrapper behavior changes.",
|
|
387
387
|
"whenToUse": "Use for Radix primitive usage and shadcn wrapper updates.",
|
|
@@ -405,7 +405,7 @@
|
|
|
405
405
|
"id": "haus.tailwind-scss-patterns",
|
|
406
406
|
"source": "haus",
|
|
407
407
|
"type": "skill",
|
|
408
|
-
"path": "
|
|
408
|
+
"path": "skills/tailwind-scss-patterns",
|
|
409
409
|
"title": "Haus Tailwind SCSS patterns",
|
|
410
410
|
"purpose": "Guide style-system-safe Tailwind and SCSS module changes.",
|
|
411
411
|
"whenToUse": "Use for Tailwind token/utility and SCSS module behavior updates.",
|
|
@@ -427,7 +427,7 @@
|
|
|
427
427
|
"id": "haus.vue-patterns",
|
|
428
428
|
"source": "haus",
|
|
429
429
|
"type": "skill",
|
|
430
|
-
"path": "
|
|
430
|
+
"path": "skills/vue-patterns",
|
|
431
431
|
"title": "Haus Vue patterns",
|
|
432
432
|
"purpose": "Guide Vue component/composable/state behavior changes.",
|
|
433
433
|
"whenToUse": "Use for Vue component, composable, route, and state-boundary updates.",
|
|
@@ -448,7 +448,7 @@
|
|
|
448
448
|
"id": "haus.laravel-nova-patterns",
|
|
449
449
|
"source": "haus",
|
|
450
450
|
"type": "skill",
|
|
451
|
-
"path": "
|
|
451
|
+
"path": "skills/laravel-nova-patterns",
|
|
452
452
|
"title": "Haus Laravel Nova patterns",
|
|
453
453
|
"purpose": "Guide Nova admin resources, actions, and policy-safe field behavior.",
|
|
454
454
|
"whenToUse": "Use for Laravel Nova resources, actions, filters, and admin UI behavior.",
|
|
@@ -468,7 +468,7 @@
|
|
|
468
468
|
"id": "haus.wordpress-bedrock-patterns",
|
|
469
469
|
"source": "haus",
|
|
470
470
|
"type": "skill",
|
|
471
|
-
"path": "
|
|
471
|
+
"path": "skills/wordpress-bedrock-patterns",
|
|
472
472
|
"title": "Haus WordPress Bedrock patterns",
|
|
473
473
|
"purpose": "Guide Bedrock config/bootstrap and environment-aware WP deployment layout.",
|
|
474
474
|
"whenToUse": "Use for Bedrock config, env loading, and boot path behavior updates.",
|
|
@@ -489,7 +489,7 @@
|
|
|
489
489
|
"id": "haus.wordpress-acf-elementor-jetengine-patterns",
|
|
490
490
|
"source": "haus",
|
|
491
491
|
"type": "skill",
|
|
492
|
-
"path": "
|
|
492
|
+
"path": "skills/wordpress-acf-elementor-jetengine-patterns",
|
|
493
493
|
"title": "Haus WordPress ACF Elementor JetEngine patterns",
|
|
494
494
|
"purpose": "Guide builder-field/meta-template wiring for ACF, Elementor Pro, and JetEngine.",
|
|
495
495
|
"whenToUse": "Use for ACF field groups and Elementor/JetEngine-driven dynamic template behavior.",
|
|
@@ -501,7 +501,10 @@
|
|
|
501
501
|
"requiresAny": [
|
|
502
502
|
{ "role": "wordpress-bedrock-site" },
|
|
503
503
|
{ "role": "wordpress-vanilla-site" },
|
|
504
|
-
{ "stack": "wordpress" }
|
|
504
|
+
{ "stack": "wordpress" },
|
|
505
|
+
{ "stack": "elementor" },
|
|
506
|
+
{ "stack": "acf-pro" },
|
|
507
|
+
{ "stack": "jetengine" }
|
|
505
508
|
],
|
|
506
509
|
"ecosystem": "wordpress",
|
|
507
510
|
"tokenEstimate": 2600,
|
|
@@ -511,7 +514,7 @@
|
|
|
511
514
|
"id": "haus.dotnet-service-patterns",
|
|
512
515
|
"source": "haus",
|
|
513
516
|
"type": "skill",
|
|
514
|
-
"path": "
|
|
517
|
+
"path": "skills/dotnet-service-patterns",
|
|
515
518
|
"title": "Haus dotnet service patterns",
|
|
516
519
|
"purpose": "Guide .NET service-layer contract and orchestration changes.",
|
|
517
520
|
"whenToUse": "Use for .NET service boundary, orchestration, and handler behavior updates.",
|
|
@@ -529,7 +532,7 @@
|
|
|
529
532
|
"id": "haus.auth-oidc-azure-bankid-patterns",
|
|
530
533
|
"source": "haus",
|
|
531
534
|
"type": "skill",
|
|
532
|
-
"path": "
|
|
535
|
+
"path": "skills/auth-oidc-azure-bankid-patterns",
|
|
533
536
|
"title": "Haus auth patterns",
|
|
534
537
|
"purpose": "Guide identity-provider auth flow and claim/session lifecycle changes.",
|
|
535
538
|
"whenToUse": "Use for OIDC/Azure AD/BankID login, callback, token, and claim mapping updates.",
|
|
@@ -550,20 +553,21 @@
|
|
|
550
553
|
"id": "haus.database-patterns",
|
|
551
554
|
"source": "haus",
|
|
552
555
|
"type": "skill",
|
|
553
|
-
"path": "
|
|
556
|
+
"path": "skills/database-patterns",
|
|
554
557
|
"title": "Haus database patterns",
|
|
555
558
|
"purpose": "Guide schema/query/index/search changes across supported data engines.",
|
|
556
559
|
"whenToUse": "Use for migrations, query behavior, indexing, and Elasticsearch mapping updates.",
|
|
557
560
|
"whenNotToUse": "Do not use for UI-only changes without persistence/search impact.",
|
|
558
561
|
"references": ["references/scope.md", "references/workflow.md"],
|
|
559
562
|
"tokenBudget": 1200,
|
|
560
|
-
"tags": ["postgresql", "mariadb", "mssql", "elasticsearch"],
|
|
563
|
+
"tags": ["postgresql", "mariadb", "mssql", "elasticsearch", "redis"],
|
|
561
564
|
"repoRoles": [],
|
|
562
565
|
"requiresAny": [
|
|
563
566
|
{ "stack": "postgresql" },
|
|
564
567
|
{ "stack": "mariadb" },
|
|
565
568
|
{ "stack": "mssql" },
|
|
566
|
-
{ "stack": "elasticsearch" }
|
|
569
|
+
{ "stack": "elasticsearch" },
|
|
570
|
+
{ "stack": "redis" }
|
|
567
571
|
],
|
|
568
572
|
"tokenEstimate": 1700,
|
|
569
573
|
"installMode": "copy-selected"
|
|
@@ -572,7 +576,7 @@
|
|
|
572
576
|
"id": "haus.package-manager-yarn4-pnpm89",
|
|
573
577
|
"source": "haus",
|
|
574
578
|
"type": "skill",
|
|
575
|
-
"path": "
|
|
579
|
+
"path": "skills/package-manager-yarn4-pnpm89",
|
|
576
580
|
"title": "Haus package manager patterns",
|
|
577
581
|
"purpose": "Guide deterministic dependency/workspace changes for Yarn4 and pnpm89.",
|
|
578
582
|
"whenToUse": "Use for lockfile, workspace, and package manager configuration changes.",
|
|
@@ -592,7 +596,7 @@
|
|
|
592
596
|
"id": "haus.testing-library-patterns",
|
|
593
597
|
"source": "haus",
|
|
594
598
|
"type": "skill",
|
|
595
|
-
"path": "
|
|
599
|
+
"path": "skills/testing-library-patterns",
|
|
596
600
|
"title": "Haus testing library patterns",
|
|
597
601
|
"purpose": "Guide user-visible behavior testing with Testing Library.",
|
|
598
602
|
"whenToUse": "Use for component interaction tests with @testing-library tooling.",
|
|
@@ -610,11 +614,52 @@
|
|
|
610
614
|
"tokenEstimate": 1500,
|
|
611
615
|
"installMode": "copy-selected"
|
|
612
616
|
},
|
|
617
|
+
{
|
|
618
|
+
"id": "haus.vitest-patterns",
|
|
619
|
+
"source": "haus",
|
|
620
|
+
"type": "skill",
|
|
621
|
+
"path": "skills/vitest-patterns",
|
|
622
|
+
"title": "Haus Vitest patterns",
|
|
623
|
+
"purpose": "Guide Vitest unit/integration test structure, mocking, and coverage config.",
|
|
624
|
+
"whenToUse": "Use when writing or modifying Vitest tests in TypeScript/JS frontends and Node services.",
|
|
625
|
+
"whenNotToUse": "Do not use for Jest, Playwright, or PHPUnit test tasks.",
|
|
626
|
+
"references": ["references/scope.md", "references/workflow.md", "https://vitest.dev/guide/"],
|
|
627
|
+
"tokenBudget": 1200,
|
|
628
|
+
"tags": ["testing", "vitest", "typescript"],
|
|
629
|
+
"repoRoles": ["next-app", "react-app", "vue-app", "vite-app", "vendure-app", "vendure-plugin"],
|
|
630
|
+
"requiresAny": [
|
|
631
|
+
{ "stack": "vitest" },
|
|
632
|
+
{ "dependency": "vitest" }
|
|
633
|
+
],
|
|
634
|
+
"tokenEstimate": 1500,
|
|
635
|
+
"installMode": "copy-selected"
|
|
636
|
+
},
|
|
637
|
+
{
|
|
638
|
+
"id": "haus.jest-patterns",
|
|
639
|
+
"source": "haus",
|
|
640
|
+
"type": "skill",
|
|
641
|
+
"path": "skills/jest-patterns",
|
|
642
|
+
"title": "Haus Jest patterns",
|
|
643
|
+
"purpose": "Guide Jest unit/integration test structure, mocking, and Nx-style setup.",
|
|
644
|
+
"whenToUse": "Use when writing or modifying Jest tests, including Nx workspace projects.",
|
|
645
|
+
"whenNotToUse": "Do not use for Vitest, Playwright, or PHPUnit test tasks.",
|
|
646
|
+
"references": ["references/scope.md", "references/workflow.md", "https://jestjs.io/docs/getting-started"],
|
|
647
|
+
"tokenBudget": 1200,
|
|
648
|
+
"tags": ["testing", "jest", "typescript"],
|
|
649
|
+
"repoRoles": ["next-app", "react-app", "nx-monorepo"],
|
|
650
|
+
"requiresAny": [
|
|
651
|
+
{ "stack": "jest" },
|
|
652
|
+
{ "dependency": "jest" },
|
|
653
|
+
{ "dependency": "jest-environment-jsdom" }
|
|
654
|
+
],
|
|
655
|
+
"tokenEstimate": 1500,
|
|
656
|
+
"installMode": "copy-selected"
|
|
657
|
+
},
|
|
613
658
|
{
|
|
614
659
|
"id": "haus.phpunit-patterns",
|
|
615
660
|
"source": "haus",
|
|
616
661
|
"type": "skill",
|
|
617
|
-
"path": "
|
|
662
|
+
"path": "skills/phpunit-patterns",
|
|
618
663
|
"title": "Haus PHPUnit patterns",
|
|
619
664
|
"purpose": "Guide PHPUnit feature/unit test changes for PHP/Laravel behavior.",
|
|
620
665
|
"whenToUse": "Use for PHPUnit tests tied to backend behavior updates.",
|
|
@@ -635,7 +680,7 @@
|
|
|
635
680
|
"id": "haus.storybook-patterns",
|
|
636
681
|
"source": "haus",
|
|
637
682
|
"type": "skill",
|
|
638
|
-
"path": "
|
|
683
|
+
"path": "skills/storybook-patterns",
|
|
639
684
|
"title": "Haus Storybook patterns",
|
|
640
685
|
"purpose": "Guide story coverage and component API documentation updates.",
|
|
641
686
|
"whenToUse": "Use for component stories, args/controls, and Storybook config changes.",
|
|
@@ -658,7 +703,7 @@
|
|
|
658
703
|
"id": "haus.security-review",
|
|
659
704
|
"source": "haus",
|
|
660
705
|
"type": "skill",
|
|
661
|
-
"path": "
|
|
706
|
+
"path": "skills/security-review",
|
|
662
707
|
"title": "Haus security review",
|
|
663
708
|
"purpose": "Route bounded security review with structured findings and explicit verification.",
|
|
664
709
|
"whenToUse": "Use when the user requests security review, threat check, or hardening on a named scope.",
|
|
@@ -679,7 +724,7 @@
|
|
|
679
724
|
"id": "haus.production-readiness-review",
|
|
680
725
|
"source": "haus",
|
|
681
726
|
"type": "skill",
|
|
682
|
-
"path": "
|
|
727
|
+
"path": "skills/production-readiness-review",
|
|
683
728
|
"title": "Haus production readiness review",
|
|
684
729
|
"purpose": "Route release readiness checks with evidence-based gaps and rollback notes.",
|
|
685
730
|
"whenToUse": "Use when the user asks for ship checklist, release risk review, or go-live readiness on a defined change set.",
|