@shrkcrft/mcp-server 0.1.0-alpha.2
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/LICENSE +21 -0
- package/README.md +15 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +6 -0
- package/dist/main.d.ts +3 -0
- package/dist/main.d.ts.map +1 -0
- package/dist/main.js +43 -0
- package/dist/resources/build-resource-list.d.ts +14 -0
- package/dist/resources/build-resource-list.d.ts.map +1 -0
- package/dist/resources/build-resource-list.js +56 -0
- package/dist/resources/index.d.ts +4 -0
- package/dist/resources/index.d.ts.map +1 -0
- package/dist/resources/index.js +3 -0
- package/dist/resources/read-resource.d.ts +16 -0
- package/dist/resources/read-resource.d.ts.map +1 -0
- package/dist/resources/read-resource.js +97 -0
- package/dist/resources/resource-uris.d.ts +14 -0
- package/dist/resources/resource-uris.d.ts.map +1 -0
- package/dist/resources/resource-uris.js +38 -0
- package/dist/server/create-mcp-server.d.ts +55 -0
- package/dist/server/create-mcp-server.d.ts.map +1 -0
- package/dist/server/create-mcp-server.js +203 -0
- package/dist/server/http-transport.d.ts +24 -0
- package/dist/server/http-transport.d.ts.map +1 -0
- package/dist/server/http-transport.js +71 -0
- package/dist/server/mcp-server-config.d.ts +10 -0
- package/dist/server/mcp-server-config.d.ts.map +1 -0
- package/dist/server/mcp-server-config.js +3 -0
- package/dist/server/sharkcraft-watcher.d.ts +18 -0
- package/dist/server/sharkcraft-watcher.d.ts.map +1 -0
- package/dist/server/sharkcraft-watcher.js +60 -0
- package/dist/server/tool-definition.d.ts +56 -0
- package/dist/server/tool-definition.d.ts.map +1 -0
- package/dist/server/tool-definition.js +1 -0
- package/dist/server/tool-input-validators.d.ts +18 -0
- package/dist/server/tool-input-validators.d.ts.map +1 -0
- package/dist/server/tool-input-validators.js +115 -0
- package/dist/tools/acceptance-replay.tool.d.ts +3 -0
- package/dist/tools/acceptance-replay.tool.d.ts.map +1 -0
- package/dist/tools/acceptance-replay.tool.js +53 -0
- package/dist/tools/adoption-checkpoint.tool.d.ts +3 -0
- package/dist/tools/adoption-checkpoint.tool.d.ts.map +1 -0
- package/dist/tools/adoption-checkpoint.tool.js +49 -0
- package/dist/tools/agent-brief-chunks.tool.d.ts +6 -0
- package/dist/tools/agent-brief-chunks.tool.d.ts.map +1 -0
- package/dist/tools/agent-brief-chunks.tool.js +326 -0
- package/dist/tools/agent-brief.tool.d.ts +3 -0
- package/dist/tools/agent-brief.tool.d.ts.map +1 -0
- package/dist/tools/agent-brief.tool.js +44 -0
- package/dist/tools/all-tools.d.ts +3 -0
- package/dist/tools/all-tools.d.ts.map +1 -0
- package/dist/tools/all-tools.js +403 -0
- package/dist/tools/architecture-map.tool.d.ts +3 -0
- package/dist/tools/architecture-map.tool.d.ts.map +1 -0
- package/dist/tools/architecture-map.tool.js +22 -0
- package/dist/tools/area-explore.tool.d.ts +3 -0
- package/dist/tools/area-explore.tool.d.ts.map +1 -0
- package/dist/tools/area-explore.tool.js +32 -0
- package/dist/tools/area-map.tool.d.ts +3 -0
- package/dist/tools/area-map.tool.d.ts.map +1 -0
- package/dist/tools/area-map.tool.js +9 -0
- package/dist/tools/bundle-diff.tool.d.ts +3 -0
- package/dist/tools/bundle-diff.tool.d.ts.map +1 -0
- package/dist/tools/bundle-diff.tool.js +37 -0
- package/dist/tools/bundle-replay.tool.d.ts +3 -0
- package/dist/tools/bundle-replay.tool.d.ts.map +1 -0
- package/dist/tools/bundle-replay.tool.js +19 -0
- package/dist/tools/change-intent.tool.d.ts +3 -0
- package/dist/tools/change-intent.tool.d.ts.map +1 -0
- package/dist/tools/change-intent.tool.js +18 -0
- package/dist/tools/check-boundaries.tool.d.ts +3 -0
- package/dist/tools/check-boundaries.tool.d.ts.map +1 -0
- package/dist/tools/check-boundaries.tool.js +37 -0
- package/dist/tools/ci-permissions-fix.tool.d.ts +3 -0
- package/dist/tools/ci-permissions-fix.tool.d.ts.map +1 -0
- package/dist/tools/ci-permissions-fix.tool.js +32 -0
- package/dist/tools/ci-permissions.tool.d.ts +3 -0
- package/dist/tools/ci-permissions.tool.d.ts.map +1 -0
- package/dist/tools/ci-permissions.tool.js +26 -0
- package/dist/tools/ci-scaffold-preview.tool.d.ts +3 -0
- package/dist/tools/ci-scaffold-preview.tool.d.ts.map +1 -0
- package/dist/tools/ci-scaffold-preview.tool.js +63 -0
- package/dist/tools/command-catalog.tool.d.ts +27 -0
- package/dist/tools/command-catalog.tool.d.ts.map +1 -0
- package/dist/tools/command-catalog.tool.js +147 -0
- package/dist/tools/construct-adoption-diff.tool.d.ts +3 -0
- package/dist/tools/construct-adoption-diff.tool.d.ts.map +1 -0
- package/dist/tools/construct-adoption-diff.tool.js +26 -0
- package/dist/tools/construct-adoption.tool.d.ts +4 -0
- package/dist/tools/construct-adoption.tool.d.ts.map +1 -0
- package/dist/tools/construct-adoption.tool.js +37 -0
- package/dist/tools/construct-inference.tool.d.ts +3 -0
- package/dist/tools/construct-inference.tool.d.ts.map +1 -0
- package/dist/tools/construct-inference.tool.js +26 -0
- package/dist/tools/constructs.tool.d.ts +7 -0
- package/dist/tools/constructs.tool.d.ts.map +1 -0
- package/dist/tools/constructs.tool.js +79 -0
- package/dist/tools/create-generation-plan.tool.d.ts +3 -0
- package/dist/tools/create-generation-plan.tool.d.ts.map +1 -0
- package/dist/tools/create-generation-plan.tool.js +48 -0
- package/dist/tools/create-pipeline-plan.tool.d.ts +3 -0
- package/dist/tools/create-pipeline-plan.tool.d.ts.map +1 -0
- package/dist/tools/create-pipeline-plan.tool.js +41 -0
- package/dist/tools/dashboard-summary.tool.d.ts +3 -0
- package/dist/tools/dashboard-summary.tool.d.ts.map +1 -0
- package/dist/tools/dashboard-summary.tool.js +182 -0
- package/dist/tools/dev-session.tool.d.ts +14 -0
- package/dist/tools/dev-session.tool.d.ts.map +1 -0
- package/dist/tools/dev-session.tool.js +167 -0
- package/dist/tools/diagnostics.tool.d.ts +4 -0
- package/dist/tools/diagnostics.tool.d.ts.map +1 -0
- package/dist/tools/diagnostics.tool.js +40 -0
- package/dist/tools/docs-check.tool.d.ts +4 -0
- package/dist/tools/docs-check.tool.d.ts.map +1 -0
- package/dist/tools/docs-check.tool.js +17 -0
- package/dist/tools/doctor-packs.tool.d.ts +3 -0
- package/dist/tools/doctor-packs.tool.d.ts.map +1 -0
- package/dist/tools/doctor-packs.tool.js +30 -0
- package/dist/tools/explain-generation-target.tool.d.ts +3 -0
- package/dist/tools/explain-generation-target.tool.d.ts.map +1 -0
- package/dist/tools/explain-generation-target.tool.js +49 -0
- package/dist/tools/feature-bundle.tool.d.ts +4 -0
- package/dist/tools/feature-bundle.tool.d.ts.map +1 -0
- package/dist/tools/feature-bundle.tool.js +36 -0
- package/dist/tools/get-action-hints.tool.d.ts +3 -0
- package/dist/tools/get-action-hints.tool.d.ts.map +1 -0
- package/dist/tools/get-action-hints.tool.js +43 -0
- package/dist/tools/get-agent-instructions.tool.d.ts +3 -0
- package/dist/tools/get-agent-instructions.tool.d.ts.map +1 -0
- package/dist/tools/get-agent-instructions.tool.js +9 -0
- package/dist/tools/get-ai-readiness-report.tool.d.ts +3 -0
- package/dist/tools/get-ai-readiness-report.tool.d.ts.map +1 -0
- package/dist/tools/get-ai-readiness-report.tool.js +10 -0
- package/dist/tools/get-architecture-constraints.tool.d.ts +3 -0
- package/dist/tools/get-architecture-constraints.tool.d.ts.map +1 -0
- package/dist/tools/get-architecture-constraints.tool.js +20 -0
- package/dist/tools/get-boundary-rule.tool.d.ts +3 -0
- package/dist/tools/get-boundary-rule.tool.d.ts.map +1 -0
- package/dist/tools/get-boundary-rule.tool.js +22 -0
- package/dist/tools/get-coverage-report.tool.d.ts +3 -0
- package/dist/tools/get-coverage-report.tool.d.ts.map +1 -0
- package/dist/tools/get-coverage-report.tool.js +9 -0
- package/dist/tools/get-current-tasks.tool.d.ts +3 -0
- package/dist/tools/get-current-tasks.tool.d.ts.map +1 -0
- package/dist/tools/get-current-tasks.tool.js +19 -0
- package/dist/tools/get-drift-report.tool.d.ts +3 -0
- package/dist/tools/get-drift-report.tool.d.ts.map +1 -0
- package/dist/tools/get-drift-report.tool.js +16 -0
- package/dist/tools/get-graph-node.tool.d.ts +3 -0
- package/dist/tools/get-graph-node.tool.d.ts.map +1 -0
- package/dist/tools/get-graph-node.tool.js +23 -0
- package/dist/tools/get-import-graph-summary.tool.d.ts +3 -0
- package/dist/tools/get-import-graph-summary.tool.d.ts.map +1 -0
- package/dist/tools/get-import-graph-summary.tool.js +10 -0
- package/dist/tools/get-knowledge-graph.tool.d.ts +3 -0
- package/dist/tools/get-knowledge-graph.tool.d.ts.map +1 -0
- package/dist/tools/get-knowledge-graph.tool.js +10 -0
- package/dist/tools/get-knowledge.tool.d.ts +3 -0
- package/dist/tools/get-knowledge.tool.d.ts.map +1 -0
- package/dist/tools/get-knowledge.tool.js +18 -0
- package/dist/tools/get-pack.tool.d.ts +3 -0
- package/dist/tools/get-pack.tool.d.ts.map +1 -0
- package/dist/tools/get-pack.tool.js +33 -0
- package/dist/tools/get-path-convention.tool.d.ts +3 -0
- package/dist/tools/get-path-convention.tool.d.ts.map +1 -0
- package/dist/tools/get-path-convention.tool.js +17 -0
- package/dist/tools/get-pipeline-context.tool.d.ts +3 -0
- package/dist/tools/get-pipeline-context.tool.d.ts.map +1 -0
- package/dist/tools/get-pipeline-context.tool.js +48 -0
- package/dist/tools/get-pipeline.tool.d.ts +3 -0
- package/dist/tools/get-pipeline.tool.d.ts.map +1 -0
- package/dist/tools/get-pipeline.tool.js +17 -0
- package/dist/tools/get-preset.tool.d.ts +3 -0
- package/dist/tools/get-preset.tool.d.ts.map +1 -0
- package/dist/tools/get-preset.tool.js +22 -0
- package/dist/tools/get-project-overview.tool.d.ts +3 -0
- package/dist/tools/get-project-overview.tool.d.ts.map +1 -0
- package/dist/tools/get-project-overview.tool.js +10 -0
- package/dist/tools/get-relevant-context.tool.d.ts +3 -0
- package/dist/tools/get-relevant-context.tool.d.ts.map +1 -0
- package/dist/tools/get-relevant-context.tool.js +55 -0
- package/dist/tools/get-relevant-rules.tool.d.ts +3 -0
- package/dist/tools/get-relevant-rules.tool.d.ts.map +1 -0
- package/dist/tools/get-relevant-rules.tool.js +37 -0
- package/dist/tools/get-repository-commands.tool.d.ts +3 -0
- package/dist/tools/get-repository-commands.tool.d.ts.map +1 -0
- package/dist/tools/get-repository-commands.tool.js +22 -0
- package/dist/tools/get-review-packet.tool.d.ts +3 -0
- package/dist/tools/get-review-packet.tool.d.ts.map +1 -0
- package/dist/tools/get-review-packet.tool.js +26 -0
- package/dist/tools/get-rule.tool.d.ts +3 -0
- package/dist/tools/get-rule.tool.d.ts.map +1 -0
- package/dist/tools/get-rule.tool.js +18 -0
- package/dist/tools/get-security-guidelines.tool.d.ts +3 -0
- package/dist/tools/get-security-guidelines.tool.d.ts.map +1 -0
- package/dist/tools/get-security-guidelines.tool.js +23 -0
- package/dist/tools/get-sessions.tool.d.ts +4 -0
- package/dist/tools/get-sessions.tool.d.ts.map +1 -0
- package/dist/tools/get-sessions.tool.js +41 -0
- package/dist/tools/get-task-packet.tool.d.ts +3 -0
- package/dist/tools/get-task-packet.tool.d.ts.map +1 -0
- package/dist/tools/get-task-packet.tool.js +48 -0
- package/dist/tools/get-template.tool.d.ts +3 -0
- package/dist/tools/get-template.tool.d.ts.map +1 -0
- package/dist/tools/get-template.tool.js +29 -0
- package/dist/tools/get-testing-guidelines.tool.d.ts +3 -0
- package/dist/tools/get-testing-guidelines.tool.d.ts.map +1 -0
- package/dist/tools/get-testing-guidelines.tool.js +22 -0
- package/dist/tools/graph-why.tool.d.ts +3 -0
- package/dist/tools/graph-why.tool.d.ts.map +1 -0
- package/dist/tools/graph-why.tool.js +25 -0
- package/dist/tools/impact-analysis.tool.d.ts +3 -0
- package/dist/tools/impact-analysis.tool.d.ts.map +1 -0
- package/dist/tools/impact-analysis.tool.js +43 -0
- package/dist/tools/import-graph-analysis.tool.d.ts +3 -0
- package/dist/tools/import-graph-analysis.tool.d.ts.map +1 -0
- package/dist/tools/import-graph-analysis.tool.js +9 -0
- package/dist/tools/index.d.ts +10 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +9 -0
- package/dist/tools/inspect-packs.tool.d.ts +3 -0
- package/dist/tools/inspect-packs.tool.d.ts.map +1 -0
- package/dist/tools/inspect-packs.tool.js +31 -0
- package/dist/tools/inspect-sharkcraft-setup.tool.d.ts +3 -0
- package/dist/tools/inspect-sharkcraft-setup.tool.d.ts.map +1 -0
- package/dist/tools/inspect-sharkcraft-setup.tool.js +10 -0
- package/dist/tools/inspect-workspace.tool.d.ts +3 -0
- package/dist/tools/inspect-workspace.tool.d.ts.map +1 -0
- package/dist/tools/inspect-workspace.tool.js +23 -0
- package/dist/tools/install-smoke.tool.d.ts +3 -0
- package/dist/tools/install-smoke.tool.d.ts.map +1 -0
- package/dist/tools/install-smoke.tool.js +15 -0
- package/dist/tools/list-boundary-rules.tool.d.ts +3 -0
- package/dist/tools/list-boundary-rules.tool.d.ts.map +1 -0
- package/dist/tools/list-boundary-rules.tool.js +20 -0
- package/dist/tools/list-knowledge.tool.d.ts +3 -0
- package/dist/tools/list-knowledge.tool.d.ts.map +1 -0
- package/dist/tools/list-knowledge.tool.js +46 -0
- package/dist/tools/list-packs.tool.d.ts +3 -0
- package/dist/tools/list-packs.tool.d.ts.map +1 -0
- package/dist/tools/list-packs.tool.js +19 -0
- package/dist/tools/list-path-conventions.tool.d.ts +3 -0
- package/dist/tools/list-path-conventions.tool.d.ts.map +1 -0
- package/dist/tools/list-path-conventions.tool.js +20 -0
- package/dist/tools/list-pipelines.tool.d.ts +3 -0
- package/dist/tools/list-pipelines.tool.d.ts.map +1 -0
- package/dist/tools/list-pipelines.tool.js +19 -0
- package/dist/tools/list-presets.tool.d.ts +3 -0
- package/dist/tools/list-presets.tool.d.ts.map +1 -0
- package/dist/tools/list-presets.tool.js +26 -0
- package/dist/tools/list-rules.tool.d.ts +3 -0
- package/dist/tools/list-rules.tool.d.ts.map +1 -0
- package/dist/tools/list-rules.tool.js +19 -0
- package/dist/tools/list-templates.tool.d.ts +3 -0
- package/dist/tools/list-templates.tool.d.ts.map +1 -0
- package/dist/tools/list-templates.tool.js +19 -0
- package/dist/tools/onboard-adoption-diff.tool.d.ts +3 -0
- package/dist/tools/onboard-adoption-diff.tool.d.ts.map +1 -0
- package/dist/tools/onboard-adoption-diff.tool.js +29 -0
- package/dist/tools/onboarding.tool.d.ts +7 -0
- package/dist/tools/onboarding.tool.d.ts.map +1 -0
- package/dist/tools/onboarding.tool.js +253 -0
- package/dist/tools/orchestration.tool.d.ts +4 -0
- package/dist/tools/orchestration.tool.d.ts.map +1 -0
- package/dist/tools/orchestration.tool.js +57 -0
- package/dist/tools/ownership.tool.d.ts +4 -0
- package/dist/tools/ownership.tool.d.ts.map +1 -0
- package/dist/tools/ownership.tool.js +31 -0
- package/dist/tools/pack-compat.tool.d.ts +3 -0
- package/dist/tools/pack-compat.tool.d.ts.map +1 -0
- package/dist/tools/pack-compat.tool.js +27 -0
- package/dist/tools/pack-doctor-release.tool.d.ts +3 -0
- package/dist/tools/pack-doctor-release.tool.d.ts.map +1 -0
- package/dist/tools/pack-doctor-release.tool.js +21 -0
- package/dist/tools/pack-release-check.tool.d.ts +3 -0
- package/dist/tools/pack-release-check.tool.d.ts.map +1 -0
- package/dist/tools/pack-release-check.tool.js +17 -0
- package/dist/tools/playbook-script.tool.d.ts +3 -0
- package/dist/tools/playbook-script.tool.d.ts.map +1 -0
- package/dist/tools/playbook-script.tool.js +25 -0
- package/dist/tools/playbooks.tool.d.ts +5 -0
- package/dist/tools/playbooks.tool.d.ts.map +1 -0
- package/dist/tools/playbooks.tool.js +43 -0
- package/dist/tools/policy-report.tool.d.ts +3 -0
- package/dist/tools/policy-report.tool.d.ts.map +1 -0
- package/dist/tools/policy-report.tool.js +10 -0
- package/dist/tools/preview-knowledge-propose.tool.d.ts +3 -0
- package/dist/tools/preview-knowledge-propose.tool.d.ts.map +1 -0
- package/dist/tools/preview-knowledge-propose.tool.js +44 -0
- package/dist/tools/preview-preset-application.tool.d.ts +3 -0
- package/dist/tools/preview-preset-application.tool.d.ts.map +1 -0
- package/dist/tools/preview-preset-application.tool.js +64 -0
- package/dist/tools/quality-baseline-diff.tool.d.ts +3 -0
- package/dist/tools/quality-baseline-diff.tool.d.ts.map +1 -0
- package/dist/tools/quality-baseline-diff.tool.js +18 -0
- package/dist/tools/quality-baseline.tool.d.ts +3 -0
- package/dist/tools/quality-baseline.tool.d.ts.map +1 -0
- package/dist/tools/quality-baseline.tool.js +22 -0
- package/dist/tools/quality-report.tool.d.ts +3 -0
- package/dist/tools/quality-report.tool.d.ts.map +1 -0
- package/dist/tools/quality-report.tool.js +62 -0
- package/dist/tools/r18-extras.tool.d.ts +15 -0
- package/dist/tools/r18-extras.tool.d.ts.map +1 -0
- package/dist/tools/r18-extras.tool.js +209 -0
- package/dist/tools/r19-extras.tool.d.ts +10 -0
- package/dist/tools/r19-extras.tool.d.ts.map +1 -0
- package/dist/tools/r19-extras.tool.js +117 -0
- package/dist/tools/r20-extras.tool.d.ts +4 -0
- package/dist/tools/r20-extras.tool.d.ts.map +1 -0
- package/dist/tools/r20-extras.tool.js +65 -0
- package/dist/tools/r22-extras.tool.d.ts +4 -0
- package/dist/tools/r22-extras.tool.d.ts.map +1 -0
- package/dist/tools/r22-extras.tool.js +42 -0
- package/dist/tools/r23-extras.tool.d.ts +10 -0
- package/dist/tools/r23-extras.tool.d.ts.map +1 -0
- package/dist/tools/r23-extras.tool.js +239 -0
- package/dist/tools/r24-extras.tool.d.ts +9 -0
- package/dist/tools/r24-extras.tool.d.ts.map +1 -0
- package/dist/tools/r24-extras.tool.js +144 -0
- package/dist/tools/r25-extras.tool.d.ts +11 -0
- package/dist/tools/r25-extras.tool.d.ts.map +1 -0
- package/dist/tools/r25-extras.tool.js +186 -0
- package/dist/tools/r26-ingest.tool.d.ts +10 -0
- package/dist/tools/r26-ingest.tool.d.ts.map +1 -0
- package/dist/tools/r26-ingest.tool.js +174 -0
- package/dist/tools/r26-task-context.tool.d.ts +5 -0
- package/dist/tools/r26-task-context.tool.d.ts.map +1 -0
- package/dist/tools/r26-task-context.tool.js +121 -0
- package/dist/tools/r27-polyglot.tool.d.ts +7 -0
- package/dist/tools/r27-polyglot.tool.d.ts.map +1 -0
- package/dist/tools/r27-polyglot.tool.js +139 -0
- package/dist/tools/r28-changed-boundary.tool.d.ts +3 -0
- package/dist/tools/r28-changed-boundary.tool.d.ts.map +1 -0
- package/dist/tools/r28-changed-boundary.tool.js +77 -0
- package/dist/tools/r28-helpers.tool.d.ts +5 -0
- package/dist/tools/r28-helpers.tool.d.ts.map +1 -0
- package/dist/tools/r28-helpers.tool.js +72 -0
- package/dist/tools/r28-pack-author.tool.d.ts +4 -0
- package/dist/tools/r28-pack-author.tool.d.ts.map +1 -0
- package/dist/tools/r28-pack-author.tool.js +67 -0
- package/dist/tools/r28-plugin-lifecycle.tool.d.ts +4 -0
- package/dist/tools/r28-plugin-lifecycle.tool.d.ts.map +1 -0
- package/dist/tools/r28-plugin-lifecycle.tool.js +94 -0
- package/dist/tools/r28-registry-lifecycle.tool.d.ts +3 -0
- package/dist/tools/r28-registry-lifecycle.tool.d.ts.map +1 -0
- package/dist/tools/r28-registry-lifecycle.tool.js +29 -0
- package/dist/tools/r28-runner-policy.tool.d.ts +3 -0
- package/dist/tools/r28-runner-policy.tool.d.ts.map +1 -0
- package/dist/tools/r28-runner-policy.tool.js +16 -0
- package/dist/tools/r29-doctor-suppressions.tool.d.ts +4 -0
- package/dist/tools/r29-doctor-suppressions.tool.d.ts.map +1 -0
- package/dist/tools/r29-doctor-suppressions.tool.js +66 -0
- package/dist/tools/r29-feedback.tool.d.ts +3 -0
- package/dist/tools/r29-feedback.tool.d.ts.map +1 -0
- package/dist/tools/r29-feedback.tool.js +26 -0
- package/dist/tools/r29-knowledge-rename.tool.d.ts +3 -0
- package/dist/tools/r29-knowledge-rename.tool.d.ts.map +1 -0
- package/dist/tools/r29-knowledge-rename.tool.js +51 -0
- package/dist/tools/r29-knowledge-stale.tool.d.ts +4 -0
- package/dist/tools/r29-knowledge-stale.tool.d.ts.map +1 -0
- package/dist/tools/r29-knowledge-stale.tool.js +68 -0
- package/dist/tools/r29-query-resolver.tool.d.ts +4 -0
- package/dist/tools/r29-query-resolver.tool.d.ts.map +1 -0
- package/dist/tools/r29-query-resolver.tool.js +38 -0
- package/dist/tools/r29-template-drift.tool.d.ts +3 -0
- package/dist/tools/r29-template-drift.tool.d.ts.map +1 -0
- package/dist/tools/r29-template-drift.tool.js +29 -0
- package/dist/tools/r30-feedback-rules.tool.d.ts +4 -0
- package/dist/tools/r30-feedback-rules.tool.d.ts.map +1 -0
- package/dist/tools/r30-feedback-rules.tool.js +47 -0
- package/dist/tools/r30-fuzzy-impact.tool.d.ts +3 -0
- package/dist/tools/r30-fuzzy-impact.tool.d.ts.map +1 -0
- package/dist/tools/r30-fuzzy-impact.tool.js +44 -0
- package/dist/tools/r31-changes-pr-ci.tool.d.ts +5 -0
- package/dist/tools/r31-changes-pr-ci.tool.d.ts.map +1 -0
- package/dist/tools/r31-changes-pr-ci.tool.js +82 -0
- package/dist/tools/r31-command-discovery.tool.d.ts +5 -0
- package/dist/tools/r31-command-discovery.tool.d.ts.map +1 -0
- package/dist/tools/r31-command-discovery.tool.js +126 -0
- package/dist/tools/r31-fix-preview.tool.d.ts +4 -0
- package/dist/tools/r31-fix-preview.tool.d.ts.map +1 -0
- package/dist/tools/r31-fix-preview.tool.js +58 -0
- package/dist/tools/r31-ranker-explain.tool.d.ts +4 -0
- package/dist/tools/r31-ranker-explain.tool.d.ts.map +1 -0
- package/dist/tools/r31-ranker-explain.tool.js +69 -0
- package/dist/tools/r31-scaffold-coverage.tool.d.ts +3 -0
- package/dist/tools/r31-scaffold-coverage.tool.d.ts.map +1 -0
- package/dist/tools/r31-scaffold-coverage.tool.js +31 -0
- package/dist/tools/r32-profiles.tool.d.ts +8 -0
- package/dist/tools/r32-profiles.tool.d.ts.map +1 -0
- package/dist/tools/r32-profiles.tool.js +107 -0
- package/dist/tools/r32-project-coupling.tool.d.ts +3 -0
- package/dist/tools/r32-project-coupling.tool.d.ts.map +1 -0
- package/dist/tools/r32-project-coupling.tool.js +38 -0
- package/dist/tools/r33-agent-task-prep.tool.d.ts +3 -0
- package/dist/tools/r33-agent-task-prep.tool.d.ts.map +1 -0
- package/dist/tools/r33-agent-task-prep.tool.js +34 -0
- package/dist/tools/r33-conventions.tool.d.ts +5 -0
- package/dist/tools/r33-conventions.tool.d.ts.map +1 -0
- package/dist/tools/r33-conventions.tool.js +48 -0
- package/dist/tools/r33-dev-cycle-ci-predict.tool.d.ts +4 -0
- package/dist/tools/r33-dev-cycle-ci-predict.tool.d.ts.map +1 -0
- package/dist/tools/r33-dev-cycle-ci-predict.tool.js +44 -0
- package/dist/tools/r33-pack-contributions.tool.d.ts +4 -0
- package/dist/tools/r33-pack-contributions.tool.d.ts.map +1 -0
- package/dist/tools/r33-pack-contributions.tool.js +42 -0
- package/dist/tools/r33-pack-signature.tool.d.ts +3 -0
- package/dist/tools/r33-pack-signature.tool.d.ts.map +1 -0
- package/dist/tools/r33-pack-signature.tool.js +12 -0
- package/dist/tools/r33-routing-helpers.tool.d.ts +6 -0
- package/dist/tools/r33-routing-helpers.tool.d.ts.map +1 -0
- package/dist/tools/r33-routing-helpers.tool.js +63 -0
- package/dist/tools/r33-self-config.tool.d.ts +4 -0
- package/dist/tools/r33-self-config.tool.d.ts.map +1 -0
- package/dist/tools/r33-self-config.tool.js +20 -0
- package/dist/tools/r34-search-unified.tool.d.ts +3 -0
- package/dist/tools/r34-search-unified.tool.d.ts.map +1 -0
- package/dist/tools/r34-search-unified.tool.js +38 -0
- package/dist/tools/r35-registration-hints.tool.d.ts +5 -0
- package/dist/tools/r35-registration-hints.tool.d.ts.map +1 -0
- package/dist/tools/r35-registration-hints.tool.js +69 -0
- package/dist/tools/r57-specs.tool.d.ts +12 -0
- package/dist/tools/r57-specs.tool.d.ts.map +1 -0
- package/dist/tools/r57-specs.tool.js +115 -0
- package/dist/tools/r58-grounding.tool.d.ts +14 -0
- package/dist/tools/r58-grounding.tool.d.ts.map +1 -0
- package/dist/tools/r58-grounding.tool.js +135 -0
- package/dist/tools/recommend-presets.tool.d.ts +3 -0
- package/dist/tools/recommend-presets.tool.d.ts.map +1 -0
- package/dist/tools/recommend-presets.tool.js +31 -0
- package/dist/tools/release-readiness.tool.d.ts +3 -0
- package/dist/tools/release-readiness.tool.d.ts.map +1 -0
- package/dist/tools/release-readiness.tool.js +28 -0
- package/dist/tools/release-smoke.tool.d.ts +3 -0
- package/dist/tools/release-smoke.tool.d.ts.map +1 -0
- package/dist/tools/release-smoke.tool.js +22 -0
- package/dist/tools/render-template-preview.tool.d.ts +3 -0
- package/dist/tools/render-template-preview.tool.d.ts.map +1 -0
- package/dist/tools/render-template-preview.tool.js +40 -0
- package/dist/tools/report-site-preview.tool.d.ts +3 -0
- package/dist/tools/report-site-preview.tool.d.ts.map +1 -0
- package/dist/tools/report-site-preview.tool.js +28 -0
- package/dist/tools/repository-map.tool.d.ts +3 -0
- package/dist/tools/repository-map.tool.d.ts.map +1 -0
- package/dist/tools/repository-map.tool.js +17 -0
- package/dist/tools/repository-stats.tool.d.ts +3 -0
- package/dist/tools/repository-stats.tool.d.ts.map +1 -0
- package/dist/tools/repository-stats.tool.js +28 -0
- package/dist/tools/review-generation-plan.tool.d.ts +3 -0
- package/dist/tools/review-generation-plan.tool.d.ts.map +1 -0
- package/dist/tools/review-generation-plan.tool.js +24 -0
- package/dist/tools/review-packet-v2.tool.d.ts +3 -0
- package/dist/tools/review-packet-v2.tool.d.ts.map +1 -0
- package/dist/tools/review-packet-v2.tool.js +27 -0
- package/dist/tools/run-agent-test.tool.d.ts +4 -0
- package/dist/tools/run-agent-test.tool.d.ts.map +1 -0
- package/dist/tools/run-agent-test.tool.js +28 -0
- package/dist/tools/run-context-test.tool.d.ts +4 -0
- package/dist/tools/run-context-test.tool.d.ts.map +1 -0
- package/dist/tools/run-context-test.tool.js +28 -0
- package/dist/tools/runtime-reports.tool.d.ts +9 -0
- package/dist/tools/runtime-reports.tool.d.ts.map +1 -0
- package/dist/tools/runtime-reports.tool.js +175 -0
- package/dist/tools/safety-audit.tool.d.ts +3 -0
- package/dist/tools/safety-audit.tool.d.ts.map +1 -0
- package/dist/tools/safety-audit.tool.js +42 -0
- package/dist/tools/scaffold-patterns.tool.d.ts +5 -0
- package/dist/tools/scaffold-patterns.tool.d.ts.map +1 -0
- package/dist/tools/scaffold-patterns.tool.js +59 -0
- package/dist/tools/schema-inventory.tool.d.ts +3 -0
- package/dist/tools/schema-inventory.tool.d.ts.map +1 -0
- package/dist/tools/schema-inventory.tool.js +23 -0
- package/dist/tools/search-knowledge.tool.d.ts +3 -0
- package/dist/tools/search-knowledge.tool.d.ts.map +1 -0
- package/dist/tools/search-knowledge.tool.js +42 -0
- package/dist/tools/search-path-conventions.tool.d.ts +3 -0
- package/dist/tools/search-path-conventions.tool.d.ts.map +1 -0
- package/dist/tools/search-path-conventions.tool.js +30 -0
- package/dist/tools/search-templates.tool.d.ts +3 -0
- package/dist/tools/search-templates.tool.d.ts.map +1 -0
- package/dist/tools/search-templates.tool.js +21 -0
- package/dist/tools/search-tuning-explain.tool.d.ts +3 -0
- package/dist/tools/search-tuning-explain.tool.d.ts.map +1 -0
- package/dist/tools/search-tuning-explain.tool.js +17 -0
- package/dist/tools/search-tuning.tool.d.ts +3 -0
- package/dist/tools/search-tuning.tool.d.ts.map +1 -0
- package/dist/tools/search-tuning.tool.js +10 -0
- package/dist/tools/search.tool.d.ts +3 -0
- package/dist/tools/search.tool.d.ts.map +1 -0
- package/dist/tools/search.tool.js +45 -0
- package/dist/tools/self-audit.tool.d.ts +3 -0
- package/dist/tools/self-audit.tool.d.ts.map +1 -0
- package/dist/tools/self-audit.tool.js +28 -0
- package/dist/tools/start-here.tool.d.ts +4 -0
- package/dist/tools/start-here.tool.d.ts.map +1 -0
- package/dist/tools/start-here.tool.js +27 -0
- package/dist/tools/test-impact.tool.d.ts +3 -0
- package/dist/tools/test-impact.tool.d.ts.map +1 -0
- package/dist/tools/test-impact.tool.js +23 -0
- package/package.json +67 -0
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Two read-only MCP tools for the additive grounding surface.
|
|
3
|
+
*
|
|
4
|
+
* - `get_grounding(task)` — what shrk knows that's relevant to <task>.
|
|
5
|
+
* - `check_external_plan(path | content, extractorId?)` — validate an
|
|
6
|
+
* external plan file against the live workspace.
|
|
7
|
+
*
|
|
8
|
+
* Both are read-only. The CLI is the only write path (matching the
|
|
9
|
+
* safety contract). No write tools for spec/plan mutation.
|
|
10
|
+
*/
|
|
11
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
12
|
+
import * as nodePath from 'node:path';
|
|
13
|
+
import { getExtractorById, pickExtractor, } from '@shrkcrft/generator';
|
|
14
|
+
import { buildGrounding, loadNxProjects, mapFilesToProjects, validateExtractedPlan, } from '@shrkcrft/inspector';
|
|
15
|
+
export const getGroundingTool = {
|
|
16
|
+
name: 'get_grounding',
|
|
17
|
+
description: 'Task-relevant rules / knowledge / paths / templates / trusted verification command IDs as JSON. Read-only.',
|
|
18
|
+
inputSchema: {
|
|
19
|
+
type: 'object',
|
|
20
|
+
properties: {
|
|
21
|
+
task: { type: 'string' },
|
|
22
|
+
limit: { type: 'integer', minimum: 1 },
|
|
23
|
+
maxTokens: { type: 'integer', minimum: 100 },
|
|
24
|
+
},
|
|
25
|
+
required: ['task'],
|
|
26
|
+
additionalProperties: false,
|
|
27
|
+
},
|
|
28
|
+
cliCommand: 'grounding',
|
|
29
|
+
handler(input, ctx) {
|
|
30
|
+
const task = String(input.task);
|
|
31
|
+
const limit = typeof input.limit === 'number' ? input.limit : 5;
|
|
32
|
+
const maxTokens = typeof input.maxTokens === 'number' ? input.maxTokens : 2500;
|
|
33
|
+
const report = buildGrounding(task, ctx.inspection, { limit, maxTokens });
|
|
34
|
+
return { data: report };
|
|
35
|
+
},
|
|
36
|
+
};
|
|
37
|
+
export const checkExternalPlanTool = {
|
|
38
|
+
name: 'check_external_plan',
|
|
39
|
+
description: 'Validate an external plan/spec file against the live workspace. Supports an inline `content` string or a `path` (resolved relative to cwd). Read-only — the input file is never modified.',
|
|
40
|
+
inputSchema: {
|
|
41
|
+
type: 'object',
|
|
42
|
+
properties: {
|
|
43
|
+
path: { type: 'string', description: 'Relative or absolute path to the plan file.' },
|
|
44
|
+
content: { type: 'string', description: 'Inline plan content; takes precedence over `path`.' },
|
|
45
|
+
extractorId: {
|
|
46
|
+
type: 'string',
|
|
47
|
+
description: 'sharkcraft.spec/v1 | markdown-frontmatter-loose. If absent, auto-pick.',
|
|
48
|
+
},
|
|
49
|
+
fieldMap: {
|
|
50
|
+
type: 'object',
|
|
51
|
+
description: 'Optional external-key → canonical-key remapping for markdown-frontmatter-loose.',
|
|
52
|
+
additionalProperties: { type: 'string' },
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
additionalProperties: false,
|
|
56
|
+
},
|
|
57
|
+
cliCommand: 'plan check',
|
|
58
|
+
handler(input, ctx) {
|
|
59
|
+
const inlineContent = typeof input.content === 'string' ? input.content : undefined;
|
|
60
|
+
const inputPath = typeof input.path === 'string' ? input.path : undefined;
|
|
61
|
+
if (inlineContent === undefined && inputPath === undefined) {
|
|
62
|
+
return {
|
|
63
|
+
isError: true,
|
|
64
|
+
error: { code: 'missing-input', message: 'Provide either `path` or `content`.' },
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
let raw;
|
|
68
|
+
let sourceLabel;
|
|
69
|
+
if (inlineContent !== undefined) {
|
|
70
|
+
raw = inlineContent;
|
|
71
|
+
sourceLabel = '<inline>';
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
const abs = nodePath.isAbsolute(inputPath) ? inputPath : nodePath.resolve(ctx.cwd, inputPath);
|
|
75
|
+
if (!existsSync(abs)) {
|
|
76
|
+
return {
|
|
77
|
+
isError: true,
|
|
78
|
+
error: { code: 'not-found', message: `Plan file not found: ${inputPath}` },
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
raw = readFileSync(abs, 'utf8');
|
|
82
|
+
sourceLabel = nodePath.relative(ctx.cwd, abs) || abs;
|
|
83
|
+
}
|
|
84
|
+
const extractorId = typeof input.extractorId === 'string' ? input.extractorId : undefined;
|
|
85
|
+
const extractor = extractorId ? getExtractorById(extractorId) : pickExtractor(sourceLabel);
|
|
86
|
+
if (!extractor) {
|
|
87
|
+
return {
|
|
88
|
+
isError: true,
|
|
89
|
+
error: {
|
|
90
|
+
code: 'no-extractor',
|
|
91
|
+
message: `No extractor for "${sourceLabel}". Pass extractorId: sharkcraft.spec/v1 | markdown-frontmatter-loose.`,
|
|
92
|
+
},
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
const fieldMap = input.fieldMap ?? undefined;
|
|
96
|
+
const extracted = extractor.extract(raw, {
|
|
97
|
+
source: sourceLabel,
|
|
98
|
+
...(fieldMap ? { fieldMap } : {}),
|
|
99
|
+
});
|
|
100
|
+
if (!extracted.ok) {
|
|
101
|
+
return {
|
|
102
|
+
isError: true,
|
|
103
|
+
error: {
|
|
104
|
+
code: 'extractor-refused',
|
|
105
|
+
message: extracted.error.message,
|
|
106
|
+
details: { extractorId: extractor.id },
|
|
107
|
+
},
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
const validation = validateExtractedPlan(extracted.value, ctx.inspection);
|
|
111
|
+
const verdict = validation.errors.length > 0
|
|
112
|
+
? 'fail'
|
|
113
|
+
: validation.warnings.length > 0
|
|
114
|
+
? 'warn'
|
|
115
|
+
: 'pass';
|
|
116
|
+
const graph = loadNxProjects(ctx.cwd);
|
|
117
|
+
const affectedFiles = extracted.value.affectedFiles ?? [];
|
|
118
|
+
const nxBlock = graph
|
|
119
|
+
? affectedFiles.length === 0
|
|
120
|
+
? { enabled: true, note: 'no affectedFiles declared — skipping project mapping' }
|
|
121
|
+
: { enabled: true, affectedProjects: mapFilesToProjects(affectedFiles, graph) }
|
|
122
|
+
: undefined;
|
|
123
|
+
return {
|
|
124
|
+
data: {
|
|
125
|
+
schema: 'sharkcraft.plan-check/v1',
|
|
126
|
+
source: sourceLabel,
|
|
127
|
+
extractorId: extractor.id,
|
|
128
|
+
verdict,
|
|
129
|
+
errors: validation.errors,
|
|
130
|
+
warnings: validation.warnings,
|
|
131
|
+
...(nxBlock ? { nx: nxBlock } : {}),
|
|
132
|
+
},
|
|
133
|
+
};
|
|
134
|
+
},
|
|
135
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recommend-presets.tool.d.ts","sourceRoot":"","sources":["../../src/tools/recommend-presets.tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,eAAO,MAAM,oBAAoB,EAAE,eA8BlC,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { recommendPresets } from '@shrkcrft/presets';
|
|
2
|
+
export const recommendPresetsTool = {
|
|
3
|
+
name: 'recommend_presets',
|
|
4
|
+
description: 'Recommend presets based on the detected project profile (e.g. has-bun, has-typescript, is-monorepo). Returns ranked preset ids with confidence + reasons.',
|
|
5
|
+
inputSchema: {
|
|
6
|
+
type: 'object',
|
|
7
|
+
properties: {
|
|
8
|
+
limit: { type: 'number', minimum: 1, maximum: 20 },
|
|
9
|
+
},
|
|
10
|
+
additionalProperties: false,
|
|
11
|
+
},
|
|
12
|
+
async handler(input, ctx) {
|
|
13
|
+
const limit = Number(input.limit ?? 5);
|
|
14
|
+
const recs = recommendPresets(ctx.inspection.presetRegistry.list(), {
|
|
15
|
+
profiles: ctx.inspection.workspace.profiles,
|
|
16
|
+
limit,
|
|
17
|
+
});
|
|
18
|
+
return {
|
|
19
|
+
data: {
|
|
20
|
+
detectedProfiles: ctx.inspection.workspace.profiles,
|
|
21
|
+
recommendations: recs.map((r) => ({
|
|
22
|
+
presetId: r.preset.id,
|
|
23
|
+
title: r.preset.title,
|
|
24
|
+
score: r.score,
|
|
25
|
+
confidence: r.confidence,
|
|
26
|
+
reasons: r.reasons,
|
|
27
|
+
})),
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
},
|
|
31
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"release-readiness.tool.d.ts","sourceRoot":"","sources":["../../src/tools/release-readiness.tool.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,eAAO,MAAM,uBAAuB,EAAE,eA0BrC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import * as nodePath from 'node:path';
|
|
2
|
+
import { buildReleaseReadiness } from '@shrkcrft/inspector';
|
|
3
|
+
export const getReleaseReadinessTool = {
|
|
4
|
+
name: 'get_release_readiness',
|
|
5
|
+
description: 'Aggregated release-readiness report: doctor + coverage + pack release-check + docs + README/package metadata. Read-only.',
|
|
6
|
+
inputSchema: {
|
|
7
|
+
type: 'object',
|
|
8
|
+
properties: {
|
|
9
|
+
strict: { type: 'boolean' },
|
|
10
|
+
preflightFile: { type: 'string' },
|
|
11
|
+
},
|
|
12
|
+
additionalProperties: false,
|
|
13
|
+
},
|
|
14
|
+
async handler(input, ctx) {
|
|
15
|
+
const strict = input['strict'] === true;
|
|
16
|
+
const preflightRaw = typeof input['preflightFile'] === 'string' ? input['preflightFile'] : null;
|
|
17
|
+
const preflight = preflightRaw
|
|
18
|
+
? nodePath.isAbsolute(preflightRaw)
|
|
19
|
+
? preflightRaw
|
|
20
|
+
: nodePath.resolve(ctx.cwd, preflightRaw)
|
|
21
|
+
: null;
|
|
22
|
+
const report = await buildReleaseReadiness(ctx.inspection, {
|
|
23
|
+
strict,
|
|
24
|
+
...(preflight ? { preflightSummaryFile: preflight } : {}),
|
|
25
|
+
});
|
|
26
|
+
return { data: report };
|
|
27
|
+
},
|
|
28
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"release-smoke.tool.d.ts","sourceRoot":"","sources":["../../src/tools/release-smoke.tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,eAAO,MAAM,yBAAyB,EAAE,eAsBvC,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { listSmokeScenarios } from '@shrkcrft/inspector';
|
|
2
|
+
export const getReleaseSmokeReportTool = {
|
|
3
|
+
name: 'get_release_smoke_report',
|
|
4
|
+
description: 'Return the static smoke plan for a given scope. MCP cannot execute commands, so this tool returns the planned steps and expected artifacts only. Use `shrk release smoke --scenario <id>` from the CLI to actually run them.',
|
|
5
|
+
inputSchema: {
|
|
6
|
+
type: 'object',
|
|
7
|
+
properties: {
|
|
8
|
+
scope: { type: 'string' },
|
|
9
|
+
},
|
|
10
|
+
additionalProperties: false,
|
|
11
|
+
},
|
|
12
|
+
handler() {
|
|
13
|
+
return {
|
|
14
|
+
data: {
|
|
15
|
+
schema: 'sharkcraft.release-smoke-plan/v1',
|
|
16
|
+
scenarios: listSmokeScenarios(),
|
|
17
|
+
nextCommand: 'shrk release smoke --scenario all',
|
|
18
|
+
note: 'MCP returns the plan only. The CLI executes the scenarios and writes results into temp fixtures.',
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
},
|
|
22
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-template-preview.tool.d.ts","sourceRoot":"","sources":["../../src/tools/render-template-preview.tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAIpE,eAAO,MAAM,yBAAyB,EAAE,eAoCvC,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { previewTemplate } from '@shrkcrft/templates';
|
|
2
|
+
import { buildNameVariables } from '@shrkcrft/generator';
|
|
3
|
+
export const renderTemplatePreviewTool = {
|
|
4
|
+
name: 'render_template_preview',
|
|
5
|
+
description: 'Render a template preview (without writing). Returns target paths + contents.',
|
|
6
|
+
inputSchema: {
|
|
7
|
+
type: 'object',
|
|
8
|
+
properties: {
|
|
9
|
+
templateId: { type: 'string' },
|
|
10
|
+
name: { type: 'string' },
|
|
11
|
+
variables: { type: 'object', additionalProperties: { type: 'string' } },
|
|
12
|
+
},
|
|
13
|
+
required: ['templateId'],
|
|
14
|
+
additionalProperties: false,
|
|
15
|
+
},
|
|
16
|
+
async handler(input, ctx) {
|
|
17
|
+
const t = ctx.inspection.templateRegistry.get(String(input.templateId));
|
|
18
|
+
if (!t)
|
|
19
|
+
return { isError: true, text: `No template with id "${input.templateId}"` };
|
|
20
|
+
const nameVars = typeof input.name === 'string' ? buildNameVariables(input.name) : {};
|
|
21
|
+
const values = { ...nameVars, ...(input.variables ?? {}) };
|
|
22
|
+
const preview = previewTemplate(t, values);
|
|
23
|
+
if (!preview.validation.valid) {
|
|
24
|
+
return {
|
|
25
|
+
isError: true,
|
|
26
|
+
data: { issues: preview.validation.issues },
|
|
27
|
+
text: preview.validation.issues
|
|
28
|
+
.map((i) => `${i.variable}: ${i.message}`)
|
|
29
|
+
.join('\n'),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
return {
|
|
33
|
+
data: {
|
|
34
|
+
templateId: t.id,
|
|
35
|
+
files: preview.rendered.files,
|
|
36
|
+
postGenerationNotes: preview.rendered.postGenerationNotes,
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
},
|
|
40
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"report-site-preview.tool.d.ts","sourceRoot":"","sources":["../../src/tools/report-site-preview.tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,eAAO,MAAM,wBAAwB,EAAE,eA4BtC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export const getReportSitePreviewTool = {
|
|
2
|
+
name: 'get_report_site_preview',
|
|
3
|
+
description: 'Return a structured preview of the report site (page list + populated flags). No filesystem writes. Read-only.',
|
|
4
|
+
inputSchema: { type: 'object', properties: { bundleId: { type: 'string' } } },
|
|
5
|
+
handler(input) {
|
|
6
|
+
const bundleId = typeof input['bundleId'] === 'string' ? input['bundleId'] : undefined;
|
|
7
|
+
const pages = [
|
|
8
|
+
{ id: 'overview', file: 'index.html', alwaysPopulated: true },
|
|
9
|
+
{ id: 'quality', file: 'quality.html', alwaysPopulated: true },
|
|
10
|
+
{ id: 'bundles', file: 'bundles.html', alwaysPopulated: true },
|
|
11
|
+
{ id: 'review', file: 'review.html', alwaysPopulated: Boolean(bundleId) },
|
|
12
|
+
{ id: 'coverage', file: 'coverage.html', alwaysPopulated: true },
|
|
13
|
+
{ id: 'drift', file: 'drift.html', alwaysPopulated: true },
|
|
14
|
+
{ id: 'policies', file: 'policies.html', alwaysPopulated: true },
|
|
15
|
+
];
|
|
16
|
+
return {
|
|
17
|
+
data: {
|
|
18
|
+
schema: 'sharkcraft.report-site-preview/v1',
|
|
19
|
+
pages,
|
|
20
|
+
notes: bundleId
|
|
21
|
+
? []
|
|
22
|
+
: [
|
|
23
|
+
'review.html is a placeholder unless you pass --bundle or --review when building the site.',
|
|
24
|
+
],
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
},
|
|
28
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repository-map.tool.d.ts","sourceRoot":"","sources":["../../src/tools/repository-map.tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,eAAO,MAAM,oBAAoB,EAAE,eAelC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { buildRepositoryMap } from '@shrkcrft/inspector';
|
|
2
|
+
export const getRepositoryMapTool = {
|
|
3
|
+
name: 'get_repository_map',
|
|
4
|
+
description: 'Return a high-level repository structural map. Read-only.',
|
|
5
|
+
inputSchema: {
|
|
6
|
+
type: 'object',
|
|
7
|
+
properties: {
|
|
8
|
+
include: { type: 'array', items: { type: 'string' } },
|
|
9
|
+
},
|
|
10
|
+
additionalProperties: false,
|
|
11
|
+
},
|
|
12
|
+
async handler(input, ctx) {
|
|
13
|
+
const include = Array.isArray(input['include']) ? input['include'] : undefined;
|
|
14
|
+
const map = await buildRepositoryMap(ctx.inspection, { ...(include ? { include } : {}) });
|
|
15
|
+
return { data: map };
|
|
16
|
+
},
|
|
17
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repository-stats.tool.d.ts","sourceRoot":"","sources":["../../src/tools/repository-stats.tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAOpE,eAAO,MAAM,sBAAsB,EAAE,eA4BpC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { buildRepositoryStats } from '@shrkcrft/inspector';
|
|
2
|
+
export const getRepositoryStatsTool = {
|
|
3
|
+
name: 'get_repository_stats',
|
|
4
|
+
description: 'Repository statistics — per-language file counts, lines of code (code/comment/blank), bytes, averages, and the largest files. Read-only.',
|
|
5
|
+
inputSchema: {
|
|
6
|
+
type: 'object',
|
|
7
|
+
properties: {
|
|
8
|
+
maxTopFiles: {
|
|
9
|
+
type: 'number',
|
|
10
|
+
description: 'How many largest files to include (default 10).',
|
|
11
|
+
},
|
|
12
|
+
language: {
|
|
13
|
+
type: 'string',
|
|
14
|
+
description: "Filter to a single language id (e.g. 'typescript', 'java', 'python'). Omit for all languages.",
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
additionalProperties: false,
|
|
18
|
+
},
|
|
19
|
+
async handler(input, ctx) {
|
|
20
|
+
const inp = (input ?? {});
|
|
21
|
+
const stats = await buildRepositoryStats({
|
|
22
|
+
cwd: ctx.cwd,
|
|
23
|
+
...(typeof inp.maxTopFiles === 'number' ? { maxTopFiles: inp.maxTopFiles } : {}),
|
|
24
|
+
...(typeof inp.language === 'string' && inp.language ? { language: inp.language } : {}),
|
|
25
|
+
});
|
|
26
|
+
return { data: stats };
|
|
27
|
+
},
|
|
28
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-generation-plan.tool.d.ts","sourceRoot":"","sources":["../../src/tools/review-generation-plan.tool.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,eAAO,MAAM,wBAAwB,EAAE,eAqBtC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import * as nodePath from 'node:path';
|
|
2
|
+
import { reviewSavedPlan } from '@shrkcrft/inspector';
|
|
3
|
+
export const reviewGenerationPlanTool = {
|
|
4
|
+
name: 'review_generation_plan',
|
|
5
|
+
description: 'Review a saved generation plan (sharkcraft.plan/v1 JSON). Returns files to create/update, signature status, related path conventions, missing-tests heuristic, boundary concerns, verification commands. Read-only.',
|
|
6
|
+
inputSchema: {
|
|
7
|
+
type: 'object',
|
|
8
|
+
properties: { planPath: { type: 'string' } },
|
|
9
|
+
required: ['planPath'],
|
|
10
|
+
additionalProperties: false,
|
|
11
|
+
},
|
|
12
|
+
async handler(input, ctx) {
|
|
13
|
+
const planPath = String(input.planPath ?? '');
|
|
14
|
+
try {
|
|
15
|
+
const abs = nodePath.isAbsolute(planPath)
|
|
16
|
+
? planPath
|
|
17
|
+
: nodePath.resolve(ctx.inspection.projectRoot, planPath);
|
|
18
|
+
return { data: reviewSavedPlan(ctx.inspection, abs) };
|
|
19
|
+
}
|
|
20
|
+
catch (e) {
|
|
21
|
+
return { isError: true, text: `Failed to review plan: ${e.message}` };
|
|
22
|
+
}
|
|
23
|
+
},
|
|
24
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-packet-v2.tool.d.ts","sourceRoot":"","sources":["../../src/tools/review-packet-v2.tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,eAAO,MAAM,qBAAqB,EAAE,eAsBnC,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { buildReviewPacketV2 } from '@shrkcrft/inspector';
|
|
2
|
+
export const getReviewPacketV2Tool = {
|
|
3
|
+
name: 'get_review_packet_v2',
|
|
4
|
+
description: 'Build the v2 review packet (impact, ownership, policy, quality comparison). Read-only.',
|
|
5
|
+
inputSchema: {
|
|
6
|
+
type: 'object',
|
|
7
|
+
properties: {
|
|
8
|
+
since: { type: 'string' },
|
|
9
|
+
staged: { type: 'boolean' },
|
|
10
|
+
files: { type: 'array', items: { type: 'string' } },
|
|
11
|
+
qualityBaselineFile: { type: 'string' },
|
|
12
|
+
},
|
|
13
|
+
additionalProperties: false,
|
|
14
|
+
},
|
|
15
|
+
async handler(input, ctx) {
|
|
16
|
+
const opts = {};
|
|
17
|
+
if (typeof input['since'] === 'string')
|
|
18
|
+
opts['since'] = input['since'];
|
|
19
|
+
if (input['staged'] === true)
|
|
20
|
+
opts['staged'] = true;
|
|
21
|
+
if (Array.isArray(input['files']))
|
|
22
|
+
opts['files'] = input['files'];
|
|
23
|
+
if (typeof input['qualityBaselineFile'] === 'string')
|
|
24
|
+
opts['qualityBaselineFile'] = input['qualityBaselineFile'];
|
|
25
|
+
return { data: await buildReviewPacketV2(ctx.inspection, opts) };
|
|
26
|
+
},
|
|
27
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-agent-test.tool.d.ts","sourceRoot":"","sources":["../../src/tools/run-agent-test.tool.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,eAAO,MAAM,kBAAkB,EAAE,eAQhC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,eAiB9B,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { loadAgentContractTests, runAgentContractTest } from '@shrkcrft/inspector';
|
|
2
|
+
export const listAgentTestsTool = {
|
|
3
|
+
name: 'list_agent_tests',
|
|
4
|
+
description: 'List configured agent contract tests (local + pack-contributed).',
|
|
5
|
+
inputSchema: { type: 'object', properties: {}, additionalProperties: false },
|
|
6
|
+
async handler(_input, ctx) {
|
|
7
|
+
const tests = await loadAgentContractTests(ctx.inspection);
|
|
8
|
+
return { data: tests };
|
|
9
|
+
},
|
|
10
|
+
};
|
|
11
|
+
export const runAgentTestTool = {
|
|
12
|
+
name: 'run_agent_test',
|
|
13
|
+
description: 'Run one configured agent contract test by id. Verifies the task packet contains the expected pipeline / templates / rules / forbidden actions / verification commands.',
|
|
14
|
+
inputSchema: {
|
|
15
|
+
type: 'object',
|
|
16
|
+
properties: { id: { type: 'string' } },
|
|
17
|
+
required: ['id'],
|
|
18
|
+
additionalProperties: false,
|
|
19
|
+
},
|
|
20
|
+
async handler(input, ctx) {
|
|
21
|
+
const id = String(input.id ?? '');
|
|
22
|
+
const tests = await loadAgentContractTests(ctx.inspection);
|
|
23
|
+
const test = tests.find((t) => t.id === id);
|
|
24
|
+
if (!test)
|
|
25
|
+
return { isError: true, text: `No agent contract test with id "${id}".` };
|
|
26
|
+
return { data: runAgentContractTest(ctx.inspection, test) };
|
|
27
|
+
},
|
|
28
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-context-test.tool.d.ts","sourceRoot":"","sources":["../../src/tools/run-context-test.tool.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE,eAAO,MAAM,oBAAoB,EAAE,eAQlC,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,eAiBhC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { loadContextTests, runContextTest, } from '@shrkcrft/inspector';
|
|
2
|
+
export const listContextTestsTool = {
|
|
3
|
+
name: 'list_context_tests',
|
|
4
|
+
description: 'List configured context regression tests (local + pack-contributed).',
|
|
5
|
+
inputSchema: { type: 'object', properties: {}, additionalProperties: false },
|
|
6
|
+
async handler(_input, ctx) {
|
|
7
|
+
const tests = await loadContextTests(ctx.inspection);
|
|
8
|
+
return { data: tests };
|
|
9
|
+
},
|
|
10
|
+
};
|
|
11
|
+
export const runContextTestTool = {
|
|
12
|
+
name: 'run_context_test',
|
|
13
|
+
description: 'Run one configured context regression test by id. Returns whether the expected entries were included/excluded in the retrieved context.',
|
|
14
|
+
inputSchema: {
|
|
15
|
+
type: 'object',
|
|
16
|
+
properties: { id: { type: 'string' } },
|
|
17
|
+
required: ['id'],
|
|
18
|
+
additionalProperties: false,
|
|
19
|
+
},
|
|
20
|
+
async handler(input, ctx) {
|
|
21
|
+
const id = String(input.id ?? '');
|
|
22
|
+
const tests = await loadContextTests(ctx.inspection);
|
|
23
|
+
const test = tests.find((t) => t.id === id);
|
|
24
|
+
if (!test)
|
|
25
|
+
return { isError: true, text: `No context test with id "${id}".` };
|
|
26
|
+
return { data: runContextTest(ctx.inspection, test) };
|
|
27
|
+
},
|
|
28
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { IToolDefinition } from '../server/tool-definition.js';
|
|
2
|
+
export declare const getAdoptionReportTool: IToolDefinition;
|
|
3
|
+
export declare const getSessionHtmlReportTool: IToolDefinition;
|
|
4
|
+
export declare const getQualityHtmlReportTool: IToolDefinition;
|
|
5
|
+
export declare const getSafetyHtmlReportTool: IToolDefinition;
|
|
6
|
+
export declare const getReviewHtmlReportTool: IToolDefinition;
|
|
7
|
+
export declare const getCoverageReportRenderedTool: IToolDefinition;
|
|
8
|
+
export declare const getDriftReportRenderedTool: IToolDefinition;
|
|
9
|
+
//# sourceMappingURL=runtime-reports.tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-reports.tool.d.ts","sourceRoot":"","sources":["../../src/tools/runtime-reports.tool.ts"],"names":[],"mappings":"AA8BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAYpE,eAAO,MAAM,qBAAqB,EAAE,eAsBnC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,eAsBtC,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,eAgBtC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,eAqBrC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,eAqCrC,CAAC;AAEF,eAAO,MAAM,6BAA6B,EAAE,eAU3C,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,eAUxC,CAAC"}
|