@@ -12,20 +12,14 @@ import getFolderSize from "get-folder-size"
1212import { serializeError } from "serialize-error"
1313import * as vscode from "vscode"
1414
15+ // schemas
1516import { TokenUsage } from "../schemas"
17+
18+ // api
1619import { ApiHandler , buildApiHandler } from "../api"
1720import { ApiStream } from "../api/transform/stream"
18- import { DIFF_VIEW_URI_SCHEME , DiffViewProvider } from "../integrations/editor/DiffViewProvider"
19- import { CheckpointServiceOptions , RepoPerTaskCheckpointService } from "../services/checkpoints"
20- import { findToolName , formatContentBlockToMarkdown } from "../integrations/misc/export-markdown"
21- import { fetchInstructionsTool } from "./tools/fetchInstructionsTool"
22- import { listFilesTool } from "./tools/listFilesTool"
23- import { readFileTool } from "./tools/readFileTool"
24- import { ExitCodeDetails , TerminalProcess } from "../integrations/terminal/TerminalProcess"
25- import { Terminal } from "../integrations/terminal/Terminal"
26- import { TerminalRegistry } from "../integrations/terminal/TerminalRegistry"
27- import { UrlContentFetcher } from "../services/browser/UrlContentFetcher"
28- import { listFiles } from "../services/glob/list-files"
21+
22+ // shared
2923import { ApiConfiguration } from "../shared/api"
3024import { findLastIndex } from "../shared/array"
3125import { combineApiRequests } from "../shared/combineApiRequests"
@@ -42,26 +36,35 @@ import { getApiMetrics } from "../shared/getApiMetrics"
4236import { HistoryItem } from "../shared/HistoryItem"
4337import { ClineAskResponse } from "../shared/WebviewMessage"
4438import { GlobalFileNames } from "../shared/globalFileNames"
45- import { defaultModeSlug , getModeBySlug , getFullModeDetails } from "../shared/modes"
39+ import { defaultModeSlug , getModeBySlug , getFullModeDetails , isToolAllowedForMode } from "../shared/modes"
4640import { EXPERIMENT_IDS , experiments as Experiments , ExperimentId } from "../shared/experiments"
47- import { calculateApiCostAnthropic } from "../utils/cost"
48- import { fileExistsAtPath } from "../utils/fs"
49- import { arePathsEqual } from "../utils/path"
50- import { parseMentions } from "./mentions"
51- import { FileContextTracker } from "./context-tracking/FileContextTracker"
52- import { RooIgnoreController } from "./ignore/RooIgnoreController"
53- import { AssistantMessageContent , parseAssistantMessage , ToolParamName , ToolUseName } from "./assistant-message"
54- import { formatResponse } from "./prompts/responses"
55- import { SYSTEM_PROMPT } from "./prompts/system"
56- import { truncateConversationIfNeeded } from "./sliding-window"
57- import { ClineProvider } from "./webview/ClineProvider"
58- import { BrowserSession } from "../services/browser/BrowserSession"
5941import { formatLanguage } from "../shared/language"
42+ import { ToolParamName , ToolName , ToolResponse } from "../shared/tools"
43+
44+ // services
45+ import { UrlContentFetcher } from "../services/browser/UrlContentFetcher"
46+ import { listFiles } from "../services/glob/list-files"
47+ import { BrowserSession } from "../services/browser/BrowserSession"
6048import { McpHub } from "../services/mcp/McpHub"
61- import { DiffStrategy , getDiffStrategy } from "./diff/DiffStrategy"
6249import { telemetryService } from "../services/telemetry/TelemetryService"
63- import { validateToolUse , isToolAllowedForMode , ToolName } from "./mode-validator"
64- import { getWorkspacePath } from "../utils/path"
50+ import { CheckpointServiceOptions , RepoPerTaskCheckpointService } from "../services/checkpoints"
51+
52+ // integrations
53+ import { DIFF_VIEW_URI_SCHEME , DiffViewProvider } from "../integrations/editor/DiffViewProvider"
54+ import { findToolName , formatContentBlockToMarkdown } from "../integrations/misc/export-markdown"
55+ import { ExitCodeDetails , TerminalProcess } from "../integrations/terminal/TerminalProcess"
56+ import { Terminal } from "../integrations/terminal/Terminal"
57+ import { TerminalRegistry } from "../integrations/terminal/TerminalRegistry"
58+
59+ // utils
60+ import { calculateApiCostAnthropic } from "../utils/cost"
61+ import { fileExistsAtPath } from "../utils/fs"
62+ import { arePathsEqual , getWorkspacePath } from "../utils/path"
63+
64+ // tools
65+ import { fetchInstructionsTool } from "./tools/fetchInstructionsTool"
66+ import { listFilesTool } from "./tools/listFilesTool"
67+ import { readFileTool } from "./tools/readFileTool"
6568import { writeToFileTool } from "./tools/writeToFileTool"
6669import { applyDiffTool } from "./tools/applyDiffTool"
6770import { insertContentTool } from "./tools/insertContentTool"
@@ -78,7 +81,20 @@ import { attemptCompletionTool } from "./tools/attemptCompletionTool"
7881import { newTaskTool } from "./tools/newTaskTool"
7982import { appendToFileTool } from "./tools/appendToFileTool"
8083
81- export type ToolResponse = string | Array < Anthropic . TextBlockParam | Anthropic . ImageBlockParam >
84+ // prompts
85+ import { formatResponse } from "./prompts/responses"
86+ import { SYSTEM_PROMPT } from "./prompts/system"
87+
88+ // ... everything else
89+ import { parseMentions } from "./mentions"
90+ import { FileContextTracker } from "./context-tracking/FileContextTracker"
91+ import { RooIgnoreController } from "./ignore/RooIgnoreController"
92+ import { type AssistantMessageContent , parseAssistantMessage } from "./assistant-message"
93+ import { truncateConversationIfNeeded } from "./sliding-window"
94+ import { ClineProvider } from "./webview/ClineProvider"
95+ import { DiffStrategy , getDiffStrategy } from "./diff/DiffStrategy"
96+ import { validateToolUse } from "./mode-validator"
97+
8298type UserContent = Array < Anthropic . Messages . ContentBlockParam >
8399
84100export type ClineEvents = {
@@ -573,7 +589,7 @@ export class Cline extends EventEmitter<ClineEvents> {
573589 }
574590 }
575591
576- async sayAndCreateMissingParamError ( toolName : ToolUseName , paramName : string , relPath ?: string ) {
592+ async sayAndCreateMissingParamError ( toolName : ToolName , paramName : string , relPath ?: string ) {
577593 await this . say (
578594 "error" ,
579595 `Roo tried to use ${ toolName } ${
0 commit comments