Mirage - AI ajanları için birleşik sanal dosya sistemi
(github.com/strukto-ai)- S3/Google Drive/Slack/Gmail/Redis gibi çeşitli backend'leri tek bir dosya sistemi ağacı olarak mount ederek AI ajanlarının aynı arayüz üzerinden erişmesini sağlar
- Ajanların her servis için yeniden SDK/MCP öğrenmesine gerek kalmadan, Unix tarzı bash araçları ile tüm backend'leri yönetip servisler arası pipeline'ları yerel diskmiş gibi doğal şekilde kurmasına olanak tanır
- Simülasyon ortamı olarak çalıştığı için ajan tarafında yalnızca tek bir dosya sistemi görünür; bash konusunda zaten eğitilmiş bir LLM ise ek sözlük öğrenmeden bunu hemen kullanabilir
- Çoklu kaynak mount: RAM, Disk, Redis, S3 / R2 / OCI / Supabase / GCS, Gmail / GDrive / GDocs / GSheets / GSlides, GitHub / Linear / Notion / Trello, Slack / Discord / Telegram / Email, MongoDB, SSH gibi kaynakları tek bir kökün altında yan yana yerleştirir
- Taşınabilir çalışma alanı: ortam clone edilebilir, snapshot alınabilir ve version'lanabilir; ajan çalıştırmayı başka bir makineye taşırken yeniden başlatma veya yeniden yapılandırma gerekmez
- Uygulama içine embed etme: Python·TypeScript SDK ile FastAPI, Express, tarayıcı uygulamaları gibi tüm async runtime'ların içine sanal dosya sistemini doğrudan vererek ayrı bir process ihtiyacını ortadan kaldırır
- Ajan framework uyumluluğu: OpenAI Agents SDK, Vercel AI SDK (TypeScript), LangChain, Pydantic AI, CAMEL, OpenHands desteklenir
- Hafif CLI + daemon: Claude Code, Codex gibi kodlama ajanlarına bağlanarak tanıdık bash ortamı üzerinden mount edilen kaynaklara erişim sağlar
-
Komut genişletme
ws.command('summarize', ...)ile yeni komut kaydedildiğinde tüm mount'larda kullanılabilirws.command('cat', { resource: 's3', filetype: 'parquet' }, ...)örneğinde olduğu gibi belirli kaynak ve dosya tipi için komut override etme desteklenir; örneğin S3'teki Parquet dosyasındacatçalıştırıldığında ham baytlar yerine JSON satırları çıktılanır
-
2 katmanlı önbellek
- Index Cache: dizin listeleme ve metadata önbellekleme; ilk keşifte API çağrısı yapılır, sonrasında TTL süresi dolana kadar indeks üzerinden yanıt verilir
- File Cache: nesne baytlarını önbelleğe alır; ilk okuma kaynaktan stream edilir, sonraki pipeline'lar önbellekten okunur
- Takılabilir backend'ler: RAM (varsayılan, dosya önbelleği 512MB, indeks TTL 10 dakika) veya Redis (worker/process/makineler arasında paylaşım, yeniden başlatma sonrası önbelleği koruma) seçilebilir
- Apache-2.0 lisansı
2 yorum
Ağın ötesindeki çeşitli sistemlerin tamamını tek bir dosya sistemi olarak ele almaya çalışması, 80'lerde Bell Labs'in Plan 9 ile yapmaya çalıştığı şeye benziyor.
Oo! İlginçmiş