Skip to content

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ıraKatmanKonum
1Yerleşik varsayılanlarNEXUS ile birlikte gelir
2Kurum politikasıkurum tarafından dağıtılır
3Projeye özelprojedeki .chainabit/
4Kiş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İçerirYaşam döngüsü
.chainabit/nexus/agent.local.jsonajan kimlik bilgilerinormal çalışma sırasında yeniden yazılır; oturum kapandığında silinir
.chainabit/nexus/server.local.jsonsunucu kimlik bilgilerinormal çalışma sırasında yeniden yazılır; oturum kapandığında silinir
.chainabit/nexus/mcp.local.jsonMCP oturum kimlik bilgilerinormal ç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.

Built with purpose.