Verbinden: Zed als Haupt-Tool (Windows stabil seit 10/2025, Rust-nativ, Agent Panel) — OpenCode raus

User-Anforderung: leichtgewichtig statt VS-Code-Bloat + klickbar. Zed: ~16x weniger RAM,
<10ms Latenz, parallele Agenten, OpenAI-kompatible lokale Endpoints nativ. Meine fruehere
'Windows zweitklassig'-Einschaetzung war veraltet (Radar-Lehre #2 heute).
Finale 3: Zed (Haupt) · Kilo Code (VS-Code-Fallback/Orchestrator) · Claude Code (Sessions).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Hitonabi
2026-07-02 20:03:49 +02:00
parent 2db0ce080f
commit cd3c5b5eed
5 changed files with 30 additions and 20 deletions
+24 -14
View File
@@ -40,15 +40,23 @@ def build_snippets(host: str = DEFAULT_HOST,
"openAiModelId": "coding", "openAiModelId": "coding",
}, indent=2) }, indent=2)
opencode = json.dumps({ # Zed = Rust-nativ, ~16x leichter als VS Code, Agent Panel mit parallelen Agenten,
"provider": { # Windows stabil seit Okt 2025 — das Haupt-Tool für den User (Anti-Bloat + klickbar).
zed = json.dumps({
"language_models": {
"openai_compatible": {
"bosgame": { "bosgame": {
"npm": "@ai-sdk/openai-compatible", "api_url": gw,
"name": "Bosgame Gateway", "available_models": [
"options": {"baseURL": gw, "apiKey": "local"}, {"name": IDE_MODEL, "display_name": "Box / coding", "max_tokens": 131072,
"models": {IDE_MODEL: {"name": IDE_MODEL}}, "capabilities": {"tools": True}}
],
} }
} }
},
"agent": {
"default_model": {"provider": "openai_compatible", "model": IDE_MODEL}
}
}, indent=2) }, indent=2)
# Claude Code spricht das Anthropic-Format; der Gateway ist OpenAI-kompatibel und # Claude Code spricht das Anthropic-Format; der Gateway ist OpenAI-kompatibel und
@@ -81,16 +89,18 @@ def build_snippets(host: str = DEFAULT_HOST,
"host": host, "host": host,
"gateway_url": gw, "gateway_url": gw,
"mc_url": mc_url, "mc_url": mc_url,
# Leitung 1 — das MODELL. Bewusst NUR 3 Tools (Verdikt 03.07.2026): Kilo Code (IDE, # Leitung 1 — das MODELL. Bewusst NUR 3 Tools (Verdikt 03.07.2026): Zed (Haupt-Tool:
# Multi-Agent via Orchestrator-Modus), OpenCode (Terminal), Claude Code (starke Sessions). # Rust-nativ/leichtgewichtig, Agent Panel, parallele Agenten, Windows stabil seit 10/2025),
# Cursor/Zed/Continue/Roo entfernt — Roo eingestellt, Rest von Kilo abgedeckt bzw. # Kilo Code (VS-Code-Fallback mit Orchestrator-Modus), Claude Code (starke Sessions).
# cloud-first. Das Evolution-Radar (AUTONOMIE_PLAN E4) überwacht die Tool-Kategorie. # Cursor/Continue/Roo/OpenCode entfernt — Roo eingestellt, Rest cloud-first, Terminal
# oder von Kilo abgedeckt. Das Evolution-Radar (AUTONOMIE_PLAN E4) überwacht die Kategorie.
"tools": { "tools": {
"zed": {"label": "Zed (empfohlen)", "lang": "json", "snippet": zed,
"note": "Leichtgewicht-Editor (Rust, ~16x weniger RAM als VS Code). settings.json → "
"language_models.openai_compatible; Agent Panel nutzt dann die Box. Lane 'coding' routet intern."},
"kilo": {"label": "Kilo Code", "lang": "json", "snippet": kilo, "kilo": {"label": "Kilo Code", "lang": "json", "snippet": kilo,
"note": "VS Code/JetBrains. OpenAI-Provider → Gateway; Lane 'coding' routet intern. " "note": "VS Code/JetBrains (schwergewichtiger). OpenAI-Provider → Gateway. "
"Empfohlen: API-Profile je Modus Code→coding · Architect/Orchestrator→heavy · Ask/Debug→chat."}, "API-Profile je Modus: Code→coding · Architect/Orchestrator→heavy · Ask/Debug→chat."},
"opencode": {"label": "OpenCode", "lang": "jsonc", "snippet": opencode,
"note": "Terminal-Agent. Datei opencode.jsonc, Key 'provider'."},
"claude_code": {"label": "Claude Code", "lang": "bash", "snippet": claude_code, "claude_code": {"label": "Claude Code", "lang": "bash", "snippet": claude_code,
"note": "Für die starken Sessions. Lokal-Betrieb bräuchte einen Anthropic⇄OpenAI-Übersetzer vor dem Gateway; Gedächtnis-Anbindung via Memory-MCP unten."}, "note": "Für die starken Sessions. Lokal-Betrieb bräuchte einen Anthropic⇄OpenAI-Übersetzer vor dem Gateway; Gedächtnis-Anbindung via Memory-MCP unten."},
}, },
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -7,7 +7,7 @@
<link rel="manifest" href="/manifest.webmanifest" /> <link rel="manifest" href="/manifest.webmanifest" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" /> <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<title>Mission Control 2.0</title> <title>Mission Control 2.0</title>
<script type="module" crossorigin src="/assets/index-DyBEWJ2j.js"></script> <script type="module" crossorigin src="/assets/index-D08iKoV-.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-_Rap01H_.css"> <link rel="stylesheet" crossorigin href="/assets/index-_Rap01H_.css">
</head> </head>
<body> <body>
+2 -2
View File
@@ -9,8 +9,8 @@ import { cn } from "@/lib/utils"
// Dateiziel je Tool — nur Hinweis im Editor-Kopf, keine Logik. // Dateiziel je Tool — nur Hinweis im Editor-Kopf, keine Logik.
const FILE_NAMES: Record<string, string> = { const FILE_NAMES: Record<string, string> = {
zed: "Zed: settings.json",
kilo: "Kilo: Einstellungen → API Provider", kilo: "Kilo: Einstellungen → API Provider",
opencode: "opencode.jsonc",
claude_code: "env / Übersetzer", claude_code: "env / Übersetzer",
} }
@@ -75,7 +75,7 @@ function CodeWindow({
export function ConnectView() { export function ConnectView() {
const [host, setHost] = useState(localStorage.getItem("mc_host") || "192.168.178.151") const [host, setHost] = useState(localStorage.getItem("mc_host") || "192.168.178.151")
const [mcpPath, setMcpPath] = useState(localStorage.getItem("mc_mcp_path") || "") const [mcpPath, setMcpPath] = useState(localStorage.getItem("mc_mcp_path") || "")
const [active, setActive] = useState("kilo") const [active, setActive] = useState("zed")
const [copied, setCopied] = useState<"model" | "memory" | null>(null) const [copied, setCopied] = useState<"model" | "memory" | null>(null)
const params = new URLSearchParams({ host }) const params = new URLSearchParams({ host })