Cadenza: .NET 10’un dosya tabanlı uygulamalarının verimini en üst düzeye çıkaran minimal SDK
(github.com/rkttu)Cadenza, .NET 10+ dosya tabanlı uygulamalar için tek dosyalı bir betik SDK paketidir. Yalnızca .NET 10 SDK’nın en güncel sürümünü kurarak hemen kod yazıp çalıştırabilmeniz için tasarlanmıştır. Buna aşina olmayanlar için ek bir açıklama yapmak gerekirse, Python ekosisteminde uv aracının PEP 723 deneyimini sunmasına benzer bir yapı olarak düşünülebilir.
Cadenza ile geliştirirken genel olarak aşağıdaki beş SDK türünden birini seçebilirsiniz.
- Cadenza: konsol betikleri, CLI yardımcı araçları
- Cadenza.Worker: arka plan servisleri, daemon’lar
- Cadenza.Web: web API’leri, Minimal API betikleri
- Cadenza.Mcp: Claude / Cursor / VS Code yapay zeka ajanları için MCP sunucusu
- Cadenza.Agent: yerel yapay zeka ajanı (MEAI tabanlı)
Web API dahil çeşitli temel özellikler sunsa da en çok vurgulamak istediğim kısım ajan geliştirme tarafı. Örneğin, özel bir yapay zeka ajanı oluşturmak için aşağıdaki gibi kod yazıp çalıştırabilir; ardından bunu tekil bir çalıştırılabilir dosya ya da Docker container imajı olarak derleyebilirsiniz.
ServedModelName = "custom-codex-agent";
SystemPrompt("You are a helpful assistant with read-only filesystem access.");
Tool("read_file", "Read a UTF-8 text file from disk",
(string path) => ReadText(path));
Tool("list_files", "List files matching a glob pattern (e.g., **/*.cs)",
(string pattern) => Glob(pattern).ToArray());
UseOllama("llama3.2");
await Run();
Ayrıca bu şekilde oluşturduğunuz yapay zeka ajanı için aşağıdaki gibi ayrı bir yapılandırma dosyası hazırlayıp CODEX_HOME ortam değişkeninde bunu kullanacak şekilde değiştirirseniz, yapay zeka ajanı yapılandırmasını özelleştirebileceğiniz bir giriş noktası da açılmış olur.
model = "cadenza-codex-openrouter"
model_provider = "cadenza"
model_catalog_json = "{catalogPath}"
[model_providers.cadenza]
name = "Cadenza.Agent (OpenRouter-backed)"
base_url = "http://localhost:8080/v1"
wire_api = "responses"
env_key = "CADENZA_API_KEY"
stream_idle_timeout_ms = 300000
Buna ek olarak, Cadenza tabanlı betikler yazmak için VS Code’daki temel C# eklentisi (Dev Kit değil) ya da diğer VS Code uyumlu editörler için temel C# eklentisi yeterlidir; dolayısıyla Visual Studio lisansına ihtiyaç yoktur.
Bol bol deneyip geri bildirim paylaşırsanız sevinirim!
Henüz yorum yok.