@hivehub/rulebook 5.5.1 → 5.7.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/.claude/commands/rulebook-learn-capture.md +41 -48
- package/.claude/commands/rulebook-learn-list.md +13 -13
- package/README.md +332 -394
- package/dist/cli/commands/context-intelligence.d.ts +0 -1
- package/dist/cli/commands/context-intelligence.d.ts.map +1 -1
- package/dist/cli/commands/context-intelligence.js +12 -33
- package/dist/cli/commands/context-intelligence.js.map +1 -1
- package/dist/cli/commands/index.d.ts +4 -7
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +4 -7
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +40 -81
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/mcp.d.ts +0 -1
- package/dist/cli/commands/mcp.d.ts.map +1 -1
- package/dist/cli/commands/mcp.js +1 -7
- package/dist/cli/commands/mcp.js.map +1 -1
- package/dist/cli/commands/memory.d.ts +7 -1
- package/dist/cli/commands/memory.d.ts.map +1 -1
- package/dist/cli/commands/memory.js +51 -57
- package/dist/cli/commands/memory.js.map +1 -1
- package/dist/cli/commands/misc.d.ts +1 -15
- package/dist/cli/commands/misc.d.ts.map +1 -1
- package/dist/cli/commands/misc.js +36 -215
- package/dist/cli/commands/misc.js.map +1 -1
- package/dist/cli/commands/plans.d.ts +0 -6
- package/dist/cli/commands/plans.d.ts.map +1 -1
- package/dist/cli/commands/plans.js +9 -77
- package/dist/cli/commands/plans.js.map +1 -1
- package/dist/cli/commands/skills.js +6 -6
- package/dist/cli/commands/skills.js.map +1 -1
- package/dist/cli/commands/task.js +4 -4
- package/dist/cli/commands/task.js.map +1 -1
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +122 -52
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/prompts.d.ts.map +1 -1
- package/dist/cli/prompts.js +1 -78
- package/dist/cli/prompts.js.map +1 -1
- package/dist/core/claude/claude-mcp.d.ts +59 -0
- package/dist/core/claude/claude-mcp.d.ts.map +1 -0
- package/dist/core/claude/claude-mcp.js +220 -0
- package/dist/core/claude/claude-mcp.js.map +1 -0
- package/dist/core/claude/claude-md-generator.d.ts +52 -0
- package/dist/core/claude/claude-md-generator.d.ts.map +1 -0
- package/dist/core/claude/claude-md-generator.js +104 -0
- package/dist/core/claude/claude-md-generator.js.map +1 -0
- package/dist/core/claude/claude-settings-manager.d.ts +44 -0
- package/dist/core/claude/claude-settings-manager.d.ts.map +1 -0
- package/dist/core/claude/claude-settings-manager.js +194 -0
- package/dist/core/claude/claude-settings-manager.js.map +1 -0
- package/dist/core/claude-settings-manager.d.ts.map +1 -1
- package/dist/core/claude-settings-manager.js +9 -3
- package/dist/core/claude-settings-manager.js.map +1 -1
- package/dist/core/console/cli-bridge.d.ts +113 -0
- package/dist/core/console/cli-bridge.d.ts.map +1 -0
- package/dist/core/console/cli-bridge.js +1094 -0
- package/dist/core/console/cli-bridge.js.map +1 -0
- package/dist/core/detect/detector.d.ts +35 -0
- package/dist/core/detect/detector.d.ts.map +1 -0
- package/dist/core/detect/detector.js +541 -0
- package/dist/core/detect/detector.js.map +1 -0
- package/dist/core/docs/docs-generator.d.ts +9 -0
- package/dist/core/docs/docs-generator.d.ts.map +1 -0
- package/dist/core/docs/docs-generator.js +531 -0
- package/dist/core/docs/docs-generator.js.map +1 -0
- package/dist/core/docs/mcp-reference-generator.d.ts +13 -0
- package/dist/core/docs/mcp-reference-generator.d.ts.map +1 -0
- package/dist/core/docs/mcp-reference-generator.js +66 -0
- package/dist/core/docs/mcp-reference-generator.js.map +1 -0
- package/dist/core/generators/generator.d.ts +54 -0
- package/dist/core/generators/generator.d.ts.map +1 -0
- package/dist/core/generators/generator.js +1041 -0
- package/dist/core/generators/generator.js.map +1 -0
- package/dist/core/generators/gitignore-generator.d.ts +13 -0
- package/dist/core/generators/gitignore-generator.d.ts.map +1 -0
- package/dist/core/generators/gitignore-generator.js +307 -0
- package/dist/core/generators/gitignore-generator.js.map +1 -0
- package/dist/core/generators/minimal-scaffolder.d.ts +8 -0
- package/dist/core/generators/minimal-scaffolder.d.ts.map +1 -0
- package/dist/core/generators/minimal-scaffolder.js +51 -0
- package/dist/core/generators/minimal-scaffolder.js.map +1 -0
- package/dist/core/generators/rules-generator.d.ts +73 -0
- package/dist/core/generators/rules-generator.d.ts.map +1 -0
- package/dist/core/generators/rules-generator.js +202 -0
- package/dist/core/generators/rules-generator.js.map +1 -0
- package/dist/core/generators/workflow-generator.d.ts +15 -0
- package/dist/core/generators/workflow-generator.d.ts.map +1 -0
- package/dist/core/generators/workflow-generator.js +390 -0
- package/dist/core/generators/workflow-generator.js.map +1 -0
- package/dist/core/ide/multi-tool-generator.d.ts +59 -0
- package/dist/core/ide/multi-tool-generator.d.ts.map +1 -0
- package/dist/core/ide/multi-tool-generator.js +157 -0
- package/dist/core/ide/multi-tool-generator.js.map +1 -0
- package/dist/core/ide/opencode-generator.d.ts +72 -0
- package/dist/core/ide/opencode-generator.d.ts.map +1 -0
- package/dist/core/ide/opencode-generator.js +450 -0
- package/dist/core/ide/opencode-generator.js.map +1 -0
- package/dist/core/merger.d.ts +1 -1
- package/dist/core/merger.d.ts.map +1 -1
- package/dist/core/merger.js +5 -5
- package/dist/core/merger.js.map +1 -1
- package/dist/core/migrator.d.ts +0 -1
- package/dist/core/migrator.d.ts.map +1 -1
- package/dist/core/migrator.js +4 -29
- package/dist/core/migrator.js.map +1 -1
- package/dist/core/quality/coverage-checker.d.ts +14 -0
- package/dist/core/quality/coverage-checker.d.ts.map +1 -0
- package/dist/core/quality/coverage-checker.js +176 -0
- package/dist/core/quality/coverage-checker.js.map +1 -0
- package/dist/core/quality/dependency-checker.d.ts +21 -0
- package/dist/core/quality/dependency-checker.d.ts.map +1 -0
- package/dist/core/quality/dependency-checker.js +247 -0
- package/dist/core/quality/dependency-checker.js.map +1 -0
- package/dist/core/quality/doctor.d.ts +19 -0
- package/dist/core/quality/doctor.d.ts.map +1 -0
- package/dist/core/quality/doctor.js +163 -0
- package/dist/core/quality/doctor.js.map +1 -0
- package/dist/core/quality/validator.d.ts +21 -0
- package/dist/core/quality/validator.d.ts.map +1 -0
- package/dist/core/quality/validator.js +177 -0
- package/dist/core/quality/validator.js.map +1 -0
- package/dist/core/ralph-scripts.d.ts.map +1 -1
- package/dist/core/ralph-scripts.js +7 -6
- package/dist/core/ralph-scripts.js.map +1 -1
- package/dist/core/skills/skills-manager.d.ts +126 -0
- package/dist/core/skills/skills-manager.d.ts.map +1 -0
- package/dist/core/skills/skills-manager.js +630 -0
- package/dist/core/skills/skills-manager.js.map +1 -0
- package/dist/core/state/config-manager.d.ts +86 -0
- package/dist/core/state/config-manager.d.ts.map +1 -0
- package/dist/core/state/config-manager.js +562 -0
- package/dist/core/state/config-manager.js.map +1 -0
- package/dist/core/state/override-manager.d.ts +23 -0
- package/dist/core/state/override-manager.d.ts.map +1 -0
- package/dist/core/state/override-manager.js +82 -0
- package/dist/core/state/override-manager.js.map +1 -0
- package/dist/core/state/state-writer.d.ts +34 -0
- package/dist/core/state/state-writer.d.ts.map +1 -0
- package/dist/core/state/state-writer.js +78 -0
- package/dist/core/state/state-writer.js.map +1 -0
- package/dist/core/state/version-bumper.d.ts +19 -0
- package/dist/core/state/version-bumper.d.ts.map +1 -0
- package/dist/core/state/version-bumper.js +180 -0
- package/dist/core/state/version-bumper.js.map +1 -0
- package/dist/core/tasks/decision-manager.d.ts +25 -0
- package/dist/core/tasks/decision-manager.d.ts.map +1 -0
- package/dist/core/tasks/decision-manager.js +183 -0
- package/dist/core/tasks/decision-manager.js.map +1 -0
- package/dist/core/tasks/knowledge-manager.d.ts +24 -0
- package/dist/core/tasks/knowledge-manager.d.ts.map +1 -0
- package/dist/core/tasks/knowledge-manager.js +173 -0
- package/dist/core/tasks/knowledge-manager.js.map +1 -0
- package/dist/core/tasks/learn-manager.d.ts +27 -0
- package/dist/core/tasks/learn-manager.d.ts.map +1 -0
- package/dist/core/tasks/learn-manager.js +121 -0
- package/dist/core/tasks/learn-manager.js.map +1 -0
- package/dist/core/tasks/plans-manager.d.ts +46 -0
- package/dist/core/tasks/plans-manager.d.ts.map +1 -0
- package/dist/core/tasks/plans-manager.js +158 -0
- package/dist/core/tasks/plans-manager.js.map +1 -0
- package/dist/core/tasks/task-manager.d.ts +127 -0
- package/dist/core/tasks/task-manager.d.ts.map +1 -0
- package/dist/core/tasks/task-manager.js +607 -0
- package/dist/core/tasks/task-manager.js.map +1 -0
- package/dist/core/workspace/project-worker.d.ts +6 -6
- package/dist/core/workspace/project-worker.d.ts.map +1 -1
- package/dist/core/workspace/project-worker.js +6 -6
- package/dist/core/workspace/project-worker.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -176
- package/dist/index.js.map +1 -1
- package/dist/mcp/rulebook-server.d.ts.map +1 -1
- package/dist/mcp/rulebook-server.js +16 -960
- package/dist/mcp/rulebook-server.js.map +1 -1
- package/dist/memory/file-search.d.ts +43 -0
- package/dist/memory/file-search.d.ts.map +1 -0
- package/dist/memory/file-search.js +228 -0
- package/dist/memory/file-search.js.map +1 -0
- package/dist/memory/file-store.d.ts +99 -0
- package/dist/memory/file-store.d.ts.map +1 -0
- package/dist/memory/file-store.js +615 -0
- package/dist/memory/file-store.js.map +1 -0
- package/dist/memory/legacy-migrator.d.ts +27 -0
- package/dist/memory/legacy-migrator.d.ts.map +1 -0
- package/dist/memory/legacy-migrator.js +185 -0
- package/dist/memory/legacy-migrator.js.map +1 -0
- package/dist/memory/memory-manager.d.ts +25 -24
- package/dist/memory/memory-manager.d.ts.map +1 -1
- package/dist/memory/memory-manager.js +97 -140
- package/dist/memory/memory-manager.js.map +1 -1
- package/dist/memory/memory-types.d.ts +1 -1
- package/dist/memory/memory-types.d.ts.map +1 -1
- package/dist/types.d.ts +8 -119
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/file-system.d.ts +22 -0
- package/dist/utils/file-system.d.ts.map +1 -1
- package/dist/utils/file-system.js +31 -0
- package/dist/utils/file-system.js.map +1 -1
- package/dist/utils/git-hooks.d.ts.map +1 -1
- package/dist/utils/git-hooks.js +3 -2
- package/dist/utils/git-hooks.js.map +1 -1
- package/package.json +2 -6
- package/templates/agents/context-intelligence.md +50 -52
- package/templates/cli/OPENCODE.md +85 -18
- package/templates/commands/rulebook-learn-capture.md +41 -48
- package/templates/commands/rulebook-learn-list.md +13 -13
- package/templates/core/AGENTS_LEAN.md +0 -14
- package/templates/hooks/check-context-and-handoff.sh +74 -76
- package/templates/hooks/enforce-pre-tool.sh +70 -0
- package/templates/hooks/enforce-team-for-background-agents.sh +55 -55
- package/templates/hooks/on-compact-reinject.sh +34 -34
- package/templates/hooks/resume-from-handoff.sh +61 -61
- package/templates/hooks/terse-activate.sh +197 -197
- package/templates/hooks/terse-mode-tracker.sh +190 -187
- package/templates/ides/OPENCODE.md +63 -0
- package/templates/skills/cli/opencode/SKILL.md +82 -28
- package/.claude/commands/ralph-config.md +0 -112
- package/.claude/commands/ralph-history.md +0 -110
- package/.claude/commands/ralph-init.md +0 -72
- package/.claude/commands/ralph-pause-resume.md +0 -105
- package/.claude/commands/ralph-run.md +0 -101
- package/.claude/commands/ralph-status.md +0 -76
- package/templates/core/RALPH.md +0 -471
- package/templates/frameworks/ANGULAR.md +0 -36
- package/templates/frameworks/DJANGO.md +0 -83
- package/templates/frameworks/ELECTRON.md +0 -147
- package/templates/frameworks/FLASK.md +0 -38
- package/templates/frameworks/FLUTTER.md +0 -55
- package/templates/frameworks/JQUERY.md +0 -32
- package/templates/frameworks/LARAVEL.md +0 -38
- package/templates/frameworks/NESTJS.md +0 -43
- package/templates/frameworks/NEXTJS.md +0 -127
- package/templates/frameworks/NUXT.md +0 -40
- package/templates/frameworks/RAILS.md +0 -66
- package/templates/frameworks/REACT.md +0 -38
- package/templates/frameworks/REACT_NATIVE.md +0 -47
- package/templates/frameworks/SPRING.md +0 -39
- package/templates/frameworks/SYMFONY.md +0 -36
- package/templates/frameworks/VUE.md +0 -36
- package/templates/frameworks/ZEND.md +0 -35
- package/templates/hooks/enforce-mcp-for-tasks.sh +0 -31
- package/templates/hooks/enforce-no-deferred.sh +0 -21
- package/templates/hooks/enforce-no-shortcuts.sh +0 -31
- package/templates/ides/COPILOT.md +0 -37
- package/templates/ides/CURSOR.md +0 -43
- package/templates/ides/JETBRAINS_AI.md +0 -35
- package/templates/ides/REPLIT.md +0 -36
- package/templates/ides/TABNINE.md +0 -29
- package/templates/ides/VSCODE.md +0 -40
- package/templates/ides/WINDSURF.md +0 -36
- package/templates/ides/ZED.md +0 -32
- package/templates/ides/cursor-mdc/go.mdc +0 -24
- package/templates/ides/cursor-mdc/python.mdc +0 -24
- package/templates/ides/cursor-mdc/quality.mdc +0 -25
- package/templates/ides/cursor-mdc/ralph.mdc +0 -39
- package/templates/ides/cursor-mdc/rulebook.mdc +0 -38
- package/templates/ides/cursor-mdc/rust.mdc +0 -24
- package/templates/ides/cursor-mdc/typescript.mdc +0 -25
- package/templates/ralph/ralph-history.bat +0 -4
- package/templates/ralph/ralph-history.sh +0 -5
- package/templates/ralph/ralph-init.bat +0 -5
- package/templates/ralph/ralph-init.sh +0 -5
- package/templates/ralph/ralph-pause.bat +0 -5
- package/templates/ralph/ralph-pause.sh +0 -5
- package/templates/ralph/ralph-run.bat +0 -5
- package/templates/ralph/ralph-run.sh +0 -5
- package/templates/ralph/ralph-status.bat +0 -4
- package/templates/ralph/ralph-status.sh +0 -5
- package/templates/services/AZURE_BLOB.md +0 -184
- package/templates/services/CASSANDRA.md +0 -239
- package/templates/services/DATADOG.md +0 -26
- package/templates/services/DOCKER.md +0 -124
- package/templates/services/DOCKER_COMPOSE.md +0 -168
- package/templates/services/DYNAMODB.md +0 -308
- package/templates/services/ELASTICSEARCH.md +0 -347
- package/templates/services/GCS.md +0 -178
- package/templates/services/HELM.md +0 -194
- package/templates/services/INFLUXDB.md +0 -265
- package/templates/services/KAFKA.md +0 -341
- package/templates/services/KUBERNETES.md +0 -208
- package/templates/services/MARIADB.md +0 -183
- package/templates/services/MEMCACHED.md +0 -242
- package/templates/services/MINIO.md +0 -201
- package/templates/services/MONGODB.md +0 -268
- package/templates/services/MYSQL.md +0 -358
- package/templates/services/NEO4J.md +0 -247
- package/templates/services/OPENTELEMETRY.md +0 -25
- package/templates/services/ORACLE.md +0 -290
- package/templates/services/PINO.md +0 -24
- package/templates/services/POSTGRESQL.md +0 -326
- package/templates/services/PROMETHEUS.md +0 -33
- package/templates/services/RABBITMQ.md +0 -286
- package/templates/services/REDIS.md +0 -292
- package/templates/services/S3.md +0 -298
- package/templates/services/SENTRY.md +0 -23
- package/templates/services/SQLITE.md +0 -294
- package/templates/services/SQLSERVER.md +0 -294
- package/templates/services/WINSTON.md +0 -30
- package/templates/skills/frameworks/angular/SKILL.md +0 -46
- package/templates/skills/frameworks/django/SKILL.md +0 -93
- package/templates/skills/frameworks/electron/SKILL.md +0 -157
- package/templates/skills/frameworks/flask/SKILL.md +0 -48
- package/templates/skills/frameworks/flutter/SKILL.md +0 -65
- package/templates/skills/frameworks/jquery/SKILL.md +0 -42
- package/templates/skills/frameworks/laravel/SKILL.md +0 -48
- package/templates/skills/frameworks/nestjs/SKILL.md +0 -53
- package/templates/skills/frameworks/nextjs/SKILL.md +0 -137
- package/templates/skills/frameworks/nuxt/SKILL.md +0 -50
- package/templates/skills/frameworks/rails/SKILL.md +0 -76
- package/templates/skills/frameworks/react/SKILL.md +0 -48
- package/templates/skills/frameworks/react-native/SKILL.md +0 -57
- package/templates/skills/frameworks/spring/SKILL.md +0 -49
- package/templates/skills/frameworks/symfony/SKILL.md +0 -46
- package/templates/skills/frameworks/vue/SKILL.md +0 -46
- package/templates/skills/frameworks/zend/SKILL.md +0 -45
- package/templates/skills/services/azure-blob/SKILL.md +0 -194
- package/templates/skills/services/cassandra/SKILL.md +0 -249
- package/templates/skills/services/dynamodb/SKILL.md +0 -318
- package/templates/skills/services/elasticsearch/SKILL.md +0 -357
- package/templates/skills/services/gcs/SKILL.md +0 -188
- package/templates/skills/services/influxdb/SKILL.md +0 -275
- package/templates/skills/services/kafka/SKILL.md +0 -351
- package/templates/skills/services/mariadb/SKILL.md +0 -193
- package/templates/skills/services/memcached/SKILL.md +0 -252
- package/templates/skills/services/minio/SKILL.md +0 -211
- package/templates/skills/services/mongodb/SKILL.md +0 -278
- package/templates/skills/services/mysql/SKILL.md +0 -368
- package/templates/skills/services/neo4j/SKILL.md +0 -257
- package/templates/skills/services/oracle/SKILL.md +0 -300
- package/templates/skills/services/postgresql/SKILL.md +0 -336
- package/templates/skills/services/rabbitmq/SKILL.md +0 -296
- package/templates/skills/services/redis/SKILL.md +0 -302
- package/templates/skills/services/s3/SKILL.md +0 -308
- package/templates/skills/services/sqlite/SKILL.md +0 -304
- package/templates/skills/services/sqlserver/SKILL.md +0 -304
- package/templates/skills/workflows/ralph/SETUP.md +0 -228
- package/templates/skills/workflows/ralph/SKILL.md +0 -309
- package/templates/skills/workflows/ralph/install.sh +0 -87
- package/templates/skills/workflows/ralph/manifest.json +0 -158
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"detector.js","sourceRoot":"","sources":["../../../src/core/detect/detector.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface DocsConfig {
|
|
2
|
+
projectName: string;
|
|
3
|
+
description: string;
|
|
4
|
+
author: string;
|
|
5
|
+
email?: string;
|
|
6
|
+
license: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function generateDocsStructure(config: DocsConfig, targetDir?: string, mode?: 'full' | 'minimal'): Promise<string[]>;
|
|
9
|
+
//# sourceMappingURL=docs-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-generator.d.ts","sourceRoot":"","sources":["../../../src/core/docs/docs-generator.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,UAAU,EAClB,SAAS,GAAE,MAAsB,EACjC,IAAI,GAAE,MAAM,GAAG,SAAkB,GAChC,OAAO,CAAC,MAAM,EAAE,CAAC,CAgFnB"}
|
|
@@ -0,0 +1,531 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import { writeFile, ensureDir, fileExists } from '../../utils/file-system.js';
|
|
3
|
+
export async function generateDocsStructure(config, targetDir = process.cwd(), mode = 'full') {
|
|
4
|
+
const generatedFiles = [];
|
|
5
|
+
// Create /docs directory structure
|
|
6
|
+
const docsDir = path.join(targetDir, 'docs');
|
|
7
|
+
await ensureDir(docsDir);
|
|
8
|
+
await ensureDir(path.join(docsDir, 'specs'));
|
|
9
|
+
await ensureDir(path.join(docsDir, 'guides'));
|
|
10
|
+
await ensureDir(path.join(docsDir, 'diagrams'));
|
|
11
|
+
await ensureDir(path.join(docsDir, 'benchmarks'));
|
|
12
|
+
await ensureDir(path.join(docsDir, 'versions'));
|
|
13
|
+
await ensureDir(path.join(docsDir, 'examples'));
|
|
14
|
+
// Generate root README (concise version)
|
|
15
|
+
const readmePath = path.join(targetDir, 'README.md');
|
|
16
|
+
if (!(await fileExists(readmePath))) {
|
|
17
|
+
const readmeContent = generateRootReadme(config, mode);
|
|
18
|
+
await writeFile(readmePath, readmeContent);
|
|
19
|
+
generatedFiles.push(readmePath);
|
|
20
|
+
}
|
|
21
|
+
// Generate ROADMAP.md
|
|
22
|
+
const roadmapPath = path.join(docsDir, 'ROADMAP.md');
|
|
23
|
+
if (!(await fileExists(roadmapPath))) {
|
|
24
|
+
const roadmap = generateRoadmap(config);
|
|
25
|
+
await writeFile(roadmapPath, roadmap);
|
|
26
|
+
generatedFiles.push(roadmapPath);
|
|
27
|
+
}
|
|
28
|
+
// Generate ARCHITECTURE.md
|
|
29
|
+
const archPath = path.join(docsDir, 'ARCHITECTURE.md');
|
|
30
|
+
if (!(await fileExists(archPath))) {
|
|
31
|
+
const architecture = generateArchitecture(config);
|
|
32
|
+
await writeFile(archPath, architecture);
|
|
33
|
+
generatedFiles.push(archPath);
|
|
34
|
+
}
|
|
35
|
+
// Generate DEVELOPMENT.md
|
|
36
|
+
const developmentPath = path.join(docsDir, 'DEVELOPMENT.md');
|
|
37
|
+
if (!(await fileExists(developmentPath))) {
|
|
38
|
+
const development = generateDevelopment(config);
|
|
39
|
+
await writeFile(developmentPath, development);
|
|
40
|
+
generatedFiles.push(developmentPath);
|
|
41
|
+
}
|
|
42
|
+
if (mode === 'full') {
|
|
43
|
+
// Generate DAG.md
|
|
44
|
+
const dagPath = path.join(docsDir, 'DAG.md');
|
|
45
|
+
if (!(await fileExists(dagPath))) {
|
|
46
|
+
const dag = generateDAG(config);
|
|
47
|
+
await writeFile(dagPath, dag);
|
|
48
|
+
generatedFiles.push(dagPath);
|
|
49
|
+
}
|
|
50
|
+
// Generate CONTRIBUTING.md
|
|
51
|
+
const contributingPath = path.join(targetDir, 'CONTRIBUTING.md');
|
|
52
|
+
if (!(await fileExists(contributingPath))) {
|
|
53
|
+
const contributing = generateContributing(config);
|
|
54
|
+
await writeFile(contributingPath, contributing);
|
|
55
|
+
generatedFiles.push(contributingPath);
|
|
56
|
+
}
|
|
57
|
+
// Generate CODE_OF_CONDUCT.md
|
|
58
|
+
const cocPath = path.join(targetDir, 'CODE_OF_CONDUCT.md');
|
|
59
|
+
if (!(await fileExists(cocPath))) {
|
|
60
|
+
const coc = generateCodeOfConduct(config);
|
|
61
|
+
await writeFile(cocPath, coc);
|
|
62
|
+
generatedFiles.push(cocPath);
|
|
63
|
+
}
|
|
64
|
+
// Generate SECURITY.md
|
|
65
|
+
const securityPath = path.join(targetDir, 'SECURITY.md');
|
|
66
|
+
if (!(await fileExists(securityPath))) {
|
|
67
|
+
const security = generateSecurity(config);
|
|
68
|
+
await writeFile(securityPath, security);
|
|
69
|
+
generatedFiles.push(securityPath);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return generatedFiles;
|
|
73
|
+
}
|
|
74
|
+
function generateRootReadme(config, mode) {
|
|
75
|
+
const documentationLinks = [
|
|
76
|
+
'- [Architecture](docs/ARCHITECTURE.md)',
|
|
77
|
+
'- [Development Guide](docs/DEVELOPMENT.md)',
|
|
78
|
+
'- [Roadmap](docs/ROADMAP.md)',
|
|
79
|
+
];
|
|
80
|
+
if (mode === 'full') {
|
|
81
|
+
documentationLinks.push('- [Component DAG](docs/DAG.md)');
|
|
82
|
+
}
|
|
83
|
+
const communityLinks = [];
|
|
84
|
+
if (mode === 'full') {
|
|
85
|
+
communityLinks.push('- [Contributing](CONTRIBUTING.md)');
|
|
86
|
+
communityLinks.push('- [Code of Conduct](CODE_OF_CONDUCT.md)');
|
|
87
|
+
communityLinks.push('- [Security Policy](SECURITY.md)');
|
|
88
|
+
}
|
|
89
|
+
return `# ${config.projectName}
|
|
90
|
+
|
|
91
|
+
> ${config.description}
|
|
92
|
+
|
|
93
|
+
## Quick Start
|
|
94
|
+
|
|
95
|
+
1. Install dependencies
|
|
96
|
+
2. Run tests and linting
|
|
97
|
+
3. Start the application or run your CI pipeline
|
|
98
|
+
|
|
99
|
+
## Commands to Know
|
|
100
|
+
|
|
101
|
+
- \`npm install\`
|
|
102
|
+
- \`npm test\`
|
|
103
|
+
- \`npm run lint\`
|
|
104
|
+
|
|
105
|
+
## Documentation
|
|
106
|
+
|
|
107
|
+
${documentationLinks.join('\n')}
|
|
108
|
+
|
|
109
|
+
${communityLinks.length > 0
|
|
110
|
+
? `## Community & Support
|
|
111
|
+
|
|
112
|
+
${communityLinks.join('\n')}
|
|
113
|
+
|
|
114
|
+
`
|
|
115
|
+
: ''}## License
|
|
116
|
+
|
|
117
|
+
This project is licensed under the ${config.license} License.
|
|
118
|
+
`;
|
|
119
|
+
}
|
|
120
|
+
function generateRoadmap(config) {
|
|
121
|
+
return `# ${config.projectName} - Roadmap
|
|
122
|
+
|
|
123
|
+
## Overview
|
|
124
|
+
|
|
125
|
+
This document outlines the development roadmap for ${config.projectName}.
|
|
126
|
+
|
|
127
|
+
## Phase 1: Foundation
|
|
128
|
+
|
|
129
|
+
- [ ] Core implementation
|
|
130
|
+
- [ ] Basic features
|
|
131
|
+
- [ ] Initial testing
|
|
132
|
+
- [ ] Documentation setup
|
|
133
|
+
|
|
134
|
+
## Phase 2: Features
|
|
135
|
+
|
|
136
|
+
- [ ] Feature 1
|
|
137
|
+
- [ ] Feature 2
|
|
138
|
+
- [ ] Feature 3
|
|
139
|
+
|
|
140
|
+
## Phase 3: Polish & Release
|
|
141
|
+
|
|
142
|
+
- [ ] Performance optimization
|
|
143
|
+
- [ ] Comprehensive testing
|
|
144
|
+
- [ ] Documentation completion
|
|
145
|
+
- [ ] Release v1.0.0
|
|
146
|
+
|
|
147
|
+
## Future Enhancements
|
|
148
|
+
|
|
149
|
+
### v2.0.0
|
|
150
|
+
- [ ] Advanced features
|
|
151
|
+
- [ ] Extended capabilities
|
|
152
|
+
- [ ] Enterprise support
|
|
153
|
+
|
|
154
|
+
## Metrics
|
|
155
|
+
|
|
156
|
+
- **Current Version**: 0.1.0
|
|
157
|
+
- **Test Coverage**: Target 95%+
|
|
158
|
+
- **Documentation**: In Progress
|
|
159
|
+
|
|
160
|
+
## Timeline
|
|
161
|
+
|
|
162
|
+
- **Phase 1**: Q1 2024
|
|
163
|
+
- **Phase 2**: Q2 2024
|
|
164
|
+
- **Phase 3**: Q3 2024
|
|
165
|
+
- **v2.0.0**: Q4 2024
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
*Last Updated: ${new Date().toISOString().split('T')[0]}*
|
|
169
|
+
`;
|
|
170
|
+
}
|
|
171
|
+
function generateArchitecture(config) {
|
|
172
|
+
return `# ${config.projectName} - Architecture
|
|
173
|
+
|
|
174
|
+
## Overview
|
|
175
|
+
|
|
176
|
+
This document describes the system architecture of ${config.projectName}.
|
|
177
|
+
|
|
178
|
+
## System Components
|
|
179
|
+
|
|
180
|
+
### Core Modules
|
|
181
|
+
|
|
182
|
+
1. **Module A**
|
|
183
|
+
- Responsibility: [Description]
|
|
184
|
+
- Key Functions: [List]
|
|
185
|
+
- Dependencies: [List]
|
|
186
|
+
|
|
187
|
+
2. **Module B**
|
|
188
|
+
- Responsibility: [Description]
|
|
189
|
+
- Key Functions: [List]
|
|
190
|
+
- Dependencies: [List]
|
|
191
|
+
|
|
192
|
+
## Data Flow
|
|
193
|
+
|
|
194
|
+
\`\`\`
|
|
195
|
+
[Input] → [Processing] → [Output]
|
|
196
|
+
\`\`\`
|
|
197
|
+
|
|
198
|
+
## Technology Stack
|
|
199
|
+
|
|
200
|
+
- **Language**: [Primary Language]
|
|
201
|
+
- **Framework**: [If applicable]
|
|
202
|
+
- **Database**: [If applicable]
|
|
203
|
+
- **Tools**: [Build tools, linters, etc.]
|
|
204
|
+
|
|
205
|
+
## Design Patterns
|
|
206
|
+
|
|
207
|
+
- Pattern 1: [Description]
|
|
208
|
+
- Pattern 2: [Description]
|
|
209
|
+
|
|
210
|
+
## Security Considerations
|
|
211
|
+
|
|
212
|
+
- Authentication: [Method]
|
|
213
|
+
- Authorization: [Method]
|
|
214
|
+
- Data Protection: [Method]
|
|
215
|
+
|
|
216
|
+
## Performance
|
|
217
|
+
|
|
218
|
+
- Expected Throughput: [Metrics]
|
|
219
|
+
- Latency: [Targets]
|
|
220
|
+
- Scalability: [Approach]
|
|
221
|
+
|
|
222
|
+
## Future Enhancements
|
|
223
|
+
|
|
224
|
+
- Enhancement 1
|
|
225
|
+
- Enhancement 2
|
|
226
|
+
|
|
227
|
+
---
|
|
228
|
+
*Last Updated: ${new Date().toISOString().split('T')[0]}*
|
|
229
|
+
`;
|
|
230
|
+
}
|
|
231
|
+
function generateDAG(config) {
|
|
232
|
+
return `# ${config.projectName} - Component Dependencies (DAG)
|
|
233
|
+
|
|
234
|
+
## Overview
|
|
235
|
+
|
|
236
|
+
This document describes the dependency graph (DAG) between components in ${config.projectName}.
|
|
237
|
+
|
|
238
|
+
## Component Graph
|
|
239
|
+
|
|
240
|
+
\`\`\`
|
|
241
|
+
Core
|
|
242
|
+
├── Utils
|
|
243
|
+
├── Types
|
|
244
|
+
└── Config
|
|
245
|
+
|
|
246
|
+
Features
|
|
247
|
+
├── Feature A
|
|
248
|
+
│ └── Core
|
|
249
|
+
└── Feature B
|
|
250
|
+
├── Core
|
|
251
|
+
└── Feature A
|
|
252
|
+
\`\`\`
|
|
253
|
+
|
|
254
|
+
## Dependency Rules
|
|
255
|
+
|
|
256
|
+
1. **No Circular Dependencies**: Components must form a DAG
|
|
257
|
+
2. **Layer Separation**: Higher layers depend on lower layers only
|
|
258
|
+
3. **Interface Boundaries**: Use interfaces for cross-component communication
|
|
259
|
+
|
|
260
|
+
## Layer Architecture
|
|
261
|
+
|
|
262
|
+
### Layer 1: Foundation
|
|
263
|
+
- Utils
|
|
264
|
+
- Types
|
|
265
|
+
- Config
|
|
266
|
+
|
|
267
|
+
### Layer 2: Core
|
|
268
|
+
- Core logic
|
|
269
|
+
- Data models
|
|
270
|
+
- Base services
|
|
271
|
+
|
|
272
|
+
### Layer 3: Features
|
|
273
|
+
- Feature implementations
|
|
274
|
+
- Business logic
|
|
275
|
+
- API endpoints
|
|
276
|
+
|
|
277
|
+
### Layer 4: Presentation
|
|
278
|
+
- UI components
|
|
279
|
+
- CLI interface
|
|
280
|
+
- API controllers
|
|
281
|
+
|
|
282
|
+
## Verification
|
|
283
|
+
|
|
284
|
+
Run dependency check:
|
|
285
|
+
\`\`\`bash
|
|
286
|
+
# Add your dependency check command here
|
|
287
|
+
\`\`\`
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
*Last Updated: ${new Date().toISOString().split('T')[0]}*
|
|
291
|
+
`;
|
|
292
|
+
}
|
|
293
|
+
function generateContributing(config) {
|
|
294
|
+
return `# Contributing to ${config.projectName}
|
|
295
|
+
|
|
296
|
+
Thank you for your interest in contributing to ${config.projectName}!
|
|
297
|
+
|
|
298
|
+
## Code of Conduct
|
|
299
|
+
|
|
300
|
+
This project adheres to a Code of Conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to ${config.email || 'the maintainers'}.
|
|
301
|
+
|
|
302
|
+
## How to Contribute
|
|
303
|
+
|
|
304
|
+
### Reporting Bugs
|
|
305
|
+
|
|
306
|
+
- Use GitHub Issues
|
|
307
|
+
- Include reproduction steps
|
|
308
|
+
- Provide system information
|
|
309
|
+
- Include error messages and logs
|
|
310
|
+
|
|
311
|
+
### Suggesting Features
|
|
312
|
+
|
|
313
|
+
- Open a GitHub Discussion or Issue
|
|
314
|
+
- Describe the use case
|
|
315
|
+
- Explain why it would be valuable
|
|
316
|
+
- Consider proposing an implementation
|
|
317
|
+
|
|
318
|
+
### Pull Requests
|
|
319
|
+
|
|
320
|
+
1. **Fork the repository**
|
|
321
|
+
2. **Create a branch**: \`git checkout -b feature/my-feature\`
|
|
322
|
+
3. **Make changes**: Follow coding standards from AGENTS.md
|
|
323
|
+
4. **Write tests**: Ensure 95%+ coverage
|
|
324
|
+
5. **Run quality checks**:
|
|
325
|
+
\`\`\`bash
|
|
326
|
+
npm run type-check
|
|
327
|
+
npm run lint
|
|
328
|
+
npm test
|
|
329
|
+
npm run test:coverage
|
|
330
|
+
\`\`\`
|
|
331
|
+
6. **Commit**: Use conventional commits
|
|
332
|
+
7. **Push**: \`git push origin feature/my-feature\`
|
|
333
|
+
8. **Create PR**: Describe changes clearly
|
|
334
|
+
|
|
335
|
+
## Development Setup
|
|
336
|
+
|
|
337
|
+
\`\`\`bash
|
|
338
|
+
# Clone repository
|
|
339
|
+
git clone https://github.com/hivellm/${config.projectName}.git
|
|
340
|
+
cd ${config.projectName}
|
|
341
|
+
|
|
342
|
+
# Install dependencies
|
|
343
|
+
npm install
|
|
344
|
+
|
|
345
|
+
# Run development mode
|
|
346
|
+
npm run dev
|
|
347
|
+
|
|
348
|
+
# Run tests
|
|
349
|
+
npm test
|
|
350
|
+
\`\`\`
|
|
351
|
+
|
|
352
|
+
## Coding Standards
|
|
353
|
+
|
|
354
|
+
- Follow AGENTS.md standards
|
|
355
|
+
- Write tests for all new code (95%+ coverage)
|
|
356
|
+
- Document public APIs
|
|
357
|
+
- Use TypeScript strict mode
|
|
358
|
+
- Format with Prettier
|
|
359
|
+
- Lint with ESLint
|
|
360
|
+
|
|
361
|
+
## Commit Message Format
|
|
362
|
+
|
|
363
|
+
Use conventional commits:
|
|
364
|
+
|
|
365
|
+
\`\`\`
|
|
366
|
+
feat: add new feature
|
|
367
|
+
fix: fix bug
|
|
368
|
+
docs: update documentation
|
|
369
|
+
test: add tests
|
|
370
|
+
chore: update dependencies
|
|
371
|
+
\`\`\`
|
|
372
|
+
|
|
373
|
+
## Review Process
|
|
374
|
+
|
|
375
|
+
1. Automated checks must pass (CI/CD)
|
|
376
|
+
2. Code review by maintainer
|
|
377
|
+
3. Address feedback
|
|
378
|
+
4. Approval and merge
|
|
379
|
+
|
|
380
|
+
## License
|
|
381
|
+
|
|
382
|
+
By contributing, you agree that your contributions will be licensed under the ${config.license} License.
|
|
383
|
+
|
|
384
|
+
---
|
|
385
|
+
*For questions, contact ${config.email || config.author}*
|
|
386
|
+
`;
|
|
387
|
+
}
|
|
388
|
+
function generateCodeOfConduct(config) {
|
|
389
|
+
return `# Code of Conduct
|
|
390
|
+
|
|
391
|
+
## Our Pledge
|
|
392
|
+
|
|
393
|
+
We as members, contributors, and leaders pledge to make participation in ${config.projectName} a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.
|
|
394
|
+
|
|
395
|
+
## Our Standards
|
|
396
|
+
|
|
397
|
+
Examples of behavior that contributes to a positive environment:
|
|
398
|
+
|
|
399
|
+
- Using welcoming and inclusive language
|
|
400
|
+
- Being respectful of differing viewpoints and experiences
|
|
401
|
+
- Gracefully accepting constructive criticism
|
|
402
|
+
- Focusing on what is best for the community
|
|
403
|
+
- Showing empathy towards other community members
|
|
404
|
+
|
|
405
|
+
Examples of unacceptable behavior:
|
|
406
|
+
|
|
407
|
+
- The use of sexualized language or imagery
|
|
408
|
+
- Trolling, insulting/derogatory comments, and personal or political attacks
|
|
409
|
+
- Public or private harassment
|
|
410
|
+
- Publishing others' private information without explicit permission
|
|
411
|
+
- Other conduct which could reasonably be considered inappropriate
|
|
412
|
+
|
|
413
|
+
## Enforcement Responsibilities
|
|
414
|
+
|
|
415
|
+
Project maintainers are responsible for clarifying and enforcing standards of acceptable behavior and will take appropriate and fair corrective action in response to any behavior that they deem inappropriate, threatening, offensive, or harmful.
|
|
416
|
+
|
|
417
|
+
## Scope
|
|
418
|
+
|
|
419
|
+
This Code of Conduct applies within all community spaces, and also applies when an individual is officially representing the community in public spaces.
|
|
420
|
+
|
|
421
|
+
## Enforcement
|
|
422
|
+
|
|
423
|
+
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported to ${config.email || config.author}. All complaints will be reviewed and investigated promptly and fairly.
|
|
424
|
+
|
|
425
|
+
## Attribution
|
|
426
|
+
|
|
427
|
+
This Code of Conduct is adapted from the Contributor Covenant, version 2.1.
|
|
428
|
+
|
|
429
|
+
---
|
|
430
|
+
*For questions, contact ${config.email || config.author}*
|
|
431
|
+
`;
|
|
432
|
+
}
|
|
433
|
+
function generateSecurity(config) {
|
|
434
|
+
return `# Security Policy
|
|
435
|
+
|
|
436
|
+
## Supported Versions
|
|
437
|
+
|
|
438
|
+
| Version | Supported |
|
|
439
|
+
| ------- | ------------------ |
|
|
440
|
+
| 0.4.x | :white_check_mark: |
|
|
441
|
+
| 0.3.x | :white_check_mark: |
|
|
442
|
+
| 0.2.x | :x: |
|
|
443
|
+
| < 0.2 | :x: |
|
|
444
|
+
|
|
445
|
+
## Reporting a Vulnerability
|
|
446
|
+
|
|
447
|
+
**Please do not report security vulnerabilities through public GitHub issues.**
|
|
448
|
+
|
|
449
|
+
Instead, please report them via email to ${config.email || config.author}.
|
|
450
|
+
|
|
451
|
+
You should receive a response within 48 hours. If for some reason you do not, please follow up to ensure we received your original message.
|
|
452
|
+
|
|
453
|
+
## What to Include
|
|
454
|
+
|
|
455
|
+
Please include the following information:
|
|
456
|
+
|
|
457
|
+
- Type of issue (e.g. buffer overflow, SQL injection, cross-site scripting, etc.)
|
|
458
|
+
- Full paths of source file(s) related to the issue
|
|
459
|
+
- Location of the affected source code (tag/branch/commit or direct URL)
|
|
460
|
+
- Any special configuration required to reproduce the issue
|
|
461
|
+
- Step-by-step instructions to reproduce the issue
|
|
462
|
+
- Proof-of-concept or exploit code (if possible)
|
|
463
|
+
- Impact of the issue, including how an attacker might exploit it
|
|
464
|
+
|
|
465
|
+
## Disclosure Policy
|
|
466
|
+
|
|
467
|
+
When we receive a security bug report, we will:
|
|
468
|
+
|
|
469
|
+
1. Confirm the problem and determine affected versions
|
|
470
|
+
2. Audit code to find any similar problems
|
|
471
|
+
3. Prepare fixes for all supported versions
|
|
472
|
+
4. Release new versions ASAP
|
|
473
|
+
|
|
474
|
+
## Security Update Process
|
|
475
|
+
|
|
476
|
+
Security updates will be released as:
|
|
477
|
+
|
|
478
|
+
- **Critical**: Within 24 hours
|
|
479
|
+
- **High**: Within 7 days
|
|
480
|
+
- **Medium**: Within 30 days
|
|
481
|
+
- **Low**: Next regular release
|
|
482
|
+
|
|
483
|
+
## Comments
|
|
484
|
+
|
|
485
|
+
We appreciate your efforts to responsibly disclose your findings and will make every effort to acknowledge your contributions.
|
|
486
|
+
|
|
487
|
+
---
|
|
488
|
+
*For security concerns, contact ${config.email || config.author}*
|
|
489
|
+
`;
|
|
490
|
+
}
|
|
491
|
+
function generateDevelopment(config) {
|
|
492
|
+
return `# ${config.projectName} - Development Guide
|
|
493
|
+
|
|
494
|
+
## Prerequisites
|
|
495
|
+
|
|
496
|
+
- Node.js 18+ (or language-specific tooling)
|
|
497
|
+
- Package manager (npm, pnpm, yarn)
|
|
498
|
+
- Git
|
|
499
|
+
|
|
500
|
+
## Setup
|
|
501
|
+
|
|
502
|
+
\`\`\`bash
|
|
503
|
+
git clone <repository-url>
|
|
504
|
+
cd ${config.projectName}
|
|
505
|
+
npm install
|
|
506
|
+
\`\`\`
|
|
507
|
+
|
|
508
|
+
## Quality Gates
|
|
509
|
+
|
|
510
|
+
- \`npm run lint\`
|
|
511
|
+
- \`npm run type-check\`
|
|
512
|
+
- \`npm test\`
|
|
513
|
+
- Coverage threshold: 95%
|
|
514
|
+
|
|
515
|
+
## Branch Strategy
|
|
516
|
+
|
|
517
|
+
1. Create feature branch: \`git checkout -b feature/my-feature\`
|
|
518
|
+
2. Commit with conventional commits
|
|
519
|
+
3. Open a pull request and request review
|
|
520
|
+
|
|
521
|
+
## Documentation Updates
|
|
522
|
+
|
|
523
|
+
- Update README.md for public-facing changes
|
|
524
|
+
- Document architecture changes in ARCHITECTURE.md
|
|
525
|
+
- Record roadmap updates in ROADMAP.md
|
|
526
|
+
|
|
527
|
+
---
|
|
528
|
+
*Last Updated: ${new Date().toISOString().split('T')[0]}*
|
|
529
|
+
`;
|
|
530
|
+
}
|
|
531
|
+
//# sourceMappingURL=docs-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-generator.js","sourceRoot":"","sources":["../../../src/core/docs/docs-generator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v5.3.0 F9 — MCP tool reference auto-generation.
|
|
3
|
+
*
|
|
4
|
+
* Walks `.mcp.json` and `.cursor/mcp.json` to discover configured MCP
|
|
5
|
+
* servers and emits `.claude/rules/mcp-tool-reference.md` listing
|
|
6
|
+
* the servers so the model prefers direct MCP calls over spawning
|
|
7
|
+
* sub-agents for tasks an MCP tool can handle.
|
|
8
|
+
*/
|
|
9
|
+
export declare function generateMcpReference(projectRoot: string): Promise<{
|
|
10
|
+
path: string;
|
|
11
|
+
written: boolean;
|
|
12
|
+
}>;
|
|
13
|
+
//# sourceMappingURL=mcp-reference-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-reference-generator.d.ts","sourceRoot":"","sources":["../../../src/core/docs/mcp-reference-generator.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AAEH,wBAAsB,oBAAoB,CACxC,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CA0D7C"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import { fileExists, readFile, writeFile, ensureDir } from '../../utils/file-system.js';
|
|
3
|
+
import { GENERATED_SENTINEL } from '../generators/rules-generator.js';
|
|
4
|
+
/**
|
|
5
|
+
* v5.3.0 F9 — MCP tool reference auto-generation.
|
|
6
|
+
*
|
|
7
|
+
* Walks `.mcp.json` and `.cursor/mcp.json` to discover configured MCP
|
|
8
|
+
* servers and emits `.claude/rules/mcp-tool-reference.md` listing
|
|
9
|
+
* the servers so the model prefers direct MCP calls over spawning
|
|
10
|
+
* sub-agents for tasks an MCP tool can handle.
|
|
11
|
+
*/
|
|
12
|
+
export async function generateMcpReference(projectRoot) {
|
|
13
|
+
const rulesDir = path.join(projectRoot, '.claude', 'rules');
|
|
14
|
+
const targetPath = path.join(rulesDir, 'mcp-tool-reference.md');
|
|
15
|
+
// Skip if user has adopted the file
|
|
16
|
+
if (await fileExists(targetPath)) {
|
|
17
|
+
const existing = await readFile(targetPath);
|
|
18
|
+
if (!existing.includes(GENERATED_SENTINEL)) {
|
|
19
|
+
return { path: targetPath, written: false };
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
// Discover MCP configs
|
|
23
|
+
const servers = [];
|
|
24
|
+
for (const configRel of ['.mcp.json', '.cursor/mcp.json', '.claude/mcp.json']) {
|
|
25
|
+
const configPath = path.join(projectRoot, configRel);
|
|
26
|
+
if (!(await fileExists(configPath)))
|
|
27
|
+
continue;
|
|
28
|
+
try {
|
|
29
|
+
const raw = JSON.parse(await readFile(configPath));
|
|
30
|
+
const mcpServers = raw.mcpServers ?? raw.servers ?? {};
|
|
31
|
+
for (const name of Object.keys(mcpServers)) {
|
|
32
|
+
if (!servers.some((s) => s.name === name)) {
|
|
33
|
+
servers.push({ name, source: configRel });
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
// Malformed JSON — skip
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
if (servers.length === 0) {
|
|
42
|
+
// No MCP servers detected — do not generate a file
|
|
43
|
+
return { path: targetPath, written: false };
|
|
44
|
+
}
|
|
45
|
+
await ensureDir(rulesDir);
|
|
46
|
+
const lines = [
|
|
47
|
+
`<!-- ${GENERATED_SENTINEL} — delete this comment to prevent regeneration on \`rulebook update\` -->`,
|
|
48
|
+
'',
|
|
49
|
+
'# MCP tool reference',
|
|
50
|
+
'',
|
|
51
|
+
'This project has the following MCP servers configured. **Prefer using',
|
|
52
|
+
'MCP tools directly** instead of spawning sub-agents or running shell',
|
|
53
|
+
'commands when the equivalent MCP tool exists.',
|
|
54
|
+
'',
|
|
55
|
+
'| Server | Source |',
|
|
56
|
+
'|--------|--------|',
|
|
57
|
+
...servers.map((s) => `| \`mcp__${s.name}__*\` | \`${s.source}\` |`),
|
|
58
|
+
'',
|
|
59
|
+
"Use `mcp__<server>__<tool>` syntax in tool calls. Check the server's",
|
|
60
|
+
'tool list for available operations before falling back to shell commands.',
|
|
61
|
+
'',
|
|
62
|
+
];
|
|
63
|
+
await writeFile(targetPath, lines.join('\n'));
|
|
64
|
+
return { path: targetPath, written: true };
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=mcp-reference-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-reference-generator.js","sourceRoot":"","sources":["../../../src/core/docs/mcp-reference-generator.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAEtE;;;;;;;GAOG;AAEH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,WAAmB;IAEnB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;IAEhE,oCAAoC;IACpC,IAAI,MAAM,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QACjC,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC3C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,uBAAuB;IACvB,MAAM,OAAO,GAA4C,EAAE,CAAC;IAE5D,KAAK,MAAM,SAAS,IAAI,CAAC,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,CAAC,EAAE,CAAC;QAC9E,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;QACrD,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;YAAE,SAAS;QAC9C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;YACvD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC3C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;oBAC1C,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;gBAC5C,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,mDAAmD;QACnD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC9C,CAAC;IAED,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAC;IAE1B,MAAM,KAAK,GAAG;QACZ,QAAQ,kBAAkB,2EAA2E;QACrG,EAAE;QACF,sBAAsB;QACtB,EAAE;QACF,uEAAuE;QACvE,sEAAsE;QACtE,+CAA+C;QAC/C,EAAE;QACF,qBAAqB;QACrB,qBAAqB;QACrB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,IAAI,aAAa,CAAC,CAAC,MAAM,MAAM,CAAC;QACpE,EAAE;QACF,sEAAsE;QACtE,2EAA2E;QAC3E,EAAE;KACH,CAAC;IAEF,MAAM,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAC7C,CAAC"}
|