Zurück zu den Anwendungsfällen
Entwickler-Tools

KI-Codeassistent — Cursor-ähnliche Tools mit Claude und GPT entwickeln

Cursor, Aider, Cline, Continue.dev — sie alle nutzen dieselbe kleine Auswahl führender LLMs. Wenn Sie ein Coding-Tool oder einen Copiloten für Ihr eigenes Entwicklerprodukt bauen, finden Sie hier die Architektur und die tatsächliche Kostenlage.

Zuletzt überprüft am .

Die Landschaft der Code-KI kurz erklärt

Cursor, Aider, Cline, Continue.dev, Claude Code selbst — sie alle bauen auf denselben drei oder vier führenden LLMs auf. Der Unterschied liegt nicht im Modell, sondern in der agentischen Schleife darum herum, der Dateiindizierung, der Diff-Anwendung und der Benutzererfahrung. Wenn Sie eines davon entwickeln (oder einen Coding-Copiloten in Ihrem eigenen Entwicklerprodukt), finden Sie auf dieser Seite das Modellangebot, die tatsächlichen Kosten und das Latenzbudget.

Modellübersicht für Code-Workflows

  • Claude Haiku 4.5 (claude-haiku-4-5) — Autovervollständigung (etwa $0.0001–0.0005 pro Vervollständigung). Der Latenzgewinner: Streaming-Time-to-First-Token, vergleichbar mit einem direkten Anbieteraufruf
  • Claude Sonnet 5 (claude-sonnet-5) — Chat mit Codebasis, Änderungen über mehrere Dateien, agentische Schleifen. Das Arbeitspferd auf Cursor-Niveau für $1.40 / $7.00 pro 1M
  • Claude Opus 5 (claude-opus-5) — gründliche Prüfung, Architekturkritik, Sicherheitsprüfung. Langsamer (P50 ~3 s), aber der stärkste Reasoner, mit $3.50 / $17.50 pro 1M
  • GPT-5.6 Sol (gpt-5-6-sol) — OpenAIs code-optimiertes Modell: vergleichbare Qualität, andere stilistische Präferenzen

Die beiden Kernabläufe

code_assistant.py
import json
from openai import OpenAI
client = OpenAI(api_key="sk-kn-...", base_url="https://api.kunavo.com/v1")

# Code completion (autocomplete-as-you-type)
def complete(file_content: str, cursor_offset: int, file_path: str) -> str:
    before = file_content[:cursor_offset]
    after = file_content[cursor_offset:]
    resp = client.chat.completions.create(
        model="claude-haiku-4-5",   # FAST for IDE latency
        messages=[
            {"role": "system", "content": (
                "Complete the code at the cursor. Output ONLY the inserted "
                "text — no markdown, no explanation."
            )},
            {"role": "user", "content": (
                f"<file path=\"{file_path}\">\n{before}<CURSOR>{after}\n</file>"
            )},
        ],
        max_tokens=200,
        stop=["<CURSOR>", "</file>"],
    )
    return resp.choices[0].message.content

# Code review (heavier model). Claude enforces a json_schema
# response_format; json_object it does not.
REVIEW = {
    "type": "object",
    "properties": {
        "comments": {"type": "array", "items": {
            "type": "object",
            "properties": {"file": {"type": "string"},
                           "line": {"type": "integer"},
                           "comment": {"type": "string"}},
            "required": ["file", "line", "comment"],
            "additionalProperties": False,
        }},
        "verdict": {"type": "string", "enum": ["approve", "request_changes"]},
    },
    "required": ["comments", "verdict"],
    "additionalProperties": False,
}

def review(diff: str, conventions: str) -> dict:
    resp = client.chat.completions.create(
        model="claude-opus-5",
        messages=[
            {"role": "system", "content": [{
                "type": "text",
                "text": conventions,  # team style guide, security policy
                "cache_control": {"type": "ephemeral"},
            }]},
            {"role": "user", "content": f"Review this diff.\n\n{diff}"},
        ],
        response_format={"type": "json_schema",
                         "json_schema": {"name": "review", "schema": REVIEW}},
        max_tokens=2000,
    )
    return json.loads(resp.choices[0].message.content)

Latenzbudget nach Funktion

  • Inline-Autovervollständigung: TTFT muss <200 ms betragen. Claude Haiku 4.5. Ausgabe streamen, beim Verschieben des Cursors abbrechen
  • Chat mit der Codebasis: TTFT <500 ms ist akzeptabel. Sonnet + Streaming. Antwort anzeigen, während sie erzeugt wird
  • Bearbeitung / Refactoring mehrerer Dateien: 5–30 s sind normal. Fortschritt anzeigen, im Hintergrund ausführen, Diff zur Prüfung anzeigen
  • PR-Review: 10–60 s sind akzeptabel. Opus führt die gründliche Analyse durch; als umsetzbare Kommentare formatieren

Kostenökonomie für ein Codeprodukt

Realistischer Verbrauch pro Entwickler und Monat (Power-User):

  • ~500 Vervollständigungen/Tag × Haiku ~$0.0003 = $0.15/Tag = $4–5/Monat
  • ~30 Chatsitzungen/Tag × Sonnet ~$0.05 = $1.50/Tag = $30–45/Monat
  • ~3 PR-Reviews/Woche × Opus ~$0.30 = $1/Woche = $4/Monat
  • Power-User: ~$40–55/Monat an API-Kosten
  • Durchschnittlicher Nutzer: ~$10–15/Monat

Die meisten Code-KI-Produkte kosten $20/Nutzer/Monat — es gibt Spielraum für eine Marge, aber bei Power-Usern ist sie knapp. Prompt-Caching ist unverzichtbar: Der Workspace-Kontext (Dateistruktur, Konventionen, aktuelle Dateien) kommt in den Cache; pro Aufruf ist nur der unmittelbare Bearbeitungskontext neu. Spart 50–70 % bei den Eingaben. Caching einrichten.

Architekturmuster zum Übernehmen

  • FIM-Prompting (Fill-in-the-Middle): Statt „ab hier vervollständigen“ übergib before<CURSOR>after, damit das Modell beide Seiten verwendet
  • Stop-Sequenzen: stop=["<CURSOR>", "</file>", "```\n"] verhindert, dass das Modell über die angeforderte Vervollständigung hinaus etwas erfindet
  • Tool-Nutzung für Bearbeitungen mehrerer Dateien: Bitte das Modell nicht, 5 Dateien in einer Antwort auszugeben. Verwende tools=[{name: 'edit_file', ...}], damit es strukturierte Änderungen erzeugt, die du atomar anwendest
  • Spekulatives Decoding per Streaming: Zeige die ersten ~50 Token, sobald sie eintreffen; Nutzer wählen die richtige Variante auch dann, wenn die vollständige Antwort noch nicht fertig ist

Anbieter in Sekunden wechseln

Kunavo ist OpenAI-wire-kompatibel. Wenn du deinen Assistenten mit dem OpenAI SDK erstellt hast, tausche base_url aus und erhältst Zugriff auf Claude und GPT mit demselben Code. Siehe Claude mit dem OpenAI SDK aufrufen für die Migration.

Start: /app/signup — Pay-as-you-go ab einer Aufladung von $10 (~30.000 Autocomplete-Aufrufe), Guthaben verfällt nie. Endpoint-Referenz unter /docs/chat und die native Anthropic Messages API unter /docs/messages.

FAQ

What does a heavy user of an AI coding assistant cost in API spend?

Roughly $40–55 per month against $20-per-user pricing. That margin only works because prompt caching cuts input cost by 50–70%.

Which model fits which coding-assistant surface?

Inline autocomplete needs time-to-first-token under 200ms, which points to Claude Haiku 4.5. Chat-with-codebase needs under 500ms, which is Claude Sonnet 4.6. PR review tolerates 10–60 seconds, so Claude Opus 4.7 fits there.

How should autocomplete prompts be formatted?

Use Fill-in-Middle prompting: format the request as before<CURSOR>after so the model sees both sides of the caret, and set stop=['<CURSOR>', '</file>'] to prevent overflow.

How should an assistant handle multi-file edits?

Pass a tool definition such as tools=[{name:'edit_file', ...}] and apply the edits atomically, rather than asking the model to dump several whole files into one response.