Hybrid AI Coding Agent — Powerful & Token-Efficient
Local-first, tanpa server. Tugas mekanis dikerjakan model murah, tugas penalaran dikerjakan model besar. Dirancang seperti Hermes Agent & OpenClaw — skills, memory, sessions.
curl -fsSL https://raw.githubusercontent.com/FerzDevZ/dhybrid-agent/main/install.sh | bashInstaller: clone repo ke ~/.dhybrid-agent, buat venv, pasang dependensi,
buat symlink ~/.local/bin/dhybrid, dan siapkan .env dari .env.example.
Lalu isi API key dan jalankan dhybrid repl (buka terminal baru).
Variabel opsional:
DHYBRID_INSTALL_DIR— direktori instalasi (default:~/.dhybrid-agent)DHYBRID_BIN_DIR— direktori symlink binary (default:~/.local/bin)DHYBRID_BRANCH— branch git (default:main)DHYBRID_REPO_URL— repo URL (default: GitHub)DHYBRID_SKIP_ENV=1— lewati pembuatan.envDHYBRID_USE_UV=1— gunakanuvuntuk install lebih cepat (butuhuvterpasang)
dhybrid install # reinstall/update via installer
dhybrid install --use-uv # pakai uv (lebih cepat)
dhybrid install --branch main # branch spesifik
dhybrid install --install-dir ~/my-dhybrid # direktori customcd dhybrid-agent
python3 -m venv .venv && source .venv/bin/activate
pip install -e ".[dev]" # atau (lebih cepat): uv pip install -e ".[dev]"
cp .env.example .env # isi API key yang kamu punyapytest -q # semua test
pytest -q -n auto # lebih cepat (pytest-xdist, paralel)
pytest -q --cov=src/dhybrid # laporan coverage
bandit -q -r src/dhybrid -c .bandit.yml # static security scan
pip-audit # cek kerentanan dependensi
pre-commit install # ruff lint otomatis sebelum tiap commitdhybrid repl # sesi interaktif — auto-resume sesi terakhir proyek ini
dhybrid repl --fresh # mulai sesi BARU (lewat konteks lama)
dhybrid run "perbaiki bug di calc.py lalu jalankan test"
dhybrid --cwd /path/proyek repl # kerja di proyek lain
dhybrid tokens # dashboard token & biaya semua sesi
dhybrid resume <session_id> # lanjutkan sesi lama
dhybrid run --json "cek repo" # output JSON terstruktur (scripting/CI)
dhybrid doctor # diagnosa config, key, chain, allowlist, skill
dhybrid install # reinstall/update installer
dhybrid install --use-uv # reinstall pakai uv (lebih cepat)read_document path/laporan.pdf # PDF/DOCX/XLSX/PPTX/HTML → markdown
# (via markitdown; dulu cuma file teks)
/help /model [preset] /tokens /compact /clear /sessions /skills /skill <nama|ls|info|rm> /quit
/skill rm <nama> hanya menghapus skill workspace (hasil auto-learn); skill
bawaan ditolak. Auto-skill bisa dimatikan: skills.auto_learn: false di config
atau DHYBRID_NO_SKILL=1. Debug: DHYBRID_DEBUG=1 menyimpan dump konteks &
hasil tiap run ke ~/.dhybrid/debug/.
|
🖥️
CLI / REPL
ui/
|
🧠
Agent Loop
agent/ (ReAct)
|
⚡
Efficiency
efficiency/
|
🔗
LLM Layer
llm/
|
💾
Persistence
session/
|
src/dhybrid/
├── llm/ client multi-provider + estimator token
├── efficiency/ budget, context (compaction), cache, lazy policies
├── agent/ loop ReAct, hybrid router, hooks, parsing
├── tools/ terminal, files, patch, search, git, tests, todo, memory, subagent
├── session/ store SQLite, memori FTS5, konteks sesi
├── skills/ loader SKILL.md + auto-inject
├── subagents/ delegasi agent terisolasi
└── ui/ repl, commands, statusline, render
config/default.yaml — model utama, budget, preset provider:
dhybrid repl --model anthropic-big # model utama = Claude Sonnet
dhybrid repl --model gemini-fast # model kecil = Gemini Flash
export DHYBRID_MODEL=gpt-4o # atau via envPreset tersedia (21): openai-fast/big, anthropic-fast/big, openrouter-fast/big, gemini-fast/big, groq-fast, deepseek-fast, bynara-fast/medium/big (route https://router.bynara.id/v1), dan opencode-zen-* (9 preset route https://opencode.ai/zen/v1 — 6 di antaranya gratis tanpa API key: fast/big/codex/nemotron/laguna/ling/mimo/north, model *-free).
Default model = Gemini (gemini-flash-latest, via /v1beta/openai). Tanpa key Gemini, dhybrid jalan sebagai chatbot hanya dengan provider yang punya key; pilih model kapan saja via /settings (bisa input manual) atau dhybrid --model <preset>.
Provider toggle — hidup/matikan provider lewat /settings (opsi 5). Provider yang dinonaktifkan tidak akan dipakai sebagai model utama maupun di escalation chain.
Lihat docs/token-efficiency.md untuk detail 12 teknik + cara mengukur. Inti:
- Agent TIDAK menulis kode yang tidak diminta (lazy policies).
- Konteks lama diringkas (compaction), bukan dihapus.
- Prompt caching memangkas biaya input antar turn.
- Router mengirim kerja mekanis ke model murah.
- Semua terukur:
/tokensmenampilkan token, cache-hit, dan biaya per sesi.
python -m tests.benchmarks.run_bench # mode hemat ON
python -m tests.benchmarks.run_bench --off # pembanding (tanpa teknik hemat)Bandingkan dua laporan di docs/benchmark-*.md untuk melihat % penghematan nyata.
📚 Masuk Perpustakaan → — pilih jalur: pemula, pengguna, pengembang.
| 📌 Tujuan | 📄 Baca |
|---|---|
| 🌱 Baru mulai (langkah demi langkah) | docs/GETTING_STARTED.md |
| Instal & update | Instalasi |
| Langsung pakai | Quickstart |
| Semua perintah (CLI + slash) | docs/QUICK_REFERENCE.md |
| Panduan lengkap end-to-end | docs/COMPLETE_GUIDE.md |
| Konfigurasi lanjutan | docs/ADVANCED_USAGE.md |
| Arsitektur sistem | docs/architecture.md |
| 12 teknik hemat token | docs/token-efficiency.md |
| Dev mendalam per modul | docs/TECHNICAL_DOCS.md |
| Multi-bahasa kode | docs/MULTI_LANGUAGE_GUIDE.md |
| Hasil audit bug & perbaikan | docs/BUGS_AUDIT.md |
| Roadmap & perencanaan | docs/roadmap.md |
| Riwayat rilis | CHANGELOG.md |