
Yan Menü → Geliştirici, Memo'yu yerel, Anthropic-uyumlu bir uç noktaya dönüştürüyor. Claude Code'u (ya da sadece Anthropic'in Messages API'sini konuşan başka bir aracı) buna yönlendir — Memo, o isteğin arkasında gerçekte ne varsa onu çalıştırır: yerel modelin ya da zaten yapılandırdığın herhangi bir harici sağlayıcı — Claude Code ise her zamanki gibi çalışmaya devam eder.
Memo'nun yan menüsünden Geliştirici'yi aç. Ekranın üstünde kopyalanabilir bir Base URL görürsün — varsayılan olarak bu http://localhost:8090, Memo'nun backend'inin dinlediği portla eşleşiyor. Backend'in portunu değiştirdiysen bu da ona göre değişir.
Claude Code hedef sunucusunu ortam değişkenlerinden okuyor. claude'u çalıştırmadan önce şunları ayarla:
# bash / zsh
export ANTHROPIC_BASE_URL="http://localhost:8090"
export ANTHROPIC_API_KEY="not-needed"
export ANTHROPIC_MODEL="local/qwen2.5"
# fish
set -x ANTHROPIC_BASE_URL "http://localhost:8090"
set -x ANTHROPIC_API_KEY "not-needed"
set -x ANTHROPIC_MODEL "local/qwen2.5"
ANTHROPIC_API_KEY, Geliştirici ekranındaki API Anahtarı Gerektir anahtarı kapalıyken (varsayılan) herhangi bir boş-olmayan metin olabilir — Memo bunu kontrol etmiyor, ama Claude Code'un kendi SDK'sı bir şey ayarlanmadan başlamayı reddediyor. API Anahtarı Gerektir'i açarsan, bunun yerine Geliştirici ekranında gösterilen gerçek token'ı kullan (Uzaktan Erişim'in kullandığı aynı token) — Claude Code bunu otomatik olarak x-api-key başlığıyla gönderiyor.
tip/model-id ile bir model seçMemo'nun ağ geçidi isteğin model alanını <tip>/<model-id> olarak okuyor:
| Değer | Neye yönlendiriyor |
|---|---|
local/qwen2.5 |
Memo'da o an yüklü olan yerel llama.cpp modeli — qwen2.5 kısmı sadece bir etiket, gerçek model o anda çalışan her ne ise odur |
openai/gpt-4o |
Ayarlar → API Sağlayıcıları altındaki etkin OpenAI sağlayıcın, gpt-4o modeliyle |
custom/<model-id> |
Kendi yapılandırdığın etkin custom sağlayıcı (LM Studio, vLLM gibi kendi OpenAI-uyumlu uç noktan) |
Geliştirici ekranı, o an geçerli olan her tip/model-id kombinasyonunu kopyalanabilir girdiler olarak listeliyor — hangi yerel modelin yüklü olduğuna ve hangi sağlayıcıların etkin olduğuna göre değişiyor. claude'u başlatmadan önce birini ANTHROPIC_MODEL olarak ayarla, ya da oturum ortasında Claude Code'un kendi /model komutuyla değiştir, örn. /model openai/gpt-4o.
claude'u her zamanki gibi çalıştır. Arayüzünde hiçbir şey değişmiyor — dosya okuma/yazma, shell komutları çalıştırma, çok turlu araç-kullanımlı konuşmaların hepsi gerçek Anthropic API'sine karşı çalıştığı gibi çalışıyor, çünkü ağ geçidi Anthropic'in wire formatının tam, çift yönlü bir çevirisini yapıyor (bir araç çağrısının argümanlarının Anthropic tarafında gerçek bir JSON nesnesi, OpenAI tarafında ise JSON-kodlanmış bir string olması gibi ince bir detay dahil).
Tek gerçek sınırlama: çözümlenen model gemini, claude ya da ollama sağlayıcı tiplerinden birine aitse araç çağırma henüz çalışmıyor — Memo'daki alttaki implementasyonları henüz araç tanımlarını hiç desteklemiyor. Bunlardan birine yönlendirilen araç-tanımlı bir istek, araçları sessizce yok saymak yerine açık bir hata döndürüyor — böylece kafa karıştırıcı yarım bir davranış yerine hemen ne olduğunu anlıyorsun.
Geliştirici ekranının altında, ağ geçidinden geçen her isteğin canlı bir günlüğü var, ekran açıkken birkaç saniyede bir yenileniyor — zaman, çözümlenen model, streaming/araç kullanılıp kullanılmadığı, süre, ve istek/cevap önizlemesi. İlk Claude Code isteğinin gerçekten ulaşıp ulaşmadığını ve tam olarak hangi modele çözümlendiğini görmenin en hızlı yolu bu.
Bu ekrandaki iki ayar varsayılan olarak kapalı: API Anahtarı Gerektir (yukarıda) ve Hafızayı Kullan. Hafıza entegrasyonunu açmak, ağ geçidi isteklerini modele gönderilmeden önce Memo'nun kendi RAG hafızasından ilgili gerçeklerle zenginleştiriyor — ama Claude Code üzerinden bu şekilde çalıştırılan bir kodlama oturumu, hafıza açık olsa bile Memo'nun kendi sohbet geçmişinde asla görünür bir sohbet oluşturmuyor. Ağ geçidi trafiği ile sıradan sohbetlerin bilinçli olarak birbirine karışmaması sağlanıyor.