@su-record/vibe 2.5.15 → 2.5.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (245) hide show
  1. package/CLAUDE.md +519 -683
  2. package/LICENSE +21 -21
  3. package/README.md +262 -262
  4. package/agents/architect-low.md +41 -41
  5. package/agents/architect-medium.md +59 -59
  6. package/agents/architect.md +80 -80
  7. package/agents/build-error-resolver.md +115 -115
  8. package/agents/compounder.md +261 -261
  9. package/agents/diagrammer.md +178 -178
  10. package/agents/e2e-tester.md +266 -266
  11. package/agents/explorer-low.md +42 -42
  12. package/agents/explorer-medium.md +59 -59
  13. package/agents/explorer.md +48 -48
  14. package/agents/implementer-low.md +43 -43
  15. package/agents/implementer-medium.md +52 -52
  16. package/agents/implementer.md +54 -54
  17. package/agents/refactor-cleaner.md +143 -143
  18. package/agents/research/best-practices-agent.md +199 -189
  19. package/agents/research/codebase-patterns-agent.md +157 -147
  20. package/agents/research/framework-docs-agent.md +188 -178
  21. package/agents/research/security-advisory-agent.md +213 -203
  22. package/agents/review/architecture-reviewer.md +107 -107
  23. package/agents/review/complexity-reviewer.md +116 -116
  24. package/agents/review/data-integrity-reviewer.md +88 -88
  25. package/agents/review/git-history-reviewer.md +103 -103
  26. package/agents/review/performance-reviewer.md +86 -86
  27. package/agents/review/python-reviewer.md +150 -150
  28. package/agents/review/rails-reviewer.md +139 -139
  29. package/agents/review/react-reviewer.md +144 -144
  30. package/agents/review/security-reviewer.md +80 -80
  31. package/agents/review/simplicity-reviewer.md +140 -140
  32. package/agents/review/test-coverage-reviewer.md +116 -116
  33. package/agents/review/typescript-reviewer.md +127 -127
  34. package/agents/searcher.md +54 -54
  35. package/agents/simplifier.md +120 -120
  36. package/agents/tester.md +49 -49
  37. package/agents/ui-previewer.md +129 -129
  38. package/commands/vibe.analyze.md +356 -356
  39. package/commands/vibe.reason.md +329 -329
  40. package/commands/vibe.review.md +326 -326
  41. package/commands/vibe.run.md +1247 -1117
  42. package/commands/vibe.spec.md +1074 -1058
  43. package/commands/vibe.utils.md +353 -353
  44. package/commands/vibe.verify.md +375 -375
  45. package/dist/cli/collaborator.js +52 -52
  46. package/dist/cli/detect.js +32 -32
  47. package/dist/cli/hud.d.ts +33 -0
  48. package/dist/cli/hud.d.ts.map +1 -0
  49. package/dist/cli/hud.js +247 -0
  50. package/dist/cli/hud.js.map +1 -0
  51. package/dist/cli/index.d.ts +1 -0
  52. package/dist/cli/index.d.ts.map +1 -1
  53. package/dist/cli/index.js +173 -108
  54. package/dist/cli/index.js.map +1 -1
  55. package/dist/cli/llm.js +144 -144
  56. package/dist/cli/setup/ProjectSetup.js +1 -1
  57. package/dist/cli/setup/ProjectSetup.js.map +1 -1
  58. package/dist/lib/DeepInit.js +24 -24
  59. package/dist/lib/FrameworkDetector.d.ts +56 -0
  60. package/dist/lib/FrameworkDetector.d.ts.map +1 -0
  61. package/dist/lib/FrameworkDetector.js +287 -0
  62. package/dist/lib/FrameworkDetector.js.map +1 -0
  63. package/dist/lib/IterationTracker.js +11 -11
  64. package/dist/lib/ProgressTracker.d.ts +68 -0
  65. package/dist/lib/ProgressTracker.d.ts.map +1 -0
  66. package/dist/lib/ProgressTracker.js +211 -0
  67. package/dist/lib/ProgressTracker.js.map +1 -0
  68. package/dist/lib/PythonParser.js +108 -108
  69. package/dist/lib/RuleBuildSystem.d.ts +117 -0
  70. package/dist/lib/RuleBuildSystem.d.ts.map +1 -0
  71. package/dist/lib/RuleBuildSystem.js +402 -0
  72. package/dist/lib/RuleBuildSystem.js.map +1 -0
  73. package/dist/lib/SkillFrontmatter.js +28 -28
  74. package/dist/lib/SkillQualityGate.js +9 -9
  75. package/dist/lib/SkillRepository.js +159 -159
  76. package/dist/lib/UltraQA.js +77 -77
  77. package/dist/lib/gpt-api.js +4 -4
  78. package/dist/lib/memory/KnowledgeGraph.js +4 -4
  79. package/dist/lib/memory/MemorySearch.js +20 -20
  80. package/dist/lib/memory/MemoryStorage.js +64 -64
  81. package/dist/orchestrator/AgentManager.js +12 -12
  82. package/dist/orchestrator/MultiLlmResearch.js +8 -8
  83. package/dist/orchestrator/SmartRouter.js +11 -11
  84. package/dist/orchestrator/parallelResearch.js +24 -24
  85. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  86. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  87. package/dist/tools/index.d.ts +4 -0
  88. package/dist/tools/index.d.ts.map +1 -1
  89. package/dist/tools/index.js +4 -0
  90. package/dist/tools/index.js.map +1 -1
  91. package/dist/tools/memory/startSession.d.ts.map +1 -1
  92. package/dist/tools/memory/startSession.js +104 -0
  93. package/dist/tools/memory/startSession.js.map +1 -1
  94. package/hooks/hooks.json +222 -222
  95. package/hooks/scripts/code-check.js +22 -22
  96. package/hooks/scripts/code-review.js +22 -22
  97. package/hooks/scripts/complexity.js +22 -22
  98. package/hooks/scripts/compound.js +23 -23
  99. package/hooks/scripts/context-save.js +33 -33
  100. package/hooks/scripts/generate-brand-assets.js +472 -472
  101. package/hooks/scripts/hud-multiline.js +262 -262
  102. package/hooks/scripts/hud-status.js +291 -291
  103. package/hooks/scripts/keyword-detector.js +214 -214
  104. package/hooks/scripts/llm-orchestrate.js +171 -171
  105. package/hooks/scripts/post-edit.js +97 -97
  106. package/hooks/scripts/post-tool-verify.js +210 -210
  107. package/hooks/scripts/pre-tool-guard.js +125 -125
  108. package/hooks/scripts/recall.js +22 -22
  109. package/hooks/scripts/session-start.js +30 -30
  110. package/hooks/scripts/skill-injector.js +191 -191
  111. package/hooks/scripts/utils.js +97 -97
  112. package/languages/csharp-unity.md +515 -515
  113. package/languages/gdscript-godot.md +470 -470
  114. package/languages/ruby-rails.md +489 -489
  115. package/languages/typescript-angular.md +433 -433
  116. package/languages/typescript-astro.md +416 -416
  117. package/languages/typescript-electron.md +406 -406
  118. package/languages/typescript-nestjs.md +524 -524
  119. package/languages/typescript-svelte.md +407 -407
  120. package/languages/typescript-tauri.md +365 -365
  121. package/package.json +83 -83
  122. package/skills/brand-assets.md +141 -141
  123. package/skills/commerce-patterns.md +361 -361
  124. package/skills/context7-usage.md +102 -102
  125. package/skills/e2e-commerce.md +304 -304
  126. package/skills/frontend-design.md +92 -92
  127. package/skills/git-worktree.md +181 -181
  128. package/skills/parallel-research.md +77 -77
  129. package/skills/priority-todos.md +239 -239
  130. package/skills/seo-checklist.md +244 -244
  131. package/skills/tool-fallback.md +190 -190
  132. package/skills/vibe-capabilities.md +161 -161
  133. package/vibe/constitution.md +227 -227
  134. package/vibe/rules/core/communication-guide.md +98 -98
  135. package/vibe/rules/core/development-philosophy.md +52 -52
  136. package/vibe/rules/core/quick-start.md +102 -102
  137. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  138. package/vibe/rules/quality/checklist.md +276 -276
  139. package/vibe/rules/quality/testing-strategy.md +440 -440
  140. package/vibe/rules/standards/anti-patterns.md +541 -541
  141. package/vibe/rules/standards/code-structure.md +291 -291
  142. package/vibe/rules/standards/complexity-metrics.md +313 -313
  143. package/vibe/rules/standards/naming-conventions.md +198 -198
  144. package/vibe/setup.sh +31 -31
  145. package/vibe/templates/constitution-template.md +252 -252
  146. package/vibe/templates/contract-backend-template.md +526 -526
  147. package/vibe/templates/contract-frontend-template.md +599 -599
  148. package/vibe/templates/feature-template.md +96 -96
  149. package/vibe/templates/spec-template.md +221 -221
  150. package/dist/cli/mcp.d.ts +0 -49
  151. package/dist/cli/mcp.d.ts.map +0 -1
  152. package/dist/cli/mcp.js +0 -169
  153. package/dist/cli/mcp.js.map +0 -1
  154. package/dist/lib/gemini-mcp.d.ts +0 -10
  155. package/dist/lib/gemini-mcp.d.ts.map +0 -1
  156. package/dist/lib/gemini-mcp.js +0 -353
  157. package/dist/lib/gemini-mcp.js.map +0 -1
  158. package/dist/lib/gpt-mcp.d.ts +0 -10
  159. package/dist/lib/gpt-mcp.d.ts.map +0 -1
  160. package/dist/lib/gpt-mcp.js +0 -352
  161. package/dist/lib/gpt-mcp.js.map +0 -1
  162. package/dist/tools/analytics/getUsageAnalytics.d.ts +0 -10
  163. package/dist/tools/analytics/getUsageAnalytics.d.ts.map +0 -1
  164. package/dist/tools/analytics/getUsageAnalytics.js +0 -246
  165. package/dist/tools/analytics/getUsageAnalytics.js.map +0 -1
  166. package/dist/tools/analytics/index.d.ts +0 -5
  167. package/dist/tools/analytics/index.d.ts.map +0 -1
  168. package/dist/tools/analytics/index.js +0 -5
  169. package/dist/tools/analytics/index.js.map +0 -1
  170. package/dist/tools/convention/getCodingGuide.d.ts +0 -7
  171. package/dist/tools/convention/getCodingGuide.d.ts.map +0 -1
  172. package/dist/tools/convention/getCodingGuide.js +0 -69
  173. package/dist/tools/convention/getCodingGuide.js.map +0 -1
  174. package/dist/tools/planning/analyzeRequirements.d.ts +0 -9
  175. package/dist/tools/planning/analyzeRequirements.d.ts.map +0 -1
  176. package/dist/tools/planning/analyzeRequirements.js +0 -171
  177. package/dist/tools/planning/analyzeRequirements.js.map +0 -1
  178. package/dist/tools/planning/createUserStories.d.ts +0 -9
  179. package/dist/tools/planning/createUserStories.d.ts.map +0 -1
  180. package/dist/tools/planning/createUserStories.js +0 -124
  181. package/dist/tools/planning/createUserStories.js.map +0 -1
  182. package/dist/tools/planning/featureRoadmap.d.ts +0 -10
  183. package/dist/tools/planning/featureRoadmap.d.ts.map +0 -1
  184. package/dist/tools/planning/featureRoadmap.js +0 -207
  185. package/dist/tools/planning/featureRoadmap.js.map +0 -1
  186. package/dist/tools/planning/generatePrd.d.ts +0 -11
  187. package/dist/tools/planning/generatePrd.d.ts.map +0 -1
  188. package/dist/tools/planning/generatePrd.js +0 -161
  189. package/dist/tools/planning/generatePrd.js.map +0 -1
  190. package/dist/tools/planning/index.d.ts +0 -8
  191. package/dist/tools/planning/index.d.ts.map +0 -1
  192. package/dist/tools/planning/index.js +0 -8
  193. package/dist/tools/planning/index.js.map +0 -1
  194. package/dist/tools/prompt/analyzePrompt.d.ts +0 -7
  195. package/dist/tools/prompt/analyzePrompt.d.ts.map +0 -1
  196. package/dist/tools/prompt/analyzePrompt.js +0 -150
  197. package/dist/tools/prompt/analyzePrompt.js.map +0 -1
  198. package/dist/tools/prompt/enhancePrompt.d.ts +0 -8
  199. package/dist/tools/prompt/enhancePrompt.d.ts.map +0 -1
  200. package/dist/tools/prompt/enhancePrompt.js +0 -110
  201. package/dist/tools/prompt/enhancePrompt.js.map +0 -1
  202. package/dist/tools/prompt/enhancePromptGemini.d.ts +0 -8
  203. package/dist/tools/prompt/enhancePromptGemini.d.ts.map +0 -1
  204. package/dist/tools/prompt/enhancePromptGemini.js +0 -332
  205. package/dist/tools/prompt/enhancePromptGemini.js.map +0 -1
  206. package/dist/tools/prompt/index.d.ts +0 -7
  207. package/dist/tools/prompt/index.d.ts.map +0 -1
  208. package/dist/tools/prompt/index.js +0 -7
  209. package/dist/tools/prompt/index.js.map +0 -1
  210. package/dist/tools/reasoning/applyReasoningFramework.d.ts +0 -8
  211. package/dist/tools/reasoning/applyReasoningFramework.d.ts.map +0 -1
  212. package/dist/tools/reasoning/applyReasoningFramework.js +0 -266
  213. package/dist/tools/reasoning/applyReasoningFramework.js.map +0 -1
  214. package/dist/tools/reasoning/index.d.ts +0 -5
  215. package/dist/tools/reasoning/index.d.ts.map +0 -1
  216. package/dist/tools/reasoning/index.js +0 -5
  217. package/dist/tools/reasoning/index.js.map +0 -1
  218. package/dist/tools/thinking/analyzeProblem.d.ts +0 -7
  219. package/dist/tools/thinking/analyzeProblem.d.ts.map +0 -1
  220. package/dist/tools/thinking/analyzeProblem.js +0 -55
  221. package/dist/tools/thinking/analyzeProblem.js.map +0 -1
  222. package/dist/tools/thinking/breakDownProblem.d.ts +0 -8
  223. package/dist/tools/thinking/breakDownProblem.d.ts.map +0 -1
  224. package/dist/tools/thinking/breakDownProblem.js +0 -145
  225. package/dist/tools/thinking/breakDownProblem.js.map +0 -1
  226. package/dist/tools/thinking/createThinkingChain.d.ts +0 -7
  227. package/dist/tools/thinking/createThinkingChain.d.ts.map +0 -1
  228. package/dist/tools/thinking/createThinkingChain.js +0 -44
  229. package/dist/tools/thinking/createThinkingChain.js.map +0 -1
  230. package/dist/tools/thinking/formatAsPlan.d.ts +0 -9
  231. package/dist/tools/thinking/formatAsPlan.d.ts.map +0 -1
  232. package/dist/tools/thinking/formatAsPlan.js +0 -78
  233. package/dist/tools/thinking/formatAsPlan.js.map +0 -1
  234. package/dist/tools/thinking/index.d.ts +0 -10
  235. package/dist/tools/thinking/index.d.ts.map +0 -1
  236. package/dist/tools/thinking/index.js +0 -10
  237. package/dist/tools/thinking/index.js.map +0 -1
  238. package/dist/tools/thinking/stepByStepAnalysis.d.ts +0 -8
  239. package/dist/tools/thinking/stepByStepAnalysis.d.ts.map +0 -1
  240. package/dist/tools/thinking/stepByStepAnalysis.js +0 -63
  241. package/dist/tools/thinking/stepByStepAnalysis.js.map +0 -1
  242. package/dist/tools/thinking/thinkAloudProcess.d.ts +0 -8
  243. package/dist/tools/thinking/thinkAloudProcess.d.ts.map +0 -1
  244. package/dist/tools/thinking/thinkAloudProcess.js +0 -80
  245. package/dist/tools/thinking/thinkAloudProcess.js.map +0 -1
@@ -1,78 +0,0 @@
1
- // Sequential thinking tool - completely independent
2
- export const formatAsPlanDefinition = {
3
- name: 'format_as_plan',
4
- description: '계획으로|정리해줘|체크리스트|format as plan|make a plan|organize this|checklist - Format content into clear plans',
5
- inputSchema: {
6
- type: 'object',
7
- properties: {
8
- content: { type: 'string', description: 'Content to format as a plan' },
9
- priority: { type: 'string', description: 'Default priority level', enum: ['high', 'medium', 'low'] },
10
- includeTimeEstimates: { type: 'boolean', description: 'Include time estimates for each step' },
11
- includeCheckboxes: { type: 'boolean', description: 'Include checkboxes for tracking progress' }
12
- },
13
- required: ['content']
14
- },
15
- annotations: {
16
- title: 'Format as Plan',
17
- audience: ['user', 'assistant'],
18
- readOnlyHint: true,
19
- destructiveHint: false,
20
- idempotentHint: true,
21
- openWorldHint: false
22
- }
23
- };
24
- export async function formatAsPlan(args) {
25
- const { content: planContent, priority = 'medium', includeTimeEstimates = true, includeCheckboxes = true } = args;
26
- // Parse content into actionable steps
27
- const sentences = planContent.split(/[.!?]+/).filter(s => s.trim().length > 10);
28
- const planSteps = sentences.map((sentence, index) => {
29
- const stepNumber = index + 1;
30
- const cleanSentence = sentence.trim();
31
- // Estimate time based on content complexity
32
- let timeEstimate = '5min';
33
- if (cleanSentence.length > 100)
34
- timeEstimate = '15min';
35
- else if (cleanSentence.length > 50)
36
- timeEstimate = '10min';
37
- // Detect priority keywords
38
- let stepPriority = priority;
39
- if (cleanSentence.match(/urgent|critical|important|first|must/i))
40
- stepPriority = 'high';
41
- else if (cleanSentence.match(/later|eventually|nice|optional/i))
42
- stepPriority = 'low';
43
- // Format step
44
- let formattedStep = includeCheckboxes ? `${stepNumber}. □ ` : `${stepNumber}. `;
45
- formattedStep += cleanSentence;
46
- if (includeTimeEstimates)
47
- formattedStep += ` (${stepPriority.toUpperCase()}, ${timeEstimate})`;
48
- return {
49
- number: stepNumber,
50
- content: cleanSentence,
51
- priority: stepPriority,
52
- timeEstimate,
53
- formatted: formattedStep
54
- };
55
- });
56
- // Calculate total time
57
- const totalMinutes = planSteps.reduce((total, step) => {
58
- const minutes = parseInt(step.timeEstimate.replace('min', ''));
59
- return total + minutes;
60
- }, 0);
61
- const planResult = {
62
- action: 'format_as_plan',
63
- originalContent: planContent,
64
- formattedPlan: planSteps.map((s) => s.formatted).join('\n'),
65
- steps: planSteps.length,
66
- totalEstimatedTime: `${totalMinutes} minutes`,
67
- breakdown: {
68
- high: planSteps.filter((s) => s.priority === 'high').length,
69
- medium: planSteps.filter((s) => s.priority === 'medium').length,
70
- low: planSteps.filter((s) => s.priority === 'low').length
71
- },
72
- status: 'success'
73
- };
74
- return {
75
- content: [{ type: 'text', text: `${planResult.formattedPlan}\n\nTotal: ${planResult.totalEstimatedTime} | Priority: ${planResult.breakdown.high}H ${planResult.breakdown.medium}M ${planResult.breakdown.low}L` }]
76
- };
77
- }
78
- //# sourceMappingURL=formatAsPlan.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"formatAsPlan.js","sourceRoot":"","sources":["../../../src/tools/thinking/formatAsPlan.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Thinking Tools - 사고 체인 및 문제 분석
3
- */
4
- export { createThinkingChain } from './createThinkingChain.js';
5
- export { analyzeProblem } from './analyzeProblem.js';
6
- export { stepByStepAnalysis } from './stepByStepAnalysis.js';
7
- export { formatAsPlan } from './formatAsPlan.js';
8
- export { breakDownProblem } from './breakDownProblem.js';
9
- export { thinkAloudProcess } from './thinkAloudProcess.js';
10
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tools/thinking/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Thinking Tools - 사고 체인 및 문제 분석
3
- */
4
- export { createThinkingChain } from './createThinkingChain.js';
5
- export { analyzeProblem } from './analyzeProblem.js';
6
- export { stepByStepAnalysis } from './stepByStepAnalysis.js';
7
- export { formatAsPlan } from './formatAsPlan.js';
8
- export { breakDownProblem } from './breakDownProblem.js';
9
- export { thinkAloudProcess } from './thinkAloudProcess.js';
10
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/thinking/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,8 +0,0 @@
1
- import { ToolResult, ToolDefinition } from '../../types/tool.js';
2
- export declare const stepByStepAnalysisDefinition: ToolDefinition;
3
- export declare function stepByStepAnalysis(args: {
4
- task: string;
5
- context?: string;
6
- detailLevel?: string;
7
- }): Promise<ToolResult>;
8
- //# sourceMappingURL=stepByStepAnalysis.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stepByStepAnalysis.d.ts","sourceRoot":"","sources":["../../../src/tools/thinking/stepByStepAnalysis.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEjE,eAAO,MAAM,4BAA4B,EAAE,cAoB1C,CAAC;AAEF,wBAAsB,kBAAkB,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAyC5H"}
@@ -1,63 +0,0 @@
1
- // Sequential thinking tool - completely independent
2
- export const stepByStepAnalysisDefinition = {
3
- name: 'step_by_step_analysis',
4
- description: '단계별|차근차근|하나씩|step by step|one by one|gradually - Perform detailed step-by-step analysis',
5
- inputSchema: {
6
- type: 'object',
7
- properties: {
8
- task: { type: 'string', description: 'Task to analyze step by step' },
9
- context: { type: 'string', description: 'Additional context for the task' },
10
- detailLevel: { type: 'string', description: 'Level of detail', enum: ['basic', 'detailed', 'comprehensive'] }
11
- },
12
- required: ['task']
13
- },
14
- annotations: {
15
- title: 'Step-by-Step Analysis',
16
- audience: ['user', 'assistant'],
17
- readOnlyHint: true,
18
- destructiveHint: false,
19
- idempotentHint: true,
20
- openWorldHint: false
21
- }
22
- };
23
- export async function stepByStepAnalysis(args) {
24
- const { task, context = '', detailLevel = 'detailed' } = args;
25
- const stepCount = detailLevel === 'basic' ? 3 : detailLevel === 'detailed' ? 5 : 7;
26
- const stepAnalysis = {
27
- action: 'step_by_step_analysis',
28
- task,
29
- context,
30
- detailLevel,
31
- steps: Array.from({ length: stepCount }, (_, i) => {
32
- const stepNum = i + 1;
33
- return {
34
- stepNumber: stepNum,
35
- title: `Step ${stepNum}: ${task} - Phase ${stepNum}`,
36
- description: `Detailed analysis of ${task} in step ${stepNum}`,
37
- actions: [
38
- `Analyze requirements for step ${stepNum}`,
39
- `Identify dependencies and prerequisites`,
40
- `Execute the planned actions`,
41
- `Validate results and check for issues`,
42
- `Prepare for next step`
43
- ],
44
- checkpoints: [
45
- `Verify step ${stepNum} requirements are met`,
46
- `Confirm outputs are as expected`,
47
- `Check for any blocking issues`
48
- ],
49
- estimatedTime: detailLevel === 'comprehensive' ? `${stepNum * 10} minutes` : `${stepNum * 5} minutes`
50
- };
51
- }),
52
- summary: {
53
- totalSteps: stepCount,
54
- estimatedTotalTime: detailLevel === 'comprehensive' ? `${stepCount * 35} minutes` : `${stepCount * 20} minutes`,
55
- complexity: detailLevel === 'basic' ? 'low' : detailLevel === 'detailed' ? 'medium' : 'high'
56
- },
57
- status: 'success'
58
- };
59
- return {
60
- content: [{ type: 'text', text: `Task: ${task}\nDetail: ${detailLevel}\nSteps: ${stepCount}\n\n${stepAnalysis.steps.map(s => `Step ${s.stepNumber}: ${s.title}\n Time: ${s.estimatedTime}\n Actions: ${s.actions.join(', ')}\n Checkpoints: ${s.checkpoints.join(', ')}`).join('\n\n')}\n\nTotal Time: ${stepAnalysis.summary.estimatedTotalTime} | Complexity: ${stepAnalysis.summary.complexity}` }]
61
- };
62
- }
63
- //# sourceMappingURL=stepByStepAnalysis.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stepByStepAnalysis.js","sourceRoot":"","sources":["../../../src/tools/thinking/stepByStepAnalysis.ts"],"names":[],"mappings":"AAAA,oDAAoD;AAIpD,MAAM,CAAC,MAAM,4BAA4B,GAAmB;IAC1D,IAAI,EAAE,uBAAuB;IAC7B,WAAW,EAAE,yFAAyF;IACtG,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8BAA8B,EAAE;YACrE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;YAC3E,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE;SAC9G;QACD,QAAQ,EAAE,CAAC,MAAM,CAAC;KACnB;IACD,WAAW,EAAE;QACX,KAAK,EAAE,uBAAuB;QAC9B,QAAQ,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;QAC/B,YAAY,EAAE,IAAI;QAClB,eAAe,EAAE,KAAK;QACtB,cAAc,EAAE,IAAI;QACpB,aAAa,EAAE,KAAK;KACrB;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAA8D;IACrG,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,EAAE,EAAE,WAAW,GAAG,UAAU,EAAE,GAAG,IAAI,CAAC;IAE9D,MAAM,SAAS,GAAG,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnF,MAAM,YAAY,GAAG;QACnB,MAAM,EAAE,uBAAuB;QAC/B,IAAI;QACJ,OAAO;QACP,WAAW;QACX,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAChD,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;YACtB,OAAO;gBACL,UAAU,EAAE,OAAO;gBACnB,KAAK,EAAE,QAAQ,OAAO,KAAK,IAAI,YAAY,OAAO,EAAE;gBACpD,WAAW,EAAE,wBAAwB,IAAI,YAAY,OAAO,EAAE;gBAC9D,OAAO,EAAE;oBACP,iCAAiC,OAAO,EAAE;oBAC1C,yCAAyC;oBACzC,6BAA6B;oBAC7B,uCAAuC;oBACvC,uBAAuB;iBACxB;gBACD,WAAW,EAAE;oBACX,eAAe,OAAO,uBAAuB;oBAC7C,iCAAiC;oBACjC,+BAA+B;iBAChC;gBACD,aAAa,EAAE,WAAW,KAAK,eAAe,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,CAAC,UAAU;aACtG,CAAC;QACJ,CAAC,CAAC;QACF,OAAO,EAAE;YACP,UAAU,EAAE,SAAS;YACrB,kBAAkB,EAAE,WAAW,KAAK,eAAe,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,EAAE,UAAU;YAC/G,UAAU,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;SAC7F;QACD,MAAM,EAAE,SAAS;KAClB,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,IAAI,aAAa,WAAW,YAAY,SAAS,OAAO,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,aAAa,gBAAgB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,mBAAmB,YAAY,CAAC,OAAO,CAAC,kBAAkB,kBAAkB,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;KAC1Y,CAAC;AACJ,CAAC"}
@@ -1,8 +0,0 @@
1
- import { ToolResult, ToolDefinition } from '../../types/tool.js';
2
- export declare const thinkAloudProcessDefinition: ToolDefinition;
3
- export declare function thinkAloudProcess(args: {
4
- scenario: string;
5
- perspective?: string;
6
- verbosity?: string;
7
- }): Promise<ToolResult>;
8
- //# sourceMappingURL=thinkAloudProcess.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"thinkAloudProcess.d.ts","sourceRoot":"","sources":["../../../src/tools/thinking/thinkAloudProcess.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEjE,eAAO,MAAM,2BAA2B,EAAE,cAoBzC,CAAC;AAEF,wBAAsB,iBAAiB,CAAC,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CA4DjI"}
@@ -1,80 +0,0 @@
1
- // Sequential thinking tool - completely independent
2
- export const thinkAloudProcessDefinition = {
3
- name: 'think_aloud_process',
4
- description: '생각해봐|고민해봐|어떻게 생각해|think about it|let me think|reasoning - Generate think-aloud reasoning process',
5
- inputSchema: {
6
- type: 'object',
7
- properties: {
8
- scenario: { type: 'string', description: 'Scenario or problem to think through' },
9
- perspective: { type: 'string', description: 'Thinking perspective', enum: ['analytical', 'creative', 'systematic', 'critical'] },
10
- verbosity: { type: 'string', description: 'Verbosity level', enum: ['concise', 'moderate', 'verbose'] }
11
- },
12
- required: ['scenario']
13
- },
14
- annotations: {
15
- title: 'Think Aloud',
16
- audience: ['user', 'assistant'],
17
- readOnlyHint: true,
18
- destructiveHint: false,
19
- idempotentHint: true,
20
- openWorldHint: false
21
- }
22
- };
23
- export async function thinkAloudProcess(args) {
24
- const { scenario, perspective = 'analytical', verbosity = 'moderate' } = args;
25
- const thoughtCount = verbosity === 'concise' ? 3 : verbosity === 'moderate' ? 5 : 8;
26
- const thinkAloudProcess = {
27
- action: 'think_aloud_process',
28
- scenario,
29
- perspective,
30
- verbosity,
31
- thoughtProcess: Array.from({ length: thoughtCount }, (_, i) => {
32
- const thoughtNum = i + 1;
33
- let thoughtStyle = '';
34
- switch (perspective) {
35
- case 'analytical':
36
- thoughtStyle = `Analyzing: Let me examine ${scenario} systematically...`;
37
- break;
38
- case 'creative':
39
- thoughtStyle = `Brainstorming: What if I approach ${scenario} differently...`;
40
- break;
41
- case 'systematic':
42
- thoughtStyle = `Step ${thoughtNum}: Following systematic approach to ${scenario}...`;
43
- break;
44
- case 'critical':
45
- thoughtStyle = `Questioning: What assumptions am I making about ${scenario}...`;
46
- break;
47
- }
48
- return {
49
- stepNumber: thoughtNum,
50
- thought: thoughtStyle,
51
- reasoning: `In step ${thoughtNum}, I need to consider the implications of ${scenario} from a ${perspective} perspective`,
52
- questions: [
53
- `What do I know about this aspect of ${scenario}?`,
54
- `What don't I know yet?`,
55
- `What should I explore next?`
56
- ],
57
- conclusions: [
58
- `Based on current analysis...`,
59
- `This leads me to think that...`,
60
- `Next I should focus on...`
61
- ],
62
- confidence: Math.min(95, 60 + (thoughtNum * 5))
63
- };
64
- }),
65
- metacognition: {
66
- thinkingStyle: perspective,
67
- processEffectiveness: verbosity === 'verbose' ? 'highly detailed' : verbosity === 'moderate' ? 'balanced' : 'efficient',
68
- nextSteps: [
69
- 'Review thinking process for gaps',
70
- 'Validate conclusions against evidence',
71
- 'Plan concrete actions based on analysis'
72
- ]
73
- },
74
- status: 'success'
75
- };
76
- return {
77
- content: [{ type: 'text', text: `Scenario: ${scenario}\nPerspective: ${perspective}\nThoughts: ${thoughtCount}\n${thinkAloudProcess.thoughtProcess.map((t, i) => `${i + 1}. ${t.thought} (confidence: ${t.confidence}%)`).join('\n')}\n\nNext: ${thinkAloudProcess.metacognition.nextSteps.join(', ')}` }]
78
- };
79
- }
80
- //# sourceMappingURL=thinkAloudProcess.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"thinkAloudProcess.js","sourceRoot":"","sources":["../../../src/tools/thinking/thinkAloudProcess.ts"],"names":[],"mappings":"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"}