Verbinden-Seite: auf 3 Tools kuratiert (Kilo Code, OpenCode, Claude Code)
Roo Code wurde April 2026 eingestellt (Repo archiviert) — Kilo Code ist der aktive Nachfolger der Roo/Cline-Linie (Orchestrator-Modus, Modell-pro-Modus, JetBrains+CLI). Cursor/Zed/Continue raus (cloud-first bzw. von Kilo abgedeckt). Kilo-Note enthaelt die Modus-Zuordnung: Code->coding, Architect/Orchestrator->heavy, Ask/Debug->chat. Das Evolution-Radar (AUTONOMIE_PLAN E4) ueberwacht die Tool-Kategorie kuenftig selbst. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
+12
-45
@@ -31,7 +31,9 @@ def build_snippets(host: str = DEFAULT_HOST,
|
|||||||
gw = _gw(host)
|
gw = _gw(host)
|
||||||
mc_url = f"http://{host}:{PORT}"
|
mc_url = f"http://{host}:{PORT}"
|
||||||
|
|
||||||
cline = json.dumps({
|
# Kilo Code = aktiver Nachfolger der Roo/Cline-Linie (Roo im April 2026 eingestellt).
|
||||||
|
# Gleiche Provider-Settings-Struktur; Multi-Agent kommt aus dem Tool (Orchestrator-Modus).
|
||||||
|
kilo = json.dumps({
|
||||||
"apiProvider": "openai",
|
"apiProvider": "openai",
|
||||||
"openAiBaseUrl": gw,
|
"openAiBaseUrl": gw,
|
||||||
"openAiApiKey": "local",
|
"openAiApiKey": "local",
|
||||||
@@ -49,39 +51,6 @@ def build_snippets(host: str = DEFAULT_HOST,
|
|||||||
}
|
}
|
||||||
}, indent=2)
|
}, indent=2)
|
||||||
|
|
||||||
cursor = json.dumps({
|
|
||||||
"Base URL": gw,
|
|
||||||
"API Key": "local",
|
|
||||||
"Active Model": "coding"
|
|
||||||
}, indent=2)
|
|
||||||
|
|
||||||
zed = json.dumps({
|
|
||||||
"language_models": {
|
|
||||||
"openai_compatible": {
|
|
||||||
"bosgame": {
|
|
||||||
"api_url": gw,
|
|
||||||
"available_models": [
|
|
||||||
{"name": IDE_MODEL, "display_name": IDE_MODEL, "max_tokens": 131072,
|
|
||||||
"capabilities": {"tools": True}}
|
|
||||||
],
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"assistant": {
|
|
||||||
"default_model": {
|
|
||||||
"provider": "openai_compatible",
|
|
||||||
"model": IDE_MODEL
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}, indent=2)
|
|
||||||
|
|
||||||
cont = json.dumps({
|
|
||||||
"models": [
|
|
||||||
{"title": f"Bosgame / {IDE_MODEL}", "provider": "openai", "model": IDE_MODEL,
|
|
||||||
"apiBase": gw, "apiKey": "local"}
|
|
||||||
]
|
|
||||||
}, 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
|
||||||
# bietet KEIN /v1/messages (verifiziert). Daher braucht es einen kleinen Übersetzer
|
# bietet KEIN /v1/messages (verifiziert). Daher braucht es einen kleinen Übersetzer
|
||||||
# (Anthropic ⇄ OpenAI) als Aufsatz. Die env-Vars sind Claude Codes echte Schnittstelle.
|
# (Anthropic ⇄ OpenAI) als Aufsatz. Die env-Vars sind Claude Codes echte Schnittstelle.
|
||||||
@@ -112,20 +81,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. Alle Snippets zeigen auf den OpenAI-kompatiblen Gateway.
|
# Leitung 1 — das MODELL. Bewusst NUR 3 Tools (Verdikt 03.07.2026): Kilo Code (IDE,
|
||||||
|
# Multi-Agent via Orchestrator-Modus), OpenCode (Terminal), Claude Code (starke Sessions).
|
||||||
|
# Cursor/Zed/Continue/Roo entfernt — Roo eingestellt, Rest von Kilo abgedeckt bzw.
|
||||||
|
# cloud-first. Das Evolution-Radar (AUTONOMIE_PLAN E4) überwacht die Tool-Kategorie.
|
||||||
"tools": {
|
"tools": {
|
||||||
"cline": {"label": "Roo Code / Cline", "lang": "json", "snippet": cline,
|
"kilo": {"label": "Kilo Code", "lang": "json", "snippet": kilo,
|
||||||
"note": "OpenAI-Provider → Gateway. Nur Lane 'coding' — die Box routet intern selbst."},
|
"note": "VS Code/JetBrains. OpenAI-Provider → Gateway; Lane 'coding' routet intern. "
|
||||||
"cursor": {"label": "Cursor", "lang": "json", "snippet": cursor,
|
"Empfohlen: API-Profile je Modus — Code→coding · Architect/Orchestrator→heavy · Ask/Debug→chat."},
|
||||||
"note": "Einstellungen ➔ Models ➔ OpenAI API key + Base URL."},
|
|
||||||
"opencode": {"label": "OpenCode", "lang": "jsonc", "snippet": opencode,
|
"opencode": {"label": "OpenCode", "lang": "jsonc", "snippet": opencode,
|
||||||
"note": "Datei opencode.jsonc, Key 'provider'."},
|
"note": "Terminal-Agent. Datei opencode.jsonc, Key 'provider'."},
|
||||||
"zed": {"label": "Zed", "lang": "json", "snippet": zed,
|
|
||||||
"note": "settings.json → language_models.openai_compatible."},
|
|
||||||
"continue": {"label": "Continue", "lang": "json", "snippet": cont,
|
|
||||||
"note": "~/.continue/config.json (oder config.yaml mit identischen Keys)."},
|
|
||||||
"claude_code": {"label": "Claude Code", "lang": "bash", "snippet": claude_code,
|
"claude_code": {"label": "Claude Code", "lang": "bash", "snippet": claude_code,
|
||||||
"note": "Braucht einen Anthropic⇄OpenAI-Übersetzer vor dem Gateway."},
|
"note": "Für die starken Sessions. Lokal-Betrieb bräuchte einen Anthropic⇄OpenAI-Übersetzer vor dem Gateway; Gedächtnis-Anbindung via Memory-MCP unten."},
|
||||||
},
|
},
|
||||||
# Leitung 2 — das GEDÄCHTNIS. Separater MCP-Server, gilt zusätzlich zu jedem Tool oben.
|
# Leitung 2 — das GEDÄCHTNIS. Separater MCP-Server, gilt zusätzlich zu jedem Tool oben.
|
||||||
"memory": {"label": "Shared Memory (MCP)", "lang": "json", "snippet": memory_mcp,
|
"memory": {"label": "Shared Memory (MCP)", "lang": "json", "snippet": memory_mcp,
|
||||||
|
|||||||
+1
-1
File diff suppressed because one or more lines are too long
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
File diff suppressed because one or more lines are too long
Vendored
+2
-2
@@ -7,8 +7,8 @@
|
|||||||
<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-CMk0U3JS.js"></script>
|
<script type="module" crossorigin src="/assets/index-DyBEWJ2j.js"></script>
|
||||||
<link rel="stylesheet" crossorigin href="/assets/index-DnPDtMyG.css">
|
<link rel="stylesheet" crossorigin href="/assets/index-_Rap01H_.css">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div id="root"></div>
|
<div id="root"></div>
|
||||||
|
|||||||
@@ -9,12 +9,9 @@ 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> = {
|
||||||
cline: "cline_settings.json",
|
kilo: "Kilo: Einstellungen → API Provider",
|
||||||
cursor: "Settings → Models",
|
|
||||||
opencode: "opencode.jsonc",
|
opencode: "opencode.jsonc",
|
||||||
zed: "settings.json",
|
claude_code: "env / Übersetzer",
|
||||||
continue: "~/.continue/config.json",
|
|
||||||
claude_code: "~/.zshrc / env",
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function StatusBadge({ line, loading }: { line?: ConnectLine; loading: boolean }) {
|
function StatusBadge({ line, loading }: { line?: ConnectLine; loading: boolean }) {
|
||||||
@@ -78,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("cline")
|
const [active, setActive] = useState("kilo")
|
||||||
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 })
|
||||||
|
|||||||
Reference in New Issue
Block a user