create-claude-context 1.0.0 → 1.2.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 (112) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +146 -146
  3. package/bin/create-claude-context.js +61 -61
  4. package/lib/detector.js +373 -373
  5. package/lib/index.js +170 -170
  6. package/lib/installer.js +371 -362
  7. package/lib/placeholder.js +208 -208
  8. package/lib/prompts.js +287 -287
  9. package/lib/spinner.js +60 -60
  10. package/lib/validate.js +147 -147
  11. package/package.json +59 -59
  12. package/templates/CLAUDE.md.template +235 -235
  13. package/templates/base/README.md +257 -257
  14. package/templates/base/RPI_WORKFLOW_PLAN.md +320 -320
  15. package/templates/base/agents/api-developer.md +76 -76
  16. package/templates/base/agents/context-engineer.md +525 -525
  17. package/templates/base/agents/core-architect.md +76 -76
  18. package/templates/base/agents/database-ops.md +76 -76
  19. package/templates/base/agents/deployment-ops.md +76 -76
  20. package/templates/base/agents/integration-hub.md +76 -76
  21. package/templates/base/analytics/README.md +114 -114
  22. package/templates/base/automation/config.json +58 -0
  23. package/templates/base/automation/generators/code-mapper.js +308 -0
  24. package/templates/base/automation/generators/index-builder.js +321 -0
  25. package/templates/base/automation/hooks/post-commit.sh +83 -0
  26. package/templates/base/automation/hooks/pre-commit.sh +103 -0
  27. package/templates/base/ci-templates/README.md +108 -108
  28. package/templates/base/ci-templates/github-actions/context-check.yml +144 -144
  29. package/templates/base/ci-templates/github-actions/validate-docs.yml +105 -105
  30. package/templates/base/commands/analytics.md +238 -238
  31. package/templates/base/commands/auto-sync.md +172 -0
  32. package/templates/base/commands/collab.md +194 -194
  33. package/templates/base/commands/help.md +450 -450
  34. package/templates/base/commands/rpi-implement.md +115 -115
  35. package/templates/base/commands/rpi-plan.md +93 -93
  36. package/templates/base/commands/rpi-research.md +88 -88
  37. package/templates/base/commands/session-resume.md +144 -0
  38. package/templates/base/commands/session-save.md +112 -0
  39. package/templates/base/commands/validate-all.md +77 -77
  40. package/templates/base/commands/verify-docs-current.md +86 -86
  41. package/templates/base/config/base.json +57 -57
  42. package/templates/base/config/environments/development.json +13 -13
  43. package/templates/base/config/environments/production.json +17 -17
  44. package/templates/base/config/environments/staging.json +13 -13
  45. package/templates/base/config/local.json.example +21 -21
  46. package/templates/base/context/.meta/generated-at.json +18 -0
  47. package/templates/base/context/ARCHITECTURE_SNAPSHOT.md +156 -156
  48. package/templates/base/context/CODE_TO_WORKFLOW_MAP.md +94 -94
  49. package/templates/base/context/FILE_OWNERSHIP.md +57 -0
  50. package/templates/base/context/INTEGRATION_POINTS.md +92 -0
  51. package/templates/base/context/KNOWN_GOTCHAS.md +195 -195
  52. package/templates/base/context/TESTING_MAP.md +95 -0
  53. package/templates/base/context/WORKFLOW_INDEX.md +129 -129
  54. package/templates/base/context/workflows/WORKFLOW_TEMPLATE.md +294 -294
  55. package/templates/base/indexes/agents/CAPABILITY_MATRIX.md +255 -255
  56. package/templates/base/indexes/agents/CATEGORY_INDEX.md +44 -44
  57. package/templates/base/indexes/code/CATEGORY_INDEX.md +38 -38
  58. package/templates/base/indexes/routing/CATEGORY_INDEX.md +39 -39
  59. package/templates/base/indexes/search/CATEGORY_INDEX.md +39 -39
  60. package/templates/base/indexes/workflows/CATEGORY_INDEX.md +38 -38
  61. package/templates/base/knowledge/README.md +98 -98
  62. package/templates/base/knowledge/sessions/README.md +88 -88
  63. package/templates/base/knowledge/sessions/TEMPLATE.md +150 -150
  64. package/templates/base/knowledge/shared/decisions/0001-adopt-context-engineering.md +144 -144
  65. package/templates/base/knowledge/shared/decisions/README.md +49 -49
  66. package/templates/base/knowledge/shared/decisions/TEMPLATE.md +123 -123
  67. package/templates/base/knowledge/shared/patterns/README.md +62 -62
  68. package/templates/base/knowledge/shared/patterns/TEMPLATE.md +120 -120
  69. package/templates/base/plans/PLAN_TEMPLATE.md +250 -250
  70. package/templates/base/research/RESEARCH_TEMPLATE.md +153 -153
  71. package/templates/base/schemas/agent.schema.json +141 -141
  72. package/templates/base/schemas/anchors.schema.json +54 -0
  73. package/templates/base/schemas/automation.schema.json +93 -0
  74. package/templates/base/schemas/command.schema.json +134 -134
  75. package/templates/base/schemas/hashes.schema.json +40 -0
  76. package/templates/base/schemas/manifest.schema.json +117 -117
  77. package/templates/base/schemas/plan.schema.json +136 -136
  78. package/templates/base/schemas/research.schema.json +115 -115
  79. package/templates/base/schemas/roles.schema.json +34 -0
  80. package/templates/base/schemas/session.schema.json +77 -0
  81. package/templates/base/schemas/settings.schema.json +244 -244
  82. package/templates/base/schemas/staleness.schema.json +53 -0
  83. package/templates/base/schemas/team-config.schema.json +42 -0
  84. package/templates/base/schemas/workflow.schema.json +126 -126
  85. package/templates/base/session/checkpoints/.gitkeep +2 -0
  86. package/templates/base/session/current/state.json +20 -0
  87. package/templates/base/session/history/.gitkeep +2 -0
  88. package/templates/base/settings.json +79 -57
  89. package/templates/base/standards/COMPATIBILITY.md +219 -219
  90. package/templates/base/standards/EXTENSION_GUIDELINES.md +280 -280
  91. package/templates/base/standards/QUALITY_CHECKLIST.md +211 -211
  92. package/templates/base/standards/README.md +66 -66
  93. package/templates/base/sync/anchors.json +6 -0
  94. package/templates/base/sync/hashes.json +6 -0
  95. package/templates/base/sync/staleness.json +10 -0
  96. package/templates/base/team/README.md +168 -168
  97. package/templates/base/team/config.json +79 -79
  98. package/templates/base/team/roles.json +145 -145
  99. package/templates/base/tools/bin/claude-context.js +151 -151
  100. package/templates/base/tools/lib/anchor-resolver.js +276 -0
  101. package/templates/base/tools/lib/config-loader.js +363 -363
  102. package/templates/base/tools/lib/detector.js +350 -350
  103. package/templates/base/tools/lib/diagnose.js +206 -206
  104. package/templates/base/tools/lib/drift-detector.js +373 -0
  105. package/templates/base/tools/lib/errors.js +199 -199
  106. package/templates/base/tools/lib/index.js +36 -24
  107. package/templates/base/tools/lib/init.js +192 -192
  108. package/templates/base/tools/lib/logger.js +230 -230
  109. package/templates/base/tools/lib/placeholder.js +201 -201
  110. package/templates/base/tools/lib/session-manager.js +354 -0
  111. package/templates/base/tools/lib/validate.js +521 -521
  112. package/templates/base/tools/package.json +49 -49
@@ -0,0 +1,93 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://claude-context.dev/schemas/automation.schema.json",
4
+ "title": "Claude Context Automation Configuration",
5
+ "description": "Schema for automation/config.json",
6
+ "type": "object",
7
+ "required": ["version"],
8
+ "properties": {
9
+ "$schema": {
10
+ "type": "string",
11
+ "description": "JSON Schema reference"
12
+ },
13
+ "version": {
14
+ "type": "string",
15
+ "pattern": "^\\d+\\.\\d+\\.\\d+$",
16
+ "description": "Configuration version"
17
+ },
18
+ "generators": {
19
+ "type": "object",
20
+ "description": "Auto-generation settings",
21
+ "properties": {
22
+ "code_mapper": {
23
+ "type": "object",
24
+ "properties": {
25
+ "enabled": { "type": "boolean", "default": true },
26
+ "output": { "type": "string" },
27
+ "include_patterns": {
28
+ "type": "array",
29
+ "items": { "type": "string" }
30
+ },
31
+ "exclude_patterns": {
32
+ "type": "array",
33
+ "items": { "type": "string" }
34
+ }
35
+ }
36
+ },
37
+ "index_builder": {
38
+ "type": "object",
39
+ "properties": {
40
+ "enabled": { "type": "boolean", "default": true },
41
+ "rebuild_on_change": { "type": "boolean", "default": true },
42
+ "indexes": {
43
+ "type": "array",
44
+ "items": { "type": "string" }
45
+ }
46
+ }
47
+ }
48
+ }
49
+ },
50
+ "hooks": {
51
+ "type": "object",
52
+ "description": "Git hook settings",
53
+ "properties": {
54
+ "pre_commit": {
55
+ "type": "object",
56
+ "properties": {
57
+ "enabled": { "type": "boolean", "default": true },
58
+ "check_drift": { "type": "boolean", "default": true },
59
+ "block_on_stale": { "type": "boolean", "default": false }
60
+ }
61
+ },
62
+ "post_commit": {
63
+ "type": "object",
64
+ "properties": {
65
+ "enabled": { "type": "boolean", "default": true },
66
+ "rebuild_code_map": { "type": "boolean", "default": true },
67
+ "update_hashes": { "type": "boolean", "default": true }
68
+ }
69
+ }
70
+ }
71
+ },
72
+ "sync": {
73
+ "type": "object",
74
+ "description": "Synchronization settings",
75
+ "properties": {
76
+ "semantic_anchors": { "type": "boolean", "default": true },
77
+ "hash_algorithm": {
78
+ "type": "string",
79
+ "enum": ["md5", "sha1", "sha256"],
80
+ "default": "md5"
81
+ },
82
+ "staleness_thresholds": {
83
+ "type": "object",
84
+ "properties": {
85
+ "warning_days": { "type": "integer", "default": 30 },
86
+ "stale_days": { "type": "integer", "default": 90 }
87
+ }
88
+ }
89
+ }
90
+ }
91
+ },
92
+ "additionalProperties": false
93
+ }
@@ -1,134 +1,134 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "https://claude-context.dev/schemas/command.schema.json",
4
- "title": "Claude Context Command",
5
- "description": "Schema for command manifest files",
6
- "type": "object",
7
- "required": ["name", "version", "description"],
8
- "properties": {
9
- "$schema": {
10
- "type": "string",
11
- "description": "JSON Schema reference"
12
- },
13
- "name": {
14
- "type": "string",
15
- "pattern": "^[a-z0-9-]+$",
16
- "minLength": 1,
17
- "maxLength": 50,
18
- "description": "Command identifier (without leading slash)"
19
- },
20
- "version": {
21
- "type": "string",
22
- "pattern": "^\\d+\\.\\d+\\.\\d+$",
23
- "description": "Command version (semver)"
24
- },
25
- "displayName": {
26
- "type": "string",
27
- "maxLength": 100,
28
- "description": "Human-readable command name"
29
- },
30
- "description": {
31
- "type": "string",
32
- "maxLength": 500,
33
- "description": "Brief description of command purpose"
34
- },
35
- "category": {
36
- "type": "string",
37
- "enum": [
38
- "rpi-orchestration",
39
- "validation",
40
- "system",
41
- "debugging",
42
- "documentation",
43
- "extension-management",
44
- "collaboration",
45
- "custom"
46
- ],
47
- "description": "Command category"
48
- },
49
- "syntax": {
50
- "type": "string",
51
- "description": "Command syntax pattern (e.g., '/command [arg1] [--flag]')"
52
- },
53
- "arguments": {
54
- "type": "array",
55
- "items": {
56
- "type": "object",
57
- "properties": {
58
- "name": { "type": "string" },
59
- "type": {
60
- "type": "string",
61
- "enum": ["string", "number", "boolean", "file", "directory"]
62
- },
63
- "required": { "type": "boolean", "default": false },
64
- "description": { "type": "string" },
65
- "default": {}
66
- },
67
- "required": ["name", "type", "description"]
68
- },
69
- "description": "Command arguments"
70
- },
71
- "flags": {
72
- "type": "array",
73
- "items": {
74
- "type": "object",
75
- "properties": {
76
- "name": { "type": "string" },
77
- "short": { "type": "string", "maxLength": 1 },
78
- "type": { "type": "string", "enum": ["boolean", "string", "number"] },
79
- "description": { "type": "string" },
80
- "default": {}
81
- },
82
- "required": ["name", "description"]
83
- },
84
- "description": "Command flags/options"
85
- },
86
- "context_budget_estimate": {
87
- "type": "string",
88
- "description": "Estimated token usage (e.g., '50K tokens')"
89
- },
90
- "typical_context_usage": {
91
- "type": "string",
92
- "pattern": "^\\d+%$",
93
- "description": "Typical usage as percentage (e.g., '25%')"
94
- },
95
- "prerequisites": {
96
- "type": "array",
97
- "items": { "type": "string" },
98
- "description": "Required conditions before running"
99
- },
100
- "outputs": {
101
- "type": "array",
102
- "items": { "type": "string" },
103
- "description": "What this command produces"
104
- },
105
- "next_commands": {
106
- "type": "array",
107
- "items": { "type": "string" },
108
- "description": "Suggested follow-up commands"
109
- },
110
- "related_agents": {
111
- "type": "array",
112
- "items": { "type": "string" },
113
- "description": "Related agents"
114
- },
115
- "examples": {
116
- "type": "array",
117
- "items": {
118
- "type": "object",
119
- "properties": {
120
- "command": { "type": "string" },
121
- "description": { "type": "string" }
122
- },
123
- "required": ["command", "description"]
124
- },
125
- "description": "Usage examples"
126
- },
127
- "exit_criteria": {
128
- "type": "array",
129
- "items": { "type": "string" },
130
- "description": "Checklist for command completion"
131
- }
132
- },
133
- "additionalProperties": false
134
- }
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://claude-context.dev/schemas/command.schema.json",
4
+ "title": "Claude Context Command",
5
+ "description": "Schema for command manifest files",
6
+ "type": "object",
7
+ "required": ["name", "version", "description"],
8
+ "properties": {
9
+ "$schema": {
10
+ "type": "string",
11
+ "description": "JSON Schema reference"
12
+ },
13
+ "name": {
14
+ "type": "string",
15
+ "pattern": "^[a-z0-9-]+$",
16
+ "minLength": 1,
17
+ "maxLength": 50,
18
+ "description": "Command identifier (without leading slash)"
19
+ },
20
+ "version": {
21
+ "type": "string",
22
+ "pattern": "^\\d+\\.\\d+\\.\\d+$",
23
+ "description": "Command version (semver)"
24
+ },
25
+ "displayName": {
26
+ "type": "string",
27
+ "maxLength": 100,
28
+ "description": "Human-readable command name"
29
+ },
30
+ "description": {
31
+ "type": "string",
32
+ "maxLength": 500,
33
+ "description": "Brief description of command purpose"
34
+ },
35
+ "category": {
36
+ "type": "string",
37
+ "enum": [
38
+ "rpi-orchestration",
39
+ "validation",
40
+ "system",
41
+ "debugging",
42
+ "documentation",
43
+ "extension-management",
44
+ "collaboration",
45
+ "custom"
46
+ ],
47
+ "description": "Command category"
48
+ },
49
+ "syntax": {
50
+ "type": "string",
51
+ "description": "Command syntax pattern (e.g., '/command [arg1] [--flag]')"
52
+ },
53
+ "arguments": {
54
+ "type": "array",
55
+ "items": {
56
+ "type": "object",
57
+ "properties": {
58
+ "name": { "type": "string" },
59
+ "type": {
60
+ "type": "string",
61
+ "enum": ["string", "number", "boolean", "file", "directory"]
62
+ },
63
+ "required": { "type": "boolean", "default": false },
64
+ "description": { "type": "string" },
65
+ "default": {}
66
+ },
67
+ "required": ["name", "type", "description"]
68
+ },
69
+ "description": "Command arguments"
70
+ },
71
+ "flags": {
72
+ "type": "array",
73
+ "items": {
74
+ "type": "object",
75
+ "properties": {
76
+ "name": { "type": "string" },
77
+ "short": { "type": "string", "maxLength": 1 },
78
+ "type": { "type": "string", "enum": ["boolean", "string", "number"] },
79
+ "description": { "type": "string" },
80
+ "default": {}
81
+ },
82
+ "required": ["name", "description"]
83
+ },
84
+ "description": "Command flags/options"
85
+ },
86
+ "context_budget_estimate": {
87
+ "type": "string",
88
+ "description": "Estimated token usage (e.g., '50K tokens')"
89
+ },
90
+ "typical_context_usage": {
91
+ "type": "string",
92
+ "pattern": "^\\d+%$",
93
+ "description": "Typical usage as percentage (e.g., '25%')"
94
+ },
95
+ "prerequisites": {
96
+ "type": "array",
97
+ "items": { "type": "string" },
98
+ "description": "Required conditions before running"
99
+ },
100
+ "outputs": {
101
+ "type": "array",
102
+ "items": { "type": "string" },
103
+ "description": "What this command produces"
104
+ },
105
+ "next_commands": {
106
+ "type": "array",
107
+ "items": { "type": "string" },
108
+ "description": "Suggested follow-up commands"
109
+ },
110
+ "related_agents": {
111
+ "type": "array",
112
+ "items": { "type": "string" },
113
+ "description": "Related agents"
114
+ },
115
+ "examples": {
116
+ "type": "array",
117
+ "items": {
118
+ "type": "object",
119
+ "properties": {
120
+ "command": { "type": "string" },
121
+ "description": { "type": "string" }
122
+ },
123
+ "required": ["command", "description"]
124
+ },
125
+ "description": "Usage examples"
126
+ },
127
+ "exit_criteria": {
128
+ "type": "array",
129
+ "items": { "type": "string" },
130
+ "description": "Checklist for command completion"
131
+ }
132
+ },
133
+ "additionalProperties": false
134
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://claude-context.dev/schemas/hashes.schema.json",
4
+ "title": "Claude Context File Hashes",
5
+ "description": "Schema for sync/hashes.json - content hashes for drift detection",
6
+ "type": "object",
7
+ "required": ["version"],
8
+ "properties": {
9
+ "$schema": {
10
+ "type": "string",
11
+ "description": "JSON Schema reference"
12
+ },
13
+ "version": {
14
+ "type": "string",
15
+ "pattern": "^\\d+\\.\\d+\\.\\d+$"
16
+ },
17
+ "description": {
18
+ "type": "string"
19
+ },
20
+ "generatedAt": {
21
+ "type": ["string", "null"],
22
+ "format": "date-time"
23
+ },
24
+ "files": {
25
+ "type": "object",
26
+ "additionalProperties": {
27
+ "type": "object",
28
+ "properties": {
29
+ "hash": { "type": "string" },
30
+ "updatedAt": {
31
+ "type": "string",
32
+ "format": "date-time"
33
+ }
34
+ },
35
+ "required": ["hash"]
36
+ }
37
+ }
38
+ },
39
+ "additionalProperties": false
40
+ }
@@ -1,117 +1,117 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "https://claude-context.dev/schemas/manifest.schema.json",
4
- "title": "Claude Context Manifest",
5
- "description": "Root manifest for Claude context engineering installation",
6
- "type": "object",
7
- "required": ["name", "version"],
8
- "properties": {
9
- "$schema": {
10
- "type": "string",
11
- "description": "JSON Schema reference"
12
- },
13
- "name": {
14
- "type": "string",
15
- "pattern": "^[a-z0-9-]+$",
16
- "minLength": 1,
17
- "maxLength": 100,
18
- "description": "Project context name (lowercase, hyphens allowed)"
19
- },
20
- "version": {
21
- "type": "string",
22
- "pattern": "^\\d+\\.\\d+\\.\\d+$",
23
- "description": "Semantic version of this context installation"
24
- },
25
- "claude_context_version": {
26
- "type": "string",
27
- "description": "Compatible claude-context template version (semver range)"
28
- },
29
- "description": {
30
- "type": "string",
31
- "maxLength": 500,
32
- "description": "Brief description of the project context"
33
- },
34
- "repository": {
35
- "type": "string",
36
- "format": "uri",
37
- "description": "Repository URL"
38
- },
39
- "author": {
40
- "oneOf": [
41
- { "type": "string" },
42
- {
43
- "type": "object",
44
- "properties": {
45
- "name": { "type": "string" },
46
- "email": { "type": "string", "format": "email" },
47
- "url": { "type": "string", "format": "uri" }
48
- },
49
- "required": ["name"]
50
- }
51
- ],
52
- "description": "Author information"
53
- },
54
- "license": {
55
- "type": "string",
56
- "description": "SPDX license identifier"
57
- },
58
- "keywords": {
59
- "type": "array",
60
- "items": { "type": "string" },
61
- "maxItems": 20,
62
- "description": "Keywords for discovery"
63
- },
64
- "agents": {
65
- "type": "array",
66
- "items": { "type": "string" },
67
- "description": "List of agent names included"
68
- },
69
- "commands": {
70
- "type": "array",
71
- "items": { "type": "string" },
72
- "description": "List of command names included"
73
- },
74
- "workflows": {
75
- "type": "array",
76
- "items": { "type": "string" },
77
- "description": "List of workflow names documented"
78
- },
79
- "extensions": {
80
- "type": "array",
81
- "items": { "type": "string" },
82
- "description": "Installed extension identifiers"
83
- },
84
- "dependencies": {
85
- "type": "object",
86
- "additionalProperties": { "type": "string" },
87
- "description": "Extension dependencies with version ranges"
88
- },
89
- "config": {
90
- "type": "object",
91
- "description": "Default configuration overrides",
92
- "properties": {
93
- "context_budget": {
94
- "type": "object",
95
- "properties": {
96
- "max_tokens": { "type": "integer" },
97
- "target_utilization": { "type": "number" },
98
- "compact_trigger": { "type": "number" }
99
- }
100
- },
101
- "rpi": {
102
- "type": "object",
103
- "properties": {
104
- "require_human_approval": { "type": "boolean" },
105
- "auto_doc_update": { "type": "boolean" }
106
- }
107
- }
108
- }
109
- },
110
- "scripts": {
111
- "type": "object",
112
- "additionalProperties": { "type": "string" },
113
- "description": "Custom scripts (init, validate, etc.)"
114
- }
115
- },
116
- "additionalProperties": false
117
- }
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "https://claude-context.dev/schemas/manifest.schema.json",
4
+ "title": "Claude Context Manifest",
5
+ "description": "Root manifest for Claude context engineering installation",
6
+ "type": "object",
7
+ "required": ["name", "version"],
8
+ "properties": {
9
+ "$schema": {
10
+ "type": "string",
11
+ "description": "JSON Schema reference"
12
+ },
13
+ "name": {
14
+ "type": "string",
15
+ "pattern": "^[a-z0-9-]+$",
16
+ "minLength": 1,
17
+ "maxLength": 100,
18
+ "description": "Project context name (lowercase, hyphens allowed)"
19
+ },
20
+ "version": {
21
+ "type": "string",
22
+ "pattern": "^\\d+\\.\\d+\\.\\d+$",
23
+ "description": "Semantic version of this context installation"
24
+ },
25
+ "claude_context_version": {
26
+ "type": "string",
27
+ "description": "Compatible claude-context template version (semver range)"
28
+ },
29
+ "description": {
30
+ "type": "string",
31
+ "maxLength": 500,
32
+ "description": "Brief description of the project context"
33
+ },
34
+ "repository": {
35
+ "type": "string",
36
+ "format": "uri",
37
+ "description": "Repository URL"
38
+ },
39
+ "author": {
40
+ "oneOf": [
41
+ { "type": "string" },
42
+ {
43
+ "type": "object",
44
+ "properties": {
45
+ "name": { "type": "string" },
46
+ "email": { "type": "string", "format": "email" },
47
+ "url": { "type": "string", "format": "uri" }
48
+ },
49
+ "required": ["name"]
50
+ }
51
+ ],
52
+ "description": "Author information"
53
+ },
54
+ "license": {
55
+ "type": "string",
56
+ "description": "SPDX license identifier"
57
+ },
58
+ "keywords": {
59
+ "type": "array",
60
+ "items": { "type": "string" },
61
+ "maxItems": 20,
62
+ "description": "Keywords for discovery"
63
+ },
64
+ "agents": {
65
+ "type": "array",
66
+ "items": { "type": "string" },
67
+ "description": "List of agent names included"
68
+ },
69
+ "commands": {
70
+ "type": "array",
71
+ "items": { "type": "string" },
72
+ "description": "List of command names included"
73
+ },
74
+ "workflows": {
75
+ "type": "array",
76
+ "items": { "type": "string" },
77
+ "description": "List of workflow names documented"
78
+ },
79
+ "extensions": {
80
+ "type": "array",
81
+ "items": { "type": "string" },
82
+ "description": "Installed extension identifiers"
83
+ },
84
+ "dependencies": {
85
+ "type": "object",
86
+ "additionalProperties": { "type": "string" },
87
+ "description": "Extension dependencies with version ranges"
88
+ },
89
+ "config": {
90
+ "type": "object",
91
+ "description": "Default configuration overrides",
92
+ "properties": {
93
+ "context_budget": {
94
+ "type": "object",
95
+ "properties": {
96
+ "max_tokens": { "type": "integer" },
97
+ "target_utilization": { "type": "number" },
98
+ "compact_trigger": { "type": "number" }
99
+ }
100
+ },
101
+ "rpi": {
102
+ "type": "object",
103
+ "properties": {
104
+ "require_human_approval": { "type": "boolean" },
105
+ "auto_doc_update": { "type": "boolean" }
106
+ }
107
+ }
108
+ }
109
+ },
110
+ "scripts": {
111
+ "type": "object",
112
+ "additionalProperties": { "type": "string" },
113
+ "description": "Custom scripts (init, validate, etc.)"
114
+ }
115
+ },
116
+ "additionalProperties": false
117
+ }