ima-claude 2.20.0 → 2.26.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.
Files changed (80) hide show
  1. package/README.md +74 -9
  2. package/dist/cli.js +2 -1
  3. package/package.json +1 -1
  4. package/plugins/ima-claude/.claude-plugin/plugin.json +2 -2
  5. package/plugins/ima-claude/agents/explorer.md +29 -15
  6. package/plugins/ima-claude/agents/implementer.md +58 -13
  7. package/plugins/ima-claude/agents/memory.md +19 -19
  8. package/plugins/ima-claude/agents/reviewer.md +84 -34
  9. package/plugins/ima-claude/agents/tester.md +59 -16
  10. package/plugins/ima-claude/agents/wp-developer.md +66 -21
  11. package/plugins/ima-claude/hooks/bootstrap.sh +42 -44
  12. package/plugins/ima-claude/hooks/prompt_coach_digest.md +14 -17
  13. package/plugins/ima-claude/hooks/prompt_coach_system.md +10 -12
  14. package/plugins/ima-claude/personalities/README.md +17 -6
  15. package/plugins/ima-claude/personalities/enable-efficient.md +61 -0
  16. package/plugins/ima-claude/personalities/enable-terse.md +71 -0
  17. package/plugins/ima-claude/skills/agentic-workflows/SKILL.md +35 -71
  18. package/plugins/ima-claude/skills/architect/SKILL.md +54 -168
  19. package/plugins/ima-claude/skills/compound-bridge/SKILL.md +41 -94
  20. package/plugins/ima-claude/skills/design-to-code/SKILL.md +43 -78
  21. package/plugins/ima-claude/skills/discourse/SKILL.md +79 -194
  22. package/plugins/ima-claude/skills/discourse-admin/SKILL.md +41 -103
  23. package/plugins/ima-claude/skills/docs-organize/SKILL.md +63 -203
  24. package/plugins/ima-claude/skills/ember-discourse/SKILL.md +90 -200
  25. package/plugins/ima-claude/skills/espocrm/SKILL.md +14 -23
  26. package/plugins/ima-claude/skills/espocrm-api/SKILL.md +79 -192
  27. package/plugins/ima-claude/skills/functional-programmer/SKILL.md +33 -237
  28. package/plugins/ima-claude/skills/gh-cli/SKILL.md +26 -65
  29. package/plugins/ima-claude/skills/ima-bootstrap/SKILL.md +71 -104
  30. package/plugins/ima-claude/skills/ima-bootstrap/references/ima-brand.md +32 -22
  31. package/plugins/ima-claude/skills/ima-brand/SKILL.md +18 -23
  32. package/plugins/ima-claude/skills/ima-copywriting/SKILL.md +68 -179
  33. package/plugins/ima-claude/skills/ima-doc2pdf/SKILL.md +32 -102
  34. package/plugins/ima-claude/skills/ima-editorial-scorecard/SKILL.md +38 -63
  35. package/plugins/ima-claude/skills/ima-editorial-workflow/SKILL.md +69 -114
  36. package/plugins/ima-claude/skills/ima-email-creator/SKILL.md +16 -22
  37. package/plugins/ima-claude/skills/ima-forms-expert/SKILL.md +21 -37
  38. package/plugins/ima-claude/skills/ima-git/SKILL.md +81 -0
  39. package/plugins/ima-claude/skills/jira-checkpoint/SKILL.md +39 -120
  40. package/plugins/ima-claude/skills/jquery/SKILL.md +107 -233
  41. package/plugins/ima-claude/skills/js-fp/SKILL.md +75 -296
  42. package/plugins/ima-claude/skills/js-fp-api/SKILL.md +52 -162
  43. package/plugins/ima-claude/skills/js-fp-react/SKILL.md +47 -270
  44. package/plugins/ima-claude/skills/js-fp-vue/SKILL.md +55 -209
  45. package/plugins/ima-claude/skills/js-fp-wordpress/SKILL.md +59 -204
  46. package/plugins/ima-claude/skills/livecanvas/SKILL.md +19 -32
  47. package/plugins/ima-claude/skills/mcp-atlassian/SKILL.md +92 -162
  48. package/plugins/ima-claude/skills/mcp-context7/SKILL.md +32 -64
  49. package/plugins/ima-claude/skills/mcp-gitea/SKILL.md +98 -188
  50. package/plugins/ima-claude/skills/mcp-github/SKILL.md +60 -124
  51. package/plugins/ima-claude/skills/mcp-memory/SKILL.md +1 -177
  52. package/plugins/ima-claude/skills/mcp-qdrant/SKILL.md +58 -115
  53. package/plugins/ima-claude/skills/mcp-sequential/SKILL.md +32 -87
  54. package/plugins/ima-claude/skills/mcp-serena/SKILL.md +54 -80
  55. package/plugins/ima-claude/skills/mcp-tavily/SKILL.md +40 -63
  56. package/plugins/ima-claude/skills/mcp-vestige/SKILL.md +75 -116
  57. package/plugins/ima-claude/skills/php-authnet/SKILL.md +32 -65
  58. package/plugins/ima-claude/skills/php-fp/SKILL.md +50 -129
  59. package/plugins/ima-claude/skills/php-fp-wordpress/SKILL.md +25 -73
  60. package/plugins/ima-claude/skills/phpunit-wp/SKILL.md +103 -463
  61. package/plugins/ima-claude/skills/playwright/SKILL.md +69 -220
  62. package/plugins/ima-claude/skills/prompt-starter/SKILL.md +33 -83
  63. package/plugins/ima-claude/skills/prompt-starter/references/code-review.md +38 -0
  64. package/plugins/ima-claude/skills/py-fp/SKILL.md +78 -384
  65. package/plugins/ima-claude/skills/quasar-fp/SKILL.md +54 -255
  66. package/plugins/ima-claude/skills/quickstart/SKILL.md +7 -11
  67. package/plugins/ima-claude/skills/rails/SKILL.md +63 -184
  68. package/plugins/ima-claude/skills/resume-session/SKILL.md +14 -35
  69. package/plugins/ima-claude/skills/rg/SKILL.md +61 -146
  70. package/plugins/ima-claude/skills/ruby-fp/SKILL.md +66 -163
  71. package/plugins/ima-claude/skills/save-session/SKILL.md +10 -39
  72. package/plugins/ima-claude/skills/scorecard/SKILL.md +42 -40
  73. package/plugins/ima-claude/skills/skill-analyzer/SKILL.md +42 -71
  74. package/plugins/ima-claude/skills/skill-creator/SKILL.md +79 -250
  75. package/plugins/ima-claude/skills/task-master/SKILL.md +11 -31
  76. package/plugins/ima-claude/skills/task-planner/SKILL.md +44 -153
  77. package/plugins/ima-claude/skills/task-runner/SKILL.md +61 -143
  78. package/plugins/ima-claude/skills/unit-testing/SKILL.md +59 -134
  79. package/plugins/ima-claude/skills/wp-ddev/SKILL.md +38 -120
  80. package/plugins/ima-claude/skills/wp-local/SKILL.md +26 -108
@@ -5,37 +5,22 @@ description: "Discourse admin API for site settings, configuration export/import
5
5
 
6
6
  # Discourse Admin API
7
7
 
8
- Manage Discourse site configuration programmatically via the REST API. Export settings, apply environment configs, manage groups and user fields without clicking through the admin UI.
8
+ Manage Discourse site configuration via REST API. Export settings, apply environment configs, manage groups/user fields without clicking through admin UI.
9
9
 
10
- ## When to Use This Skill
10
+ **Not this skill**: For Discourse plugin development (Ruby/Rails/Ember), use `discourse` skill.
11
11
 
12
- - Exporting or importing Discourse site settings
13
- - Deploying configuration to staging or production environments
14
- - Bulk-updating site settings via API
15
- - Managing groups, categories, or custom user fields programmatically
16
- - Config-as-code workflows for Discourse
12
+ ## Setup
17
13
 
18
- **Not this skill**: For Discourse *plugin development* (Ruby/Rails/Ember), use the `discourse` skill instead.
19
-
20
- ## Quick Start
21
-
22
- **Prerequisites**: Configure environments in `~/.claude/discourse-environments.json`:
14
+ Configure `~/.claude/discourse-environments.json`:
23
15
  ```json
24
16
  {
25
- "local": {
26
- "url": "http://localhost:4200",
27
- "api_key": "your-local-api-key",
28
- "api_username": "system"
29
- },
30
- "staging": {
31
- "url": "https://staging.community.example.com",
32
- "api_key": "staging-key",
33
- "api_username": "system"
34
- }
17
+ "local": { "url": "http://localhost:4200", "api_key": "...", "api_username": "system" },
18
+ "staging": { "url": "https://staging.community.example.com", "api_key": "...", "api_username": "system" }
35
19
  }
36
20
  ```
37
21
 
38
- **Run commands**:
22
+ ## Commands
23
+
39
24
  ```bash
40
25
  python3 ~/.claude/skills/discourse-admin/scripts/discourse-admin.py export
41
26
  python3 ~/.claude/skills/discourse-admin/scripts/discourse-admin.py import base.json staging-overlay.json
@@ -45,85 +30,48 @@ python3 ~/.claude/skills/discourse-admin/scripts/discourse-admin.py set disable_
45
30
  python3 ~/.claude/skills/discourse-admin/scripts/discourse-admin.py envs
46
31
  ```
47
32
 
48
- ## Environment Resolution
33
+ ## Environment Resolution (priority order)
49
34
 
50
- Resolved via priority chain (same pattern as `wp-local`):
51
-
52
- 1. `--env` flag on command line
53
- 2. `$DISCOURSE_ENV` environment variable
35
+ 1. `--env` flag
36
+ 2. `$DISCOURSE_ENV` env var
54
37
  3. `.discourse-env` file in project root or parents
55
38
  4. Falls back to `"local"`
56
39
 
57
40
  ```bash
58
- # Explicit env
59
41
  python3 discourse-admin.py --env staging export
60
-
61
- # Env var (set in Kitty terminal config)
62
- export DISCOURSE_ENV=staging
63
- python3 discourse-admin.py export
64
-
65
- # Project file
66
- echo "staging" > .discourse-env
67
- python3 discourse-admin.py export
68
42
  ```
69
43
 
70
- **Credentials** stored in `~/.claude/discourse-environments.json` (not in repo, not in env vars).
71
- API keys are managed at `/admin/api/keys` in each Discourse instance.
72
-
73
44
  ## Config-as-Code Workflow
74
45
 
75
- ### Step 1: Export Non-Default Settings
76
-
77
46
  ```bash
47
+ # 1. Export non-default settings (~50-100 settings, not 500+)
78
48
  python3 discourse-admin.py export discourse-base.json
79
- ```
80
49
 
81
- Exports only settings where value differs from default — typically 50-100 settings, not 500+.
50
+ # 2. Structure overlays:
51
+ # config/discourse-base.json
52
+ # config/discourse-staging.json
53
+ # config/discourse-production.json
82
54
 
83
- ### Step 2: Create Environment Overlays
55
+ # 3. Preview changes
56
+ python3 discourse-admin.py --env staging import base.json staging.json --dry-run
57
+ python3 discourse-admin.py --env staging diff base.json
84
58
 
85
- ```
86
- config/
87
- discourse-base.json # Non-default settings from local
88
- discourse-staging.json # Staging overrides
89
- discourse-production.json # Production overrides
59
+ # 4. Apply
60
+ python3 discourse-admin.py --env staging import discourse-base.json discourse-staging.json
90
61
  ```
91
62
 
92
- **Staging overlay example** (`discourse-staging.json`):
63
+ Staging overlay example:
93
64
  ```json
94
65
  {
95
66
  "title": "[STAGING] Community Forum",
96
- "site_description": "Staging environment — do not use for real discussions",
97
67
  "disable_emails": "yes",
98
68
  "notification_email": "noreply-staging@example.com",
99
69
  "discourse_connect_provider_secrets": "staging.example.com|staging-secret-here"
100
70
  }
101
71
  ```
102
72
 
103
- ### Step 3: Preview Changes (Dry Run)
104
-
105
- ```bash
106
- # Show what would change
107
- python3 discourse-admin.py --env staging import base.json staging.json --dry-run
108
-
109
- # Compare remote vs desired
110
- python3 discourse-admin.py --env staging diff base.json
111
- ```
112
-
113
- ### Step 4: Apply Config
114
-
115
- ```bash
116
- python3 discourse-admin.py --env staging import discourse-base.json discourse-staging.json
117
- ```
118
-
119
- Uses bulk_update endpoint (single request). Falls back to individual updates if bulk fails.
120
-
121
73
  ## Site Settings API
122
74
 
123
- The primary endpoint for config-as-code. ~500+ settings covering email, SSO, branding, security, etc.
124
-
125
- ### Key Endpoints
126
-
127
75
  | Method | Path | Purpose |
128
76
  |--------|------|---------|
129
77
  | GET | `/admin/site_settings.json` | List all settings |
@@ -131,51 +79,44 @@ The primary endpoint for config-as-code. ~500+ settings covering email, SSO, bra
131
79
  | PUT | `/admin/site_settings/{name}.json` | Update single setting |
132
80
  | PUT | `/admin/site_settings/bulk_update.json` | Update multiple (undocumented, source-verified) |
133
81
 
134
- **Setting categories:** `required`, `basic`, `users`, `email`, `login`, `security`, `onboarding`, `spam`, `rate_limits`, `developer`, `embedding`, `legal`, `branding`, `uncategorized`
135
-
136
- ## When to Load Reference Files
137
-
138
- ### Full API Reference
139
- **File**: `references/api-endpoints.md`
140
- **Load when**: You need exact parameters, response formats, or edge cases for any admin endpoint (groups, categories, users, user fields, site texts, API keys).
141
-
142
- ### Known Gotchas
143
- **File**: `references/gotchas.md`
144
- **Load when**: Hitting unexpected behavior, 404s, or working with a specific Discourse version. Contains breaking changes across versions and endpoint migration history.
145
-
146
- ### Staging Defaults
147
- **File**: `references/staging-defaults.md`
148
- **Load when**: Setting up a new staging environment. Contains recommended safe defaults and a pre-deploy checklist.
82
+ Categories: `required`, `basic`, `users`, `email`, `login`, `security`, `onboarding`, `spam`, `rate_limits`, `developer`, `embedding`, `legal`, `branding`, `uncategorized`
149
83
 
150
84
  ## Common Staging Settings
151
85
 
152
- | Setting | Staging Value | Why |
153
- |---------|--------------|-----|
154
- | `disable_emails` | `yes` | Prevent sending real emails |
86
+ | Setting | Value | Why |
87
+ |---------|-------|-----|
88
+ | `disable_emails` | `yes` | Prevent real emails |
155
89
  | `title` | `[STAGING] ...` | Visual distinction |
156
90
  | `notification_email` | staging address | Don't spam real inbox |
157
- | `discourse_connect_provider_secrets` | staging domains | SSO only for staging WP sites |
158
- | `enable_local_logins` | `true` | Allow direct login for testing |
91
+ | `discourse_connect_provider_secrets` | staging domains | SSO for staging only |
92
+ | `enable_local_logins` | `true` | Direct login for testing |
159
93
  | `min_password_length` | `6` | Easier test accounts |
160
94
  | `invite_only` | `true` | Prevent public signups |
161
95
 
162
96
  ## Rate Limiting
163
97
 
164
- - Admin API rate limits are site-setting driven (not hardcoded)
165
98
  - Two independent limiters: IP-based (`max_reqs_per_ip_mode`) and API-key-based (`max_admin_api_reqs_per_minute`, default 60)
166
- - max=0 means BLOCK ALL (not unlimited) — use high numbers like 6000
167
- - Must flush Redis rate limit keys after changing rate limit config
99
+ - `max=0` means BLOCK ALL (not unlimited) — use high numbers like 6000
100
+ - Flush Redis rate limit keys after changing rate limit config
101
+
102
+ ## Reference Files
168
103
 
169
- ## Quick Reference (Manual curl)
104
+ | File | Load When |
105
+ |------|-----------|
106
+ | `references/api-endpoints.md` | Need exact params, response formats, or edge cases (groups, categories, users, user fields, site texts, API keys) |
107
+ | `references/gotchas.md` | Hitting 404s, unexpected behavior, or working with specific Discourse versions |
108
+ | `references/staging-defaults.md` | Setting up new staging environment |
109
+
110
+ ## Quick Reference (curl)
170
111
 
171
112
  ```bash
172
113
  # List all settings
173
114
  curl -s -H "Api-Key: $KEY" -H "Api-Username: system" "$URL/admin/site_settings.json"
174
115
 
175
- # Get email settings only
116
+ # Get email settings
176
117
  curl -s -H "Api-Key: $KEY" -H "Api-Username: system" "$URL/admin/site_settings/category/email.json"
177
118
 
178
- # Update a single setting
119
+ # Update single setting
179
120
  curl -s -X PUT -H "Api-Key: $KEY" -H "Api-Username: system" \
180
121
  -H "Content-Type: application/json" \
181
122
  -d '{"disable_emails": "yes"}' \
@@ -186,7 +127,4 @@ curl -s -H "Api-Key: $KEY" -H "Api-Username: system" "$URL/groups.json"
186
127
 
187
128
  # List custom user fields
188
129
  curl -s -H "Api-Key: $KEY" -H "Api-Username: system" "$URL/admin/config/user_fields.json"
189
-
190
- # List categories
191
- curl -s -H "Api-Key: $KEY" -H "Api-Username: system" "$URL/categories.json"
192
130
  ```
@@ -5,250 +5,110 @@ description: "Three-tier documentation organization system - Active (permanent)
5
5
 
6
6
  # Documentation Organization System
7
7
 
8
- A structured approach to documentation organization that separates permanent, historical, and ephemeral content with clear navigation and lifecycle management.
8
+ Three-tier structure separating permanent, historical, and ephemeral content.
9
9
 
10
- ## When to Use This Skill
10
+ ## Tiers
11
11
 
12
- - Starting a new project and setting up documentation structure
13
- - Reorganizing existing scattered documentation files
14
- - Need clear separation between active docs and historical reference
15
- - Want local-only working documents that won't clutter git
16
- - Improving documentation discoverability and navigation
17
- - Establishing documentation standards for a team
18
-
19
- ## Core Philosophy
20
-
21
- **Three-Tier Documentation**:
22
- - **Active**: Current, permanent documentation used daily (committed to git)
23
- - **Archive**: Historical reference, completed phases, deprecated patterns (committed to git)
24
- - **Transient**: Ephemeral working documents, investigation logs, spike results (git-ignored)
25
-
26
- **Key Principles**:
27
- - **Clear Lifecycle**: Documents flow from transient → active → archive
28
- - **Theme Organization**: Group by function (architecture, development, integrations, features, operations)
29
- - **Navigation First**: README files at every level for discoverability
30
- - **Minimal Clutter**: Root directory stays clean, no scattered MD files
12
+ | Tier | Purpose | Git |
13
+ |------|---------|-----|
14
+ | **Active** | Current docs used daily | committed |
15
+ | **Archive** | Historical reference, completed phases | committed |
16
+ | **Transient** | Working docs, spikes, investigation logs | git-ignored |
31
17
 
32
18
  ## Folder Structure
33
19
 
34
20
  ```
35
21
  docs/
36
22
  ├── README.md # Central navigation hub
37
- ├── active/ # Current permanent documentation
38
- │ ├── README.md # Active docs overview
23
+ ├── active/
24
+ │ ├── README.md
39
25
  │ ├── architecture/ # System design, plugins, dependencies
40
- │ │ └── README.md
41
26
  │ ├── development/ # Testing, code standards, patterns
42
- │ │ ├── README.md
43
- │ └── testing-guides/ # Phase-specific test suites
44
- ├── integrations/ # Third-party system connections
45
- ├── README.md
46
- │ │ └── [integration-name]/ # Per-integration documentation
47
- │ ├── features/ # Feature-specific documentation
48
- │ │ └── [feature-name]/ # Per-feature documentation
27
+ │ │ └── testing-guides/
28
+ ├── integrations/ # Third-party connections
29
+ │ └── [integration-name]/
30
+ │ ├── features/
31
+ │ │ └── [feature-name]/
49
32
  │ ├── operations/ # Security, troubleshooting, deployment
50
- │ │ └── README.md
51
33
  │ └── reference/ # Templates, quick commands, standards
52
- │ └── README.md
53
- ├── archive/ # Historical documentation
54
- ├── README.md # Archive overview & browsing guide
55
- │ └── [YYYY-phase-name]/ # Completed phases/milestones
34
+ ├── archive/
35
+ ├── README.md
36
+ └── [YYYY-phase-name]/
56
37
  │ └── README.md # Phase summary with outcomes
57
- └── transient/ # Ephemeral working documents
58
- ├── .gitignore # Excludes *.md from git
59
- └── README.md # Transient usage guide
38
+ └── transient/
39
+ ├── .gitignore # Excludes *.md (keeps README.md)
40
+ └── README.md
60
41
  ```
61
42
 
62
- ## Implementation Guide
63
-
64
- ### Step 1: Create Folder Structure
43
+ ## Setup
65
44
 
66
45
  ```bash
67
- # Create main structure
68
46
  mkdir -p docs/{active,archive,transient}
69
-
70
- # Create active subdirectories
71
47
  mkdir -p docs/active/{architecture,development,integrations,features,operations,reference}
72
48
  mkdir -p docs/active/development/testing-guides
73
-
74
- # Create .gitignore for transient
75
- echo '# Exclude all markdown files in transient/
76
- *.md
49
+ echo '*.md
77
50
  !README.md' > docs/transient/.gitignore
78
51
  ```
79
52
 
80
- ### Step 2: Create Navigation Hub (docs/README.md)
81
-
82
- Use template: [`templates/docs-README.md`](templates/docs-README.md)
83
-
84
- Customize the Quick Navigation table for your project's key files.
85
-
86
- ### Step 3: Create Active Section README (docs/active/README.md)
53
+ Templates: [`templates/docs-README.md`](templates/docs-README.md) · [`templates/active-README.md`](templates/active-README.md) · [`templates/archive-README.md`](templates/archive-README.md) · [`templates/phase-archive-README.md`](templates/phase-archive-README.md) · [`templates/transient-README.md`](templates/transient-README.md) · [`templates/section-README.md`](templates/section-README.md)
87
54
 
88
- Use template: [`templates/active-README.md`](templates/active-README.md)
55
+ ## Document Lifecycle
89
56
 
90
- ### Step 4: Create Archive README (docs/archive/README.md)
91
-
92
- Use template: [`templates/archive-README.md`](templates/archive-README.md)
93
-
94
- For completed phases, use: [`templates/phase-archive-README.md`](templates/phase-archive-README.md)
95
-
96
- ### Step 5: Create Transient README and .gitignore
97
-
98
- - **docs/transient/README.md**: Use [`templates/transient-README.md`](templates/transient-README.md)
99
- - **docs/transient/.gitignore**: Use [`templates/transient-gitignore`](templates/transient-gitignore)
57
+ ```
58
+ TRANSIENT ──▶ ACTIVE ──▶ ARCHIVE
59
+ git-ignored committed committed
60
+ ```
100
61
 
101
- ### Step 6: Create Section READMEs
62
+ **Transient Active**: planning becomes guide, investigation becomes troubleshooting doc, spike becomes ADR
102
63
 
103
- For each `active/` subdirectory, use: [`templates/section-README.md`](templates/section-README.md)
64
+ **Active Archive**: phase complete, feature deprecated, pattern replaced
104
65
 
105
- ## Document Lifecycle Workflow
66
+ **Direct to Archive**: completed work docs, phase summaries, historical reviews
106
67
 
107
- ```
108
- ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
109
- │ TRANSIENT │ ──▶ │ ACTIVE │ ──▶ │ ARCHIVE │
110
- │ │ │ │ │ │
111
- │ • Planning │ │ • Stable │ │ • Complete │
112
- │ • Research │ │ • Reference │ │ • Historical│
113
- │ • Spikes │ │ • Standards │ │ • Deprecated│
114
- └─────────────┘ └─────────────┘ └─────────────┘
115
- git-ignored committed committed
116
- ```
68
+ ## Theme Categories
117
69
 
118
- ### Lifecycle Triggers
119
-
120
- **Transient Active**:
121
- - Planning becomes implementation guide
122
- - Investigation findings become troubleshooting docs
123
- - Spike results become architecture decisions
124
-
125
- **Active Archive**:
126
- - Phase/milestone completed
127
- - Feature deprecated with replacement
128
- - Pattern replaced with better approach
129
-
130
- **Direct to Archive** (skip transient):
131
- - Completed work documentation
132
- - Phase summaries with outcomes
133
- - Historical code reviews
134
-
135
- ## Theme Categories Reference
136
-
137
- ### `architecture/`
138
- - Plugin/module architecture
139
- - Dependency management
140
- - System design decisions
141
- - Refactoring roadmaps
142
-
143
- ### `development/`
144
- - Testing infrastructure (PHPUnit, Jest, etc.)
145
- - Code examples and patterns
146
- - Development standards
147
- - Template patterns
148
-
149
- ### `integrations/`
150
- - Third-party API connections
151
- - Webhook handling
152
- - Data sync patterns
153
- - Authentication flows
154
-
155
- ### `features/`
156
- - Feature-specific documentation
157
- - User workflows
158
- - Configuration options
159
- - Feature flags
160
-
161
- ### `operations/`
162
- - Security best practices
163
- - Troubleshooting guides
164
- - Deployment procedures
165
- - Monitoring setup
166
-
167
- ### `reference/`
168
- - Quick command cheatsheets
169
- - Template files
170
- - Brand/style guidelines
171
- - Onboarding materials
70
+ | Dir | Content |
71
+ |-----|---------|
72
+ | `architecture/` | Plugin/module architecture, system design, refactoring roadmaps |
73
+ | `development/` | Testing infrastructure, code examples, standards |
74
+ | `integrations/` | Third-party APIs, webhooks, auth flows |
75
+ | `features/` | Feature docs, user workflows, config options |
76
+ | `operations/` | Security, troubleshooting, deployment, monitoring |
77
+ | `reference/` | Cheatsheets, templates, brand guidelines, onboarding |
172
78
 
173
79
  ## Quality Gates
174
80
 
175
- Before adding documentation, verify:
176
-
177
- 1. **Correct Location**: Active vs. Archive vs. Transient
178
- 2. **Theme Match**: Right subdirectory for the content
179
- 3. **Navigation Updated**: README links added
180
- 4. ✅ **Cross-References**: Related docs linked
181
- 5. ✅ **Date Included**: "Last Updated" at bottom
182
- 6. ✅ **Naming Convention**: UPPER_SNAKE_CASE.md or lowercase-kebab/
81
+ 1. Correct tier: Active vs. Archive vs. Transient
82
+ 2. Right subdirectory for content theme
83
+ 3. README links updated
84
+ 4. Related docs cross-referenced
85
+ 5. Naming convention: `UPPER_SNAKE_CASE.md` or `lowercase-kebab/`
183
86
 
184
87
  ## Migration Checklist
185
88
 
186
- When applying this pattern to existing projects:
187
-
188
- - [ ] Create folder structure with `mkdir -p` commands
189
- - [ ] Create `.gitignore` in transient/
190
- - [ ] Create hub README at `docs/README.md`
191
- - [ ] Create section READMEs in each active/ subdirectory
192
- - [ ] Create archive README with naming conventions
193
- - [ ] Create transient README with workflow guidance
194
- - [ ] Move existing documentation to appropriate locations
89
+ - [ ] Create folder structure
90
+ - [ ] Create `transient/.gitignore`
91
+ - [ ] Create `docs/README.md` navigation hub
92
+ - [ ] Create section READMEs in each `active/` subdirectory
93
+ - [ ] Move existing docs to correct locations
195
94
  - [ ] Update project CLAUDE.md/README.md references
196
- - [ ] Verify all internal links work
95
+ - [ ] Verify all internal links
197
96
  - [ ] Clean up root-level scattered MD files
198
97
 
199
- ## Integration with Project Files
200
-
201
- ### Update Root CLAUDE.md
202
-
203
- Add documentation hub reference:
204
- ```markdown
205
- **📚 Key Documentation:**
206
- - **[📖 Documentation Index](docs/README.md)** - Central hub for all documentation
207
- - [Testing Guide](docs/active/development/testing-guides/) - Test setup
208
- - [Architecture](docs/active/architecture/) - System design
209
- ```
210
-
211
- ### Update Navigation References
212
-
213
- Change scattered references from:
214
- ```markdown
215
- [Testing](TESTING.md)
216
- [Security](docs/SECURITY_GUIDE.md)
217
- ```
98
+ ## Root CLAUDE.md Reference
218
99
 
219
- To centralized structure:
220
100
  ```markdown
221
- [Testing](docs/active/development/testing-guides/TESTING.md)
222
- [Security](docs/active/operations/SECURITY_GUIDE.md)
101
+ **Key Documentation:**
102
+ - [Documentation Index](docs/README.md) - Central hub
103
+ - [Testing](docs/active/development/testing-guides/)
104
+ - [Architecture](docs/active/architecture/)
223
105
  ```
224
106
 
225
- ## Success Metrics
226
-
227
- Documentation organization is successful when:
228
-
229
- - **Discoverability**: New team members find docs within 2 clicks from hub
230
- - **Cleanliness**: Root directory has no scattered MD files
231
- - **Currency**: Active docs are up-to-date with implementation
232
- - **Lifecycle**: Clear workflow from planning to archive
233
- - **Navigation**: README at every level provides guidance
234
-
235
- ## Anti-Patterns to Avoid
236
-
237
- ❌ **Scattered root files**: MD files in project root instead of /docs/
238
- ❌ **Flat structure**: All docs in single /docs/ folder without themes
239
- ❌ **Missing READMEs**: Subdirectories without navigation guides
240
- ❌ **Broken links**: References to moved/deleted files
241
- ❌ **Stale transient**: Investigation logs never cleaned up
242
- ❌ **Over-archiving**: Active docs moved to archive prematurely
243
- ❌ **Under-archiving**: Completed phase docs never archived
244
-
245
- ## Related Patterns
246
-
247
- - **CLAUDE.md**: Project-level quick reference (references this structure)
248
- - **ADR (Architecture Decision Records)**: Can live in `active/architecture/adr/`
249
- - **Changelogs**: Can live in `active/reference/CHANGELOG.md`
250
- - **API Documentation**: Can live in `active/reference/api/`
251
-
252
- ---
107
+ ## Anti-Patterns
253
108
 
254
- **Last Updated**: 2025-01-20
109
+ - Scattered MD files in project root
110
+ - Flat `/docs/` with no theme subdirs
111
+ - Subdirectories without README navigation
112
+ - Stale transient docs never cleaned up
113
+ - Active docs archived prematurely
114
+ - Completed phase docs never archived