[Feature]: Bring-your-own web_search backend without a MiniMax account
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Feature
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- node.js, typescript
- Bereich
- backend-api-design, cli
Rechercherichtung
Start with packages/local-runtime/src/web-search/local-web-search-client.ts, packages/agent-tools/src/cloud/matrix-tools/tool-defs.ts, and the Matrix client files named in the issue to map how web_search is registered and called. Compare the custom REST response contract with the existing Matrix response handling and check how MCP tools are configured. Done means a configured custom backend returns search results without managed login, and the missing-login error explains its cause.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Product or interface
CLI - interactive TUI (also affects the Desktop app)
Use case and problem
I run MCode entirely on BYOK/custom providers (Ollama Cloud in my case) without using a MiniMax account. The built-in web_search tool is hardwired to the managed Matrix gateway (LocalWebSearchClient → callMatrixTool → POST {base}/mavis/api/v1/mcp/web_search; see packages/local-runtime/src/web-search/local-web-search-client.ts and packages/agent-tools/src/cloud/matrix-tools/tool-defs.ts).
Without a managed-login token, DesktopMatrixClient.buildHeaders throws before any request ("Matrix tools require a managed-login access token", packages/agent-tools/src/desktop/matrix-client.ts), and the tool result degrades to the opaque MATRIX_TOOL_REQUEST_FAILED: Matrix tool request failed. with no http_status in details (packages/agent-tools/src/cloud/matrix-tools/client.ts) — the cause is not diagnosable from the tool output.
There is no supported way to point the built-in web_search at my own search API. Project/profile MCP servers (.mcp.json) can add search tools but explicitly "leave built-in search unchanged" (docs/examples.md), so the failing built-in tool stays in the tool list and models keep calling it.
Desired behavior
Let users supply their own web_search backend without a MiniMax account. Any one of:
- Pluggable search provider config for the native tool, e.g. in
config.yaml:
webSearch:
provider: custom
baseURL: https://ollama.com/api/web_search
apiKey: ${OLLAMA_API_KEY}
with a minimal REST contract: request {query, max_results} → response {results: [{title, url, content}]} (the shape Ollama Cloud's web_search API and several other search APIs already use).
-
Or extend the existing escape hatch (
MATRIX_BASE_URL+MATRIX_TOKEN,packages/local-runtime/src/matrix/matrix-env.ts) to accept a simple search response shape instead of the full McpServicebase_respenvelope, and document the route. -
And/or a config switch that aliases the
web_searchtool binding to a configured MCP search tool, soweb_searchcalls route to my own server.
Acceptance: with no MiniMax login (empty auth store) and a custom backend configured, a turn calling web_search returns results from that backend; with no backend and no login, the error names the cause (e.g. "not signed in") instead of the generic MATRIX_TOOL_REQUEST_FAILED.
Platform
Multiple platforms
Alternatives and additional context
Working workarounds today, each of which leaves the built-in tool broken:
- a user skill wrapping
curl https://ollama.com/api/web_search(works, but models may still pick the built-in tool); - an MCP server in
.mcp.jsonwrapping a search API (docs/examples.md§5) — coexists rather than replaces; agents.default.features.webSearch: false(packages/config/src/agent-capabilities.ts) disables the built-in tool, but then theweb_searchtool name disappears entirely instead of being backed by my own API;- signing in to a MiniMax account fixes the built-in tool (verified before/after login today), but I want to run MCode without a MiniMax account, the same way BYOK models do not require one.
Independent of this feature: consider putting the failure cause (missing token / HTTP status / timeout) into details so MATRIX_TOOL_REQUEST_FAILED is diagnosable.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 2.2k
- Forks
- 281
- Ø Merge
- 14 Std. 26 Min.
- Gemergte PRs (30 T.)
- 38
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus MiniMax-AI/minimax-code
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
MiniMax-AI/minimax-code#556 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
MiniMax-AI/minimax-code#507 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug needs-triage tui
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
MiniMax-AI/minimax-code#481 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug cli documentation needs-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
MiniMax-AI/minimax-code#299 · 3 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
[Feature]: Add loop / repetition detection to stop runaway model output (e.g., endless emoji stream)Offenenhancement needs-triage tui
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 45/100
MiniMax-AI/minimax-code#592 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in MiniMax-AI/minimax-code
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
Open-Earth-Foundation/CityCatalyst#3399 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
userReport
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 72/100
nkprasad12/morcus-net#631 ·
Maintainer antworten meist innerhalb von 1 Tag
-
fix(app): fail closed if GetGeneralSetting fails during initializationEvtl. vergeben @kalavt hat das heute übernommen. Offenbug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
nekko-labs/nekko-agent#1756 ·
Maintainer antworten meist innerhalb von 1 Tag
-
needs-area-label
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
Maintainer antworten meist innerhalb von 2 Tagen