Skip to main content

mico — local coding agent for Apple Silicon (MLX) and Linux

Project description

mico ⚓

Local coding agent for Apple Silicon and Linux. Runs your model. On your machine. End-to-end.

                          ⚓
                       ┌──────┐
                       │ mico │
                       └──────┘

Status: alpha (0.1.1). API ve CLI değişebilir.

Ne işe yarar?

mico, terminalinden çalışan, yerel LLM'lerle (MLX / Ollama / OpenAI uyumlu sunucular) konuşan bir coding agent'tır:

  • Yapısal araç çağrıları (read_file, replace_in_file, bash, run_tests, grep_code, ...)
  • Otomatik patch + test loop
  • Oturum kalıcılığı, kompakt geçmiş özetleme
  • Donanıma göre profil önerisi
  • Bedava, açık kaynak, telemetry yok

Gereksinimler

  • macOS (Apple Silicon önerilir) veya Linux
  • Python 3.11+
  • 16 GB+ unified memory (8B model için 8 GB yeter, 14B+ için 24 GB+)

Hızlı kurulum

pip install mico-agent            # core
pip install 'mico-agent[mlx]'     # Apple Silicon MLX backend ile
mico                        # ilk çalıştırma → wizard

İlk açılışta mico:

  1. Donanımı tespit eder (CPU, RAM, GPU/Neural Engine)
  2. ~/Desktop/models/, HF cache, LM Studio'yu tarayıp yerel modelleri listeler
  3. Donanım × model eşleşmesinden bir profil önerir, onaylatır
  4. Tercihleri ~/.mico/ altına kaydeder ve ~/.mico/setup-complete oluşturur

Sonraki açılışlar: Her açılışta hızlı model seçim ekranı gösterilir — Enter'a basarak önceki seçimi kabul edebilirsin ya da farklı bir model seçebilirsin. Kurulum sihirbazı tekrar çalışmaz; yalnızca model seçimi sorulur.

Akış farkları:

  • mico / mico repl → model seçimi + interaktif REPL
  • mico ask "prompt" → model seçimi + tek seferlik çalıştır, çık
  • mico setup [--force] → sihirbazı sıfırdan çalıştır
  • mico repl --non-interactive → CI/script ortamı, stdin yoktur

Komutlar

mico                    Interaktif chat
mico ask "prompt"       Tek seferlik
mico setup              Wizard'ı tekrar çalıştır (--force ile zorla)
mico models             Algılanan modelleri listele
mico --doctor           Tanı çıktısı (donanım + profil)
mico server-stop        Çalışan model sunucusunu durdur

TUI özellikleri

  • Slash komut paleti: / yazınca komutlar dropdown ile gelir
    • /help /mode /network /thinking /cd /compact /clear
    • /history /save /model /exit
  • Dosya tamamlama: @ yazınca cwd'deki dosyalar autocomplete
  • Alt çubuk: Aktif model · mode · ctx · network · thinking durumu canlı
  • JSON-aware streaming: Model'in {"type":"final","message":"..."} ham JSON'u kullanıcıya gizlenir; sadece temiz mesaj görünür
  • Tool çağrı render'ı: ▸ tool_name(args) + foldlanmış sonuç
  • Spinner: Braille animasyonu (TTY) — düşünüyor → yazıyor geçişi
  • Sıkı kapatma: Ctrl+D'de model server'a SIGTERM → 3sn → SIGKILL
  • Oturum sürdürme: Aynı session'a kaldığı yerden devam veya yeniden başla
  • Trivial chat fast path: selam gibi sohbetler tool loop'u atlar

İlk kurulum

git clone https://github.com/captainonedin/mico ~/mico
~/mico/bin/mico                  # ilk açılış → wizard
# veya PATH'e ekle:
ln -s ~/mico/bin/mico /opt/homebrew/bin/mico   # macOS
ln -s ~/mico/bin/mico ~/.local/bin/mico        # Linux

İlk açılışta:

  1. Sistem Python 3.11+ tespit edilir
  2. Bağımlılıklar listelenir + onay alınır
  3. Mevcut bir venv'de gerekli paketler varsa yeniden indirilmez; kullanmak için onay sorulur
  4. Yoksa ~/.mico/.venv oluşturulup oraya kurulur (PEP 668 uyumlu)
  5. mico kendini venv'den yeniden başlatır

Aktif Python ortamını ve venv durumunu görmek için: mico --doctor

Desteklenen çekirdek akış

Kararlı ve desteklenen yüzey:

Özellik Komut / Araç
Interaktif REPL mico
Tek seferlik mico ask "..."
Model yönetimi mico models
Tanı mico --doctor
Tool loop (bash, read/write, git, tests, http) agent içi otomatik
Slash komutları /help, /mode, /thinking, /compact, /cd, /history, /save, /model, /clear, /exit

Deneysel / varsayılan-kapalı özellikler (kod tabanında var, aktif geliştirme altında):

  • orchestra.py — çok-model architect/worker yönlendirme
  • rag.py — ChromaDB tabanlı yerel RAG (pip install mico-agent[rag] gerekli)
  • Prompt Toolkit TUI (eski) — yeni akış run_single_turn tabanlı

Mimari

Detay: docs/architecture.md.

Güvenlik araçları

mico çekirdek olarak sadece coding/dev iş akışına odaklı. Pentest/security tooling ayrı bir paket olarak yayınlanır:

pip install mico-security   # nmap, ffuf, openssl wrappers; auditing skills

mico-security ayrı repodadır, ayrı izinlerle yönetilir, default'ta yüklü değildir.

İlk kullanım başarı kriterleri

Başarılı bir kurulum şu adımları geçer:

Adım Beklenen çıktı
pip install mico-agent Hata yok
mico --doctor Python yolu, donanım, profil durum görünür
mico setup Model seçim ekranı açılır; profil ~/.mico/profile.json'a kaydedilir
mico ask "merhaba" Yanıt ≤ 30 saniye gelir (soğuk başlatma dahil)
mico models En az 1 model listelenir ya da "model bulunamadı" bilgisi verilir

Sorun varsa: mico --doctor çıktısını issue açarken ekle.

Lisans

Apache-2.0 — bkz. LICENSE ve NOTICE.

Katkı

CONTRIBUTING.md — issue açmadan önce oku.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mico_agent-0.1.1.tar.gz (288.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mico_agent-0.1.1-py3-none-any.whl (275.2 kB view details)

Uploaded Python 3

File details

Details for the file mico_agent-0.1.1.tar.gz.

File metadata

  • Download URL: mico_agent-0.1.1.tar.gz
  • Upload date:
  • Size: 288.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for mico_agent-0.1.1.tar.gz
Algorithm Hash digest
SHA256 0ff78f1195ddbbc8084dff9a9017f1d624287a37dd1baca25c908537374d5974
MD5 bcf6fadb55451cba9cf3e0330193fadb
BLAKE2b-256 876694a14bdbebac8ec454da149daffb39ddd8dae28faab9b581de2e9247b827

See more details on using hashes here.

File details

Details for the file mico_agent-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: mico_agent-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 275.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for mico_agent-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 85a0c6fb485b91b4deb6a54d537579ef48a558e32e7e8d2c3b9b28d6734332c8
MD5 1600ca4047d784b44adf96ba4c969ee9
BLAKE2b-256 8dd16b5db6f68c36efbff0fa01416e71f2e7364d461664ac641126ad090fdeb5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page