File size: 1,758 Bytes
d47b053
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
import type { StudioToolDefinition } from '../domain/types'
import { createStudioAiReviewTool } from '../tools/ai-review-tool'
import { createStudioApplyPatchTool } from '../tools/apply-patch-tool'
import { createStudioEditTool } from '../tools/edit-tool'
import { createStudioGlobTool } from '../tools/glob-tool'
import { createStudioGrepTool } from '../tools/grep-tool'
import { createStudioLsTool } from '../tools/ls-tool'
import { createStudioQuestionTool } from '../tools/question-tool'
import { createStudioReadTool } from '../tools/read-tool'
import { createStudioSkillTool } from '../tools/skill-tool'
import { createStudioStaticCheckTool } from '../tools/static-check-tool'
import { createStudioTaskTool } from '../tools/task-tool'
import { createStudioWriteTool } from '../tools/write-tool'
import type { StudioToolRegistry } from '../tools/registry'

export function registerSharedStudioTools(registry: StudioToolRegistry): void {
  for (const tool of createSharedStudioTools()) {
    registry.register(tool)
  }
}

export function createSharedStudioTools(): StudioToolDefinition[] {
  return [
    createStudioReadTool() as StudioToolDefinition,
    createStudioGlobTool() as StudioToolDefinition,
    createStudioGrepTool() as StudioToolDefinition,
    createStudioLsTool() as StudioToolDefinition,
    createStudioWriteTool() as StudioToolDefinition,
    createStudioEditTool() as StudioToolDefinition,
    createStudioApplyPatchTool() as StudioToolDefinition,
    createStudioQuestionTool() as StudioToolDefinition,
    createStudioTaskTool() as StudioToolDefinition,
    createStudioSkillTool() as StudioToolDefinition,
    createStudioStaticCheckTool() as StudioToolDefinition,
    createStudioAiReviewTool() as StudioToolDefinition,
  ]
}