Yollar ve Kimlik Bilgileri
Yapılandırma katmanları
NEXUS'un yapılandırması, dört katman üzerinden çözümlenen bir .chainabit/ dizininde durur. Aynı ayar birden fazla yerde tanımlıysa sonraki katman kazanır:
| Sıra | Katman | Konum |
|---|---|---|
| 1 | Yerleşik varsayılanlar | NEXUS ile birlikte gelir |
| 2 | Kurum politikası | kurum tarafından dağıtılır |
| 3 | Projeye özel | projedeki .chainabit/ |
| 4 | Kişisel | ~/.chainabit/ |
NEXUS'un kendi dosyaları, bu katmanlı ağacın içinde .chainabit/nexus/ altında durur.
Kimlik bilgisi dosyasının adı kritiktir
.chainabit/, sürüm kontrolüne alınan ve ekiple paylaşılan bir dizindir — içindekilerin çoğu, herhangi bir proje dosyası gibi commit edilmek ve incelenmek üzere tasarlanmıştır. Birlikte gelen yok sayma (ignore) kuralları yalnızca *.local.* kalıbına uyan dosyaları dışarıda bırakır. Bunun doğrudan bir sonucu vardır:
Bir sır barındıran dosyanın adı *.local.json olmalıdır ve dosya yalnızca sahibinin erişebileceği izinlerle oluşturulur. Bu bir biçim tercihi değildir. .local. ekini taşımayan bir kimlik bilgisi dosyası, birlikte gelen yok sayma kuralları tarafından dışarıda bırakılmaz ve biri rutin bir git add çalıştırdığında paylaşılan geçmişe girer.
| Dosya | İçerir | Yaşam döngüsü |
|---|---|---|
.chainabit/nexus/agent.local.json | ajan kimlik bilgileri | normal çalışma sırasında yeniden yazılır; oturum kapandığında silinir |
.chainabit/nexus/server.local.json | sunucu kimlik bilgileri | normal çalışma sırasında yeniden yazılır; oturum kapandığında silinir |
.chainabit/nexus/mcp.local.json | MCP oturum kimlik bilgileri | normal çalışma sırasında yeniden yazılır; oturum kapandığında silinir |
İzinler
Bir kimlik bilgisi dosyası yalnızca sahibi tarafından okunabilir ve yazılabilir olarak oluşturulur. Onu barındıran dizin de yalnızca sahibine açık oluşturulur — başka hiç kimse okuyamaz, yazamaz ve içeriğini listeleyemez; alışılmış, herkesin okuyabildiği varsayılan devralınmaz. Dosyanın kendi izinleri içeriği zaten gizli tutar; dizini kısıtlamak, içindeki dosyaların adlarının da gizli kalmasını sağlar, böylece aynı makinedeki başka bir hesap oradaki hiçbir şeyi listeleyemez.
Neden ortam değişkeni kullanılmıyor
Bir yetenek anahtarı (capability token) hiçbir zaman bir ortam değişkeninde taşınmaz — yalnızca yukarıdaki dosyalardan birinde durur. Ortam değişkenleri, bir oturumun başlattığı her alt sürece devredilir; oraya konan bir anahtar, ajanın çalıştırdığı her komuta süresiz olarak ve sonradan kapsamı daraltılamayacak biçimde teslim edilmiş olur. Yalnızca sahibine açık izinlere sahip bir dosya ise, yoluna açıkça erişim verilmeyen hiçbir şey tarafından devralınmaz.