İçeriğe geç
ivralo
Bölümler

Dokümantasyon / Referans

Ayar dosyaları

ivralo'nun yapılandırma olarak okuduğu bütün dosyalar: ivralo ana dizininizde bulunan ve her yerde geçerli olanlar, bir de repo'nun .ivralo/ klasöründe bulunan ve yalnızca o repo'ya uygulananlar. Her biri için nerede bulunduğu, ne içerdiği ve hangi sayfada anlatıldığı.

Ana dizin ve çalışma alanı

Yapılandırma iki yerde tutulur:

  • Ana dizin, .env dosyanızın, skill'lerinizin ve aşağıdaki dosyaların bulunduğu klasördür. Yerini IVRALO_HOME belirler; ayarlanmamışsa ivralo içinde bulunduğunuz checkout'u ya da kendisinin çalıştığı checkout'u kullanır. Sunucu kurulumunda ana dizini ivralo init --home oluşturur.
  • Çalışma alanındaki .ivralo/, ivralo'nun çalıştığı repo'nun kökündeki bir klasördür. ivralo bu klasörü .git/info/exclude'a ekler; böylece içindeki hiçbir şey commit'lenmez. İçindeki yapılandırma dosyaları ancak klasörü güvenilir saydıktan sonra geçerli olur; bazıları o zaman bile yalnızca kısmen geçerlidir.

İkisinde de konuşmalara ait hiçbir şey tutulmaz: oturumlar, run'lar ve hafıza PostgreSQL'dedir. Python worker'ı bu dosyaların hiçbirine yazamaz.

Ana dizindeki dosyalar

DosyaNe içerirKim yazarAnlatıldığı sayfa
.envIVRALO_*=value satırları biçiminde ayarlar ve sağlayıcı anahtarları.Siz; ivralo init .env.example'ı kopyalar ve modeli ayarlarOrtam değişkenleri
mcp.jsonMCP sunucuları ve her sunucunun araçlarını hangi uzmanların taşıdığı. Yerini IVRALO_MCP_CONFIG belirler.ivralo mcp add ve remove ya da sizMCP sunucuları
brand.jsonBütün PDF'lerin, belgelerin, sunumların, çalışma kitaplarının ve grafiklerin kullandığı kurumsal renkler. Yerini IVRALO_BRAND_FILE belirler.ivralo init --home varsayılan dosyayı kopyalar; siz düzenlersinizaşağıda
keybindings.jsonVarsayılanından farklı bir tuşa taşınmış oturum tuşları.SizSlash komutları ve tuşlar
permissions.jsonShell için izin ve red önekleri, host'lar, shell zaman aşımı ve başında kimse olmayan run'ların kullanabileceği araçlar. Yerini IVRALO_PERMISSIONS belirler.Yalnızca sizpermissions.json
databases.jsonAnalistin sorgulayabileceği adlandırılmış veritabanları; her biri URL'sinin hangi değişkende olduğunu belirtir. Yerini IVRALO_DATABASES belirler.Sizaşağıda
identifiers.jsonIncident kanıtında maskelenecek tanımlayıcılar. Yerini IVRALO_IDENTIFIERS belirler.SizGizlilik ve maskeleme
schedules.jsonHer zamanlama için bir girdi: adı, ne zaman çalışacağı, isteği ve kime e-posta atabileceği. Yerini IVRALO_SCHEDULES belirler.ivralo schedule add ve removeZamanlamalar
trusted.jsonGüvenilir saydığınız ya da reddettiğiniz klasörler.ivralo trust, oturumun sorduğu soru, ivralo init --trust, trust içeren bir API isteğiaşağıda
api-tokenYerel API'nin bearer token'ı, tek satır.İlk ivralo serve ya da ivralo init --token; ivralo serve --new-token yenilerYerel API
gitconfigivralo'nun kendi git adı ve e-postası, git'in yapılandırma biçiminde.ivralo init --serverTaslak pull request'ler
google-token.jsonGoogle oturum açma token'ı. Yerini IVRALO_GOOGLE_TOKEN belirler.ivralo google login; logout silerGoogle Workspace
skills.local/assignments.jsonKurulu her skill'in hangi uzmanlara ait olduğu. IVRALO_SKILLS_LOCAL_DIR ile birlikte yer değiştirir.ivralo skills install, assign, unassign, create, removeSkill kurmak

Bunların yanında şunlar da bulunur: ivralo ile gelen skill rafı skills/, sizin kurduğunuz skill'ler skills.local/, ivralo'nun bir repo'nun dışında çalıştığı yer workspace/; ivralo kendisi bir PostgreSQL kümesi kurduysa o küme de pg/ altındadır (ayrıntılar PostgreSQL sayfasında).

api-token ve trusted.json yalnızca sahibi okuyabilecek şekilde yazılır. Grubun ya da herkesin yazabildiği ya da bozulmuş bir trusted.json hiçbir klasörü güvenilir saymaz.

Çalışma alanındaki .ivralo/ dosyaları

DosyaNe içerirNe zaman geçerliAnlatıldığı sayfa
.envBu repo'ya özel ayarlar; ana dizindekilerin önüne geçer, shell'den gelenlerin önüne geçemez. IVRALO_HOME, IVRALO_MODE, IVRALO_FORGE_GH ve IVRALO_GITHUB_URL'yi hiçbir zaman ayarlayamaz.Yalnızca güvenilen bir klasördeOrtam değişkenleri
permissions.jsonBu repo'nun ana dizindeki dosyaya eklemeleri. Diyalogdaki p buraya yazar.Red girdileri her zaman; izin girdileri yalnızca güvenilen bir klasördepermissions.json
databases.jsonBu repo'nun adlandırılmış veritabanları. Aynı ad iki dosyada da varsa bu dosyadaki geçerlidir.Yalnızca güvenilen bir klasördeaşağıda
identifiers.jsonBu repo'da maskelenecek tanımlayıcılar; ana dizindekilerle türlerine göre birleştirilir.Yalnızca güvenilen bir klasördeGizlilik ve maskeleme

ivralo'nun bu repo için tuttuğu durum da aynı klasördedir: dosya geçmişi, değişiklik kayıtları, planlar, bekleyen changeset'ler, kod dizini, incident raporları, kasetler, dışa aktarılan konuşmalar ve zamanlama log'ları. Ayrıntılar Durum sayfasında.

IVRALO.md ise .ivralo/ içinde değil, repo'nun kökündedir. Ayrıntılar IVRALO.md sayfasında.

brand.json

{
  "appName": "ivralo",
  "primary": "#0E9384",
  "secondary": "#115E59",
  "accent": "#2DD4BF",
  "text": "#1F2937",
  "bg": "#F0FDFA",
  "grid": "#D9E7E4",
  "zebra": "#F6FCFB",
  "logo": null
}

primary zorunludur. Bunlar yalnızca varsayılan değerlerdir: bir istekte başka renkler isterseniz ajan o belge için ayrı bir palet kullanır ve bu dosyaya dokunmaz. logo bir görsel dosyasını gösterebilir; yol, brand.json'ın bulunduğu klasöre göredir.

databases.json

{
  "orders": { "description": "the shop's orders replica", "env": "ORDERS_DATABASE_URL" }
}

Her girdide URL'nin kendisi değil, SQLAlchemy URL'sini tutan ortam değişkeninin adı yazar; bu yüzden dosyada gizli hiçbir bilgi bulunmaz. URL'yi ana dizindeki .env'e ya da repo'daki .ivralo/.env'e koyun. Bütün bağlantılar salt okunurdur, bu değişkenlerin hiçbiri Python worker'ına ulaşmaz ve bir girdi IVRALO_DB_URL gibi ivralo'nun kendi kimlik bilgilerinden birini asla gösteremez. IVRALO_SQL_URL ayarlanmışsa, dosyalardan biri bu adı kendisi tanımlamadıkça default adlı bağlantı odur. Ayrıntılar Belgeler ve veri sayfasında.

trusted.json

{
  "version": 1,
  "folders": { "/srv/app": { "trusted_at": "2026-10-20T09:12:00+00:00", "by": "cli" } },
  "declined": { "/home/me/clones/unknown": { "at": "2026-10-21T14:03:00+00:00", "by": "tui" } }
}

Klasörler çözümlenmiş yollarıyla kaydedilir; bu yüzden taşınan bir klasör için yeniden sorulur. by alanı tui, cli, api ya da init olur. Bu dosya klasöre değil, ana dizine aittir: bir repo kendi güvenini yanında getiremez ve hiçbir araç modelin bir klasörü güvenilir saymasına izin vermez. Dosyanın içeriğini ivralo trust --list gösterir, bir girdiyi ivralo trust --revoke siler.

assignments.json

{
  "version": 1,
  "skills": { "runbook-style": { "agents": ["investigator"] } }
}

Sahip, Yetkiler ve ön ayarlar sayfasındaki bir preset anahtarıdır. Dosya, anlattığı skill'lerle aynı yerde durur; bu yüzden skills.local/ silinirse bu bağlar da silinir.