@magic-ingredients/tiny-brain-local 0.13.1 → 0.14.10
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/dist/agents/formatters/claude-code-formatter.js +0 -1
- package/dist/agents/formatters/formatter-factory.js +0 -1
- package/dist/agents/types.js +0 -1
- package/dist/core/console-logger.js +0 -1
- package/dist/core/file-logger.js +0 -1
- package/dist/core/mcp-server.js +0 -1
- package/dist/index.d.ts +22 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -151
- package/dist/prompts/index.js +0 -1
- package/dist/prompts/persona/persona.prompt.js +0 -1
- package/dist/prompts/planning/planning.prompt.js +0 -1
- package/dist/prompts/prompt-registry.js +0 -1
- package/dist/prompts/rules/rules.prompt.js +0 -1
- package/dist/prompts/thinking/thinking.prompt.js +0 -1
- package/dist/services/UpdateService.js +0 -1
- package/dist/services/agent-installation-service.js +0 -1
- package/dist/services/agent-manager.js +0 -1
- package/dist/services/agent-service.js +0 -1
- package/dist/services/analyse-service.d.ts +52 -8
- package/dist/services/analyse-service.d.ts.map +1 -1
- package/dist/services/analyse-service.js +325 -66
- package/dist/services/credential-storage.service.js +0 -1
- package/dist/services/dashboard-launcher.service.js +0 -1
- package/dist/services/persona-enhancer.js +0 -1
- package/dist/services/persona-service.js +0 -1
- package/dist/services/remote/auth-token-service.js +0 -1
- package/dist/services/remote/persona-sync-service.js +0 -1
- package/dist/services/remote/system-persona-service.js +0 -1
- package/dist/services/repo-service.d.ts.map +1 -1
- package/dist/services/repo-service.js +31 -25
- package/dist/services/versioning-service.js +0 -1
- package/dist/storage/local-filesystem-adapter.js +0 -1
- package/dist/storage/platform-config-adapter.js +0 -1
- package/dist/storage/platform-path-builder.js +0 -1
- package/dist/storage/storage-path-builder.js +0 -1
- package/dist/tools/analyse-request/analyse-request.tool.js +0 -1
- package/dist/tools/analyse.tool.d.ts +4 -0
- package/dist/tools/analyse.tool.d.ts.map +1 -1
- package/dist/tools/analyse.tool.js +34 -3
- package/dist/tools/config/config.tool.d.ts +3 -0
- package/dist/tools/config/config.tool.d.ts.map +1 -1
- package/dist/tools/config/config.tool.js +139 -70
- package/dist/tools/config/index.js +0 -1
- package/dist/tools/index.d.ts +4 -4
- package/dist/tools/index.js +0 -1
- package/dist/tools/persona/as.tool.js +0 -1
- package/dist/tools/persona/persona.tool.js +0 -1
- package/dist/tools/plan/plan.tool.d.ts +4 -0
- package/dist/tools/plan/plan.tool.d.ts.map +1 -1
- package/dist/tools/plan/plan.tool.js +144 -32
- package/dist/tools/rules/rules.tool.js +0 -1
- package/dist/tools/strategy/strategy.tool.js +0 -1
- package/dist/tools/thinking/thinking.tool.js +0 -1
- package/dist/tools/tool-registry.js +0 -1
- package/dist/tools/update/update.tool.js +0 -1
- package/dist/tools/validate-response/validate-response.tool.js +0 -1
- package/dist/types/local-context.js +0 -1
- package/dist/types/request-context.d.ts +1 -1
- package/dist/types/request-context.d.ts.map +1 -1
- package/dist/types/request-context.js +0 -1
- package/dist/utils/package-version.js +0 -1
- package/dist/utils/repo-utils.js +0 -1
- package/package.json +8 -32
- package/LICENSE +0 -21
- package/README.md +0 -260
- package/dist/agents/formatters/claude-code-formatter.js.map +0 -1
- package/dist/agents/formatters/formatter-factory.js.map +0 -1
- package/dist/agents/types.js.map +0 -1
- package/dist/analyser/analyzers/script-analyzer.d.ts +0 -10
- package/dist/analyser/analyzers/script-analyzer.d.ts.map +0 -1
- package/dist/analyser/analyzers/script-analyzer.js +0 -205
- package/dist/analyser/analyzers/script-analyzer.js.map +0 -1
- package/dist/analyser/detectors/base-detector.d.ts +0 -12
- package/dist/analyser/detectors/base-detector.d.ts.map +0 -1
- package/dist/analyser/detectors/base-detector.js +0 -50
- package/dist/analyser/detectors/base-detector.js.map +0 -1
- package/dist/analyser/detectors/javascript-detector.d.ts +0 -19
- package/dist/analyser/detectors/javascript-detector.d.ts.map +0 -1
- package/dist/analyser/detectors/javascript-detector.js +0 -347
- package/dist/analyser/detectors/javascript-detector.js.map +0 -1
- package/dist/analyser/index.d.ts +0 -5
- package/dist/analyser/index.d.ts.map +0 -1
- package/dist/analyser/index.js +0 -315
- package/dist/analyser/index.js.map +0 -1
- package/dist/analyser/types.d.ts +0 -2
- package/dist/analyser/types.d.ts.map +0 -1
- package/dist/analyser/types.js +0 -2
- package/dist/analyser/types.js.map +0 -1
- package/dist/analyser/utils.d.ts +0 -5
- package/dist/analyser/utils.d.ts.map +0 -1
- package/dist/analyser/utils.js +0 -24
- package/dist/analyser/utils.js.map +0 -1
- package/dist/cli/cli-factory.d.ts +0 -3
- package/dist/cli/cli-factory.d.ts.map +0 -1
- package/dist/cli/cli-factory.js +0 -235
- package/dist/cli/cli-factory.js.map +0 -1
- package/dist/cli/commands/analyse.command.d.ts +0 -18
- package/dist/cli/commands/analyse.command.d.ts.map +0 -1
- package/dist/cli/commands/analyse.command.js +0 -161
- package/dist/cli/commands/analyse.command.js.map +0 -1
- package/dist/cli/commands/config.command.d.ts +0 -25
- package/dist/cli/commands/config.command.d.ts.map +0 -1
- package/dist/cli/commands/config.command.js +0 -285
- package/dist/cli/commands/config.command.js.map +0 -1
- package/dist/cli/commands/install.command.d.ts +0 -23
- package/dist/cli/commands/install.command.d.ts.map +0 -1
- package/dist/cli/commands/install.command.js +0 -189
- package/dist/cli/commands/install.command.js.map +0 -1
- package/dist/cli/commands/list.command.d.ts +0 -15
- package/dist/cli/commands/list.command.d.ts.map +0 -1
- package/dist/cli/commands/list.command.js +0 -90
- package/dist/cli/commands/list.command.js.map +0 -1
- package/dist/cli/commands/status.command.d.ts +0 -25
- package/dist/cli/commands/status.command.d.ts.map +0 -1
- package/dist/cli/commands/status.command.js +0 -367
- package/dist/cli/commands/status.command.js.map +0 -1
- package/dist/cli/commands/track-commit.command.d.ts +0 -52
- package/dist/cli/commands/track-commit.command.d.ts.map +0 -1
- package/dist/cli/commands/track-commit.command.js +0 -239
- package/dist/cli/commands/track-commit.command.js.map +0 -1
- package/dist/cli/commands/uninstall.command.d.ts +0 -23
- package/dist/cli/commands/uninstall.command.d.ts.map +0 -1
- package/dist/cli/commands/uninstall.command.js +0 -176
- package/dist/cli/commands/uninstall.command.js.map +0 -1
- package/dist/cli/commands/validate-commit-message.command.d.ts +0 -47
- package/dist/cli/commands/validate-commit-message.command.d.ts.map +0 -1
- package/dist/cli/commands/validate-commit-message.command.js +0 -223
- package/dist/cli/commands/validate-commit-message.command.js.map +0 -1
- package/dist/cli/installers/base-installer.d.ts +0 -20
- package/dist/cli/installers/base-installer.d.ts.map +0 -1
- package/dist/cli/installers/base-installer.js +0 -3
- package/dist/cli/installers/base-installer.js.map +0 -1
- package/dist/cli/installers/chatgpt-installer.d.ts +0 -18
- package/dist/cli/installers/chatgpt-installer.d.ts.map +0 -1
- package/dist/cli/installers/chatgpt-installer.js +0 -45
- package/dist/cli/installers/chatgpt-installer.js.map +0 -1
- package/dist/cli/installers/claude-code-installer.d.ts +0 -23
- package/dist/cli/installers/claude-code-installer.d.ts.map +0 -1
- package/dist/cli/installers/claude-code-installer.js +0 -127
- package/dist/cli/installers/claude-code-installer.js.map +0 -1
- package/dist/cli/installers/claude-desktop-installer.d.ts +0 -18
- package/dist/cli/installers/claude-desktop-installer.d.ts.map +0 -1
- package/dist/cli/installers/claude-desktop-installer.js +0 -48
- package/dist/cli/installers/claude-desktop-installer.js.map +0 -1
- package/dist/cli/installers/cursor-installer.d.ts +0 -18
- package/dist/cli/installers/cursor-installer.d.ts.map +0 -1
- package/dist/cli/installers/cursor-installer.js +0 -45
- package/dist/cli/installers/cursor-installer.js.map +0 -1
- package/dist/cli/installers/installer-factory.d.ts +0 -30
- package/dist/cli/installers/installer-factory.d.ts.map +0 -1
- package/dist/cli/installers/installer-factory.js +0 -90
- package/dist/cli/installers/installer-factory.js.map +0 -1
- package/dist/cli/utils/node-resolver.d.ts +0 -53
- package/dist/cli/utils/node-resolver.d.ts.map +0 -1
- package/dist/cli/utils/node-resolver.js +0 -200
- package/dist/cli/utils/node-resolver.js.map +0 -1
- package/dist/cli/utils/package-locator.d.ts +0 -9
- package/dist/cli/utils/package-locator.d.ts.map +0 -1
- package/dist/cli/utils/package-locator.js +0 -81
- package/dist/cli/utils/package-locator.js.map +0 -1
- package/dist/cli/utils/system-info.d.ts +0 -20
- package/dist/cli/utils/system-info.d.ts.map +0 -1
- package/dist/cli/utils/system-info.js +0 -90
- package/dist/cli/utils/system-info.js.map +0 -1
- package/dist/cli.d.ts +0 -3
- package/dist/cli.d.ts.map +0 -1
- package/dist/cli.js +0 -27
- package/dist/cli.js.map +0 -1
- package/dist/core/console-logger.js.map +0 -1
- package/dist/core/file-logger.js.map +0 -1
- package/dist/core/mcp-server.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/prompts/index.js.map +0 -1
- package/dist/prompts/persona/persona.prompt.js.map +0 -1
- package/dist/prompts/planning/planning.prompt.js.map +0 -1
- package/dist/prompts/prompt-registry.js.map +0 -1
- package/dist/prompts/rules/rules.prompt.js.map +0 -1
- package/dist/prompts/thinking/thinking.prompt.js.map +0 -1
- package/dist/services/UpdateService.js.map +0 -1
- package/dist/services/adr-service.d.ts +0 -70
- package/dist/services/adr-service.d.ts.map +0 -1
- package/dist/services/adr-service.js +0 -242
- package/dist/services/adr-service.js.map +0 -1
- package/dist/services/agent-installation-service.js.map +0 -1
- package/dist/services/agent-manager.js.map +0 -1
- package/dist/services/agent-service.js.map +0 -1
- package/dist/services/analyse-service.js.map +0 -1
- package/dist/services/credential-storage.service.js.map +0 -1
- package/dist/services/dashboard-launcher.service.js.map +0 -1
- package/dist/services/persona-enhancer.js.map +0 -1
- package/dist/services/persona-grouper.d.ts +0 -29
- package/dist/services/persona-grouper.d.ts.map +0 -1
- package/dist/services/persona-grouper.js +0 -111
- package/dist/services/persona-grouper.js.map +0 -1
- package/dist/services/persona-service.js.map +0 -1
- package/dist/services/remote/auth-token-service.js.map +0 -1
- package/dist/services/remote/persona-sync-service.js.map +0 -1
- package/dist/services/remote/system-persona-service.js.map +0 -1
- package/dist/services/repo-service.js.map +0 -1
- package/dist/services/types/persona-types.d.ts +0 -84
- package/dist/services/types/persona-types.d.ts.map +0 -1
- package/dist/services/types/persona-types.js +0 -5
- package/dist/services/types/persona-types.js.map +0 -1
- package/dist/services/versioning-service.js.map +0 -1
- package/dist/storage/local-filesystem-adapter.js.map +0 -1
- package/dist/storage/platform-config-adapter.js.map +0 -1
- package/dist/storage/platform-path-builder.js.map +0 -1
- package/dist/storage/storage-path-builder.js.map +0 -1
- package/dist/test-setup.d.ts +0 -2
- package/dist/test-setup.d.ts.map +0 -1
- package/dist/test-setup.js +0 -12
- package/dist/test-setup.js.map +0 -1
- package/dist/tools/analyse-request/analyse-request.tool.js.map +0 -1
- package/dist/tools/analyse.tool.js.map +0 -1
- package/dist/tools/config/config.tool.js.map +0 -1
- package/dist/tools/config/index.js.map +0 -1
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/persona/as.tool.js.map +0 -1
- package/dist/tools/persona/persona.tool.js.map +0 -1
- package/dist/tools/plan/plan.tool.js.map +0 -1
- package/dist/tools/rules/rules.tool.js.map +0 -1
- package/dist/tools/strategy/strategy.tool.js.map +0 -1
- package/dist/tools/thinking/thinking.tool.js.map +0 -1
- package/dist/tools/tool-registry.js.map +0 -1
- package/dist/tools/update/update.tool.js.map +0 -1
- package/dist/tools/validate-response/validate-response.tool.js.map +0 -1
- package/dist/types/local-context.js.map +0 -1
- package/dist/types/request-context.js.map +0 -1
- package/dist/utils/adr-pattern-detector.d.ts +0 -38
- package/dist/utils/adr-pattern-detector.d.ts.map +0 -1
- package/dist/utils/adr-pattern-detector.js +0 -158
- package/dist/utils/adr-pattern-detector.js.map +0 -1
- package/dist/utils/adr-suggestion-generator.d.ts +0 -50
- package/dist/utils/adr-suggestion-generator.d.ts.map +0 -1
- package/dist/utils/adr-suggestion-generator.js +0 -63
- package/dist/utils/adr-suggestion-generator.js.map +0 -1
- package/dist/utils/commit-parser.d.ts +0 -25
- package/dist/utils/commit-parser.d.ts.map +0 -1
- package/dist/utils/commit-parser.js +0 -46
- package/dist/utils/commit-parser.js.map +0 -1
- package/dist/utils/package-version.js.map +0 -1
- package/dist/utils/repo-utils.js.map +0 -1
- package/templates/adr/README.md +0 -243
- package/templates/adr/_template/0001-record-architecture-decisions.md +0 -223
- package/templates/adr/_template/ADR_CREATION_INSTRUCTIONS.md +0 -234
- package/templates/adr/_template/adr-schema.json +0 -74
- package/templates/adr/_template/adr-template.md +0 -136
- package/templates/prd/PRD_CREATION_INSTRUCTIONS.md +0 -268
- package/templates/prd/README.md +0 -252
- package/templates/prd/_template/feature-template.md +0 -105
- package/templates/prd/_template/prd-template.md +0 -126
- package/templates/prd/example-task-management/features/task-collaboration.md +0 -84
- package/templates/prd/example-task-management/features/task-crud.md +0 -222
- package/templates/prd/example-task-management/features/task-workflow.md +0 -62
- package/templates/prd/example-task-management/prd.md +0 -177
- package/templates/prd/feature-schema.json +0 -54
- package/templates/prd/prd-schema.json +0 -60
|
@@ -572,13 +572,12 @@ export class RepoService {
|
|
|
572
572
|
section += '**Product Requirements Documents (PRDs):**\n';
|
|
573
573
|
section += `- Location: \`docs/prd/{prd-id}/prd.md\`\n`;
|
|
574
574
|
section += `- Features: \`docs/prd/{prd-id}/features/{feature-id}.md\`\n`;
|
|
575
|
-
section += `-
|
|
575
|
+
section += `- Skills: \`.claude/skills/plan/\`, \`.claude/skills/feature/\`, \`.claude/skills/fix/\`\n\n`;
|
|
576
576
|
}
|
|
577
577
|
if (hasADR) {
|
|
578
578
|
section += '**Architecture Decision Records (ADRs):**\n';
|
|
579
579
|
section += `- Location: \`docs/adr/NNNN-decision-title.md\`\n`;
|
|
580
|
-
section += `-
|
|
581
|
-
section += `- Example: \`docs/adr/_template/0001-record-architecture-decisions.md\`\n\n`;
|
|
580
|
+
section += `- Skill: \`.claude/skills/adr/\`\n\n`;
|
|
582
581
|
}
|
|
583
582
|
// Add PRD commit workflow with ADR checking if both exist
|
|
584
583
|
if (hasPRD && hasADR) {
|
|
@@ -611,29 +610,24 @@ export class RepoService {
|
|
|
611
610
|
return '';
|
|
612
611
|
}
|
|
613
612
|
let section = '\n### Documentation Templates\n\n';
|
|
613
|
+
const skillsPath = path.join(repoRoot, '.claude', 'skills');
|
|
614
614
|
// Add PRD instructions if directory exists
|
|
615
615
|
if (hasPRD) {
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
section +=
|
|
621
|
-
section += `-
|
|
622
|
-
section += `-
|
|
623
|
-
section += `- Validate against schemas in \`${schemaPath}\`\n`;
|
|
624
|
-
section += `- Reference example: \`${examplePath}/\`\n\n`;
|
|
616
|
+
section += '**PRD & Feature Creation (Model-Invoked Skills):**\n';
|
|
617
|
+
section += `- Skills are automatically triggered based on your intent - describe what you want to do\n`;
|
|
618
|
+
section += `- "I want to plan a new feature" → triggers plan skill\n`;
|
|
619
|
+
section += `- "I want to add a feature to the PRD" → triggers feature skill\n`;
|
|
620
|
+
section += `- "I want to track a bug fix" → triggers fix skill\n`;
|
|
621
|
+
section += `- Skills: \`.claude/skills/plan/\`, \`.claude/skills/feature/\`, \`.claude/skills/fix/\`\n`;
|
|
622
|
+
section += `- Check available skills: ask "What Skills are available?"\n\n`;
|
|
625
623
|
}
|
|
626
624
|
// Add ADR instructions if directory exists
|
|
627
625
|
if (hasADR) {
|
|
628
|
-
const
|
|
629
|
-
const templatePath = path.join(adrPath, '_template', 'adr-template.md');
|
|
630
|
-
const schemaPath = path.join(adrPath, '_template', 'adr-schema.json');
|
|
631
|
-
const examplePath = path.join(adrPath, '_template', '0001-record-architecture-decisions.md');
|
|
626
|
+
const adrSkillPath = path.join(skillsPath, 'adr');
|
|
632
627
|
section += '**ADR Creation:**\n';
|
|
633
|
-
section += `-
|
|
634
|
-
section += `-
|
|
635
|
-
section += `-
|
|
636
|
-
section += `- Reference example: \`${examplePath}\`\n`;
|
|
628
|
+
section += `- Use \`/adr\` skill to create Architecture Decision Records\n`;
|
|
629
|
+
section += `- Skill located at \`${adrSkillPath}/\`\n`;
|
|
630
|
+
section += `- Template at \`${adrSkillPath}/templates/adr-template.md\`\n`;
|
|
637
631
|
}
|
|
638
632
|
return section;
|
|
639
633
|
}
|
|
@@ -1211,18 +1205,22 @@ export class RepoService {
|
|
|
1211
1205
|
return '';
|
|
1212
1206
|
}
|
|
1213
1207
|
let section = '## PRD Workflow\n\n';
|
|
1214
|
-
section += 'IMPORTANT:
|
|
1208
|
+
section += 'IMPORTANT: Skills at `.claude/skills/` are **model-invoked** - describe your intent and Claude will use them automatically.\n';
|
|
1209
|
+
section += 'Examples: "I want to plan a new feature", "track this bug fix", "add a feature to the PRD"\n';
|
|
1210
|
+
section += 'Check available skills: ask "What Skills are available?"\n\n';
|
|
1211
|
+
section += '**First-time Setup:** Run `npx tiny-brain analyse` from terminal before starting Claude Code to install skills.\n';
|
|
1212
|
+
section += 'If skills were installed mid-session, restart Claude Code to activate them.\n\n';
|
|
1215
1213
|
section += '**Product Requirements Documents (PRDs):**\n';
|
|
1216
1214
|
section += `- Location: \`docs/prd/{prd-id}/prd.md\`\n`;
|
|
1217
1215
|
section += `- Features: \`docs/prd/{prd-id}/features/{feature-id}.md\`\n`;
|
|
1218
|
-
section += `-
|
|
1216
|
+
section += `- Skills: plan (create PRDs), feature (add features), fix (track fixes)\n\n`;
|
|
1219
1217
|
// Check if ADR is enabled before showing ADR-related content
|
|
1220
1218
|
const enableADR = await this.configService.isADREnabled();
|
|
1221
1219
|
if (hasADR && enableADR) {
|
|
1222
1220
|
section += '**Architecture Decision Records (ADRs):**\n';
|
|
1223
1221
|
section += `- Location: \`docs/adr/NNNN-decision-title.md\`\n`;
|
|
1224
|
-
section += `-
|
|
1225
|
-
section += `-
|
|
1222
|
+
section += `- Use \`/adr\` skill to create ADRs\n`;
|
|
1223
|
+
section += `- Skill and template at \`.claude/skills/adr/\`\n\n`;
|
|
1226
1224
|
section += '**PRD Commit Workflow:**\n\n';
|
|
1227
1225
|
section += 'After committing PRD-tracked code, ALWAYS check for ADR suggestions:\n\n';
|
|
1228
1226
|
section += '1. After successful git commit (via Bash tool)\n';
|
|
@@ -1277,6 +1275,15 @@ export class RepoService {
|
|
|
1277
1275
|
// Add TDD Workflow section
|
|
1278
1276
|
section += '## TDD Workflow\n\n';
|
|
1279
1277
|
section += '**MANDATORY:** This repository follows strict Test-Driven Development (TDD) with a 3-phase commit workflow.\n\n';
|
|
1278
|
+
section += '### ⚠️ CRITICAL RULE: One Task = One Commit Cycle\n\n';
|
|
1279
|
+
section += '**NEVER implement multiple tasks in a single commit.**\n\n';
|
|
1280
|
+
section += 'Each PRD task MUST have its own complete TDD cycle:\n';
|
|
1281
|
+
section += '- **1 task** = **1 test commit** (RED phase) + **1 feat commit** (GREEN phase) + optionally **1 refactor commit**\n';
|
|
1282
|
+
section += '- Multiple tasks cannot share commits - even if the implementation is related\n';
|
|
1283
|
+
section += '- This ensures accurate progress tracking and proper task completion detection\n';
|
|
1284
|
+
section += '- Violation of this rule will cause incorrect task tracking in progress.json\n\n';
|
|
1285
|
+
section += '❌ **WRONG**: One commit implements tasks 1-1, 1-4, 1-5, and 1-6\n';
|
|
1286
|
+
section += '✅ **CORRECT**: Four separate commit cycles, one for each task\n\n';
|
|
1280
1287
|
section += '**CRITICAL RULES - NO EXCEPTIONS:**\n';
|
|
1281
1288
|
section += '1. **NEVER** commit test files and implementation files together\n';
|
|
1282
1289
|
section += '2. **ALWAYS** commit in this exact order: Red → Green → (optional) Refactor\n';
|
|
@@ -1374,4 +1381,3 @@ export class RepoService {
|
|
|
1374
1381
|
return section;
|
|
1375
1382
|
}
|
|
1376
1383
|
}
|
|
1377
|
-
//# sourceMappingURL=repo-service.js.map
|
|
@@ -9,6 +9,10 @@ import { Tool as MCPTool } from '@modelcontextprotocol/sdk/types.js';
|
|
|
9
9
|
*/
|
|
10
10
|
export declare class AnalyseTool {
|
|
11
11
|
static getToolDefinition(): MCPTool;
|
|
12
|
+
/**
|
|
13
|
+
* Generate pre-analysis feedback showing enabled/disabled features
|
|
14
|
+
*/
|
|
15
|
+
private static getPreAnalysisFeedback;
|
|
12
16
|
/**
|
|
13
17
|
* Execute repository analysis
|
|
14
18
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyse.tool.d.ts","sourceRoot":"","sources":["../../src/tools/analyse.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AACpF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAGlE,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"analyse.tool.d.ts","sourceRoot":"","sources":["../../src/tools/analyse.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAqB,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AACpF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAGlE,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAQrE;;;;;GAKG;AACH,qBAAa,WAAW;IACtB,MAAM,CAAC,iBAAiB,IAAI,OAAO;IAwBnC;;OAEG;mBACkB,sBAAsB;IA4B3C;;OAEG;WACU,OAAO,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC;CAsGxF"}
|
|
@@ -2,6 +2,7 @@ import { z } from 'zod';
|
|
|
2
2
|
import { createErrorResult } from './index.js';
|
|
3
3
|
import { AnalyseService } from '../services/analyse-service.js';
|
|
4
4
|
import { AgentManager } from '../services/agent-manager.js';
|
|
5
|
+
import { ConfigService } from '@magic-ingredients/tiny-brain-core';
|
|
5
6
|
const AnalyseArgsSchema = z.object({
|
|
6
7
|
dryRun: z.boolean().optional().default(false),
|
|
7
8
|
confirmInstall: z.boolean().optional().default(false),
|
|
@@ -16,7 +17,7 @@ export class AnalyseTool {
|
|
|
16
17
|
static getToolDefinition() {
|
|
17
18
|
return {
|
|
18
19
|
name: 'analyse',
|
|
19
|
-
description: "🔍 REPOSITORY ANALYSIS 🔍\n\n⚡ ANALYZE & UPDATE: Analyze repository tech stack and manage agents.\n\n✅ FEATURES:\n • Detect languages, frameworks, and tools\n • Prompt to install recommended agents\n • Check for agent updates\n • Show tech stack changes\n • Dry-run mode for preview\n\n💡 USAGE:\n • analyse - Analyze and prompt for installation\n • analyse --dry-run - Preview changes without prompting\n\n🤖 AGENTS:\n • Recommends agents based on tech stack\n • Updates agents to latest versions\n • Removes deprecated agents\n\n📊 OUTPUT:\n • Tech stack summary\n • Agent recommendations\n • Installation results",
|
|
20
|
+
description: "🔍 REPOSITORY ANALYSIS 🔍\n\n⚡ ANALYZE & UPDATE: Analyze repository tech stack and manage agents.\n\n✅ FEATURES:\n • Detect languages, frameworks, and tools\n • Prompt to install recommended agents\n • Check for agent updates\n • Show tech stack changes\n • Show installed skills with versions\n • Dry-run mode for preview\n\n💡 USAGE:\n • analyse - Analyze and prompt for installation\n • analyse --dry-run - Preview changes without prompting\n\n🤖 AGENTS:\n • Recommends agents based on tech stack\n • Updates agents to latest versions\n • Removes deprecated agents\n\n📜 SKILLS:\n • Shows installed skills (/plan, /feature, /fix, /adr)\n • Displays skill versions\n\n📊 OUTPUT:\n • Tech stack summary\n • Agent recommendations\n • Installed skills list\n • Installation results",
|
|
20
21
|
inputSchema: {
|
|
21
22
|
type: 'object',
|
|
22
23
|
properties: {
|
|
@@ -35,17 +36,47 @@ export class AnalyseTool {
|
|
|
35
36
|
},
|
|
36
37
|
};
|
|
37
38
|
}
|
|
39
|
+
/**
|
|
40
|
+
* Generate pre-analysis feedback showing enabled/disabled features
|
|
41
|
+
*/
|
|
42
|
+
static async getPreAnalysisFeedback(context) {
|
|
43
|
+
try {
|
|
44
|
+
const configService = new ConfigService(context);
|
|
45
|
+
const preferences = await configService.getPreferences();
|
|
46
|
+
const repo = preferences.repo;
|
|
47
|
+
const featureStatus = (enabled) => enabled ? '✅ enabled' : '❌ disabled';
|
|
48
|
+
const lines = [
|
|
49
|
+
'# Analysis Plan',
|
|
50
|
+
'',
|
|
51
|
+
'## Feature Flags',
|
|
52
|
+
`- **enableSDD**: ${featureStatus(repo.enableSDD)}`,
|
|
53
|
+
`- **enableTDD**: ${featureStatus(repo.enableTDD)}`,
|
|
54
|
+
`- **enableADR**: ${featureStatus(repo.enableADR)}`,
|
|
55
|
+
`- **enableAgenticCoding**: ${featureStatus(repo.enableAgenticCoding)}`,
|
|
56
|
+
'',
|
|
57
|
+
'---',
|
|
58
|
+
'',
|
|
59
|
+
];
|
|
60
|
+
return lines.join('\n');
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
// If config fails, continue without pre-analysis feedback
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
38
67
|
/**
|
|
39
68
|
* Execute repository analysis
|
|
40
69
|
*/
|
|
41
70
|
static async execute(args, context) {
|
|
42
71
|
try {
|
|
43
72
|
const validatedArgs = AnalyseArgsSchema.parse(args);
|
|
73
|
+
// Get pre-analysis feedback
|
|
74
|
+
const preAnalysisFeedback = await AnalyseTool.getPreAnalysisFeedback(context);
|
|
44
75
|
// Create service and perform analysis
|
|
45
76
|
const service = new AnalyseService(context);
|
|
46
77
|
const result = await service.performAnalysis(validatedArgs);
|
|
47
78
|
// Format output for display
|
|
48
|
-
let output = service.formatAnalysisOutput(result);
|
|
79
|
+
let output = preAnalysisFeedback ? preAnalysisFeedback + service.formatAnalysisOutput(result) : service.formatAnalysisOutput(result);
|
|
49
80
|
// Handle agent installation
|
|
50
81
|
if (!validatedArgs.dryRun && result.recommendations) {
|
|
51
82
|
const hasRecommendations = (result.recommendations.install?.length || 0) > 0 ||
|
|
@@ -105,6 +136,7 @@ export class AnalyseTool {
|
|
|
105
136
|
output += '\n✅ Agent management completed!';
|
|
106
137
|
}
|
|
107
138
|
}
|
|
139
|
+
// Note: Repository registration now happens in AnalyseService.performAnalysis()
|
|
108
140
|
return {
|
|
109
141
|
content: [{
|
|
110
142
|
type: 'text',
|
|
@@ -121,4 +153,3 @@ export class AnalyseTool {
|
|
|
121
153
|
}
|
|
122
154
|
}
|
|
123
155
|
}
|
|
124
|
-
//# sourceMappingURL=analyse.tool.js.map
|
|
@@ -6,5 +6,8 @@ export declare class ConfigTool {
|
|
|
6
6
|
static execute(args: Record<string, unknown>, context: RequestContext): Promise<ToolResult>;
|
|
7
7
|
private static handleList;
|
|
8
8
|
private static handleGet;
|
|
9
|
+
private static handleShowSources;
|
|
10
|
+
private static handleSet;
|
|
11
|
+
private static handleReset;
|
|
9
12
|
}
|
|
10
13
|
//# sourceMappingURL=config.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.tool.d.ts","sourceRoot":"","sources":["../../../src/tools/config/config.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAA0C,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"config.tool.d.ts","sourceRoot":"","sources":["../../../src/tools/config/config.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAA0C,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAUrE,qBAAa,UAAU;IACrB,MAAM,CAAC,iBAAiB,IAAI,OAAO;WA4DtB,OAAO,CAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,UAAU,CAAC;mBA6BD,UAAU;mBAwCV,SAAS;mBAoCT,iBAAiB;mBAgEjB,SAAS;mBA8CT,WAAW;CAqBjC"}
|
|
@@ -2,26 +2,25 @@ import { z } from 'zod';
|
|
|
2
2
|
import { createSuccessResult, createErrorResult } from '../index.js';
|
|
3
3
|
import { ConfigService } from '@magic-ingredients/tiny-brain-core';
|
|
4
4
|
const ConfigArgsSchema = z.object({
|
|
5
|
-
operation: z.enum(['list', 'get', 'set', 'reset']),
|
|
5
|
+
operation: z.enum(['list', 'get', 'show-sources', 'set', 'reset']),
|
|
6
6
|
key: z.string().optional(),
|
|
7
|
-
value: z.
|
|
7
|
+
value: z.string().optional(),
|
|
8
|
+
scope: z.enum(['global', 'repo']).optional(),
|
|
8
9
|
});
|
|
9
10
|
export class ConfigTool {
|
|
10
11
|
static getToolDefinition() {
|
|
11
12
|
return {
|
|
12
13
|
name: 'config',
|
|
13
|
-
description: `⚙️ CONFIGURATION
|
|
14
|
+
description: `⚙️ CONFIGURATION MANAGER ⚙️
|
|
14
15
|
|
|
15
|
-
📋
|
|
16
|
+
📋 MANAGE USER PREFERENCES: View and modify preferences through MCP.
|
|
16
17
|
|
|
17
18
|
✅ OPERATIONS:
|
|
18
19
|
• list: Display all current preferences
|
|
19
20
|
• get: Get a specific preference value
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
•
|
|
23
|
-
• Use: npx tiny-brain config preferences set <key> <value>
|
|
24
|
-
• Use: npx tiny-brain config preferences reset
|
|
21
|
+
• show-sources: Display preferences with their source (repo/global/default)
|
|
22
|
+
• set: Set a preference value (requires key, value, and optional scope)
|
|
23
|
+
• reset: Reset all preferences to defaults
|
|
25
24
|
|
|
26
25
|
📊 PREFERENCES:
|
|
27
26
|
• autoCommitProgress - Auto-commit progress.json changes
|
|
@@ -34,26 +33,34 @@ export class ConfigTool {
|
|
|
34
33
|
• prdDirectory - PRD directory path
|
|
35
34
|
• testPatterns - Test file patterns array
|
|
36
35
|
|
|
37
|
-
🎯
|
|
38
|
-
|
|
36
|
+
🎯 SCOPE:
|
|
37
|
+
• repo (default): Save to repository config ([repo]/.tiny-brain/config.json)
|
|
38
|
+
• global: Save to user config (~/.tiny-brain/config/preferences.json)
|
|
39
39
|
|
|
40
40
|
💡 EXAMPLES:
|
|
41
41
|
• config operation=list - Show all preferences
|
|
42
|
-
• config operation=get key=enableTDD - Get specific preference
|
|
42
|
+
• config operation=get key=enableTDD - Get specific preference
|
|
43
|
+
• config operation=set key=enableTDD value=false scope=global - Set preference`,
|
|
43
44
|
inputSchema: {
|
|
44
45
|
type: 'object',
|
|
45
46
|
properties: {
|
|
46
47
|
operation: {
|
|
47
48
|
type: 'string',
|
|
48
|
-
enum: ['list', 'get', 'set', 'reset'],
|
|
49
|
+
enum: ['list', 'get', 'show-sources', 'set', 'reset'],
|
|
49
50
|
description: 'The config operation to perform',
|
|
50
51
|
},
|
|
51
52
|
key: {
|
|
52
53
|
type: 'string',
|
|
53
|
-
description: 'Preference key (required for get
|
|
54
|
+
description: 'Preference key (required for get and set operations)',
|
|
54
55
|
},
|
|
55
56
|
value: {
|
|
56
|
-
|
|
57
|
+
type: 'string',
|
|
58
|
+
description: 'Preference value as string (required for set operation)',
|
|
59
|
+
},
|
|
60
|
+
scope: {
|
|
61
|
+
type: 'string',
|
|
62
|
+
enum: ['global', 'repo'],
|
|
63
|
+
description: 'Config scope: "global" for user config, "repo" for repository config (default)',
|
|
57
64
|
},
|
|
58
65
|
},
|
|
59
66
|
required: ['operation'],
|
|
@@ -69,12 +76,12 @@ export class ConfigTool {
|
|
|
69
76
|
return await ConfigTool.handleList(configService);
|
|
70
77
|
case 'get':
|
|
71
78
|
return await ConfigTool.handleGet(validatedArgs, configService);
|
|
79
|
+
case 'show-sources':
|
|
80
|
+
return await ConfigTool.handleShowSources(configService);
|
|
72
81
|
case 'set':
|
|
82
|
+
return await ConfigTool.handleSet(validatedArgs, configService);
|
|
73
83
|
case 'reset':
|
|
74
|
-
return
|
|
75
|
-
`Please use the command line interface:\n` +
|
|
76
|
-
` npx tiny-brain config preferences ${validatedArgs.operation}` +
|
|
77
|
-
(validatedArgs.operation === 'set' ? ' <key> <value>' : ''));
|
|
84
|
+
return await ConfigTool.handleReset(configService);
|
|
78
85
|
default:
|
|
79
86
|
return createErrorResult(`Unknown operation: ${validatedArgs.operation}`);
|
|
80
87
|
}
|
|
@@ -126,61 +133,15 @@ export class ConfigTool {
|
|
|
126
133
|
if (!args.key) {
|
|
127
134
|
return createErrorResult('key is required for get operation');
|
|
128
135
|
}
|
|
129
|
-
// Validate key is a valid preference
|
|
130
|
-
const validKeys = [
|
|
131
|
-
'autoCommitProgress',
|
|
132
|
-
'enableAgenticCoding',
|
|
133
|
-
'enableSDD',
|
|
134
|
-
'enableTDD',
|
|
135
|
-
'enableADR',
|
|
136
|
-
'docsDirectory',
|
|
137
|
-
'adrDirectory',
|
|
138
|
-
'prdDirectory',
|
|
139
|
-
'testPatterns',
|
|
140
|
-
];
|
|
141
|
-
if (!validKeys.includes(args.key)) {
|
|
142
|
-
return createErrorResult(`Invalid preference key: ${args.key}\n\nValid keys: ${validKeys.join(', ')}`);
|
|
143
|
-
}
|
|
144
136
|
try {
|
|
145
|
-
const
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
let value;
|
|
149
|
-
switch (args.key) {
|
|
150
|
-
case 'docsDirectory':
|
|
151
|
-
value = repo.directories.docs;
|
|
152
|
-
break;
|
|
153
|
-
case 'adrDirectory':
|
|
154
|
-
value = repo.directories.adr;
|
|
155
|
-
break;
|
|
156
|
-
case 'prdDirectory':
|
|
157
|
-
value = repo.directories.prd;
|
|
158
|
-
break;
|
|
159
|
-
case 'autoCommitProgress':
|
|
160
|
-
value = repo.autoCommitProgress;
|
|
161
|
-
break;
|
|
162
|
-
case 'enableAgenticCoding':
|
|
163
|
-
value = repo.enableAgenticCoding;
|
|
164
|
-
break;
|
|
165
|
-
case 'enableSDD':
|
|
166
|
-
value = repo.enableSDD;
|
|
167
|
-
break;
|
|
168
|
-
case 'enableTDD':
|
|
169
|
-
value = repo.enableTDD;
|
|
170
|
-
break;
|
|
171
|
-
case 'enableADR':
|
|
172
|
-
value = repo.enableADR;
|
|
173
|
-
break;
|
|
174
|
-
case 'testPatterns':
|
|
175
|
-
value = repo.testPatterns;
|
|
176
|
-
break;
|
|
177
|
-
default:
|
|
178
|
-
return createErrorResult(`Unknown preference key: ${args.key}`);
|
|
137
|
+
const result = await configService.getPreferenceByKey(args.key);
|
|
138
|
+
if (!result.isValid) {
|
|
139
|
+
return createErrorResult(result.error);
|
|
179
140
|
}
|
|
180
141
|
const lines = [
|
|
181
142
|
`# Preference: ${args.key}`,
|
|
182
143
|
'',
|
|
183
|
-
`**Value**: ${typeof value === 'object' ? JSON.stringify(value) : value}`,
|
|
144
|
+
`**Value**: ${typeof result.value === 'object' ? JSON.stringify(result.value) : result.value}`,
|
|
184
145
|
'',
|
|
185
146
|
'---',
|
|
186
147
|
'',
|
|
@@ -195,5 +156,113 @@ export class ConfigTool {
|
|
|
195
156
|
return createErrorResult(`Failed to get preference: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
196
157
|
}
|
|
197
158
|
}
|
|
159
|
+
static async handleShowSources(configService) {
|
|
160
|
+
try {
|
|
161
|
+
const sources = await configService.getPreferenceSources();
|
|
162
|
+
const { repo: repoConfig, global: globalConfig, merged } = sources;
|
|
163
|
+
// Helper to determine source of a preference value
|
|
164
|
+
const getSource = (key) => {
|
|
165
|
+
if (repoConfig.repo && key in repoConfig.repo && repoConfig.repo[key] !== undefined) {
|
|
166
|
+
return 'Repository';
|
|
167
|
+
}
|
|
168
|
+
if (globalConfig.repo && key in globalConfig.repo && globalConfig.repo[key] !== undefined) {
|
|
169
|
+
return 'Global';
|
|
170
|
+
}
|
|
171
|
+
return 'Default';
|
|
172
|
+
};
|
|
173
|
+
// Helper for nested directory values
|
|
174
|
+
const getDirSource = (dirKey) => {
|
|
175
|
+
if (repoConfig.repo?.directories && dirKey in repoConfig.repo.directories) {
|
|
176
|
+
return 'Repository';
|
|
177
|
+
}
|
|
178
|
+
if (globalConfig.repo?.directories && dirKey in globalConfig.repo.directories) {
|
|
179
|
+
return 'Global';
|
|
180
|
+
}
|
|
181
|
+
return 'Default';
|
|
182
|
+
};
|
|
183
|
+
// Get testPatterns source
|
|
184
|
+
const testPatternsSource = repoConfig.repo?.testPatterns ? 'Repository' :
|
|
185
|
+
globalConfig.repo?.testPatterns ? 'Global' : 'Default';
|
|
186
|
+
const lines = [
|
|
187
|
+
'# Preference Sources',
|
|
188
|
+
'',
|
|
189
|
+
'## Feature Flags',
|
|
190
|
+
`- **autoCommitProgress**: ${merged.repo.autoCommitProgress} _(${getSource('autoCommitProgress')})_`,
|
|
191
|
+
`- **enableAgenticCoding**: ${merged.repo.enableAgenticCoding} _(${getSource('enableAgenticCoding')})_`,
|
|
192
|
+
`- **enableSDD**: ${merged.repo.enableSDD} _(${getSource('enableSDD')})_`,
|
|
193
|
+
`- **enableTDD**: ${merged.repo.enableTDD} _(${getSource('enableTDD')})_`,
|
|
194
|
+
`- **enableADR**: ${merged.repo.enableADR} _(${getSource('enableADR')})_`,
|
|
195
|
+
'',
|
|
196
|
+
'## Directory Paths',
|
|
197
|
+
`- **docsDirectory**: \`${merged.repo.directories.docs}\` _(${getDirSource('docs')})_`,
|
|
198
|
+
`- **adrDirectory**: \`${merged.repo.directories.adr}\` _(${getDirSource('adr')})_`,
|
|
199
|
+
`- **prdDirectory**: \`${merged.repo.directories.prd}\` _(${getDirSource('prd')})_`,
|
|
200
|
+
'',
|
|
201
|
+
'## Test Configuration',
|
|
202
|
+
`- **testPatterns**: ${JSON.stringify(merged.repo.testPatterns)} _(${testPatternsSource})_`,
|
|
203
|
+
'',
|
|
204
|
+
'---',
|
|
205
|
+
'',
|
|
206
|
+
'## Config Files',
|
|
207
|
+
'- **Global**: `~/.tiny-brain/config/preferences.json`',
|
|
208
|
+
'- **Repository**: `[repo]/.tiny-brain/config.json`',
|
|
209
|
+
];
|
|
210
|
+
return createSuccessResult(lines.join('\n'));
|
|
211
|
+
}
|
|
212
|
+
catch (error) {
|
|
213
|
+
return createErrorResult(`Failed to show preference sources: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
static async handleSet(args, configService) {
|
|
217
|
+
if (!args.key) {
|
|
218
|
+
return createErrorResult('key is required for set operation');
|
|
219
|
+
}
|
|
220
|
+
if (args.value === undefined) {
|
|
221
|
+
return createErrorResult('value is required for set operation');
|
|
222
|
+
}
|
|
223
|
+
const scope = args.scope || 'repo';
|
|
224
|
+
try {
|
|
225
|
+
const result = await configService.setPreferenceByKey(args.key, args.value, scope);
|
|
226
|
+
if (!result.success) {
|
|
227
|
+
return createErrorResult(result.error);
|
|
228
|
+
}
|
|
229
|
+
const scopeLabel = scope === 'global' ? 'Global' : 'Repository';
|
|
230
|
+
const displayValue = args.value === 'true' || args.value === 'false'
|
|
231
|
+
? args.value === 'true'
|
|
232
|
+
: args.value;
|
|
233
|
+
const lines = [
|
|
234
|
+
'# Preference Updated',
|
|
235
|
+
'',
|
|
236
|
+
`✅ **${args.key}** set to \`${displayValue}\``,
|
|
237
|
+
'',
|
|
238
|
+
`📁 **Scope**: ${scopeLabel}`,
|
|
239
|
+
'',
|
|
240
|
+
'---',
|
|
241
|
+
'',
|
|
242
|
+
'💡 Use `config operation=show-sources` to see all preference sources.',
|
|
243
|
+
];
|
|
244
|
+
return createSuccessResult(lines.join('\n'));
|
|
245
|
+
}
|
|
246
|
+
catch (error) {
|
|
247
|
+
return createErrorResult(`Failed to set preference: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
static async handleReset(configService) {
|
|
251
|
+
try {
|
|
252
|
+
await configService.resetPreferences();
|
|
253
|
+
const lines = [
|
|
254
|
+
'# Preferences reset',
|
|
255
|
+
'',
|
|
256
|
+
'✅ All preferences have been reset to their default values.',
|
|
257
|
+
'',
|
|
258
|
+
'---',
|
|
259
|
+
'',
|
|
260
|
+
'💡 Use `config operation=list` to see current preference values.',
|
|
261
|
+
];
|
|
262
|
+
return createSuccessResult(lines.join('\n'));
|
|
263
|
+
}
|
|
264
|
+
catch (error) {
|
|
265
|
+
return createErrorResult(`Failed to reset preferences: ${error instanceof Error ? error.message : 'Unknown error'}`);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
198
268
|
}
|
|
199
|
-
//# sourceMappingURL=config.tool.js.map
|
package/dist/tools/index.d.ts
CHANGED
|
@@ -8,23 +8,23 @@ export declare const ToolResultSchema: z.ZodObject<{
|
|
|
8
8
|
type: z.ZodLiteral<"text">;
|
|
9
9
|
text: z.ZodString;
|
|
10
10
|
}, "strip", z.ZodTypeAny, {
|
|
11
|
-
type: "text";
|
|
12
11
|
text: string;
|
|
13
|
-
}, {
|
|
14
12
|
type: "text";
|
|
13
|
+
}, {
|
|
15
14
|
text: string;
|
|
15
|
+
type: "text";
|
|
16
16
|
}>, "many">;
|
|
17
17
|
isError: z.ZodOptional<z.ZodBoolean>;
|
|
18
18
|
}, "strip", z.ZodTypeAny, {
|
|
19
19
|
content: {
|
|
20
|
-
type: "text";
|
|
21
20
|
text: string;
|
|
21
|
+
type: "text";
|
|
22
22
|
}[];
|
|
23
23
|
isError?: boolean | undefined;
|
|
24
24
|
}, {
|
|
25
25
|
content: {
|
|
26
|
-
type: "text";
|
|
27
26
|
text: string;
|
|
27
|
+
type: "text";
|
|
28
28
|
}[];
|
|
29
29
|
isError?: boolean | undefined;
|
|
30
30
|
}>;
|
package/dist/tools/index.js
CHANGED
|
@@ -17,5 +17,9 @@ export declare class PlanTool {
|
|
|
17
17
|
private static handleDashboardStatus;
|
|
18
18
|
private static handleAdr;
|
|
19
19
|
private static handleCreateAdr;
|
|
20
|
+
/**
|
|
21
|
+
* Handle sync operation - regenerate progress.json from markdown files
|
|
22
|
+
*/
|
|
23
|
+
private static handleSync;
|
|
20
24
|
}
|
|
21
25
|
//# sourceMappingURL=plan.tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plan.tool.d.ts","sourceRoot":"","sources":["../../../src/tools/plan/plan.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAA0C,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"plan.tool.d.ts","sourceRoot":"","sources":["../../../src/tools/plan/plan.tool.ts"],"names":[],"mappings":"AACA,OAAO,EAA0C,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,oCAAoC,CAAC;AA2LrE,qBAAa,QAAQ;IACnB,MAAM,CAAC,iBAAiB,IAAI,OAAO;WA4LtB,OAAO,CAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,UAAU,CAAC;mBA2ED,YAAY;mBA+LZ,aAAa;mBAyCb,eAAe;mBA0Df,YAAY;mBA+CZ,YAAY;mBAsDZ,YAAY;mBAiCZ,UAAU;mBA2DV,aAAa;mBA2Cb,oBAAoB;mBA+CpB,mBAAmB;mBAsBnB,qBAAqB;mBAqCrB,SAAS;mBAgGT,eAAe;IAuFpC;;OAEG;mBACkB,UAAU;CA2DhC"}
|