@dotcontext/cli 0.8.1 → 0.9.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/LICENSE +1 -1
- package/README.md +234 -135
- package/dist/cli/index.d.ts +15 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +27 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/generators/documentation/codebaseMapGenerator.d.ts +29 -46
- package/dist/generators/documentation/codebaseMapGenerator.d.ts.map +1 -1
- package/dist/generators/documentation/codebaseMapGenerator.js +148 -244
- package/dist/generators/documentation/codebaseMapGenerator.js.map +1 -1
- package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -1
- package/dist/generators/documentation/documentationGenerator.js +13 -8
- package/dist/generators/documentation/documentationGenerator.js.map +1 -1
- package/dist/generators/documentation/index.d.ts +1 -1
- package/dist/generators/documentation/index.d.ts.map +1 -1
- package/dist/generators/shared/structures/documentation/architecture.d.ts.map +1 -1
- package/dist/generators/shared/structures/documentation/architecture.js +9 -9
- package/dist/generators/shared/structures/documentation/architecture.js.map +1 -1
- package/dist/generators/shared/structures/documentation/dataFlow.js +2 -2
- package/dist/generators/shared/structures/documentation/dataFlow.js.map +1 -1
- package/dist/generators/shared/structures/documentation/glossary.js +2 -2
- package/dist/generators/shared/structures/documentation/glossary.js.map +1 -1
- package/dist/generators/shared/structures/documentation/projectOverview.d.ts.map +1 -1
- package/dist/generators/shared/structures/documentation/projectOverview.js +10 -11
- package/dist/generators/shared/structures/documentation/projectOverview.js.map +1 -1
- package/dist/generators/shared/structures/skills/factory.d.ts.map +1 -1
- package/dist/generators/shared/structures/skills/factory.js +19 -15
- package/dist/generators/shared/structures/skills/factory.js.map +1 -1
- package/dist/generators/skills/skillGenerator.d.ts +2 -1
- package/dist/generators/skills/skillGenerator.d.ts.map +1 -1
- package/dist/generators/skills/skillGenerator.js +47 -6
- package/dist/generators/skills/skillGenerator.js.map +1 -1
- package/dist/generators/skills/templates/indexTemplate.d.ts.map +1 -1
- package/dist/generators/skills/templates/indexTemplate.js +22 -15
- package/dist/generators/skills/templates/indexTemplate.js.map +1 -1
- package/dist/harness/index.d.ts +11 -0
- package/dist/harness/index.d.ts.map +1 -0
- package/dist/harness/index.js +33 -0
- package/dist/harness/index.js.map +1 -0
- package/dist/index.js +365 -339
- package/dist/index.js.map +1 -1
- package/dist/mcp/bin.d.ts +19 -0
- package/dist/mcp/bin.d.ts.map +1 -0
- package/dist/mcp/bin.js +189 -0
- package/dist/mcp/bin.js.map +1 -0
- package/dist/mcp/index.d.ts +12 -0
- package/dist/mcp/index.d.ts.map +1 -0
- package/dist/mcp/index.js +28 -0
- package/dist/mcp/index.js.map +1 -0
- package/dist/services/autoFill/autoFillService.d.ts.map +1 -1
- package/dist/services/autoFill/autoFillService.js +7 -6
- package/dist/services/autoFill/autoFillService.js.map +1 -1
- package/dist/services/cli/index.d.ts +8 -0
- package/dist/services/cli/index.d.ts.map +1 -0
- package/dist/services/cli/index.js +17 -0
- package/dist/services/cli/index.js.map +1 -0
- package/dist/services/cli/mcpInstallService.d.ts +57 -0
- package/dist/services/cli/mcpInstallService.d.ts.map +1 -0
- package/dist/services/cli/mcpInstallService.js +607 -0
- package/dist/services/cli/mcpInstallService.js.map +1 -0
- package/dist/services/cli/stateDetector.d.ts +55 -0
- package/dist/services/cli/stateDetector.d.ts.map +1 -0
- package/dist/services/cli/stateDetector.js +191 -0
- package/dist/services/cli/stateDetector.js.map +1 -0
- package/dist/services/export/contextExportService.js +3 -3
- package/dist/services/export/contextExportService.js.map +1 -1
- package/dist/services/export/exportRulesService.d.ts +1 -0
- package/dist/services/export/exportRulesService.d.ts.map +1 -1
- package/dist/services/export/exportRulesService.js +20 -8
- package/dist/services/export/exportRulesService.js.map +1 -1
- package/dist/services/export/skillExportService.d.ts.map +1 -1
- package/dist/services/export/skillExportService.js +4 -1
- package/dist/services/export/skillExportService.js.map +1 -1
- package/dist/services/harness/agentsService.d.ts +31 -0
- package/dist/services/harness/agentsService.d.ts.map +1 -0
- package/dist/services/harness/agentsService.js +135 -0
- package/dist/services/harness/agentsService.js.map +1 -0
- package/dist/services/harness/contextService.d.ts +167 -0
- package/dist/services/harness/contextService.d.ts.map +1 -0
- package/dist/services/harness/contextService.js +403 -0
- package/dist/services/harness/contextService.js.map +1 -0
- package/dist/services/harness/contextTools.d.ts +95 -0
- package/dist/services/harness/contextTools.d.ts.map +1 -0
- package/dist/services/harness/contextTools.js +990 -0
- package/dist/services/harness/contextTools.js.map +1 -0
- package/dist/services/harness/datasetService.d.ts +63 -0
- package/dist/services/harness/datasetService.d.ts.map +1 -0
- package/dist/services/harness/datasetService.js +261 -0
- package/dist/services/harness/datasetService.js.map +1 -0
- package/dist/services/harness/executionService.d.ts +74 -0
- package/dist/services/harness/executionService.d.ts.map +1 -0
- package/dist/services/harness/executionService.js +213 -0
- package/dist/services/harness/executionService.js.map +1 -0
- package/dist/services/harness/index.d.ts +21 -0
- package/dist/services/harness/index.d.ts.map +1 -0
- package/dist/services/harness/index.js +52 -0
- package/dist/services/harness/index.js.map +1 -0
- package/dist/services/harness/plansService.d.ts +45 -0
- package/dist/services/harness/plansService.d.ts.map +1 -0
- package/dist/services/harness/plansService.js +251 -0
- package/dist/services/harness/plansService.js.map +1 -0
- package/dist/services/harness/policyService.d.ts +116 -0
- package/dist/services/harness/policyService.d.ts.map +1 -0
- package/dist/services/harness/policyService.js +510 -0
- package/dist/services/harness/policyService.js.map +1 -0
- package/dist/services/harness/replayService.d.ts +63 -0
- package/dist/services/harness/replayService.d.ts.map +1 -0
- package/dist/services/harness/replayService.js +242 -0
- package/dist/services/harness/replayService.js.map +1 -0
- package/dist/services/harness/runtimeStateService.d.ts +120 -0
- package/dist/services/harness/runtimeStateService.d.ts.map +1 -0
- package/dist/services/harness/runtimeStateService.js +316 -0
- package/dist/services/harness/runtimeStateService.js.map +1 -0
- package/dist/services/harness/sensorCatalogService.d.ts +50 -0
- package/dist/services/harness/sensorCatalogService.d.ts.map +1 -0
- package/dist/services/harness/sensorCatalogService.js +308 -0
- package/dist/services/harness/sensorCatalogService.js.map +1 -0
- package/dist/services/harness/sensorsService.d.ts +64 -0
- package/dist/services/harness/sensorsService.d.ts.map +1 -0
- package/dist/services/harness/sensorsService.js +88 -0
- package/dist/services/harness/sensorsService.js.map +1 -0
- package/dist/services/harness/skillsService.d.ts +31 -0
- package/dist/services/harness/skillsService.d.ts.map +1 -0
- package/dist/services/harness/skillsService.js +296 -0
- package/dist/services/harness/skillsService.js.map +1 -0
- package/dist/services/harness/taskContractsService.d.ts +88 -0
- package/dist/services/harness/taskContractsService.d.ts.map +1 -0
- package/dist/services/harness/taskContractsService.js +210 -0
- package/dist/services/harness/taskContractsService.js.map +1 -0
- package/dist/services/harness/workflowStateService.d.ts +51 -0
- package/dist/services/harness/workflowStateService.d.ts.map +1 -0
- package/dist/services/harness/workflowStateService.js +215 -0
- package/dist/services/harness/workflowStateService.js.map +1 -0
- package/dist/services/import/agentsDetector.d.ts.map +1 -1
- package/dist/services/import/agentsDetector.js +14 -8
- package/dist/services/import/agentsDetector.js.map +1 -1
- package/dist/services/import/importAgentsService.d.ts +2 -2
- package/dist/services/import/importAgentsService.d.ts.map +1 -1
- package/dist/services/import/importAgentsService.js +8 -1
- package/dist/services/import/importAgentsService.js.map +1 -1
- package/dist/services/import/importRulesService.d.ts +2 -2
- package/dist/services/import/importRulesService.d.ts.map +1 -1
- package/dist/services/import/importRulesService.js +8 -1
- package/dist/services/import/importRulesService.js.map +1 -1
- package/dist/services/import/presets.js +2 -2
- package/dist/services/import/presets.js.map +1 -1
- package/dist/services/import/rulesDetector.d.ts.map +1 -1
- package/dist/services/import/rulesDetector.js +16 -1
- package/dist/services/import/rulesDetector.js.map +1 -1
- package/dist/services/import/types.d.ts +1 -1
- package/dist/services/import/types.d.ts.map +1 -1
- package/dist/services/mcp/actionLogger.d.ts +2 -1
- package/dist/services/mcp/actionLogger.d.ts.map +1 -1
- package/dist/services/mcp/actionLogger.js +76 -15
- package/dist/services/mcp/actionLogger.js.map +1 -1
- package/dist/services/mcp/gateway/agent.d.ts.map +1 -1
- package/dist/services/mcp/gateway/agent.js +15 -104
- package/dist/services/mcp/gateway/agent.js.map +1 -1
- package/dist/services/mcp/gateway/context.d.ts.map +1 -1
- package/dist/services/mcp/gateway/context.js +60 -172
- package/dist/services/mcp/gateway/context.js.map +1 -1
- package/dist/services/mcp/gateway/explore.js +6 -6
- package/dist/services/mcp/gateway/explore.js.map +1 -1
- package/dist/services/mcp/gateway/harness.d.ts +7 -0
- package/dist/services/mcp/gateway/harness.d.ts.map +1 -0
- package/dist/services/mcp/gateway/harness.js +337 -0
- package/dist/services/mcp/gateway/harness.js.map +1 -0
- package/dist/services/mcp/gateway/index.d.ts +3 -2
- package/dist/services/mcp/gateway/index.d.ts.map +1 -1
- package/dist/services/mcp/gateway/index.js +4 -2
- package/dist/services/mcp/gateway/index.js.map +1 -1
- package/dist/services/mcp/gateway/metrics.d.ts.map +1 -1
- package/dist/services/mcp/gateway/metrics.js +8 -8
- package/dist/services/mcp/gateway/metrics.js.map +1 -1
- package/dist/services/mcp/gateway/plan.d.ts.map +1 -1
- package/dist/services/mcp/gateway/plan.js +23 -211
- package/dist/services/mcp/gateway/plan.js.map +1 -1
- package/dist/services/mcp/gateway/shared.d.ts +1 -32
- package/dist/services/mcp/gateway/shared.d.ts.map +1 -1
- package/dist/services/mcp/gateway/shared.js +4 -30
- package/dist/services/mcp/gateway/shared.js.map +1 -1
- package/dist/services/mcp/gateway/skill.d.ts.map +1 -1
- package/dist/services/mcp/gateway/skill.js +14 -281
- package/dist/services/mcp/gateway/skill.js.map +1 -1
- package/dist/services/mcp/gateway/types.d.ts +74 -3
- package/dist/services/mcp/gateway/types.d.ts.map +1 -1
- package/dist/services/mcp/gateway/workflowAdvance.d.ts.map +1 -1
- package/dist/services/mcp/gateway/workflowAdvance.js +37 -9
- package/dist/services/mcp/gateway/workflowAdvance.js.map +1 -1
- package/dist/services/mcp/gateway/workflowInit.d.ts.map +1 -1
- package/dist/services/mcp/gateway/workflowInit.js +8 -2
- package/dist/services/mcp/gateway/workflowInit.js.map +1 -1
- package/dist/services/mcp/gateway/workflowManage.d.ts +17 -1
- package/dist/services/mcp/gateway/workflowManage.d.ts.map +1 -1
- package/dist/services/mcp/gateway/workflowManage.js +155 -10
- package/dist/services/mcp/gateway/workflowManage.js.map +1 -1
- package/dist/services/mcp/gateway/workflowStatus.d.ts.map +1 -1
- package/dist/services/mcp/gateway/workflowStatus.js +5 -3
- package/dist/services/mcp/gateway/workflowStatus.js.map +1 -1
- package/dist/services/mcp/gatewayTools.d.ts +1 -1
- package/dist/services/mcp/gatewayTools.d.ts.map +1 -1
- package/dist/services/mcp/gatewayTools.js +2 -1
- package/dist/services/mcp/gatewayTools.js.map +1 -1
- package/dist/services/mcp/index.d.ts +10 -4
- package/dist/services/mcp/index.d.ts.map +1 -1
- package/dist/services/mcp/index.js +9 -3
- package/dist/services/mcp/index.js.map +1 -1
- package/dist/services/mcp/mcpInstallService.d.ts +4 -52
- package/dist/services/mcp/mcpInstallService.d.ts.map +1 -1
- package/dist/services/mcp/mcpInstallService.js +5 -596
- package/dist/services/mcp/mcpInstallService.js.map +1 -1
- package/dist/services/mcp/mcpServer.d.ts +5 -6
- package/dist/services/mcp/mcpServer.d.ts.map +1 -1
- package/dist/services/mcp/mcpServer.js +220 -28
- package/dist/services/mcp/mcpServer.js.map +1 -1
- package/dist/services/qa/patternInferer.d.ts +2 -31
- package/dist/services/qa/patternInferer.d.ts.map +1 -1
- package/dist/services/qa/patternInferer.js +4 -353
- package/dist/services/qa/patternInferer.js.map +1 -1
- package/dist/services/qa/qaService.d.ts +6 -10
- package/dist/services/qa/qaService.d.ts.map +1 -1
- package/dist/services/qa/qaService.js +17 -53
- package/dist/services/qa/qaService.js.map +1 -1
- package/dist/services/reverseSync/importSkillsService.d.ts.map +1 -1
- package/dist/services/reverseSync/importSkillsService.js +4 -1
- package/dist/services/reverseSync/importSkillsService.js.map +1 -1
- package/dist/services/reverseSync/reverseQuickSyncService.d.ts.map +1 -1
- package/dist/services/reverseSync/reverseQuickSyncService.js +10 -6
- package/dist/services/reverseSync/reverseQuickSyncService.js.map +1 -1
- package/dist/services/reverseSync/skillsDetector.js +2 -2
- package/dist/services/reverseSync/skillsDetector.js.map +1 -1
- package/dist/services/reverseSync/toolDetector.d.ts.map +1 -1
- package/dist/services/reverseSync/toolDetector.js +3 -0
- package/dist/services/reverseSync/toolDetector.js.map +1 -1
- package/dist/services/semantic/index.d.ts +1 -0
- package/dist/services/semantic/index.d.ts.map +1 -1
- package/dist/services/semantic/index.js +3 -1
- package/dist/services/semantic/index.js.map +1 -1
- package/dist/services/semantic/semanticSnapshotService.d.ts +86 -0
- package/dist/services/semantic/semanticSnapshotService.d.ts.map +1 -0
- package/dist/services/semantic/semanticSnapshotService.js +573 -0
- package/dist/services/semantic/semanticSnapshotService.js.map +1 -0
- package/dist/services/shared/contentTypeRegistry.d.ts.map +1 -1
- package/dist/services/shared/contentTypeRegistry.js +9 -0
- package/dist/services/shared/contentTypeRegistry.js.map +1 -1
- package/dist/services/shared/contextLayout.d.ts +18 -0
- package/dist/services/shared/contextLayout.d.ts.map +1 -0
- package/dist/services/shared/contextLayout.js +139 -0
- package/dist/services/shared/contextLayout.js.map +1 -0
- package/dist/services/shared/executionContext.d.ts +38 -0
- package/dist/services/shared/executionContext.d.ts.map +1 -0
- package/dist/services/shared/executionContext.js +39 -0
- package/dist/services/shared/executionContext.js.map +1 -0
- package/dist/services/shared/index.d.ts +2 -0
- package/dist/services/shared/index.d.ts.map +1 -1
- package/dist/services/shared/index.js +11 -1
- package/dist/services/shared/index.js.map +1 -1
- package/dist/services/shared/toolRegistry.d.ts +6 -0
- package/dist/services/shared/toolRegistry.d.ts.map +1 -1
- package/dist/services/shared/toolRegistry.js +34 -20
- package/dist/services/shared/toolRegistry.js.map +1 -1
- package/dist/services/stack/scaffoldFilter.d.ts +3 -3
- package/dist/services/state/stateDetector.d.ts +4 -49
- package/dist/services/state/stateDetector.d.ts.map +1 -1
- package/dist/services/state/stateDetector.js +9 -182
- package/dist/services/state/stateDetector.js.map +1 -1
- package/dist/services/sync/index.d.ts +1 -1
- package/dist/services/sync/index.d.ts.map +1 -1
- package/dist/services/sync/index.js.map +1 -1
- package/dist/services/sync/markdownReferenceHandler.d.ts.map +1 -1
- package/dist/services/sync/markdownReferenceHandler.js +7 -2
- package/dist/services/sync/markdownReferenceHandler.js.map +1 -1
- package/dist/services/sync/presets.d.ts.map +1 -1
- package/dist/services/sync/presets.js +1 -0
- package/dist/services/sync/presets.js.map +1 -1
- package/dist/services/sync/symlinkHandler.d.ts.map +1 -1
- package/dist/services/sync/symlinkHandler.js +7 -2
- package/dist/services/sync/symlinkHandler.js.map +1 -1
- package/dist/services/sync/syncService.d.ts +2 -2
- package/dist/services/sync/syncService.d.ts.map +1 -1
- package/dist/services/sync/syncService.js +17 -3
- package/dist/services/sync/syncService.js.map +1 -1
- package/dist/services/sync/types.d.ts +9 -1
- package/dist/services/sync/types.d.ts.map +1 -1
- package/dist/services/workflow/index.d.ts +1 -1
- package/dist/services/workflow/index.d.ts.map +1 -1
- package/dist/services/workflow/index.js +2 -1
- package/dist/services/workflow/index.js.map +1 -1
- package/dist/services/workflow/workflowService.d.ts +68 -0
- package/dist/services/workflow/workflowService.d.ts.map +1 -1
- package/dist/services/workflow/workflowService.js +416 -1
- package/dist/services/workflow/workflowService.js.map +1 -1
- package/dist/utils/gitignoreManager.d.ts +8 -0
- package/dist/utils/gitignoreManager.d.ts.map +1 -1
- package/dist/utils/gitignoreManager.js +40 -0
- package/dist/utils/gitignoreManager.js.map +1 -1
- package/dist/utils/i18n.d.ts +1 -1
- package/dist/utils/i18n.js +2 -2
- package/dist/utils/i18n.js.map +1 -1
- package/dist/utils/processShutdown.d.ts +20 -0
- package/dist/utils/processShutdown.d.ts.map +1 -0
- package/dist/utils/processShutdown.js +47 -0
- package/dist/utils/processShutdown.js.map +1 -0
- package/dist/utils/prompts/index.d.ts +1 -1
- package/dist/utils/prompts/index.d.ts.map +1 -1
- package/dist/utils/prompts/index.js +1 -3
- package/dist/utils/prompts/index.js.map +1 -1
- package/dist/utils/prompts/smartDefaults.d.ts +0 -9
- package/dist/utils/prompts/smartDefaults.d.ts.map +1 -1
- package/dist/utils/prompts/smartDefaults.js +0 -23
- package/dist/utils/prompts/smartDefaults.js.map +1 -1
- package/dist/utils/prompts/types.d.ts +0 -11
- package/dist/utils/prompts/types.d.ts.map +1 -1
- package/dist/utils/versionChecker.d.ts.map +1 -1
- package/dist/utils/versionChecker.js +17 -8
- package/dist/utils/versionChecker.js.map +1 -1
- package/dist/workflow/index.d.ts +1 -1
- package/dist/workflow/index.d.ts.map +1 -1
- package/dist/workflow/index.js +6 -1
- package/dist/workflow/index.js.map +1 -1
- package/dist/workflow/orchestrator.d.ts.map +1 -1
- package/dist/workflow/orchestrator.js +3 -14
- package/dist/workflow/orchestrator.js.map +1 -1
- package/dist/workflow/plans/planLinker.d.ts +13 -0
- package/dist/workflow/plans/planLinker.d.ts.map +1 -1
- package/dist/workflow/plans/planLinker.js +77 -2
- package/dist/workflow/plans/planLinker.js.map +1 -1
- package/dist/workflow/plans/types.d.ts +6 -0
- package/dist/workflow/plans/types.d.ts.map +1 -1
- package/dist/workflow/skills/frontmatter.d.ts +9 -0
- package/dist/workflow/skills/frontmatter.d.ts.map +1 -1
- package/dist/workflow/skills/frontmatter.js +16 -0
- package/dist/workflow/skills/frontmatter.js.map +1 -1
- package/dist/workflow/skills/index.d.ts +1 -1
- package/dist/workflow/skills/index.d.ts.map +1 -1
- package/dist/workflow/skills/index.js +3 -1
- package/dist/workflow/skills/index.js.map +1 -1
- package/dist/workflow/skills/skillRegistry.d.ts.map +1 -1
- package/dist/workflow/skills/skillRegistry.js +4 -1
- package/dist/workflow/skills/skillRegistry.js.map +1 -1
- package/dist/workflow/skills/skillTemplates.d.ts.map +1 -1
- package/dist/workflow/skills/skillTemplates.js +69 -30
- package/dist/workflow/skills/skillTemplates.js.map +1 -1
- package/dist/workflow/status/statusManager.d.ts +8 -3
- package/dist/workflow/status/statusManager.d.ts.map +1 -1
- package/dist/workflow/status/statusManager.js +60 -21
- package/dist/workflow/status/statusManager.js.map +1 -1
- package/dist/workflow/types.d.ts +1 -1
- package/package.json +19 -11
- package/dist/services/ai/aiSdkClient.d.ts +0 -67
- package/dist/services/ai/aiSdkClient.d.ts.map +0 -1
- package/dist/services/ai/aiSdkClient.js +0 -143
- package/dist/services/ai/aiSdkClient.js.map +0 -1
- package/dist/services/ai/index.d.ts +0 -5
- package/dist/services/ai/index.d.ts.map +0 -1
- package/dist/services/ai/index.js +0 -40
- package/dist/services/ai/index.js.map +0 -1
- package/dist/services/ai/providerFactory.d.ts +0 -35
- package/dist/services/ai/providerFactory.d.ts.map +0 -1
- package/dist/services/ai/providerFactory.js +0 -107
- package/dist/services/ai/providerFactory.js.map +0 -1
- package/dist/services/ai/schemas.d.ts +0 -557
- package/dist/services/ai/schemas.d.ts.map +0 -1
- package/dist/services/ai/schemas.js +0 -357
- package/dist/services/ai/schemas.js.map +0 -1
- package/dist/services/ai/toolRegistry.d.ts +0 -27
- package/dist/services/ai/toolRegistry.d.ts.map +0 -1
- package/dist/services/ai/toolRegistry.js +0 -151
- package/dist/services/ai/toolRegistry.js.map +0 -1
- package/dist/services/ai/tools/analyzeSymbolsTool.d.ts +0 -33
- package/dist/services/ai/tools/analyzeSymbolsTool.d.ts.map +0 -1
- package/dist/services/ai/tools/analyzeSymbolsTool.js +0 -57
- package/dist/services/ai/tools/analyzeSymbolsTool.js.map +0 -1
- package/dist/services/ai/tools/checkScaffoldingTool.d.ts +0 -18
- package/dist/services/ai/tools/checkScaffoldingTool.d.ts.map +0 -1
- package/dist/services/ai/tools/checkScaffoldingTool.js +0 -89
- package/dist/services/ai/tools/checkScaffoldingTool.js.map +0 -1
- package/dist/services/ai/tools/fillScaffoldingTool.d.ts +0 -124
- package/dist/services/ai/tools/fillScaffoldingTool.d.ts.map +0 -1
- package/dist/services/ai/tools/fillScaffoldingTool.js +0 -397
- package/dist/services/ai/tools/fillScaffoldingTool.js.map +0 -1
- package/dist/services/ai/tools/getCodebaseMapTool.d.ts +0 -17
- package/dist/services/ai/tools/getCodebaseMapTool.d.ts.map +0 -1
- package/dist/services/ai/tools/getCodebaseMapTool.js +0 -122
- package/dist/services/ai/tools/getCodebaseMapTool.js.map +0 -1
- package/dist/services/ai/tools/getFileStructureTool.d.ts +0 -29
- package/dist/services/ai/tools/getFileStructureTool.d.ts.map +0 -1
- package/dist/services/ai/tools/getFileStructureTool.js +0 -48
- package/dist/services/ai/tools/getFileStructureTool.js.map +0 -1
- package/dist/services/ai/tools/index.d.ts +0 -21
- package/dist/services/ai/tools/index.d.ts.map +0 -1
- package/dist/services/ai/tools/index.js +0 -75
- package/dist/services/ai/tools/index.js.map +0 -1
- package/dist/services/ai/tools/initializeContextTool.d.ts +0 -135
- package/dist/services/ai/tools/initializeContextTool.d.ts.map +0 -1
- package/dist/services/ai/tools/initializeContextTool.js +0 -447
- package/dist/services/ai/tools/initializeContextTool.js.map +0 -1
- package/dist/services/ai/tools/listFilesTool.d.ts +0 -18
- package/dist/services/ai/tools/listFilesTool.d.ts.map +0 -1
- package/dist/services/ai/tools/listFilesTool.js +0 -34
- package/dist/services/ai/tools/listFilesTool.js.map +0 -1
- package/dist/services/ai/tools/readFileTool.d.ts +0 -17
- package/dist/services/ai/tools/readFileTool.d.ts.map +0 -1
- package/dist/services/ai/tools/readFileTool.js +0 -63
- package/dist/services/ai/tools/readFileTool.js.map +0 -1
- package/dist/services/ai/tools/scaffoldPlanTool.d.ts +0 -41
- package/dist/services/ai/tools/scaffoldPlanTool.d.ts.map +0 -1
- package/dist/services/ai/tools/scaffoldPlanTool.js +0 -183
- package/dist/services/ai/tools/scaffoldPlanTool.js.map +0 -1
- package/dist/services/ai/tools/searchCodeTool.d.ts +0 -25
- package/dist/services/ai/tools/searchCodeTool.d.ts.map +0 -1
- package/dist/services/ai/tools/searchCodeTool.js +0 -96
- package/dist/services/ai/tools/searchCodeTool.js.map +0 -1
- package/dist/services/baseLLMClient.d.ts +0 -12
- package/dist/services/baseLLMClient.d.ts.map +0 -1
- package/dist/services/baseLLMClient.js +0 -80
- package/dist/services/baseLLMClient.js.map +0 -1
|
@@ -7,7 +7,9 @@
|
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.generateFrontmatter = generateFrontmatter;
|
|
10
|
+
exports.generatePortableFrontmatter = generatePortableFrontmatter;
|
|
10
11
|
exports.wrapWithFrontmatter = wrapWithFrontmatter;
|
|
12
|
+
exports.wrapWithPortableFrontmatter = wrapWithPortableFrontmatter;
|
|
11
13
|
exports.parseFrontmatter = parseFrontmatter;
|
|
12
14
|
/**
|
|
13
15
|
* Generate YAML frontmatter string from metadata
|
|
@@ -28,6 +30,13 @@ function generateFrontmatter(metadata, slug) {
|
|
|
28
30
|
lines.push('---');
|
|
29
31
|
return lines.join('\n');
|
|
30
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Generate portable skill frontmatter for exported AI-tool skills.
|
|
35
|
+
* Keep only the fields understood by external skill runtimes.
|
|
36
|
+
*/
|
|
37
|
+
function generatePortableFrontmatter(name, description) {
|
|
38
|
+
return ['---', `name: ${name}`, `description: ${description}`, '---'].join('\n');
|
|
39
|
+
}
|
|
31
40
|
/**
|
|
32
41
|
* Wrap content with frontmatter
|
|
33
42
|
*/
|
|
@@ -35,6 +44,13 @@ function wrapWithFrontmatter(metadata, content, slug) {
|
|
|
35
44
|
const result = `${generateFrontmatter(metadata, slug)}\n\n${content}`;
|
|
36
45
|
return result.endsWith('\n') ? result : `${result}\n`;
|
|
37
46
|
}
|
|
47
|
+
/**
|
|
48
|
+
* Wrap content with portable frontmatter for exported AI-tool skills.
|
|
49
|
+
*/
|
|
50
|
+
function wrapWithPortableFrontmatter(name, description, content) {
|
|
51
|
+
const result = `${generatePortableFrontmatter(name, description)}\n\n${content}`;
|
|
52
|
+
return result.endsWith('\n') ? result : `${result}\n`;
|
|
53
|
+
}
|
|
38
54
|
/**
|
|
39
55
|
* Parse YAML frontmatter from SKILL.md content
|
|
40
56
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../../src/workflow/skills/frontmatter.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAQH,kDAqBC;AAKD,kDAGC;AAKD,4CAgDC;
|
|
1
|
+
{"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../../../src/workflow/skills/frontmatter.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,5 +6,5 @@
|
|
|
6
6
|
export { Skill, SkillMetadata, SkillReference, DiscoveredSkills, BUILT_IN_SKILLS, BuiltInSkillType, isBuiltInSkill, SKILL_TO_PHASES, } from './types';
|
|
7
7
|
export { SkillRegistry, createSkillRegistry, } from './skillRegistry';
|
|
8
8
|
export { getBuiltInSkillTemplates, SkillTemplate, } from './skillTemplates';
|
|
9
|
-
export { generateFrontmatter, wrapWithFrontmatter, parseFrontmatter, } from './frontmatter';
|
|
9
|
+
export { generateFrontmatter, generatePortableFrontmatter, wrapWithFrontmatter, wrapWithPortableFrontmatter, parseFrontmatter, } from './frontmatter';
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/workflow/skills/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,KAAK,EACL,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,GAChB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,wBAAwB,EACxB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/workflow/skills/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,KAAK,EACL,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,eAAe,GAChB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,aAAa,EACb,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,wBAAwB,EACxB,aAAa,GACd,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,mBAAmB,EACnB,2BAA2B,EAC3B,gBAAgB,GACjB,MAAM,eAAe,CAAC"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* On-demand expertise for AI agents.
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.parseFrontmatter = exports.wrapWithFrontmatter = exports.generateFrontmatter = exports.getBuiltInSkillTemplates = exports.createSkillRegistry = exports.SkillRegistry = exports.SKILL_TO_PHASES = exports.isBuiltInSkill = exports.BUILT_IN_SKILLS = void 0;
|
|
8
|
+
exports.parseFrontmatter = exports.wrapWithPortableFrontmatter = exports.wrapWithFrontmatter = exports.generatePortableFrontmatter = exports.generateFrontmatter = exports.getBuiltInSkillTemplates = exports.createSkillRegistry = exports.SkillRegistry = exports.SKILL_TO_PHASES = exports.isBuiltInSkill = exports.BUILT_IN_SKILLS = void 0;
|
|
9
9
|
var types_1 = require("./types");
|
|
10
10
|
Object.defineProperty(exports, "BUILT_IN_SKILLS", { enumerable: true, get: function () { return types_1.BUILT_IN_SKILLS; } });
|
|
11
11
|
Object.defineProperty(exports, "isBuiltInSkill", { enumerable: true, get: function () { return types_1.isBuiltInSkill; } });
|
|
@@ -17,6 +17,8 @@ var skillTemplates_1 = require("./skillTemplates");
|
|
|
17
17
|
Object.defineProperty(exports, "getBuiltInSkillTemplates", { enumerable: true, get: function () { return skillTemplates_1.getBuiltInSkillTemplates; } });
|
|
18
18
|
var frontmatter_1 = require("./frontmatter");
|
|
19
19
|
Object.defineProperty(exports, "generateFrontmatter", { enumerable: true, get: function () { return frontmatter_1.generateFrontmatter; } });
|
|
20
|
+
Object.defineProperty(exports, "generatePortableFrontmatter", { enumerable: true, get: function () { return frontmatter_1.generatePortableFrontmatter; } });
|
|
20
21
|
Object.defineProperty(exports, "wrapWithFrontmatter", { enumerable: true, get: function () { return frontmatter_1.wrapWithFrontmatter; } });
|
|
22
|
+
Object.defineProperty(exports, "wrapWithPortableFrontmatter", { enumerable: true, get: function () { return frontmatter_1.wrapWithPortableFrontmatter; } });
|
|
21
23
|
Object.defineProperty(exports, "parseFrontmatter", { enumerable: true, get: function () { return frontmatter_1.parseFrontmatter; } });
|
|
22
24
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/workflow/skills/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,iCASiB;AAJf,wGAAA,eAAe,OAAA;AAEf,uGAAA,cAAc,OAAA;AACd,wGAAA,eAAe,OAAA;AAGjB,iDAGyB;AAFvB,8GAAA,aAAa,OAAA;AACb,oHAAA,mBAAmB,OAAA;AAGrB,mDAG0B;AAFxB,0HAAA,wBAAwB,OAAA;AAI1B,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/workflow/skills/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,iCASiB;AAJf,wGAAA,eAAe,OAAA;AAEf,uGAAA,cAAc,OAAA;AACd,wGAAA,eAAe,OAAA;AAGjB,iDAGyB;AAFvB,8GAAA,aAAa,OAAA;AACb,oHAAA,mBAAmB,OAAA;AAGrB,mDAG0B;AAFxB,0HAAA,wBAAwB,OAAA;AAI1B,6CAMuB;AALrB,kHAAA,mBAAmB,OAAA;AACnB,0HAAA,2BAA2B,OAAA;AAC3B,kHAAA,mBAAmB,OAAA;AACnB,0HAAA,2BAA2B,OAAA;AAC3B,+GAAA,gBAAgB,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skillRegistry.d.ts","sourceRoot":"","sources":["../../../src/workflow/skills/skillRegistry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EACL,KAAK,EAEL,gBAAgB,EAKjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAQtC,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,KAAK,CAAiC;gBAElC,QAAQ,EAAE,MAAM;IAK5B;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAiB9C;;OAEG;IACG,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAK3D;;OAEG;IACG,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"skillRegistry.d.ts","sourceRoot":"","sources":["../../../src/workflow/skills/skillRegistry.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EACL,KAAK,EAEL,gBAAgB,EAKjB,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAQtC,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,KAAK,CAAiC;gBAElC,QAAQ,EAAE,MAAM;IAK5B;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAiB9C;;OAEG;IACG,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAK3D;;OAEG;IACG,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgB3D;;OAEG;IACG,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAK5D;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAsB7B;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAc5B;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAoCnC;;OAEG;IACH,OAAO,CAAC,cAAc;IA2BtB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,0BAA0B;IAqBlC;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAmB3B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,CAEnE"}
|
|
@@ -87,7 +87,10 @@ class SkillRegistry {
|
|
|
87
87
|
if (!skill)
|
|
88
88
|
return null;
|
|
89
89
|
try {
|
|
90
|
-
|
|
90
|
+
if (fs.existsSync(skill.path)) {
|
|
91
|
+
return fs.readFileSync(skill.path, 'utf-8');
|
|
92
|
+
}
|
|
93
|
+
return (0, frontmatter_1.wrapWithFrontmatter)(skill.metadata, skill.content, skill.slug);
|
|
91
94
|
}
|
|
92
95
|
catch (error) {
|
|
93
96
|
console.error(`Failed to read skill file: ${skill.path}`, error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skillRegistry.js","sourceRoot":"","sources":["../../../src/workflow/skills/skillRegistry.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"skillRegistry.js","sourceRoot":"","sources":["../../../src/workflow/skills/skillRegistry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skillTemplates.d.ts","sourceRoot":"","sources":["../../../src/workflow/skills/skillTemplates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAiB3C,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;
|
|
1
|
+
{"version":3,"file":"skillTemplates.d.ts","sourceRoot":"","sources":["../../../src/workflow/skills/skillTemplates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAiB3C,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AAwDD;;GAEG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAalF"}
|
|
@@ -12,25 +12,54 @@
|
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
exports.getBuiltInSkillTemplates = getBuiltInSkillTemplates;
|
|
14
14
|
const definitions_1 = require("../../generators/shared/structures/skills/definitions");
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
*/
|
|
18
|
-
function contentToMarkdown(title, content) {
|
|
19
|
-
let md = `# ${title}\n\n`;
|
|
20
|
-
if (content.whenToUse) {
|
|
21
|
-
md += `## When to Use\n${content.whenToUse}\n\n`;
|
|
22
|
-
}
|
|
15
|
+
function contentToMarkdown(title, overview, content) {
|
|
16
|
+
let md = `# ${title}\n\n${overview}.\n\n`;
|
|
23
17
|
if (content.instructions) {
|
|
24
|
-
md += `##
|
|
18
|
+
md += `## Workflow\n${content.instructions}\n\n`;
|
|
25
19
|
}
|
|
26
20
|
if (content.examples) {
|
|
27
21
|
md += `## Examples\n${content.examples}\n\n`;
|
|
28
22
|
}
|
|
29
23
|
if (content.guidelines) {
|
|
30
|
-
md += `##
|
|
24
|
+
md += `## Quality Bar\n${content.guidelines}\n\n`;
|
|
31
25
|
}
|
|
26
|
+
md += `## Resource Strategy
|
|
27
|
+
- Add \`scripts/\` only when the task is fragile, repetitive, or benefits from deterministic execution.
|
|
28
|
+
- Add \`references/\` only when details are too large or too variant-specific to keep in \`SKILL.md\`.
|
|
29
|
+
- Add \`assets/\` only for files that will be consumed in the final output.
|
|
30
|
+
- Keep extra docs out of the skill folder; prefer \`SKILL.md\` plus only the resources that materially help.`;
|
|
32
31
|
return md;
|
|
33
32
|
}
|
|
33
|
+
function extractTriggerBullets(whenToUse) {
|
|
34
|
+
if (!whenToUse) {
|
|
35
|
+
return [];
|
|
36
|
+
}
|
|
37
|
+
return whenToUse
|
|
38
|
+
.split('\n')
|
|
39
|
+
.map(line => line.trim())
|
|
40
|
+
.filter(line => line.startsWith('-'))
|
|
41
|
+
.map(line => line.replace(/^-+\s*/, '').replace(/\.$/, '').trim())
|
|
42
|
+
.filter(Boolean);
|
|
43
|
+
}
|
|
44
|
+
function joinNaturalLanguage(items) {
|
|
45
|
+
if (items.length === 0) {
|
|
46
|
+
return '';
|
|
47
|
+
}
|
|
48
|
+
if (items.length === 1) {
|
|
49
|
+
return items[0];
|
|
50
|
+
}
|
|
51
|
+
if (items.length === 2) {
|
|
52
|
+
return `${items[0]} or ${items[1]}`;
|
|
53
|
+
}
|
|
54
|
+
return `${items.slice(0, -1).join(', ')}, or ${items[items.length - 1]}`;
|
|
55
|
+
}
|
|
56
|
+
function buildTemplateDescription(baseDescription, content) {
|
|
57
|
+
const triggers = extractTriggerBullets(content.whenToUse);
|
|
58
|
+
if (triggers.length === 0) {
|
|
59
|
+
return baseDescription;
|
|
60
|
+
}
|
|
61
|
+
return `${baseDescription}. Use when ${joinNaturalLanguage(triggers)}`;
|
|
62
|
+
}
|
|
34
63
|
/**
|
|
35
64
|
* Get all built-in skill templates
|
|
36
65
|
*/
|
|
@@ -49,63 +78,73 @@ function getBuiltInSkillTemplates() {
|
|
|
49
78
|
};
|
|
50
79
|
}
|
|
51
80
|
function createCommitMessageSkill() {
|
|
81
|
+
const overview = 'Use this skill to turn a concrete set of staged changes into a clean conventional commit message';
|
|
52
82
|
return {
|
|
53
|
-
description: 'Generate commit messages
|
|
54
|
-
content: contentToMarkdown('Commit Message
|
|
83
|
+
description: buildTemplateDescription('Generate commit messages that follow conventional commits and repository scope conventions', definitions_1.commitMessageContent),
|
|
84
|
+
content: contentToMarkdown('Commit Message', overview, definitions_1.commitMessageContent),
|
|
55
85
|
};
|
|
56
86
|
}
|
|
57
87
|
function createPrReviewSkill() {
|
|
88
|
+
const overview = 'Use this skill to review a pull request against the repository quality bar and leave actionable feedback';
|
|
58
89
|
return {
|
|
59
|
-
description: 'Review pull requests against team standards and best practices',
|
|
60
|
-
content: contentToMarkdown('Pull Request Review', definitions_1.prReviewContent),
|
|
90
|
+
description: buildTemplateDescription('Review pull requests against team standards and best practices', definitions_1.prReviewContent),
|
|
91
|
+
content: contentToMarkdown('Pull Request Review', overview, definitions_1.prReviewContent),
|
|
61
92
|
};
|
|
62
93
|
}
|
|
63
94
|
function createCodeReviewSkill() {
|
|
95
|
+
const overview = 'Use this skill to inspect code for correctness, maintainability, and higher-order risks before changes move forward';
|
|
64
96
|
return {
|
|
65
|
-
description: 'Review code quality, patterns, and best practices',
|
|
66
|
-
content: contentToMarkdown('Code Review', definitions_1.codeReviewContent),
|
|
97
|
+
description: buildTemplateDescription('Review code quality, patterns, and best practices', definitions_1.codeReviewContent),
|
|
98
|
+
content: contentToMarkdown('Code Review', overview, definitions_1.codeReviewContent),
|
|
67
99
|
};
|
|
68
100
|
}
|
|
69
101
|
function createTestGenerationSkill() {
|
|
102
|
+
const overview = 'Use this skill to produce tests that cover behavior, regressions, and the repository testing conventions';
|
|
70
103
|
return {
|
|
71
|
-
description: 'Generate comprehensive test cases for code',
|
|
72
|
-
content: contentToMarkdown('Test Generation', definitions_1.testGenerationContent),
|
|
104
|
+
description: buildTemplateDescription('Generate comprehensive test cases for code', definitions_1.testGenerationContent),
|
|
105
|
+
content: contentToMarkdown('Test Generation', overview, definitions_1.testGenerationContent),
|
|
73
106
|
};
|
|
74
107
|
}
|
|
75
108
|
function createDocumentationSkill() {
|
|
109
|
+
const overview = 'Use this skill to create or update technical documentation that matches the current code and the target audience';
|
|
76
110
|
return {
|
|
77
|
-
description: 'Generate and update technical documentation',
|
|
78
|
-
content: contentToMarkdown('Documentation
|
|
111
|
+
description: buildTemplateDescription('Generate and update technical documentation', definitions_1.documentationContent),
|
|
112
|
+
content: contentToMarkdown('Documentation', overview, definitions_1.documentationContent),
|
|
79
113
|
};
|
|
80
114
|
}
|
|
81
115
|
function createRefactoringSkill() {
|
|
116
|
+
const overview = 'Use this skill to improve structure without changing behavior, keeping the work incremental and test-backed';
|
|
82
117
|
return {
|
|
83
|
-
description: '
|
|
84
|
-
content: contentToMarkdown('Refactoring
|
|
118
|
+
description: buildTemplateDescription('Refactor code safely with a step-by-step approach', definitions_1.refactoringContent),
|
|
119
|
+
content: contentToMarkdown('Refactoring', overview, definitions_1.refactoringContent),
|
|
85
120
|
};
|
|
86
121
|
}
|
|
87
122
|
function createBugInvestigationSkill() {
|
|
123
|
+
const overview = 'Use this skill to reproduce a bug, narrow the failure surface, and document a defensible root cause';
|
|
88
124
|
return {
|
|
89
|
-
description: '
|
|
90
|
-
content: contentToMarkdown('Bug Investigation', definitions_1.bugInvestigationContent),
|
|
125
|
+
description: buildTemplateDescription('Investigate bugs systematically and perform root cause analysis', definitions_1.bugInvestigationContent),
|
|
126
|
+
content: contentToMarkdown('Bug Investigation', overview, definitions_1.bugInvestigationContent),
|
|
91
127
|
};
|
|
92
128
|
}
|
|
93
129
|
function createFeatureBreakdownSkill() {
|
|
130
|
+
const overview = 'Use this skill to decompose a feature into small, testable tasks with explicit dependencies and acceptance criteria';
|
|
94
131
|
return {
|
|
95
|
-
description: 'Break down features into implementable tasks',
|
|
96
|
-
content: contentToMarkdown('Feature Breakdown', definitions_1.featureBreakdownContent),
|
|
132
|
+
description: buildTemplateDescription('Break down features into implementable tasks', definitions_1.featureBreakdownContent),
|
|
133
|
+
content: contentToMarkdown('Feature Breakdown', overview, definitions_1.featureBreakdownContent),
|
|
97
134
|
};
|
|
98
135
|
}
|
|
99
136
|
function createApiDesignSkill() {
|
|
137
|
+
const overview = 'Use this skill to design API resources, payloads, and failure modes with consistent conventions';
|
|
100
138
|
return {
|
|
101
|
-
description: 'Design RESTful APIs following best practices',
|
|
102
|
-
content: contentToMarkdown('API Design', definitions_1.apiDesignContent),
|
|
139
|
+
description: buildTemplateDescription('Design RESTful APIs following best practices', definitions_1.apiDesignContent),
|
|
140
|
+
content: contentToMarkdown('API Design', overview, definitions_1.apiDesignContent),
|
|
103
141
|
};
|
|
104
142
|
}
|
|
105
143
|
function createSecurityAuditSkill() {
|
|
144
|
+
const overview = 'Use this skill to review code and integrations for security weaknesses and rank the findings by severity';
|
|
106
145
|
return {
|
|
107
|
-
description: '
|
|
108
|
-
content: contentToMarkdown('Security Audit', definitions_1.securityAuditContent),
|
|
146
|
+
description: buildTemplateDescription('Review code and infrastructure for security weaknesses', definitions_1.securityAuditContent),
|
|
147
|
+
content: contentToMarkdown('Security Audit', overview, definitions_1.securityAuditContent),
|
|
109
148
|
};
|
|
110
149
|
}
|
|
111
150
|
//# sourceMappingURL=skillTemplates.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skillTemplates.js","sourceRoot":"","sources":["../../../src/workflow/skills/skillTemplates.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;
|
|
1
|
+
{"version":3,"file":"skillTemplates.js","sourceRoot":"","sources":["../../../src/workflow/skills/skillTemplates.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* PREVC Status Manager
|
|
3
3
|
*
|
|
4
|
-
* Manages
|
|
4
|
+
* Manages canonical PREVC workflow state stored in harness runtime state.
|
|
5
|
+
* Legacy status.yaml files are migrated on read but no longer written.
|
|
5
6
|
*/
|
|
6
7
|
import { PrevcStatus, PrevcPhase, PrevcRole, PhaseUpdate, RoleUpdate, AgentUpdate, ProjectScale, WorkflowSettings, PlanApproval, ExecutionHistory, ExecutionHistoryEntry } from '../types';
|
|
7
8
|
/**
|
|
8
9
|
* PREVC Status Manager
|
|
9
10
|
*
|
|
10
|
-
* Handles reading and writing
|
|
11
|
+
* Handles reading and writing canonical workflow state, with optional legacy migration.
|
|
11
12
|
*/
|
|
12
13
|
export declare class PrevcStatusManager {
|
|
13
14
|
private contextPath;
|
|
14
|
-
private
|
|
15
|
+
private workflowState;
|
|
15
16
|
private cachedStatus;
|
|
16
17
|
constructor(contextPath: string);
|
|
18
|
+
private get legacyStatusPath();
|
|
17
19
|
/**
|
|
18
20
|
* Check if a workflow status file exists
|
|
19
21
|
*/
|
|
@@ -30,6 +32,9 @@ export declare class PrevcStatusManager {
|
|
|
30
32
|
* Save the workflow status to disk
|
|
31
33
|
*/
|
|
32
34
|
save(status: PrevcStatus): Promise<void>;
|
|
35
|
+
remove(): Promise<void>;
|
|
36
|
+
archive(name: string): Promise<void>;
|
|
37
|
+
private persistCanonical;
|
|
33
38
|
/**
|
|
34
39
|
* Create a new workflow status
|
|
35
40
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statusManager.d.ts","sourceRoot":"","sources":["../../../src/workflow/status/statusManager.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"statusManager.d.ts","sourceRoot":"","sources":["../../../src/workflow/status/statusManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* PREVC Status Manager
|
|
4
4
|
*
|
|
5
|
-
* Manages
|
|
5
|
+
* Manages canonical PREVC workflow state stored in harness runtime state.
|
|
6
|
+
* Legacy status.yaml files are migrated on read but no longer written.
|
|
6
7
|
*/
|
|
7
8
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
9
|
if (k2 === undefined) k2 = k;
|
|
@@ -41,44 +42,54 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
41
42
|
exports.PrevcStatusManager = void 0;
|
|
42
43
|
const fs = __importStar(require("fs-extra"));
|
|
43
44
|
const path = __importStar(require("path"));
|
|
45
|
+
const workflowStateService_1 = require("../../services/harness/workflowStateService");
|
|
44
46
|
const types_1 = require("../types");
|
|
45
47
|
const phases_1 = require("../phases");
|
|
46
48
|
const scaling_1 = require("../scaling");
|
|
47
49
|
const templates_1 = require("./templates");
|
|
48
50
|
const gates_1 = require("../gates");
|
|
49
|
-
/**
|
|
50
|
-
* Default status file path relative to .context directory
|
|
51
|
-
*/
|
|
52
|
-
const STATUS_FILE = 'workflow/status.yaml';
|
|
53
51
|
/**
|
|
54
52
|
* PREVC Status Manager
|
|
55
53
|
*
|
|
56
|
-
* Handles reading and writing
|
|
54
|
+
* Handles reading and writing canonical workflow state, with optional legacy migration.
|
|
57
55
|
*/
|
|
58
56
|
class PrevcStatusManager {
|
|
59
57
|
constructor(contextPath) {
|
|
60
58
|
this.cachedStatus = null;
|
|
61
59
|
this.contextPath = contextPath;
|
|
62
|
-
this.
|
|
60
|
+
this.workflowState = new workflowStateService_1.HarnessWorkflowStateService({ contextPath });
|
|
61
|
+
}
|
|
62
|
+
get legacyStatusPath() {
|
|
63
|
+
return path.join(this.contextPath, 'workflow', 'status.yaml');
|
|
63
64
|
}
|
|
64
65
|
/**
|
|
65
66
|
* Check if a workflow status file exists
|
|
66
67
|
*/
|
|
67
68
|
async exists() {
|
|
68
|
-
return fs.pathExists(this.
|
|
69
|
+
return (await this.workflowState.exists()) || fs.pathExists(this.legacyStatusPath);
|
|
69
70
|
}
|
|
70
71
|
/**
|
|
71
72
|
* Load the workflow status from disk
|
|
72
73
|
*/
|
|
73
74
|
async load() {
|
|
74
|
-
|
|
75
|
+
const hasCanonicalState = await this.workflowState.exists();
|
|
76
|
+
const hasLegacyProjection = await fs.pathExists(this.legacyStatusPath);
|
|
77
|
+
if (!hasCanonicalState && !hasLegacyProjection) {
|
|
75
78
|
throw new Error('Workflow status not found. Run "workflow init" first.');
|
|
76
79
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
80
|
+
let status;
|
|
81
|
+
if (hasCanonicalState) {
|
|
82
|
+
status = await this.workflowState.load();
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
const content = await fs.readFile(this.legacyStatusPath, 'utf-8');
|
|
86
|
+
status = this.parseYaml(content);
|
|
87
|
+
}
|
|
81
88
|
status = this.migrateStatus(status);
|
|
89
|
+
await this.persistCanonical(status);
|
|
90
|
+
if (hasLegacyProjection) {
|
|
91
|
+
await fs.remove(this.legacyStatusPath);
|
|
92
|
+
}
|
|
82
93
|
this.cachedStatus = status;
|
|
83
94
|
return this.cachedStatus;
|
|
84
95
|
}
|
|
@@ -89,12 +100,19 @@ class PrevcStatusManager {
|
|
|
89
100
|
if (this.cachedStatus) {
|
|
90
101
|
return this.cachedStatus;
|
|
91
102
|
}
|
|
92
|
-
|
|
103
|
+
const hasCanonicalState = fs.existsSync(path.join(this.contextPath, 'harness', 'workflows', 'prevc.json'));
|
|
104
|
+
const hasLegacyProjection = fs.existsSync(this.legacyStatusPath);
|
|
105
|
+
if (!hasCanonicalState && !hasLegacyProjection) {
|
|
93
106
|
throw new Error('Workflow status not found. Run "workflow init" first.');
|
|
94
107
|
}
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
108
|
+
let status;
|
|
109
|
+
if (hasCanonicalState) {
|
|
110
|
+
status = this.workflowState.loadSync();
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
const content = fs.readFileSync(this.legacyStatusPath, 'utf-8');
|
|
114
|
+
status = this.parseYaml(content);
|
|
115
|
+
}
|
|
98
116
|
status = this.migrateStatus(status);
|
|
99
117
|
this.cachedStatus = status;
|
|
100
118
|
return this.cachedStatus;
|
|
@@ -103,12 +121,33 @@ class PrevcStatusManager {
|
|
|
103
121
|
* Save the workflow status to disk
|
|
104
122
|
*/
|
|
105
123
|
async save(status) {
|
|
106
|
-
|
|
107
|
-
await fs.ensureDir(dir);
|
|
108
|
-
const content = this.serializeYaml(status);
|
|
109
|
-
await fs.writeFile(this.statusPath, content, 'utf-8');
|
|
124
|
+
await this.persistCanonical(status);
|
|
110
125
|
this.cachedStatus = status;
|
|
111
126
|
}
|
|
127
|
+
async remove() {
|
|
128
|
+
await this.workflowState.remove();
|
|
129
|
+
if (await fs.pathExists(this.legacyStatusPath)) {
|
|
130
|
+
await fs.remove(this.legacyStatusPath);
|
|
131
|
+
}
|
|
132
|
+
this.cachedStatus = null;
|
|
133
|
+
}
|
|
134
|
+
async archive(name) {
|
|
135
|
+
await this.workflowState.archive(name);
|
|
136
|
+
if (await fs.pathExists(this.legacyStatusPath)) {
|
|
137
|
+
const archiveDir = path.join(this.contextPath, 'workflow', 'archive');
|
|
138
|
+
const safeName = name.replace(/[^a-zA-Z0-9-_]/g, '-');
|
|
139
|
+
const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
|
|
140
|
+
await fs.ensureDir(archiveDir);
|
|
141
|
+
await fs.move(this.legacyStatusPath, path.join(archiveDir, `${safeName}-${timestamp}.legacy-status.yaml`));
|
|
142
|
+
}
|
|
143
|
+
this.cachedStatus = null;
|
|
144
|
+
}
|
|
145
|
+
async persistCanonical(status) {
|
|
146
|
+
await this.workflowState.save(status);
|
|
147
|
+
if (await fs.pathExists(this.legacyStatusPath)) {
|
|
148
|
+
await fs.remove(this.legacyStatusPath);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
112
151
|
/**
|
|
113
152
|
* Create a new workflow status
|
|
114
153
|
*/
|