CLI-Anything
CLI-Anything, herhangi bir yazılımın kod tabanından tam işlevsel bir komut satırı arayüzü (CLI) üreten, özellikle Claude Code için geliştirilen açık kaynaklı bir yapay zeka kodlama ajanı eklentisidir. GIMP, Blender, LibreOffice gibi uygulamaları hedef gösterin, kaynak kodunu analiz eder ve yazılımı programatik olarak kontrol etmek için kullanılabilir bir CLI üretir.
Sorun: Yapay Zeka Ajanları GUI Yazılımı Kullanamaz
Mevcut yazılım ekosistemi ikiye ayrılır: API tabanlı hizmetler ve sadece grafik arayüzle çalışan masaüstü uygulamaları. API tabanlı servisler, yapay zeka ajanları tarafından kolayca entegre edilebilir. Ancak GIMP, Blender, LibreOffice gibi masaüstü yazılımlar yalnızca insanlar için tasarlanmış GUI sunar, API sağlamaz.
Geleneksel olarak GUI yazılımlarına entegrasyon için:
- El ile özel sarmalayıcılar yazmak gerekir (bakımı zordur).
- Robotik Süreç Otomasyonu (RPA) ile ekran görüntüsü üzerinden otomasyon denenir (kırılgan ve sürdürülemez).
CLI-Anything farklı bir yöntem izler: İnsan davranışını taklit etmek yerine, kaynak koddan GUI’nin arka planındaki API’leri analiz eder ve bunları doğrudan çağıran bir CLI üretir. Böylece yapay zeka ajanınız ekrana gerek duymadan doğrudan komut verebilir.
💡 Eğer ajan iş akışlarınızda hem yerel yazılım hem de harici REST API’leri ile çalışmanız gerekiyorsa, Apidog API test sürecini kolaylaştırır. API isteklerini göndermek, incelemek ve düzenlemek için ücretsiz araçtır. Böylece entegrasyondan önce API’leri doğrulayabilirsiniz.
CLI-Anything Ne Yapar?
CLI-Anything, HKUDS (Hong Kong Üniversitesi Veri Bilimi Laboratuvarı) tarafından geliştirilen MIT lisanslı bir eklentidir. Temel işleyişi şu şekilde:
- Analiz Et: Kod tabanını tarar, GUI eylemlerini temel API’lerle eşler, yazılıma özel bir SOP (standart işletim prosedürü) dokümanı üretir.
- Tasarla: Komut gruplarını, durum modellerini ve çıktı formatlarını belirler.
-
Uygula: Click tabanlı, REPL destekli,
--jsonçıktılı Python CLI oluşturur. -
Testleri Planla: Test planlarını içeren
TEST.mddosyasını hazırlar. -
Testleri Yaz: Birim ve uçtan uca test dosyalarını (
test_core.py,test_full_e2e.py) oluşturur. -
Belgele: pytest çalıştırır, sonuçları
TEST.md’ye ekler. -
Yayınla:
setup.pyve giriş noktaları ile yüklemeye hazır hale getirir.
Sonuçta, sisteminizde çalışan ve aşağıdaki gibi komutlarla kullanılabilen bir CLI elde edersiniz:
which cli-anything-gimp
cli-anything-gimp --help
Tüm oluşturulan CLI’lar; insan tarafından okunabilir tablo çıktısı, --json ile makineye uygun çıktı, kalıcı proje durumu, geri al/yinele ve REPL desteği ile tutarlı bir tasarım sunar.
CLI-Anything Kurulumu
CLI-Anything Python tabanlıdır. Kurulum için:
Gereksinimler
- Python 3.10+
- Hedef yazılımın sistemde kurulu olması
- Desteklenen bir yapay zeka kodlama ajanı (Claude Code birincil, Codex ve OpenCode deneysel)
Claude Code (Birincil Yöntem)
/plugin marketplace add HKUDS/CLI-Anything
/plugin install cli-anything
Claude Code’da /cli-anything komutlarını kullanmaya başlayabilirsiniz.
OpenCode
Depoyu klonlayın, ardından komut dosyalarını ve HARNESS.md dosyasını ~/.config/opencode/commands/ dizinine kopyalayın. Beş eğik çizgi komutu ekler: /cli-anything, /cli-anything-refine, /cli-anything-test, /cli-anything-validate, /cli-anything-list.
Codex
bash CLI-Anything/codex-skill/scripts/install.sh
Qodercli
bash CLI-Anything/qoder-plugin/setup-qodercli.sh
Windows Notu
Eklenti için Git for Windows (bash ve cygpath) veya WSL gereklidir. Yerel Windows kabuğu desteklenmez. cygpath: command not found hatası alırsanız Git for Windows’u kurup tekrar deneyin.
Oluşturulan CLI’ı Kurma
CLI oluşturulduktan sonra:
cd <yazılım>/agent-harness
pip install -e .
-e ile düzenlenebilir kurulum yapılır; kodda değişiklik yaptığınızda tekrar yüklemenize gerek kalmaz.
İlk CLI’nızı Oluşturma
Kurulum sonrası, örneğin GIMP için:
Claude Code’da:
/cli-anything ./gimp
Veya GitHub reposundan:
/cli-anything https://github.com/blender/blender
Otomatik boru hattı başlar. 1. aşamada kaynak kod analiz edilir, GUI eylemlerini temel API’lere eşleyen bir harita ve yazılıma özgü SOP belgesi (GIMP.md) üretilir. 3. aşamada Python Click ile CLI kodu yazılır (her komut --json çıktısını destekler).
Oluşan dizin yapısı:
gimp/
agent-harness/
GIMP.md
setup.py
cli_anything/
gimp/
README.md
gimp_cli.py
core/
utils/
tests/
test_core.py
test_full_e2e.py
TEST.md
Her uygulama için CLI, cli_anything.* ad alanında yer alır (ör: cli_anything.gimp).
Oluşturulan CLI’ı Kullanma
Kurulum sonrası CLI’yı aşağıdaki gibi kullanabilirsiniz:
cli-anything-gimp --help
İnsan Tarafından Okunabilir Çıktı (Varsayılan)
# Yeni proje başlat
cli-anything-gimp project new --width 1920 --height 1080
# Katmanları listele
cli-anything-gimp layer list
# Katman ekle
cli-anything-gimp layer add --name "Background" --type solid --color "#ffffff"
# Filtre uygula
cli-anything-gimp filter apply --name "gaussian-blur" --radius 3
# Dışa aktar
cli-anything-gimp export save --format png --output ./output.png
Yapay Zeka Ajanları için JSON Çıktısı
cli-anything-gimp --json project new --width 1920 --height 1080
# {"status": "ok", "project_id": "proj_abc123", "width": 1920, "height": 1080}
cli-anything-gimp --json layer add -n "Background"
# {"status": "ok", "layer_id": "layer_001", "name": "Background"}
Her komutta tutarlı JSON şeması döner.
Etkileşimli REPL Modu
cli-anything-gimp
Renkli istemler, sekme tamamlama ve kalıcı geçmiş ile etkileşimli bir kabuk sunar.
Geri Al/Yinele
cli-anything-gimp undo
cli-anything-gimp redo
50 seviyeye kadar geri alma desteği bulunur.
CLI’nızı İyileştirme ve Test Etme
Oluşan CLI’yı optimize etmek için:
Genel İyileştirme
/cli-anything:refine /home/user/gimp
Mevcut CLI’yı API yüzeyine göre tarar, eksik komutları ekler.
Odaklanmış İyileştirme
/cli-anything:refine /home/user/blender "parçacık sistemleri ve fizik simülasyonu"
Belirli bir alan için iyileştirme yapar.
Testleri Çalıştırma
/cli-anything:test /home/user/gimp
Tüm test paketlerini çalıştırır, TEST.md dosyasını günceller.
Doğrulama
/cli-anything:validate /home/user/gimp
CLI’nın HARNESS.md spesifikasyonuna uygunluğunu kontrol eder.
Mevcut CLI’ları Listeleme
/cli-anything:list
/cli-anything:list --json
/cli-anything:list --path /home
Gerçek Dünya Kullanım Durumları
GIMP ile Görüntü İşleme
cli-anything-gimp project open --file product.jpg
cli-anything-gimp layer add --name "Watermark" --type image --source watermark.png
cli-anything-gimp layer position --name "Watermark" --x 10 --y 10
cli-anything-gimp export save --format webp --output product-final.webp
LibreOffice ile Belge Oluşturma
cli-anything-libreoffice document open --template invoice-template.ods
cli-anything-libreoffice cell set --address "B5" --value "Acme Corp"
cli-anything-libreoffice cell set --address "C10" --value "1500.00"
cli-anything-libreoffice export pdf --output invoice-2026-001.pdf
Blender ile 3D Render
cli-anything-blender scene open --file product-scene.blend
cli-anything-blender render set --samples 256 --output /renders/product
cli-anything-blender render start --format png
OBS Studio ile Akış Otomasyonu
cli-anything-obs scene set --name "Main Camera"
cli-anything-obs recording start
cli-anything-obs scene set --name "Screen Share"
cli-anything-obs recording stop --output session.mp4
CI/CD Entegrasyonu
CLI-Anything ile oluşturulan CLI’lar, CI/CD boru hatlarında kullanılabilir. Örneğin, bir GitHub Action ile Blender render’ı almak veya LibreOffice’ten PDF üretmek mümkün.
Apidog ile Ajan İş Akışları Oluşturma
CLI-Anything yerel yazılımları otomasyon altına alırken, harici API’lerle çalışmak için Apidog kullanabilirsiniz. Ücretsiz API istemcisi olarak API çağrılarını test etmek, belgelemek ve otomatikleştirmek için idealdir.
Örnek iş akışı:
- Ürün görsellerini GIMP ile işleyin.
- Sonuçları bir bulut depolama API’sine yükleyin.
Apidog ile:
- API kimlik bilgilerini değişken olarak tanımlayın.
- Yükleme uç noktasını örnek dosya ile test edin.
- Doğru yanıtı aldığınızdan emin olun.
- İsteği, ajan betiğinize entegre etmek üzere curl veya kod snippet’i olarak dışa aktarın.
Böylece entegrasyondan önce API’nizin çalıştığına emin olursunuz. Apidog ayrıca otomatik test paketleriyle regresyonları yakalamayı da destekler.
Bilmeniz Gereken Kısıtlamalar
Windows Desteği: Git Bash veya WSL Gerekli
CLI’lar bash benzeri yol işlemeye dayanır. Windows’ta Git for Windows veya WSL gereklidir. PowerShell desteklenmez.
Hedef Yazılım Yüklü Olmalı
Oluşturulan CLI’lar, sarmaladıkları yazılımları içermez. GIMP, Blender, LibreOffice vb. araçlar sistemde kurulu olmalıdır.
Yalnızca Python Çıktısı
Tüm CLI’lar Python Click tabanlıdır. Farklı bir dilde CLI ihtiyacınız varsa ayrıca sarmalayıcı yazmalısınız.
Claude Code Kararlı Platformdur
Claude Code en çok test edilen ve önerilen ortamdır. Codex ve OpenCode entegrasyonu deneysel olup bazı işlevler tutarsız çalışabilir.
Kod Tabanına Bağlı Kalite
Kaynak kodun API’leri açık değilse, bazı komutlar eksik kalabilir. Özellikle kapalı ve monolitik kodlarda kapsam kısıtlı olabilir.
Sıkça Sorulan Sorular
CLI-Anything herhangi bir yazılımla çalışır mı?
Erişilebilir kod tabanına sahip her yazılım için CLI üretilebilir. Özellikle açık kaynaklı ve API’si belirgin yazılımlarda en iyi sonucu verir.
Proje ücretsiz mi?
Evet. CLI-Anything MIT lisanslıdır ve GitHub’da açık kaynaklıdır.
Python bilmek gerekir mi?
Hayır, hiç Python kodu yazmanız gerekmez. Python’un yüklü olması yeterlidir.
Oluşturulan CLI’yı kendi otomasyonumda da kullanabilir miyim?
Evet. CLI, shell script, Makefile, Python veya subprocess destekleyen tüm ortamlarda kullanılabilir.
HARNESS.md nedir?
CLI-Anything ile üretilen CLI’nın komut yapısını, çıktı formatını ve test gereksinimlerini tanımlayan bir spesifikasyon dosyasıdır.
Dahili araçlarımız için de CLI oluşturabilir miyim?
Evet, dosya sisteminizdeki özel yazılımlar için de kullanılabilir. Kaynak kodunuzu dışarı göndermez.
Model Bağlam Protokolü (MCP) ile farkı nedir?
MCP, API tabanlı hizmetlere bağlanmak için standart sunucu protokolü sunar. CLI-Anything ise GUI yazılımlarına yerel CLI oluşturur. Birlikte kullanılabilir.
Top comments (0)