
DJ Chat AI di terminal dengan tampilan antarmuka interaktif (Rich & Prompt-Toolkit), mendukung Gemini, OpenAI, DeepSeek, Ollama, dan LocalAI.
.txt, .pdf, .docx, gambar OCR) untuk dijadikan konteks obrolan lewat perintah /file./provider, /model).~/.config/ai-chat-cli/sessions) dan konfigurasi tersimpan permanen; judul chat dapat diganti dari tombol Rename Chat atau perintah /rename.~ berarti angka estimasi karena provider tidak mengirim metadata usage.python3-venv untuk membuat virtualenvhttp://127.0.0.1:11434 (untuk model lokal, termasuk DeepSeek lokal)http://127.0.0.1:8080Di Ubuntu/Debian:
sudo apt update
sudo apt install python3 python3-venv python3-pip
# Masuk ke folder project
cd ~/ai-chat-cli
# Buat venv dengan Python 3 sistem (disarankan)
./setup-venv.sh
source .venv/bin/activate
# Jalankan aplikasi
./aichat
Script setup-venv.sh akan membuat ulang .venv, memasang dependency utama,
dan memasang package project dalam mode editable.
Cara paling mudah untuk menginstall di sistem Debian/Ubuntu — tidak perlu setup venv manual.
Download file .deb dari halaman Releases, lalu install:
sudo dpkg -i aichat_1.3.5b0_all.deb
Repo ini sekarang juga punya workflow GitHub Actions yang akan build dan
upload file .deb otomatis saat tag didorong ke GitHub atau saat release
dipublish.
Workflow ini mengunggah dua asset: paket standar dan varian -docs yang
menyertakan dependency fitur dokumen.
Perbedaan asset release:
aichat_<versi>_all.deb
Paket standar untuk chat terminal utama.aichat_<versi>_all-docs.deb
Paket standar + dependency fitur dokumen seperti PDF, DOCX, dan OCR gambar.-docs tetap lebih optimal jika tesseract-ocr terpasang di sistem.Setelah terinstall, langsung jalankan:
aichat
git clone https://github.com/djrecycle/ai-chat-cli.git
cd ai-chat-cli
# Build package (butuh python3 & pip3)
chmod +x build-deb.sh
./build-deb.sh
# Install hasil build
sudo dpkg -i dist/aichat_1.3.5b0_all.deb
Untuk menyertakan fitur dokumen (Pillow, pypdf, pytesseract, python-docx):
./build-deb.sh --docs
sudo dpkg -r aichat # hapus package
sudo dpkg -P aichat # hapus package + konfigurasi
Gunakan cara ini jika ingin mengontrol langkah instalasi sendiri:
cd ~/ai-chat-cli
python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -r requirements.txt
pip install -e .
aichat --help
aichat
Penting: Jangan buat venv dari terminal Cursor IDE — bisa ikut memakai Python AppImage Cursor dan venv jadi rusak (
source .venv/bin/activategagal /./aichatcrash). Gunakan terminal biasa di laptop Anda.
Untuk membaca PDF, DOCX, dan gambar OCR lewat /file, install dependency opsional:
source .venv/bin/activate
pip install ".[documents]"
Jika muncul error This environment is externally managed, berarti pip sedang
dijalankan ke Python sistem. Aktifkan .venv dulu atau panggil pip dari venv:
.venv/bin/python -m pip install ".[documents]"
Untuk OCR gambar, install Tesseract di sistem:
sudo apt install tesseract-ocr tesseract-ocr-ind
Jika venv sudah aktif:
aichat
Tanpa mengaktifkan venv:
./aichat
Atau langsung via modul Python:
.venv/bin/python -m chat_cli
Jika dependency tidak berubah, cukup jalankan lagi aplikasinya. Jika dependency berubah atau venv rusak:
./setup-venv.sh
source .venv/bin/activate
JSONDecodeError / PyPI timeoutJika pip install gagal parse JSON dari pypi.org, itu masalah koneksi ke PyPI (bukan bug project). Solusi:
# Opsi 1 — pakai script setup (sudah ada fallback mirror + paket apt)
./setup-venv.sh
# Opsi 2 — mirror manual
source .venv/bin/activate
pip install --no-cache-dir \
-i https://mirrors.aliyun.com/pypi/simple/ \
--trusted-host mirrors.aliyun.com \
-r requirements.txt
pip install -e .
# Opsi 3 — paket Ubuntu (offline-friendly)
sudo apt install python3-venv python3-click python3-rich python3-prompt-toolkit
python3 -m venv --system-site-packages .venv
source .venv/bin/activate
pip install --no-deps --no-build-isolation -e .
Berikut adalah cara memanfaatkan beberapa fitur unggulan DJ Chat Ai:
Saat menggunakan model yang mendukung proses berpikir (seperti gemini-2.5-flash-thinking atau model reasoning Ollama), terminal akan menampilkan blok khusus bernama 🧠 Proses berpikir.
F2), lalu klik judul ▶ 🧠 Proses berpikir untuk membukanya (expand)./thinking on atau /thinking off langsung di kolom input.Aplikasi ini sudah sepenuhnya mendukung kontrol Mouse di terminal!
Aplikasi secara cerdas mem-parsing hasil teks model Anda:
$\rightarrow$) akan diubah langsung menjadi simbol rapi (→).# Default (Ollama) — mode chat interaktif
aichat
# Bantuan & versi
aichat --help
aichat --version
# Opsi global (Click)
aichat --model qwen2.5:1.5b --provider ollama
aichat -m qwen2.5:1.5b -p ollama -t 0.8
# Subcommand
aichat ask "Apa itu Python?"
aichat ask --file ./README.md "Ringkas dokumen ini"
aichat models
aichat status
aichat config
aichat config --save
# Atau via modul Python
python -m chat_cli
python -m chat_cli ask "Halo"
Saat mengetik di input chat, aplikasi akan memberi suggestion abu-abu untuk
command seperti /file, /provider, /model, serta prompt dari riwayat.
Tekan tombol panah kanan atau Ctrl-F untuk menerima suggestion.
| Perintah | Keterangan |
|---|---|
/file <path> [pertanyaan] | Baca file teks, DOCX, PDF, atau gambar OCR |
/file | Buka file browser CLI, lalu ringkas file yang dipilih |
/file --browse [pertanyaan] | Buka file browser CLI dengan instruksi khusus |
/help | Bantuan |
/new | Buat sesi chat baru |
/delete | Hapus sesi chat aktif |
/rename <judul> | Ganti judul sesi chat aktif |
/project | Lihat project aktif dan daftar project |
/project new <nama> | Buat folder project dan chat baru di dalamnya |
/project <nama> | Buka project yang sudah ada |
/project move <nama> | Pindahkan chat aktif ke project tertentu |
/project rename <nama> | Ganti nama project aktif beserta seluruh chat di dalamnya |
/project delete confirm | Hapus project aktif beserta seluruh chat di dalamnya |
/project system [prompt] | Lihat atau atur system prompt khusus project aktif |
/project system reset | Hapus system prompt khusus project dan kembali memakai system global |
/project file [path] | Tambahkan file sebagai referensi permanen project; tanpa path akan membuka browser file |
/project files | Tampilkan system dan daftar file referensi project |
/project file remove <nomor> | Hapus file referensi berdasarkan nomor dari /project files |
/models | Daftar model |
/models all | Tampilkan semua model ke layar chat |
/model <nama> | Ganti model |
/provider ollama|localai|openai|gemini|deepseek | Ganti backend |
/apikey <key> | Simpan API key untuk provider aktif |
/clear | Hapus riwayat |
/regen | Generate ulang jawaban terakhir/terpilih |
/stop | Hentikan jawaban AI yang sedang diproses (TUI: tombol [■] atau Esc) |
/mouse on|off | Ganti mode klik atau blok teks di TUI |
/theme [dark|midnight|forest|light] | Lihat atau ganti tema TUI |
/accent <preset|#RRGGBB> | Lihat atau ganti warna aksen TUI |
/system | Lihat system prompt aktif |
/system <teks> | Ubah system prompt aktif |
/system reset | Kembalikan system prompt ke default |
/thinking on|off | Tampilkan/sembunyikan proses berpikir |
/status | Cek koneksi |
/save | Simpan config |
/exit | Keluar |
Saat /thinking on, alur berpikir ditampilkan dalam blok visual terpisah
berlabel Proses berpikir, sedangkan respons final tampil sebagai Jawaban utama.
Untuk mengecek prompt internal yang sedang dipakai, jalankan /system.
Untuk mengubahnya, gunakan /system <teks baru>, lalu /save jika ingin
perubahan itu tersimpan untuk sesi berikutnya.
/new, /delete, /rename, /project, /regen, dan /mouse tersedia di TUI full-screen yang
menjadi mode default saat menjalankan aichat.
Arahkan pointer mouse ke ikon pada toolbar, sidebar, atau aksi jawaban untuk menampilkan keterangan fungsi ikon di status bar tanpa perlu mengkliknya.
Tema dan aksen dapat diganti langsung tanpa restart. Kontrolnya berada di header: klik ikon ◐ untuk tema atau ◆ untuk aksen. Tema dan aksen aktif ditampilkan di samping kedua ikon. Command berikut juga dapat digunakan:
/theme
/theme midnight
/theme forest
/theme light
/accent purple
/accent #ff8800
Tema tersedia: dark, midnight, forest, dan light. Preset aksen tersedia: amber, cyan,
green, blue, purple, pink, dan red. Warna kustom harus menggunakan HEX enam digit.
Pilihan tampilan disimpan otomatis ke ~/.config/ai-chat-cli/config.json.
Klik ikon + di sidebar atau ikon ▣ di toolbar, ketik nama project, lalu tekan Enter. Chat baru berikutnya otomatis dibuat di dalam project aktif. Folder project dapat diklik di sidebar untuk membuka chat terakhir di dalamnya. Klik folder yang sudah terbuka sekali lagi untuk collapse/menyembunyikan daftar chat; klik kembali untuk expand.
/project new Website Toko
/project new Belajar Python
/project Website Toko
/project move Belajar Python
/project rename Belajar Python Lanjutan
/project delete confirm
Chat lama yang belum memiliki project otomatis ditampilkan dalam folder Umum. Data project
disimpan di ~/.config/ai-chat-cli/projects.json, sedangkan isi chat tetap berada di folder
~/.config/ai-chat-cli/sessions. Project aktif juga dapat diganti namanya atau dihapus melalui
ikon ✎ dan × di bawah daftar project pada sidebar. Penghapusan baru dijalankan setelah
mengetik confirm, dan akan menghapus seluruh chat di dalam Project tersebut. Folder Umum
dilindungi sehingga tidak dapat diganti namanya atau dihapus.
System global berlaku untuk semua chat dan tetap dikelola dengan /system. Setiap project dapat
memiliki instruksi tambahan sendiri. System project otomatis digabung dengan system global ketika
AI menjawab chat di project tersebut.
/project system Kamu adalah asisten dokumentasi untuk project ini.
/project system
/project system reset
Ikon ⚙ pada bagian System project di sidebar digunakan untuk mengedit instruksi project.
System project tersimpan otomatis; tidak perlu menjalankan /save.
Klik ikon ⌑ di bawah isi System project untuk memilih file melalui browser terminal, atau gunakan:
/project file ./README.md
/project file ./dokumen/arsitektur.pdf
/project files
/project file remove 1
Isi file diekstrak dan disimpan di ~/.config/ai-chat-cli/projects.json, sehingga tetap menjadi
bahan referensi seluruh chat dalam project walaupun file aslinya dipindahkan. Format yang didukung
sama dengan /file: teks, PDF, DOCX, dan gambar melalui OCR. Setiap project dapat menyimpan hingga
8 file; isi setiap file dan total konteks dibatasi agar prompt tidak membesar tanpa kendali.
Contoh membaca file di mode chat:
/file ./README.md ringkas isi dokumen ini
/file ./laporan.docx ambil poin penting
/file ./kontrak.pdf jelaskan risiko utama
/file ./nota-belanja.jpg baca teks pada gambar
/file "~/Documents/catatan rapat.txt" buatkan poin keputusan
/file
/file --browse jelaskan poin penting dan risiko utamanya
Di file browser TUI, folder dan file dapat langsung diklik. Klik folder untuk membukanya;
klik file untuk memuatnya ke chat dan langsung meminta jawaban AI. Keyboard tetap dapat dipakai:
ketik nomor untuk masuk folder atau memilih file, .. untuk naik folder, /teks untuk filter
nama file, / untuk menghapus filter, dan q untuk batal.
File teks seperti .txt, .md, .py, .json, .csv, dan log bisa dibaca langsung.
Untuk DOCX, PDF, dan gambar, install paket opsional seperti di bagian
Instalasi fitur dokumen:
pip install ".[documents]"
Untuk membaca gambar (.png, .jpg, .jpeg, .webp, .tif, .tiff, .bmp, .gif),
install aplikasi OCR Tesseract di sistem:
sudo apt install tesseract-ocr tesseract-ocr-ind
[!IMPORTANT] Dukungan gambar asli saat ini hanya tersedia pada provider Gemini dan Ollama. Provider OpenAI, DeepSeek, dan LocalAI pada aplikasi ini belum menerima gambar asli; gambar diproses melalui Tesseract OCR dan hanya teks hasil ekstraksinya yang dikirim ke model.
Gemini dan Ollama mengirim gambar langsung sebagai input multimodal sehingga model vision dapat memahami objek, diagram, warna, tata letak, dan teks dalam gambar. Pastikan model yang dipilih memang mendukung input atau output gambar.
| Provider | Kegunaan | Contoh model yang didukung |
|---|---|---|
| Gemini | Memahami gambar | gemini-3.5-flash, gemini-3-flash-preview, gemini-2.5-flash, gemini-2.5-pro, gemma-4-26b-a4b-it, gemma-4-31b-it |
| Gemini | Generate dan edit gambar | gemini-3.1-flash-lite-image, gemini-3.1-flash-image, gemini-3-pro-image, gemini-2.5-flash-image |
| Ollama | Memahami gambar secara lokal | granite3.2-vision:2b, qwen2.5vl:3b, gemma3:4b, gemma3:12b, gemma3:27b, llama3.2-vision:11b |
| Ollama | Generate gambar | Belum didukung oleh integrasi aplikasi ini |
Daftar tersebut merupakan contoh model yang diketahui mendukung gambar, bukan daftar lengkap. Ketersediaan model Gemini bergantung pada API key dan region. Model Ollama harus diunduh terlebih dahulu dan ukuran model perlu disesuaikan dengan RAM/CPU/GPU komputer.
Contoh memahami gambar:
/file ./foto-studio.jpg jelaskan semua yang terlihat pada gambar ini
/file ./diagram.png jelaskan alur diagram ini secara bertahap
Ukuran gambar maksimum untuk upload langsung adalah 15 MB. Untuk laptop dengan RAM 8 GB tanpa GPU
diskrit, gunakan granite3.2-vision:2b; qwen2.5vl:3b dan gemma3:4b membutuhkan lebih banyak RAM
dan biasanya lebih lambat.
Pilih provider Gemini dan model image, lalu tulis prompt seperti pesan chat biasa. Model yang
direkomendasikan adalah gemini-3.1-flash-image; gunakan gemini-3-pro-image untuk pekerjaan
visual profesional yang lebih kompleks.
/model gemini-3.1-flash-image
Buat ilustrasi studio musik futuristik dengan pencahayaan neon, rasio 16:9
Gambar yang dihasilkan disimpan otomatis ke ~/Pictures/DJ-Chat-AI/, kemudian lokasi file
ditampilkan pada jawaban chat. Untuk mengedit gambar, pilih gambar melalui tombol [File] saat
model image aktif, lalu sertakan instruksi perubahan, misalnya "ubah latar menjadi matahari terbenam".
Catatan: PDF hasil scan biasanya tidak punya teks tertanam. Ubah halaman PDF scan menjadi gambar,
lalu baca dengan /file gambar.png ..., atau jalankan OCR PDF di luar aplikasi terlebih dahulu.
Edit ~/.config/ai-chat-cli/config.json:
{
"provider": "ollama",
"ollama": {
"base_url": "http://127.0.0.1:11434",
"model": "qwen2.5:1.5b"
},
"deepseek": {
"base_url": "https://api.deepseek.com",
"model": "deepseek-chat",
"api_key": ""
},
"localai": {
"base_url": "http://127.0.0.1:8080",
"model": "gpt-3.5-turbo",
"api_key": ""
},
"system_prompt": "Kamu adalah asisten AI yang ramah...",
"temperature": 0.7,
"show_thinking": true
}
Environment:
export AI_CHAT_PROVIDER=localai
ollama serve (biasanya sudah jalan) + model (ollama pull qwen2.5:1.5b)http://127.0.0.1:8080 dengan endpoint OpenAI-compatibleNo reviews yet. Be the first to rate this tool.
Sign in to leave a review.