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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
//! Tools module for AI Chat widget.
//!
//! This module provides specialized tool display components for rendering
//! different types of tool calls in the AI Chat interface.
//!
//! # Tool Components
//!
//! - [`InlineTool`]: Compact inline tool status display
//! - [`BlockTool`]: Expanded block-level tool display
//! - [`ToolBash`]: Bash command tool ($)
//! - [`ToolWrite`]: File write tool (←)
//! - [`ToolEdit`]: File edit tool (←)
//! - [`ToolRead`]: File read tool (→)
//! - [`ToolGlob`]: Glob pattern tool (✱)
//! - [`ToolGrep`]: Content search tool (✱)
//! - [`ToolList`]: Directory listing tool (→)
//! - [`ToolWebFetch`]: Web fetch tool (%)
//! - [`ToolWebSearch`]: Web search tool (◈)
//! - [`ToolCodeSearch`]: Code search tool (◇)
//! - [`ToolTask`]: Task/subagent tool (#)
//! - [`ToolApplyPatch`]: Patch application tool (%)
//! - [`ToolTodoWrite`]: Todo write tool (⚙)
//! - [`ToolQuestion`]: Question tool (→)
//! - [`ToolSkill`]: Skill invocation tool (→)
//! - [`GenericTool`]: Generic fallback tool (⚙)
//!
//! # Icons
//!
//! | Tool Type | Icon |
//! |-----------|------|
//! | Bash | $ |
//! | Write | ← |
//! | Edit | ← |
//! | Read | → |
//! | Glob | ✱ |
//! | Grep | ✱ |
//! | List | → |
//! | WebFetch | % |
//! | WebSearch | ◈ |
//! | CodeSearch| ◇ |
//! | Task | # |
//! | ApplyPatch| % |
//! | TodoWrite | ⚙ |
//! | Question | → |
//! | Skill | → |
//! | Generic | ⚙ |
// Re-export commonly used types
// Note: Some tool components have issues and need fixing
pub use BlockTool;
pub use InlineTool;
pub use ToolStatus;
// pub use generic_tool::GenericTool;
// pub use tool_apply_patch::{FilePatch, PatchOperation, PatchStats, ToolApplyPatch};
// pub use tool_bash::ToolBash;
// pub use tool_codesearch::ToolCodeSearch;
// pub use tool_edit::{Diagnostic, DiagnosticSeverity, DiffLine, DiffLineType, DiffMode, ToolEdit};
// pub use tool_glob::ToolGlob;
// pub use tool_grep::{GrepContext, ToolGrep};
// pub use tool_list::{DirectoryEntry, ToolList};
// pub use tool_question::ToolQuestion;
// pub use tool_skill::ToolSkill;
// pub use tool_task::{SubAgentToolCall, ToolTask};
// pub use tool_todo_write::{TodoItem, ToolTodoWrite};
// pub use tool_webfetch::ToolWebFetch;
// pub use tool_websearch::{SearchResult, ToolWebSearch};
// pub use tool_write::ToolWrite;
// Base components
// Specific tool implementations - temporarily disabled due to compilation issues
// mod generic_tool;
// mod tool_apply_patch;
// mod tool_bash;
// mod tool_codesearch;
// mod tool_edit;
// mod tool_glob;
// mod tool_grep;
// mod tool_list;
// mod tool_question;
// mod tool_skill;
// mod tool_task;
// mod tool_todo_write;
// mod tool_webfetch;
// mod tool_websearch;
// mod tool_write;