Files
2026-09-17 17:35:03 +00:00

25 lines
44 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
3:I[4707,[],""]
6:I[36423,[],""]
8:I[78400,["3185","static/chunks/app/layout-38b548b4f4d27f80.js"],"FontLoader"]
4:["lang","de","d"]
5:["mdxPath","core/tools-api","oc"]
0:["0y8u-WGJo2VFWAF7bkrdx",[[["",{"children":[["lang","de","d"],{"children":[["mdxPath","core/tools-api","oc"],{"children":["__PAGE__?{\"lang\":\"de\",\"mdxPath\":[\"core\",\"tools-api\"]}",{}]}]}]},"$undefined","$undefined",true],["",{"children":[["lang","de","d"],{"children":[["mdxPath","core/tools-api","oc"],{"children":["__PAGE__",{},[["$L1","$L2",[["$","link","0",{"rel":"stylesheet","href":"/qwen-code-docs/_next/static/css/04d76539cc2c4ebd.css","precedence":"next","crossOrigin":"$undefined"}]]],null],null]},[null,["$","$L3",null,{"parallelRouterKey":"children","segmentPath":["children","$4","children","$5","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined"}]],null]},[[null,"$L7"],null],null]},[[[["$","link","0",{"rel":"stylesheet","href":"/qwen-code-docs/_next/static/css/7fba7395046b8eaa.css","precedence":"next","crossOrigin":"$undefined"}]],["$","html",null,{"suppressHydrationWarning":true,"children":[["$","head",null,{"children":["$undefined",["$","style",null,{"children":":root {\n --nextra-primary-hue: 248deg;\n --nextra-primary-saturation: 74%;\n --nextra-primary-lightness: 45%;\n --nextra-bg: 250,250,250;\n --nextra-content-width: 90rem;\n}\n.dark {\n --nextra-primary-hue: 248deg;\n --nextra-primary-saturation: 74%;\n --nextra-primary-lightness: 55%;\n --nextra-bg: 17,17,17;\n}\n::selection {\n background: hsla(var(--nextra-primary-hue),var(--nextra-primary-saturation),var(--nextra-primary-lightness),.3);\n}\nhtml {\n background: rgb(var(--nextra-bg));\n}"}],["$","meta",null,{"name":"theme-color","media":"(prefers-color-scheme: light)","content":"rgb(250,250,250)"}],["$","meta",null,{"name":"theme-color","media":"(prefers-color-scheme: dark)","content":"rgb(17,17,17)"}],"$undefined"]}],["$","body",null,{"children":[["$","$L8",null,{}],["$","$L3",null,{"parallelRouterKey":"children","segmentPath":["children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":"404"}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],"notFoundStyles":[]}]]}]]}]],null],null],["$L9",null]]]]
a:I[54108,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"ThemeConfigProvider"]
b:I[16016,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"LastUpdated"]
c:I[30763,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"Search"]
d:I[25922,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"ThemeProvider"]
e:I[94328,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"SkipNavLink"]
f:I[17691,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"ConfigProvider"]
10:I[72972,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],""]
11:I[88212,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"ClientNavbar"]
13:I[32594,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"LanguageDropdown"]
14:I[57191,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"MobileNav"]
15:I[18960,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"TOCProvider"]
16:I[57191,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"Sidebar"]
17:I[98270,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"ClientWrapper"]
18:I[56099,["5501","static/chunks/c16f53c3-b998f97655e65347.js","1105","static/chunks/1105-e07e82095c5c7b4a.js","5524","static/chunks/5524-d228bcaedae4ecb3.js","2770","static/chunks/2770-e894e62890be5e00.js","1084","static/chunks/app/%5Blang%5D/layout-11fe9b7075b678bf.js"],"HeadingAnchor"]
12:T481,M12 3C7.0275 3 3 7.12937 3 12.2276C3 16.3109 5.57625 19.7597 9.15374 20.9824C9.60374 21.0631 9.77249 20.7863 9.77249 20.5441C9.77249 20.3249 9.76125 19.5982 9.76125 18.8254C7.5 19.2522 6.915 18.2602 6.735 17.7412C6.63375 17.4759 6.19499 16.6569 5.8125 16.4378C5.4975 16.2647 5.0475 15.838 5.80124 15.8264C6.51 15.8149 7.01625 16.4954 7.18499 16.7723C7.99499 18.1679 9.28875 17.7758 9.80625 17.5335C9.885 16.9337 10.1212 16.53 10.38 16.2993C8.3775 16.0687 6.285 15.2728 6.285 11.7432C6.285 10.7397 6.63375 9.9092 7.20749 9.26326C7.1175 9.03257 6.8025 8.08674 7.2975 6.81794C7.2975 6.81794 8.05125 6.57571 9.77249 7.76377C10.4925 7.55615 11.2575 7.45234 12.0225 7.45234C12.7875 7.45234 13.5525 7.55615 14.2725 7.76377C15.9937 6.56418 16.7475 6.81794 16.7475 6.81794C17.2424 8.08674 16.9275 9.03257 16.8375 9.26326C17.4113 9.9092 17.76 10.7281 17.76 11.7432C17.76 15.2843 15.6563 16.0687 13.6537 16.2993C13.98 16.5877 14.2613 17.1414 14.2613 18.0065C14.2613 19.2407 14.25 20.2326 14.25 20.5441C14.25 20.7863 14.4188 21.0746 14.8688 20.9824C16.6554 20.364 18.2079 19.1866 19.3078 17.6162C20.4077 16.0457 20.9995 14.1611 21 12.2276C21 7.12937 16.9725 3 12 3Z7:["$","$La",null,{"value":{"children":"$undefined","darkMode":true,"docsRepositoryBase":"https://github.com/QwenLM/qwen-code/blob/main/docs","editLink":"Edit this page","feedback":{"content":"Question? Give us feedback","labels":"feedback"},"i18n":[{"locale":"en","name":"English"},{"locale":"zh","name":"中文"},{"locale":"de","name":"Deutsch"},{"locale":"fr","name":"Français"},{"locale":"ru","name":"Русский"},{"locale":"ja","name":"日本語"}],"lastUpdated":["$","$Lb",null,{}],"navigation":{"next":true,"prev":true},"search":["$","$Lc",null,{}],"sidebar":{"defaultMenuCollapseLevel":1,"defaultOpen":true,"toggleButton":true,"autoCollapse":true},"themeSwitch":{"dark":"Dark","light":"Light","system":"System"},"toc":{"backToTop":"Scroll to top","float":true,"title":"On This Page"}},"children":["$","$Ld",null,{"attribute":"class","defaultTheme":"light","disableTransitionOnChange":true,"storageKey":"theme","children":[["$","$Le",null,{}],"$undefined",["$","$Lf",null,{"pageMap":[{"data":{"index":{"title":"Willkommen zur Qwen Code Dokumentation"},"deployment":{"title":"Ausführung & Bereitstellung"},"architecture":{"title":"Architektur-Übersicht"},"cli":{"title":"CLI Nutzungsanleitung"},"core":{"title":"Kern-Details"},"tools":{"title":"Tools Sammlung"},"checkpointing":{"title":"Checkpointing-Funktion"},"extension":{"title":"Erweiterungs-Entwicklung"},"ide-integration":{"title":"IDE Integration"},"telemetry":{"title":"Observabilität"},"examples":{"title":"Beispielcode"},"npm":{"title":"Paket-Management"},"gemini-ignore":{"title":"Ignorier-Datei Konfiguration"},"integration-tests":{"title":"Integrationstests"},"keyboard-shortcuts":{"title":"Tastaturkürzel"},"sandbox":{"title":"Sandbox-Mechanismus"},"issue-and-pr-automation":{"title":"Automatisierte Behandlung"},"troubleshooting":{"title":"Fehlerbehebung"},"tos-privacy":{"title":"Nutzungsbedingungen & Datenschutz"},"Uninstall":{"title":"Deinstallations-Anleitung"}}},{"name":"index","route":"/de","frontMatter":{"title":"Willkommen zur Qwen Code Dokumentation","filePath":"content/de/index.md","timestamp":1789666354000},"title":"Willkommen zur Qwen Code Dokumentation"},{"name":"deployment","route":"/de/deployment","frontMatter":{"title":"Qwen Code Ausführung und Deployment","filePath":"content/de/deployment.md","timestamp":1789666354000},"title":"Ausführung & Bereitstellung"},{"name":"architecture","route":"/de/architecture","frontMatter":{"title":"Qwen Code Architektur-Überblick","filePath":"content/de/architecture.md","timestamp":1789666354000},"title":"Architektur-Übersicht"},{"name":"cli","route":"/de/cli","children":[{"data":{"index":{"title":"CLI Übersicht"},"commands":{"title":"Befehls-Referenz"},"configuration":{"title":"Konfigurationsanleitung"},"authentication":{"title":"Authentifizierungs-Setup"},"openai-auth":{"title":"OpenAI Authentifizierung"},"token-caching":{"title":"Token Caching"},"themes":{"title":"Theme-Konfiguration"},"tutorials":{"title":"Nutzungs-Tutorials"}}},{"name":"index","route":"/de/cli","frontMatter":{"title":"Qwen Code CLI","filePath":"content/de/cli/index.md","timestamp":1789666354000},"title":"CLI Übersicht"},{"name":"commands","route":"/de/cli/commands","frontMatter":{"title":"CLI Commands","filePath":"content/de/cli/commands.md","timestamp":1789666354000},"title":"Befehls-Referenz"},{"name":"configuration","route":"/de/cli/configuration","frontMatter":{"title":"Qwen Code Konfiguration","filePath":"content/de/cli/configuration.md","timestamp":1789666354000},"title":"Konfigurationsanleitung"},{"name":"authentication","route":"/de/cli/authentication","frontMatter":{"title":"Authentifizierung einrichten","filePath":"content/de/cli/authentication.md","timestamp":1789666354000},"title":"Authentifizierungs-Setup"},{"name":"openai-auth","route":"/de/cli/openai-auth","frontMatter":{"title":"OpenAI Authentifizierung","filePath":"content/de/cli/openai-auth.md","timestamp":1789666354000},"title":"OpenAI Authentifizierung"},{"name":"token-caching","route":"/de/cli/token-caching","frontMatter":{"title":"Token Caching und Kostenoptimierung","filePath":"content/de/cli/token-caching.md","timestamp":1789666354000},"title":"Token Caching"},{"name":"themes","route":"/de/cli/themes","frontMatter":{"title":"Themes","filePath":"content/de/cli/themes.md","timestamp":1789666354000},"title":"Theme-Konfiguration"},{"name":"tutorials","route":"/de/cli/tutorials","frontMatter":{"title":"Tutorials","filePath":"content/de/cli/tutorials.md","timestamp":1789666354000},"title":"Nutzungs-Tutorials"},{"name":"welcome-back","route":"/de/cli/welcome-back","frontMatter":{"title":"Welcome Back Feature","filePath":"content/de/cli/welcome-back.md","timestamp":1789666354000},"title":"Welcome Back Feature"}],"title":"CLI Nutzungsanleitung"},{"name":"core","route":"/de/core","children":[{"data":{"index":{"title":"Kern-Übersicht"},"tools-api":{"title":"Tools API"},"memport":{"title":"Memory Import Processor"}}},{"name":"index","route":"/de/core","frontMatter":{"title":"Qwen Code Core","filePath":"content/de/core/index.md","timestamp":1789666354000},"title":"Kern-Übersicht"},{"name":"tools-api","route":"/de/core/tools-api","frontMatter":{"title":"Qwen Code Core: Tools API","filePath":"content/de/core/tools-api.md","timestamp":1789666354000},"title":"Tools API"},{"name":"memport","route":"/de/core/memport","frontMatter":{"title":"Memory Import Processor","filePath":"content/de/core/memport.md","timestamp":1789666354000},"title":"Memory Import Processor"}],"title":"Kern-Details"},{"name":"tools","route":"/de/tools","children":[{"data":{"index":{"title":"Tools Übersicht"},"file-system":{"title":"Dateisystem-Tools"},"multi-file":{"title":"Multi-Datei Lese-Tools"},"shell":{"title":"Shell Tools"},"web-fetch":{"title":"Web Fetch Tools"},"web-search":{"title":"Web Such-Tools"},"memory":{"title":"Memory Tools"},"todo-write":{"title":"Todo Write Tool"},"mcp-server":{"title":"MCP Server"}}},{"name":"index","route":"/de/tools","frontMatter":{"title":"Qwen Code Tools","filePath":"content/de/tools/index.md","timestamp":1789666354000},"title":"Tools Übersicht"},{"name":"file-system","route":"/de/tools/file-system","frontMatter":{"title":"Qwen Code Dateisystem-Tools","filePath":"content/de/tools/file-system.md","timestamp":1789666354000},"title":"Dateisystem-Tools"},{"name":"multi-file","route":"/de/tools/multi-file","frontMatter":{"title":"Multi File Read Tool (read_many_files)","filePath":"content/de/tools/multi-file.md","timestamp":1789666354000},"title":"Multi-Datei Lese-Tools"},{"name":"shell","route":"/de/tools/shell","frontMatter":{"title":"Shell Tool (run_shell_command)","filePath":"content/de/tools/shell.md","timestamp":1789666354000},"title":"Shell Tools"},{"name":"web-fetch","route":"/de/tools/web-fetch","frontMatter":{"title":"Web Fetch Tool (web_fetch)","filePath":"content/de/tools/web-fetch.md","timestamp":1789666354000},"title":"Web Fetch Tools"},{"name":"web-search","route":"/de/tools/web-search","frontMatter":{"title":"Web Search Tool (web_search)","filePath":"content/de/tools/web-search.md","timestamp":1789666354000},"title":"Web Such-Tools"},{"name":"memory","route":"/de/tools/memory","frontMatter":{"title":"Memory Tool (save_memory)","filePath":"content/de/tools/memory.md","timestamp":1789666354000},"title":"Memory Tools"},{"name":"todo-write","route":"/de/tools/todo-write","frontMatter":{"title":"Todo Write Tool (todo_write)","filePath":"content/de/tools/todo-write.md","timestamp":1789666354000},"title":"Todo Write Tool"},{"name":"mcp-server","route":"/de/tools/mcp-server","frontMatter":{"title":"MCP-Server mit Qwen Code","filePath":"content/de/tools/mcp-server.md","timestamp":1789666354000},"title":"MCP Server"}],"title":"Tools Sammlung"},{"name":"checkpointing","route":"/de/checkpointing","frontMatter":{"title":"Checkpointing","filePath":"content/de/checkpointing.md","timestamp":1789666354000},"title":"Checkpointing-Funktion"},{"name":"extension","route":"/de/extension","frontMatter":{"title":"Qwen Code Extensions","filePath":"content/de/extension.md","timestamp":1789666354000},"title":"Erweiterungs-Entwicklung"},{"name":"ide-integration","route":"/de/ide-integration","frontMatter":{"title":"IDE-Integration","filePath":"content/de/ide-integration.md","timestamp":1789666354000},"title":"IDE Integration"},{"name":"telemetry","route":"/de/telemetry","frontMatter":{"title":"Qwen Code Observability Guide","filePath":"content/de/telemetry.md","timestamp":1789666354000},"title":"Observabilität"},{"name":"examples","route":"/de/examples","children":[{"data":{"proxy-script":{"title":"Proxy-Script Beispiel"}}},{"name":"proxy-script","route":"/de/examples/proxy-script","frontMatter":{"title":"Beispiel-Proxy-Script","filePath":"content/de/examples/proxy-script.md","timestamp":1789666354000},"title":"Proxy-Script Beispiel"}],"title":"Beispielcode"},{"name":"npm","route":"/de/npm","frontMatter":{"title":"Package Overview","filePath":"content/de/npm.md","timestamp":1789666354000},"title":"Paket-Management"},{"name":"gemini-ignore","route":"/de/gemini-ignore","frontMatter":{"title":"Dateien ignorieren","filePath":"content/de/gemini-ignore.md","timestamp":1789666354000},"title":"Ignorier-Datei Konfiguration"},{"name":"integration-tests","route":"/de/integration-tests","frontMatter":{"title":"Integration Tests","filePath":"content/de/integration-tests.md","timestamp":1789666354000},"title":"Integrationstests"},{"name":"keyboard-shortcuts","route":"/de/keyboard-shortcuts","frontMatter":{"title":"Qwen Code Tastaturkürzel","filePath":"content/de/keyboard-shortcuts.md","timestamp":1789666354000},"title":"Tastaturkürzel"},{"name":"sandbox","route":"/de/sandbox","frontMatter":{"title":"Sandboxing in Qwen Code","filePath":"content/de/sandbox.md","timestamp":1789666354000},"title":"Sandbox-Mechanismus"},{"name":"issue-and-pr-automation","route":"/de/issue-and-pr-automation","frontMatter":{"title":"Automatisierung und Triage-Prozesse","filePath":"content/de/issue-and-pr-automation.md","timestamp":1789666354000},"title":"Automatisierte Behandlung"},{"name":"troubleshooting","route":"/de/troubleshooting","frontMatter":{"title":"Leitfaden zur Fehlerbehebung","filePath":"content/de/troubleshooting.md","timestamp":1789666354000},"title":"Fehlerbehebung"},{"name":"tos-privacy","route":"/de/tos-privacy","frontMatter":{"title":"Qwen Code: Allgemeine Geschäftsbedingungen und Datenschutzhinweise","filePath":"content/de/tos-privacy.md","timestamp":1789666354000},"title":"Nutzungsbedingungen & Datenschutz"},{"name":"Uninstall","route":"/de/Uninstall","frontMatter":{"title":"Deinstallieren der CLI","filePath":"content/de/Uninstall.md","timestamp":1789666354000},"title":"Deinstallations-Anleitung"},{"name":"subagents","route":"/de/subagents","frontMatter":{"title":"Subagents","filePath":"content/de/subagents.md","timestamp":1789666354000},"title":"Subagents"}],"navbar":["$","header",null,{"className":"nextra-navbar x:sticky x:top-0 x:z-30 x:w-full x:bg-transparent x:print:hidden x:max-md:[.nextra-banner:not([class$=hidden])~&]:top-(--nextra-banner-height)","children":[["$","div",null,{"className":"nextra-navbar-blur x:absolute x:-z-1 x:size-full nextra-border x:border-b x:backdrop-blur-md x:bg-nextra-bg/70"}],["$","nav",null,{"style":{"height":"var(--nextra-navbar-height)"},"className":"x:mx-auto x:flex x:max-w-(--nextra-content-width) x:items-center x:gap-4 x:pl-[max(env(safe-area-inset-left),1.5rem)] x:pr-[max(env(safe-area-inset-right),1.5rem)] x:justify-end","children":[["$","$L10",null,{"href":"/","className":"x:flex x:items-center x:me-auto x:transition-opacity x:focus-visible:nextra-focus x:hover:opacity-75","aria-label":"Home page","children":["$","span",null,{"className":"ms-2 select-none font-extrabold flex items-center","title":"Qwen Code: AI Coding Agent","children":[["$","img",null,{"src":"https://assets.alicdn.com/g/qwenweb/qwen-webui-fe/0.0.191/static/favicon.png","alt":"Qwen Code","width":32,"height":32,"className":"inline-block align-middle mr-2 ","style":{"verticalAlign":"middle"}}],["$","span",null,{"className":"text-[1.3rem] font-normal align-middle mr-1 max-md:hidden","children":"Qwen"}],["$","span",null,{"className":"text-[1.3rem] font-normal align-middle max-md:hidden","children":"Code"}]]}]}],["$","$L11",null,{"className":"","children":[["$","a",null,{"href":"https://github.com/QwenLM/qwen-code","target":"_blank","rel":"noreferrer","children":[["$","svg",null,{"fill":"currentColor","viewBox":"3 3 18 18","height":"24","aria-label":"Project repository","children":["$","path",null,{"d":"$12"}]}],false],"className":"x:focus-visible:nextra-focus"}],"$undefined",["$","$L13",null,{"currentLang":"de"}]]}]]}]]}],"footer":null,"children":[["$","$L14",null,{}],["$","$L3",null,{"parallelRouterKey":"children","segmentPath":["children","$4","children"],"error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L6",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","notFoundStyles":"$undefined"}]]}]]}]}]
2:["$","div",null,{"className":"x:mx-auto x:flex x:max-w-(--nextra-content-width)","sourceCode":"$undefined","children":["$","$L15",null,{"value":[{"value":"Core Concepts","id":"core-concepts","depth":2},{"value":"Built-in Tools","id":"built-in-tools","depth":2},{"value":"Tool Execution Flow","id":"tool-execution-flow","depth":2},{"value":"Erweitern mit Custom Tools","id":"erweitern-mit-custom-tools","depth":2}],"children":[["$","$L16",null,{}],["$","$L17",null,{"metadata":{"title":"Qwen Code Core: Tools API","filePath":"content/de/core/tools-api.md","timestamp":1789666354000},"bottomContent":"$undefined","children":[["$","div",null,{"id":"nextra-skip-nav"}],["$","main",null,{"data-pagefind-body":true,"children":[["$","h1",null,{"id":"$undefined","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-bold x:mt-2 x:text-4xl","children":["Qwen Code Core: Tools API","$undefined"]}],"\n",["$","p",null,{"className":"x:not-first:mt-[1.25em] x:leading-7","children":["Der Qwen Code Core (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"packages/core"}],") bietet ein robustes System zum Definieren, Registrieren und Ausführen von Tools. Diese Tools erweitern die Fähigkeiten des Modells, sodass es mit der lokalen Umgebung interagieren, Webinhalte abrufen und verschiedene Aktionen jenseits der einfachen Textgenerierung durchführen kann."]}],"\n",["$","h2",null,{"id":"core-concepts","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-semibold x:target:animate-[fade-in_1.5s] x:mt-10 x:border-b x:pb-1 x:text-3xl nextra-border","children":["Core Concepts",["$","$L18",null,{"id":"core-concepts"}]]}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":["\n",["$","p",null,{"className":"x:not-first:mt-[1.25em] x:leading-7","children":[["$","strong",null,{"children":["Tool (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"tools.ts"}],")"]}],": Ein Interface und eine Basisklasse (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"BaseTool"}],"), die den Vertrag für alle Tools definiert. Jedes Tool muss folgende Eigenschaften haben:"]}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"name"}],": Ein eindeutiger interner Name (wird in API-Aufrufen an das Modell verwendet)."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"displayName"}],": Ein benutzerfreundlicher Name."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"description"}],": Eine klare Erklärung dessen, was das Tool tut – diese wird dem Modell zur Verfügung gestellt."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"parameterSchema"}],": Ein JSON-Schema, das die Parameter definiert, die das Tool akzeptiert. Dies ist entscheidend, damit das Modell weiß, wie es das Tool korrekt aufrufen kann."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"validateToolParams()"}],": Eine Methode zur Validierung eingehender Parameter."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"getDescription()"}],": Eine Methode, die eine menschenlesbare Beschreibung liefert, was das Tool mit bestimmten Parametern vor der Ausführung tun wird."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"shouldConfirmExecute()"}],": Eine Methode, um festzustellen, ob eine Bestätigung durch den Benutzer vor der Ausführung erforderlich ist (z. B. bei potenziell destruktiven Operationen)."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"execute()"}],": Die Kernmethode, die die Aktion des Tools ausführt und ein ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ToolResult"}]," zurückgibt."]}],"\n"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":["\n",["$","p",null,{"className":"x:not-first:mt-[1.25em] x:leading-7","children":[["$","strong",null,{"children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ToolResult"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"tools.ts"}],")"]}],": Ein Interface, das die Struktur des Ergebnisses einer Tool-Ausführung definiert:"]}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"llmContent"}],": Der faktische Inhalt, der in den Verlauf eingefügt wird, der an das LLM zurückgeschickt wird, um Kontext bereitzustellen. Dies kann ein einfacher String oder ein ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"PartListUnion"}]," (ein Array aus ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"Part"}],"-Objekten und Strings) für Rich Content sein."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"returnDisplay"}],": Ein benutzerfreundlicher String (häufig Markdown) oder ein spezielles Objekt (wie ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"FileDiff"}],") zur Anzeige in der CLI."]}],"\n"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":["\n",["$","p",null,{"className":"x:not-first:mt-[1.25em] x:leading-7","children":[["$","strong",null,{"children":"Rich Content zurückgeben"}],": Tools sind nicht darauf beschränkt, einfachen Text zurückzugeben. Der ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"llmContent"}]," kann ein ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"PartListUnion"}]," sein, also ein Array, das eine Mischung aus ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"Part"}],"-Objekten (für Bilder, Audio usw.) und ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"string"}],"s enthalten kann. Dadurch kann eine einzelne Tool-Ausführung mehrere Rich Content-Elemente zurückgeben."]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":["\n",["$","p",null,{"className":"x:not-first:mt-[1.25em] x:leading-7","children":[["$","strong",null,{"children":["Tool Registry (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"tool-registry.ts"}],")"]}],": Eine Klasse (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ToolRegistry"}],"), die folgende Aufgaben übernimmt:"]}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Tools registrieren"}],": Hält eine Sammlung aller verfügbaren Built-in-Tools (z. B. ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ReadFileTool"}],", ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ShellTool"}],")."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Tools entdecken"}],": Kann auch dynamisch Tools entdecken:\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Command-basierte Entdeckung"}],": Wenn ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"toolDiscoveryCommand"}]," in den Einstellungen konfiguriert ist, wird dieser Befehl ausgeführt. Es wird erwartet, dass er JSON ausgibt, das benutzerdefinierte Tools beschreibt, die dann als ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"DiscoveredTool"}],"-Instanzen registriert werden."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"MCP-basierte Entdeckung"}],": Wenn ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"mcpServerCommand"}]," konfiguriert ist, kann die Registry sich mit einem Model Context Protocol (MCP)-Server verbinden, um Tools aufzulisten und zu registrieren (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"DiscoveredMCPTool"}],")."]}],"\n"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Schemas bereitstellen"}],": Stellt die ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"FunctionDeclaration"}],"-Schemas aller registrierten Tools für das Modell bereit, damit es weiß, welche Tools verfügbar sind und wie sie verwendet werden."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Tools abrufen"}],": Ermöglicht es dem Core, ein bestimmtes Tool anhand des Namens zur Ausführung abzurufen."]}],"\n"]}],"\n"]}],"\n"]}],"\n",["$","h2",null,{"id":"built-in-tools","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-semibold x:target:animate-[fade-in_1.5s] x:mt-10 x:border-b x:pb-1 x:text-3xl nextra-border","children":["Built-in Tools",["$","$L18",null,{"id":"built-in-tools"}]]}],"\n",["$","p",null,{"className":"x:not-first:mt-[1.25em] x:leading-7","children":["Der Core enthält eine Sammlung vordefinierter Tools, die sich typischerweise in ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"packages/core/src/tools/"}]," befinden. Dazu gehören:"]}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"File System Tools:"}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"LSTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ls.ts"}],"): Listet den Inhalt eines Verzeichnisses auf."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ReadFileTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"read-file.ts"}],"): Liest den Inhalt einer einzelnen Datei. Es benötigt einen ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"absolute_path"}]," Parameter, der ein absoluter Pfad sein muss."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"WriteFileTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"write-file.ts"}],"): Schreibt Inhalte in eine Datei."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"GrepTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"grep.ts"}],"): Sucht nach Mustern in Dateien."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"GlobTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"glob.ts"}],"): Findet Dateien, die einem Glob-Muster entsprechen."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"EditTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"edit.ts"}],"): Führt Änderungen direkt in Dateien durch (oft mit Bestätigungsabfrage)."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ReadManyFilesTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"read-many-files.ts"}],"): Liest und verknüpft Inhalte aus mehreren Dateien oder Glob-Mustern (verwendet vom ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"@"}]," Befehl in der CLI)."]}],"\n"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Execution Tools:"}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ShellTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"shell.ts"}],"): Führt beliebige Shell-Befehle aus (erfordert sorgfältige Sandbox-Konfiguration und Nutzerbestätigung)."]}],"\n"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Web Tools:"}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"WebFetchTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"web-fetch.ts"}],"): Ruft Inhalte von einer URL ab."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"WebSearchTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"web-search.ts"}],"): Führt eine Websuche durch."]}],"\n"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Memory Tools:"}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","code",null,{"className":"nextra-code","dir":"ltr","children":"MemoryTool"}]," (",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"memoryTool.ts"}],"): Interagiert mit dem Gedächtnis des KI-Modells."]}],"\n"]}],"\n"]}],"\n"]}],"\n",["$","p",null,{"className":"x:not-first:mt-[1.25em] x:leading-7","children":["Jedes dieser Tools erweitert ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"BaseTool"}]," und implementiert die erforderlichen Methoden für seine spezifische Funktionalität."]}],"\n",["$","h2",null,{"id":"tool-execution-flow","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-semibold x:target:animate-[fade-in_1.5s] x:mt-10 x:border-b x:pb-1 x:text-3xl nextra-border","children":["Tool Execution Flow",["$","$L18",null,{"id":"tool-execution-flow"}]]}],"\n",["$","ol",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-decimal x:ms-6","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Model Request:"}]," Das Modell entscheidet auf Basis des User-Prompts und der bereitgestellten Tool-Schemas, ein Tool zu verwenden, und gibt einen ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"FunctionCall"}],"-Teil in seiner Response zurück, der den Tool-Namen und die Argumente angibt."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Core empfängt Request:"}]," Das Core parsed diesen ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"FunctionCall"}],"."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Tool-Abruf:"}]," Es sucht das angeforderte Tool in der ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ToolRegistry"}],"."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Parameter-Validierung:"}]," Die ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"validateToolParams()"}],"-Methode des Tools wird aufgerufen."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Bestätigung (falls nötig):"}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":["Die ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"shouldConfirmExecute()"}],"-Methode des Tools wird aufgerufen."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":"Falls diese Details zur Bestätigung zurückgibt, kommuniziert das Core diese an die CLI, welche den User dann abfragt."}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":"Die Entscheidung des Users (z. B. fortfahren, abbrechen) wird an das Core zurückgesendet."}],"\n"]}],"\n"]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Ausführung:"}]," Falls validiert und bestätigt (oder keine Bestätigung nötig), ruft das Core die ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"execute()"}],"-Methode des Tools mit den übergebenen Argumenten und einem ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"AbortSignal"}]," (für mögliche Abbrüche) auf."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Ergebnisverarbeitung:"}]," Das ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ToolResult"}]," aus ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"execute()"}]," wird vom Core entgegengenommen."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Antwort an das Modell:"}]," Der ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"llmContent"}]," aus dem ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ToolResult"}]," wird als ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"FunctionResponse"}]," verpackt und an das Modell zurückgesendet, damit es mit der Generierung einer nutzerseitigen Antwort fortfahren kann."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Anzeige für den User:"}]," Das ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"returnDisplay"}]," aus dem ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"ToolResult"}]," wird an die CLI gesendet, um dem User anzuzeigen, was das Tool ausgeführt hat."]}],"\n"]}],"\n",["$","h2",null,{"id":"erweitern-mit-custom-tools","className":"x:tracking-tight x:text-slate-900 x:dark:text-slate-100 x:font-semibold x:target:animate-[fade-in_1.5s] x:mt-10 x:border-b x:pb-1 x:text-3xl nextra-border","children":["Erweitern mit Custom Tools",["$","$L18",null,{"id":"erweitern-mit-custom-tools"}]]}],"\n",["$","p",null,{"className":"x:not-first:mt-[1.25em] x:leading-7","children":"Auch wenn die direkte programmatische Registrierung neuer Tools durch Benutzer nicht explizit als primärer Workflow in den bereitgestellten Dateien für typische Endnutzer beschrieben ist, unterstützt die Architektur Erweiterungen über:"}],"\n",["$","ul",null,{"className":"x:[:is(ol,ul)_&]:my-[.75em] x:not-first:mt-[1.25em] x:list-disc x:ms-[1.5em]","children":["\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"Command-basierte Discovery:"}]," Fortgeschrittene Benutzer oder Projektadministratoren können einen ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"toolDiscoveryCommand"}]," in der ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"settings.json"}]," definieren. Dieser Befehl sollte bei Ausführung durch den Core ein JSON-Array von ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"FunctionDeclaration"}],"-Objekten ausgeben. Der Core stellt diese dann als ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"DiscoveredTool"}],"-Instanzen zur Verfügung. Der entsprechende ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"toolCallCommand"}]," ist dann dafür verantwortlich, diese benutzerdefinierten Tools tatsächlich auszuführen."]}],"\n",["$","li",null,{"className":"x:my-[.5em]","children":[["$","strong",null,{"children":"MCP Server:"}]," Für komplexere Szenarien können ein oder mehrere MCP-Server eingerichtet und über die Einstellung ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"mcpServers"}]," in der ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"settings.json"}]," konfiguriert werden. Der Core kann dann Tools erkennen und nutzen, die von diesen Servern bereitgestellt werden. Wie bereits erwähnt: Wenn mehrere MCP-Server verwendet werden, werden die Tool-Namen mit dem Servernamen aus der Konfiguration vorangestellt (z. B. ",["$","code",null,{"className":"nextra-code","dir":"ltr","children":"serverAlias__actualToolName"}],")."]}],"\n"]}],"\n",["$","p",null,{"className":"x:not-first:mt-[1.25em] x:leading-7","children":"Dieses Tool-System bietet eine flexible und leistungsstarke Möglichkeit, die Fähigkeiten des Modells zu erweitern und macht Qwen Code zu einem vielseitigen Assistenten für eine breite Palette von Aufgaben."}]]}]]}]]}]}]
9:[["$","meta","0",{"name":"viewport","content":"width=device-width, initial-scale=1"}],["$","meta","1",{"charSet":"utf-8"}],["$","title","2",{"children":"Qwen Code Core: Tools API | "}],["$","meta","3",{"name":"description","content":"x"}],["$","meta","4",{"name":"msapplication-TileColor","content":"#fff"}],["$","meta","5",{"name":"apple-mobile-web-app-capable","content":"yes"}],["$","meta","6",{"name":"apple-mobile-web-app-title","content":"Qwen Code"}],["$","meta","7",{"name":"apple-mobile-web-app-status-bar-style","content":"default"}],["$","meta","8",{"property":"og:title","content":"Qwen Code Core: Tools API | "}],["$","meta","9",{"property":"og:description","content":"x"}],["$","meta","10",{"property":"og:image","content":"https://assets.vercel.com/image/upload/v1572282926/swr/twitter-card.jpg"}],["$","meta","11",{"name":"twitter:card","content":"summary"}],["$","meta","12",{"name":"twitter:site","content":"@qwenLLM"}],["$","meta","13",{"name":"twitter:title","content":"Qwen Code Core: Tools API | "}],["$","meta","14",{"name":"twitter:description","content":"x"}],["$","meta","15",{"name":"twitter:image","content":"https://assets.vercel.com/image/upload/v1572282926/swr/twitter-card.jpg"}]]
1:null