@qazuor/claude-code-config 0.4.0 → 0.5.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/README.md CHANGED
@@ -16,6 +16,7 @@ A comprehensive CLI tool to install and manage Claude Code configurations in you
16
16
  - [Commands](#commands)
17
17
  - [init](#init-path)
18
18
  - [configure](#configure)
19
+ - [standards](#standards)
19
20
  - [list](#list-type)
20
21
  - [add](#add-module)
21
22
  - [remove](#remove-module)
@@ -26,8 +27,11 @@ A comprehensive CLI tool to install and manage Claude Code configurations in you
26
27
  - [Agents](#agents-23-available)
27
28
  - [Skills](#skills-25-available)
28
29
  - [Commands](#commands-23-available)
29
- - [Documentation](#documentation-18-available)
30
+ - [Documentation](#documentation-21-available)
30
31
  - [Template Configuration](#template-configuration)
32
+ - [Standards Configuration](#standards-configuration)
33
+ - [Pre-commit Hooks](#pre-commit-hooks)
34
+ - [Response Style](#response-style)
31
35
  - [MCP Servers](#mcp-servers)
32
36
  - [Permissions](#permissions)
33
37
  - [Code Style](#code-style)
@@ -51,6 +55,9 @@ A comprehensive CLI tool to install and manage Claude Code configurations in you
51
55
  - **23 Bundles**: Pre-grouped module sets organized by category (stacks, testing, quality, etc.)
52
56
  - **Bundle Categories**: Stack bundles (React+TanStack, Astro, Next.js), API bundles (Hono, Express), testing, quality, and more
53
57
  - **Template Configuration**: Interactive setup for `{{PLACEHOLDER}}` values with smart defaults
58
+ - **Standards Wizard**: Configure code, testing, documentation, design, security, and performance standards
59
+ - **Pre-commit Hooks**: Configurable git hooks with lint, typecheck, tests, and custom commands
60
+ - **Response Style**: Configure Claude's tone, verbosity, and communication preferences
54
61
  - **MCP Server Integration**: Configure Model Context Protocol servers
55
62
  - **Permissions System**: Fine-grained control over Claude's capabilities
56
63
  - **Code Style Tools**: EditorConfig, Biome, Prettier, and Commitlint configuration
@@ -64,9 +71,10 @@ A comprehensive CLI tool to install and manage Claude Code configurations in you
64
71
  | **Agents** | 23 | Specialized AI agents for different roles |
65
72
  | **Skills** | 25 | Reusable capabilities and knowledge |
66
73
  | **Commands** | 23 | Slash commands for workflows |
67
- | **Docs** | 18 | Reference documentation and guides |
74
+ | **Docs** | 21 | Reference documentation and guides |
68
75
  | **MCP Servers** | 27 | External tool integrations |
69
76
  | **Bundles** | 23 | Pre-grouped module sets |
77
+ | **Standards** | 6 | Configurable project standards (code, testing, docs, design, security, performance) |
70
78
 
71
79
  ### Smart Defaults
72
80
 
@@ -100,7 +108,7 @@ After running `qazuor-claude-config init`, your project will have:
100
108
  │ ├── git/ # Commit helper
101
109
  │ ├── meta/ # Create agent/command/skill, help
102
110
  │ └── formatting/ # Markdown formatter
103
- ├── docs/ # 18 documentation files
111
+ ├── docs/ # 21 documentation files
104
112
  │ ├── workflows/ # Decision tree, phases, protocols
105
113
  │ ├── standards/ # Code, testing, docs standards
106
114
  │ └── templates/ # PDR, tech analysis, TODOs
@@ -276,6 +284,58 @@ qazuor-claude-config configure --preview
276
284
  qazuor-claude-config configure --show-defaults
277
285
  ```
278
286
 
287
+ ### `standards`
288
+
289
+ Configure project standards interactively. This wizard helps you define code style, testing, documentation, design, security, and performance standards for your project.
290
+
291
+ ```bash
292
+ qazuor-claude-config standards [options] [path]
293
+ ```
294
+
295
+ #### Options
296
+
297
+ | Option | Description |
298
+ |--------|-------------|
299
+ | `--scan` | Scan for unconfigured standard placeholders only |
300
+ | `-c, --category <name>` | Configure specific category: `code`, `testing`, `documentation`, `design`, `security`, `performance` |
301
+ | `--preview` | Preview changes without applying |
302
+ | `--update-templates` | Update/sync templates from package to project (for existing installations) |
303
+ | `-y, --yes` | Accept defaults without prompts |
304
+ | `-v, --verbose` | Show detailed output |
305
+
306
+ #### Categories
307
+
308
+ | Category | Configures |
309
+ |----------|------------|
310
+ | `code` | Indent style, quotes, semicolons, max lines, TypeScript rules |
311
+ | `testing` | Coverage target, TDD, test patterns, test location |
312
+ | `documentation` | JSDoc level, examples, changelog format, comments |
313
+ | `design` | CSS framework, component library, accessibility, dark mode |
314
+ | `security` | Auth pattern, validation library, CSRF, rate limiting |
315
+ | `performance` | Core Web Vitals (LCP, FID, CLS), bundle size, API response time |
316
+
317
+ #### Examples
318
+
319
+ ```bash
320
+ # Full interactive standards wizard
321
+ qazuor-claude-config standards
322
+
323
+ # Configure only code standards
324
+ qazuor-claude-config standards --category code
325
+
326
+ # Scan for unconfigured placeholders
327
+ qazuor-claude-config standards --scan
328
+
329
+ # Preview changes without applying
330
+ qazuor-claude-config standards --preview
331
+
332
+ # Update templates from package (for existing installations)
333
+ qazuor-claude-config standards --update-templates
334
+
335
+ # Accept all defaults
336
+ qazuor-claude-config standards --yes
337
+ ```
338
+
279
339
  ### `list [type]`
280
340
 
281
341
  List available modules, bundles, or MCP servers.
@@ -291,7 +351,7 @@ qazuor-claude-config list [options] [type]
291
351
  | `agents` | List all 23 available agents |
292
352
  | `skills` | List all 25 available skills |
293
353
  | `commands` | List all 23 available commands |
294
- | `docs` | List all 18 documentation modules |
354
+ | `docs` | List all 21 documentation modules |
295
355
  | `bundles` | List all 23 module bundles |
296
356
  | `mcp` | List all 27 MCP servers |
297
357
  | *(none)* | List summary of all modules |
@@ -621,7 +681,7 @@ Slash commands for common workflows.
621
681
  |---------|-------------|
622
682
  | `/format-markdown` | Format markdown files |
623
683
 
624
- ### Documentation (18 Available)
684
+ ### Documentation (20 Available)
625
685
 
626
686
  Reference documentation and workflow guides.
627
687
 
@@ -635,9 +695,12 @@ Reference documentation and workflow guides.
635
695
  | `phase-2-implementation` | Implementation guide |
636
696
  | `phase-3-validation` | Validation guide |
637
697
  | `phase-4-finalization` | Finalization guide |
638
- | `code-standards` | Coding standards |
639
- | `testing-standards` | Testing guidelines |
640
- | `documentation-standards` | Documentation guidelines |
698
+ | `code-standards` | Coding standards (configurable) |
699
+ | `testing-standards` | Testing guidelines (configurable) |
700
+ | `documentation-standards` | Documentation guidelines (configurable) |
701
+ | `design-standards` | Design system standards (configurable) |
702
+ | `security-standards` | Security standards (configurable) |
703
+ | `performance-standards` | Performance standards (configurable) |
641
704
  | `architecture-patterns` | Architecture patterns |
642
705
  | `pdr-template` | Product Definition Report template |
643
706
  | `tech-analysis-template` | Technical analysis template |
@@ -685,6 +748,223 @@ qazuor-claude-config configure --show-defaults
685
748
 
686
749
  Defaults are stored in `~/.claude/defaults.json`.
687
750
 
751
+ ## Standards Configuration
752
+
753
+ The standards wizard (`qazuor-claude-config standards`) allows you to configure project-wide standards that are automatically applied to documentation templates.
754
+
755
+ ### Standard Categories
756
+
757
+ #### Code Standards
758
+
759
+ | Setting | Options | Default |
760
+ |---------|---------|---------|
761
+ | Indent Style | `space`, `tab` | `space` |
762
+ | Indent Size | `2`, `4` | `2` |
763
+ | Max Line Length | `80`, `100`, `120` | `100` |
764
+ | Max File Lines | `300`, `500`, `800`, `1000` | `500` |
765
+ | Quote Style | `single`, `double` | `single` |
766
+ | Semicolons | `true`, `false` | `true` |
767
+ | Trailing Commas | `all`, `es5`, `none` | `all` |
768
+ | Allow `any` Type | `true`, `false` | `false` |
769
+ | Named Exports Only | `true`, `false` | `true` |
770
+ | RO-RO Pattern | `true`, `false` | `true` |
771
+ | JSDoc Required | `true`, `false` | `true` |
772
+
773
+ #### Testing Standards
774
+
775
+ | Setting | Options | Default |
776
+ |---------|---------|---------|
777
+ | Coverage Target | `60%`, `70%`, `80%`, `90%`, `95%` | `90%` |
778
+ | TDD Required | `true`, `false` | `true` |
779
+ | Test Pattern | `aaa` (Arrange-Act-Assert), `gwt` (Given-When-Then) | `aaa` |
780
+ | Test Location | `separate` (test/ folder), `colocated` (__tests__) | `separate` |
781
+ | Unit Test Max | `50ms`, `100ms`, `200ms` | `100ms` |
782
+ | Integration Test Max | `500ms`, `1000ms`, `2000ms` | `1000ms` |
783
+
784
+ #### Documentation Standards
785
+
786
+ | Setting | Options | Default |
787
+ |---------|---------|---------|
788
+ | JSDoc Level | `minimal`, `standard`, `comprehensive` | `standard` |
789
+ | Require Examples | `true`, `false` | `true` |
790
+ | Changelog Format | `conventional`, `keepachangelog` | `conventional` |
791
+ | Inline Comment Policy | `why-not-what`, `minimal`, `extensive` | `why-not-what` |
792
+
793
+ #### Design Standards
794
+
795
+ | Setting | Options | Default |
796
+ |---------|---------|---------|
797
+ | CSS Framework | `tailwind`, `css-modules`, `styled-components`, `vanilla` | `tailwind` |
798
+ | Component Library | `shadcn`, `radix`, `headless`, `none` | `shadcn` |
799
+ | Accessibility Level | `A`, `AA`, `AAA` | `AA` |
800
+ | Dark Mode Support | `true`, `false` | `true` |
801
+
802
+ #### Security Standards
803
+
804
+ | Setting | Options | Default |
805
+ |---------|---------|---------|
806
+ | Auth Pattern | `jwt`, `session`, `oauth`, `none` | `jwt` |
807
+ | Input Validation | `zod`, `yup`, `joi`, `manual` | `zod` |
808
+ | CSRF Protection | `true`, `false` | `true` |
809
+ | Rate Limiting | `true`, `false` | `true` |
810
+
811
+ #### Performance Standards
812
+
813
+ | Setting | Options | Default |
814
+ |---------|---------|---------|
815
+ | LCP Target | `1500ms`, `2000ms`, `2500ms`, `4000ms` | `2500ms` |
816
+ | FID Target | `50ms`, `100ms`, `200ms`, `300ms` | `100ms` |
817
+ | CLS Target | `0.05`, `0.1`, `0.15`, `0.25` | `0.1` |
818
+ | Bundle Size Target | `100KB`, `150KB`, `250KB`, `500KB` | `250KB` |
819
+ | API Response Target | `100ms`, `200ms`, `300ms`, `500ms` | `200ms` |
820
+
821
+ ### Presets
822
+
823
+ | Preset | Description |
824
+ |--------|-------------|
825
+ | `strict` | High coverage (95%), strict TypeScript, comprehensive docs |
826
+ | `balanced` | Standard settings for most projects (default) |
827
+ | `relaxed` | Lower coverage (70%), more flexible rules |
828
+ | `startup` | Fast iteration, minimal overhead |
829
+ | `enterprise` | Maximum standards, full documentation |
830
+
831
+ ## Pre-commit Hooks
832
+
833
+ Configurable pre-commit hooks powered by Husky. The wizard generates sophisticated bash scripts based on your configuration.
834
+
835
+ ### Configuration Options
836
+
837
+ | Option | Description | Default |
838
+ |--------|-------------|---------|
839
+ | `enabled` | Enable/disable pre-commit hook | `true` |
840
+ | `lint.enabled` | Run linting | `true` |
841
+ | `lint.stagedOnly` | Only lint staged files | `true` |
842
+ | `lint.tool` | Linting tool (`biome`, `eslint`, `custom`) | `biome` |
843
+ | `typecheck.enabled` | Run TypeScript type checking | `true` |
844
+ | `tests.enabled` | Run tests | `true` |
845
+ | `tests.mode` | Test mode (`none`, `affected`, `all`) | `affected` |
846
+ | `tests.coverageThreshold` | Minimum coverage (0 = disabled) | `0` |
847
+ | `formatCheck.enabled` | Check formatting | `false` |
848
+ | `formatCheck.tool` | Format tool (`biome`, `prettier`, `custom`) | `biome` |
849
+ | `showTiming` | Show execution time for each step | `true` |
850
+ | `continueOnFailure` | Run all checks even if one fails | `false` |
851
+
852
+ ### Custom Commands
853
+
854
+ Add custom validation commands:
855
+
856
+ ```json
857
+ {
858
+ "customCommands": [
859
+ {
860
+ "name": "Security Scan",
861
+ "command": "pnpm audit --audit-level=high",
862
+ "allowFailure": true,
863
+ "order": 50
864
+ }
865
+ ]
866
+ }
867
+ ```
868
+
869
+ ### Presets
870
+
871
+ | Preset | Description |
872
+ |--------|-------------|
873
+ | `minimal` | Lint only (staged files) |
874
+ | `standard` | Lint + typecheck (default) |
875
+ | `strict` | Lint + typecheck + affected tests |
876
+
877
+ ### Generated Hook Example
878
+
879
+ ```bash
880
+ #!/usr/bin/env sh
881
+ . "$(dirname -- "$0")/_/husky.sh"
882
+
883
+ # Pre-commit hook - Generated by @qazuor/claude-code-config
884
+ echo "🔍 Running pre-commit checks..."
885
+
886
+ # Linting
887
+ echo ""
888
+ echo "📝 Linting..."
889
+ step_start
890
+ pnpm biome check --staged --no-errors-on-unmatched || { echo " ❌ Lint failed"; exit 1; }
891
+ echo " ✅ Lint passed"
892
+ step_end
893
+
894
+ # Type checking
895
+ echo ""
896
+ echo "🔷 Type checking..."
897
+ step_start
898
+ pnpm typecheck || { echo " ❌ Type check failed"; exit 1; }
899
+ echo " ✅ Types OK"
900
+ step_end
901
+
902
+ echo ""
903
+ echo "✨ All checks passed!"
904
+ ```
905
+
906
+ ## Response Style
907
+
908
+ Configure Claude's communication style and tone for your project.
909
+
910
+ ### Configuration Options
911
+
912
+ | Option | Description | Options |
913
+ |--------|-------------|---------|
914
+ | `tone` | Overall response tone | `friendly`, `professional`, `formal`, `strict`, `mentor` |
915
+ | `verbosity` | Level of detail in responses | `concise`, `balanced`, `detailed` |
916
+ | `responseLanguage` | Language for responses (code always in English) | `en`, `es`, `auto` |
917
+ | `useEmojis` | Use emojis in responses | `true`, `false` |
918
+ | `errorStyle` | How to report errors | `supportive`, `neutral`, `direct` |
919
+ | `explainReasoning` | Include explanation of "why" | `true`, `false` |
920
+ | `offerAlternatives` | Suggest multiple solutions | `true`, `false` |
921
+ | `proactivity` | Level of unsolicited suggestions | `minimal`, `moderate`, `high` |
922
+ | `confirmBeforeBigChanges` | Ask before major changes | `true`, `false` |
923
+
924
+ ### Tone Options
925
+
926
+ | Tone | Description |
927
+ |------|-------------|
928
+ | `friendly` | Casual, approachable, occasional emojis |
929
+ | `professional` | Professional but accessible |
930
+ | `formal` | Formal, technical language |
931
+ | `strict` | Direct, no-nonsense, to the point |
932
+ | `mentor` | Educational, explains the "why" |
933
+
934
+ ### Presets
935
+
936
+ | Preset | Tone | Verbosity | Emojis | Error Style |
937
+ |--------|------|-----------|--------|-------------|
938
+ | `friendly` | friendly | balanced | ✓ | supportive |
939
+ | `professional` | professional | balanced | ✗ | neutral |
940
+ | `strict` | strict | concise | ✗ | direct |
941
+ | `mentor` | mentor | detailed | ✗ | supportive |
942
+
943
+ ### Generated Guidelines
944
+
945
+ The configuration generates guidelines in CLAUDE.md:
946
+
947
+ ```markdown
948
+ ## Response Style
949
+
950
+ **Tone:** Professional
951
+ **Verbosity:** Balanced
952
+ **Language:** Spanish (code in English)
953
+ **Emojis:** No
954
+ **Error Style:** Neutral
955
+ **Explain Reasoning:** Yes
956
+ **Offer Alternatives:** Yes
957
+ **Proactivity:** Moderate
958
+ **Confirm Big Changes:** Yes
959
+
960
+ ### Guidelines
961
+ - Respond in Spanish, write code/comments in English
962
+ - Be professional but accessible
963
+ - Explain the "why" behind decisions
964
+ - Present alternatives when multiple valid approaches exist
965
+ - Ask for confirmation before architectural changes
966
+ ```
967
+
688
968
  ## MCP Servers
689
969
 
690
970
  Model Context Protocol servers extend Claude's capabilities. All 27 servers are verified npm packages.
@@ -1082,7 +1362,7 @@ import type {
1082
1362
 
1083
1363
  ## Configuration File
1084
1364
 
1085
- The main configuration is stored in `.claude/config.json`.
1365
+ The main configuration is stored in `.claude/qazuor-claude-config.json`.
1086
1366
 
1087
1367
  ```json
1088
1368
  {