ui: Refactor Built-In Tools naming (Server/Browser) - #27271
Merged
Conversation
allozaur
marked this pull request as ready for review
August 17, 2026 19:42
ngxson
approved these changes
Aug 17, 2026
ServeurpersoCom
approved these changes
Aug 17, 2026
ServeurpersoCom
force-pushed
the
allozaur/refactor/built-in-tools
branch
from
August 17, 2026 19:51
d47a694 to
fbd0dcb
Compare
Contributor
There was a problem hiding this comment.
Pull request overview
Warning
Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.
Refactors the UI and server naming around “built-in tools” to a clearer separation of Server vs Browser tool categories, updating identifiers, labels, and UI metadata plumbing accordingly.
Changes:
- Renamed tool source identifiers (
builtin/frontend→server/browser) and updated UI group labels/strings. - Updated tool name enum entries to
SERVER_*/BROWSER_*variants and adjusted call sites/tests. - Replaced
getBuiltinToolUi+BUILTIN_TOOL_UIwith a unifiedgetToolUi+TOOL_UIregistry.
Reviewed changes
Copilot reviewed 47 out of 49 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tools/ui/src/lib/stores/tools.svelte.ts | Renames internal tool lists/keys/sources from builtin/frontend to server/browser and fetches server tools from /tools. |
| tools/ui/src/lib/enums/tools.enums.ts | Updates ToolSource values and introduces prefixed BuiltInTool entries for server vs browser tools. |
| tools/ui/src/lib/constants/tool-ui.constants.ts | Adds unified UI metadata registry (TOOL_UI) for server and browser tools. |
| tools/ui/src/lib/utils/tool-ui.ts | Adds unified helper getToolUi() used by tool-call chrome & settings UI. |
| tools/server/server-tools.h | Changes tool type() string from "builtin" to "server" (affects /tools wire payload). |
| tools/server/README*.md | Updates documentation terminology from built-in → server tools. |
| tools/ui/tests/* | Updates tests to use new tool names and new key prefix (server:). |
Suppressed comments (3)
tools/ui/src/lib/stores/tools.svelte.ts:1
- If
/toolsreturns both server and MCP tools (as described intools/server/README-dev.md), this code will incorrectly treat MCP tools as server tools (loading them into_serverTools, marking cwd awareness, and later generatingserver:keys). FiltertoolInfostoinfo.type === ToolSource.SERVERbefore populating_serverTools/_cwdAwareTools, and leave MCP tools tomcpStoreto avoid duplicates/misclassification.
tools/ui/src/lib/stores/tools.svelte.ts:1 - This changes the persisted/stable key format from
builtin:/frontend:toserver:/browser:. Existing users’ localStorage entries (disabled tool keys and any permission keys stored elsewhere) will no longer match, effectively re-enabling tools/resetting selections after upgrade. Consider adding a small migration in the localStorage load path (e.g., rewritebuiltin:→server:andfrontend:→browser:when reading the disabled set) to preserve user settings across versions.
tools/ui/src/lib/utils/tool-ui.ts:1 - Casting
TOOL_UItoRecord<string, ToolUiEntry>weakens type safety and can hide mismatches between tool names and the registry keys. Prefer narrowingtoolNameto the actual key type (e.g., accepttoolName: BuiltInTool | undefined, or use a runtimeincheck with a typed helper) so missing/renamed tool IDs are caught during refactors.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
gabe-l-hart
added a commit
to gabe-l-hart/llama.cpp
that referenced
this pull request
Aug 17, 2026
* origin/master: (86 commits) ui: enforce alphabetical enum member ordering (ggml-org#27272) ui: Refactor Built-In Tools naming (Server/Browser) (ggml-org#27271) ci: more optimizations (ggml-org#26983) doc: document MCP stdio servers and CORS defaults in the server README [no release] [no ci] (ggml-org#26847) server: save processed mtmd chunks as placeholder (ggml-org#27278) mtmd: use sha256 for input hashing (ggml-org#27274) vocab : support integer tokenizer scores (ggml-org#27260) mtmd : skip thumbnail for non-tiled LFM2 images (ggml-org#27246) cuda : skip UMA override for HIP builds (ggml-org#27083) vendor: move hash to vendor (ggml-org#27262) ci : push release tag explicitly in release.yml (ggml-org#27261) ui: move get_datetime tool to frontend (ggml-org#27255) ci : reduce builds in build-xcframework.sh (ggml-org#27252) model: support speculators-format checkpoints for DSpark (ggml-org#26275) ui: add browser get_info tool (ggml-org#27251) ci : restore release.yml check during make-release.yml (ggml-org#27247) mtmd: harden preprocessor_granite (ggml-org#27235) ci : allow make-release to target a specific commit (ggml-org#27234) ci : make release workflows use a deploy key (ggml-org#27229) convert: add @ModelBase.example (ggml-org#27208) ...
brittlewis12
pushed a commit
to brittlewis12/llama.cpp
that referenced
this pull request
Aug 17, 2026
* server: rename built-in tools to server tools * ui: rename built-in tools to server/browser tools
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
Simple naming refactor introducing separation of built-in tools to Server and Browser categories.
Requirements