Skip to content

Commit 5df9c98

Browse files
committed
fix: 工具来源说明改为单列布局避免拥挤
1 parent 28ec5ec commit 5df9c98

1 file changed

Lines changed: 39 additions & 68 deletions

File tree

src/pages/ToolReference.tsx

Lines changed: 39 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -163,83 +163,54 @@ export function ToolReference() {
163163
Gemini CLI 的工具系统由三种来源组成,提供了从核心功能到动态扩展的完整能力:
164164
</p>
165165

166-
<div className="grid grid-cols-1 md:grid-cols-3 gap-4">
167-
<HighlightBox title="Core 注册工具(默认 + 条件)" variant="blue">
168-
<div className="text-sm space-y-2">
169-
<p className="text-body font-semibold">来源: packages/core/src/config/config.ts#createToolRegistry()</p>
170-
<p className="text-body text-xs mb-2">
171-
这是“默认会注册到 ToolRegistry 的工具实现”。实际启用还会受 <code className="text-heading">coreTools</code>
172-
<code className="text-heading">tools.allowed</code>/<code className="text-heading">--allowed-tools</code>、平台能力(ripgrep)、agents 开关等影响。
173-
</p>
174-
<div className="grid grid-cols-2 gap-x-2 gap-y-1 text-xs">
175-
<div className="text-body"><code className="text-heading">LSTool</code> - list_directory</div>
176-
<div className="text-body"><code className="text-heading">ReadFileTool</code> - read_file</div>
177-
<div className="text-body"><code className="text-heading">GrepTool</code> - search_file_content</div>
178-
<div className="text-body"><code className="text-heading">RipGrepTool</code> - search_file_content*</div>
179-
<div className="text-body"><code className="text-heading">GlobTool</code> - glob</div>
180-
<div className="text-body"><code className="text-heading">SmartEditTool</code> - replace</div>
181-
<div className="text-body"><code className="text-heading">WriteFileTool</code> - write_file</div>
182-
<div className="text-body"><code className="text-heading">ShellTool</code> - run_shell_command</div>
183-
<div className="text-body"><code className="text-heading">WebFetchTool</code> - web_fetch</div>
184-
<div className="text-body"><code className="text-heading">WebSearchTool</code> - google_web_search</div>
185-
<div className="text-body"><code className="text-heading">MemoryTool</code> - save_memory</div>
186-
<div className="text-body"><code className="text-heading">ActivateSkillTool</code> - activate_skill</div>
187-
<div className="text-body"><code className="text-heading">WriteTodosTool</code> - write_todos†</div>
188-
<div className="text-body"><code className="text-heading">DelegateToAgentTool</code> - delegate_to_agent‡</div>
189-
</div>
190-
<p className="text-heading text-xs mt-2">
191-
* RipGrepTool/GrepTool 在运行时二选一(tool name 同为 <code>search_file_content</code>)。† 仅在 useWriteTodos 开启时注册。‡ 仅在 agents 启用且 <code>tools.allowed</code>/<code>--allowed-tools</code> 允许时注册。
166+
<div className=”space-y-6>
167+
{/* Core 工具 */}
168+
<div>
169+
<h4 className=”text-heading font-semibold mb-2>Core 注册工具</h4>
170+
<p className=”text-body text-sm mb-3>
171+
来源: <code>config.ts#createToolRegistry()</code>。默认注册到 ToolRegistry,实际启用受 <code>coreTools</code><code>tools.allowed</code> 等配置影响。
192172
</p>
193-
<p className="text-body text-xs mt-2">
194-
备注:仓库中存在 <code className="text-heading">ReadManyFilesTool</code> 实现与 <code className="text-heading">read_many_files</code> 名称常量,
195-
但默认 createToolRegistry() 当前未注册它(不同版本可能调整)。
173+
<div className=”grid grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-x-4 gap-y-1 text-sm text-body mb-3>
174+
<div><code className=”text-heading text-xs>LSTool</code> list_directory</div>
175+
<div><code className=”text-heading text-xs>ReadFileTool</code> read_file</div>
176+
<div><code className=”text-heading text-xs>GrepTool</code> search_file_content</div>
177+
<div><code className=”text-heading text-xs>RipGrepTool</code> search_file_content*</div>
178+
<div><code className=”text-heading text-xs>GlobTool</code> glob</div>
179+
<div><code className=”text-heading text-xs>SmartEditTool</code> replace</div>
180+
<div><code className=”text-heading text-xs>WriteFileTool</code> write_file</div>
181+
<div><code className=”text-heading text-xs>ShellTool</code> run_shell_command</div>
182+
<div><code className=”text-heading text-xs>WebFetchTool</code> web_fetch</div>
183+
<div><code className=”text-heading text-xs>WebSearchTool</code> google_web_search</div>
184+
<div><code className=”text-heading text-xs>MemoryTool</code> save_memory</div>
185+
<div><code className=”text-heading text-xs>ActivateSkillTool</code> activate_skill</div>
186+
<div><code className=”text-heading text-xs>WriteTodosTool</code> write_todos</div>
187+
<div><code className=”text-heading text-xs>DelegateToAgentTool</code> delegate_to_agent</div>
188+
</div>
189+
<p className=”text-dim text-xs>
190+
* RipGrepTool/GrepTool 运行时二选一。WriteTodosTool 仅在开启时注册。DelegateToAgentTool 仅在 agents 启用时注册。
196191
</p>
197192
</div>
198-
</HighlightBox>
199193

200-
<HighlightBox title="tool-names.ts 常量" variant="green">
201-
<div className="text-sm space-y-2">
202-
<p className="text-body font-semibold">来源: tool-names.ts</p>
203-
<p className="text-body text-xs mb-2">
204-
核心工具名称常量(非完整工具列表)
205-
</p>
206-
<div className="grid grid-cols-2 gap-x-2 gap-y-1 text-xs">
207-
<div className="text-body"><code className="text-heading">glob</code></div>
208-
<div className="text-body"><code className="text-heading">write_todos</code></div>
209-
<div className="text-body"><code className="text-heading">write_file</code></div>
210-
<div className="text-body"><code className="text-heading">google_web_search</code></div>
211-
<div className="text-body"><code className="text-heading">web_fetch</code></div>
212-
<div className="text-body"><code className="text-heading">replace</code></div>
213-
<div className="text-body"><code className="text-heading">run_shell_command</code></div>
214-
<div className="text-body"><code className="text-heading">search_file_content</code></div>
215-
<div className="text-body"><code className="text-heading">read_many_files</code></div>
216-
<div className="text-body"><code className="text-heading">read_file</code></div>
217-
<div className="text-body"><code className="text-heading">list_directory</code></div>
218-
<div className="text-body"><code className="text-heading">save_memory</code></div>
219-
<div className="text-body"><code className="text-heading">activate_skill</code></div>
220-
<div className="text-body"><code className="text-heading">delegate_to_agent</code></div>
221-
</div>
222-
<p className="text-heading text-xs mt-2">
223-
共 14 个内置工具 (packages/core/src/tools/tool-names.ts)
194+
{/* tool-names.ts */}
195+
<div>
196+
<h4 className=”text-heading font-semibold mb-2>tool-names.ts 常量</h4>
197+
<p className=”text-body text-sm mb-3>
198+
来源: <code>packages/core/src/tools/tool-names.ts</code>,共 14 个核心工具名称常量。
224199
</p>
200+
<div className=”flex flex-wrap gap-1.5>
201+
{['glob', 'write_file', 'web_fetch', 'run_shell_command', 'read_many_files', 'list_directory', 'activate_skill', 'write_todos', 'google_web_search', 'replace', 'search_file_content', 'read_file', 'save_memory', 'delegate_to_agent'].map(name => (
202+
<code key={name} className=”text-xs px-1.5 py-0.5 bg-surface border border-edge rounded”>{name}</code>
203+
))}
204+
</div>
225205
</div>
226-
</HighlightBox>
227206

228-
<HighlightBox title="动态工具" variant="purple">
229-
<div className="text-sm space-y-2">
230-
<p className="text-body font-semibold">MCP + Extensions</p>
231-
<p className="text-body">
232-
通过 MCP 协议和扩展系统动态注册的工具
233-
</p>
234-
<ul className="space-y-1 text-body text-xs">
235-
<li><strong>MCP 工具</strong> - 通过 Model Context Protocol 动态注册</li>
236-
<li><strong>Discovered 工具</strong> - 运行时发现的扩展工具</li>
237-
</ul>
238-
<p className="text-heading text-xs mt-2">
239-
这些工具在运行时根据配置和环境动态加载
207+
{/* 动态工具 */}
208+
<div>
209+
<h4 className=”text-heading font-semibold mb-2>动态工具(MCP + Extensions)</h4>
210+
<p className=”text-body text-sm>
211+
通过 MCP 协议和扩展系统在运行时动态注册。包括 <strong>MCP 工具</strong>(Model Context Protocol)和 <strong>Discovered 工具</strong>(运行时发现的扩展),根据配置和环境动态加载。
240212
</p>
241213
</div>
242-
</HighlightBox>
243214
</div>
244215

245216
<div className="bg-elevated/20 border border-edge rounded-lg p-4">

0 commit comments

Comments
 (0)