Claude jadi satu chat lagi.
aipager menaruh sesi Claude Code-mu di Telegram, di antara keluarga, teman dan tim kerjamu. Semuanya jalan di komputermu.
Sesi Claude Code siap di laptopmu, dalam Mode Auto, mode awal setiap sesi baru.
curl -fsSL aipager.run/install | shLinux & macOS · MIT · sekitar satu menit
Tiga mode. Kamu mulai dari Mode Auto.
Setiap sesi ada di salah satu dari tiga mode, dipilih per sesi dan bisa diganti kapan saja dengan /mode. Mode Tanya berhenti sebelum setiap tindakan. Mode Auto, mode awal setiap sesi baru, membiarkan pemeriksaan keamanan Claude Code sendiri menjalankan tindakan yang aman dan menghentikan yang berisiko untukmu. Mode Akses penuh menjalankan semuanya tanpa pemeriksaan sama sekali. Mode hanya mengatur permintaan izin dari Claude Code, bukan yang lain: di grup, alat yang tidak boleh dipakai sesuai peran anggota tetap ditolak, apa pun modenya.
- ✅ Izinkan · hanya tindakan ini
- ❌ Tolak · Claude memblokir tindakan itu
- 🟢 Selalu izinkan · menambahkan aturan yang ditawarkan Claude, kalau ada
- ⏹ Hentikan · memutus tugasnya, bukan menjawab
Menampilkan satu tombol untuk tiap mode lain; /mode ask, /mode auto dan /mode full langsung mengganti modenya. Sesi baru mulai di Mode Auto kecuali chat ini memilih yang lain di /settings → Sesi baru.
Tanpa mulai ulang, bahkan saat Claude sedang bekerja: aipager menekan Shift+Tab di sesi itu, dan kartunya bilang sedang beralih sampai Claude Code mengonfirmasi mode barunya.
Masuk atau keluar dari Mode Akses penuh memulai ulang sesi, dan percakapannya tetap ada. Hanya admin yang bisa memulai sesi di mode itu atau memindahkannya ke sana (atau kamu, di chat pribadimu sendiri dengan bot).
Mode mengatur permintaan izin, bukan keputusan: saat Claude menanyakan sesuatu, tombolnya tetap masuk ke chatmu, apa pun modenya.
Tiga chat. Sisanya hidupmu sendiri.
- aipagerbot⏳ api · Bekerja · 3:14 · Read ×2 · Bash ×2Chatmu dengan Claude
Satu chat untuk semua sesi. Satu kartu per tugas yang terus memperbarui dirinya sendiri, permintaan yang kamu jawab dengan satu ketukan, dan bilah tersemat yang bilang apa yang menunggu jawabanmu. Pesan biasa masuk ke sesi yang disebut bilah itu; /web mengirim pesan berikutnya ke sesi lain, dan percakapannya lanjut di sana.
/status/new/mode/stop/app/<sesi> <pesan> - BTbackend-teamgrup · mode timSara: @aipagerbot /web jalankan e2e login di stagingGrup timmu
Masukkan bot ke grup, dan siapa pun yang terdaftar bisa menyebutnya. Setiap pesan jalan dengan peran pengirimnya; alat yang tidak boleh dipakai peran itu ditolak sebelum jalan, dan setiap keputusan tercatat di log audit lengkap dengan nama orang yang mengetuknya.
owneradminuserread_only - JJimchatnya sendiri dengan bot🔐 web · Perlu izinmuOrang lain, di chatnya sendiri
Tambahkan chat pribadi rekan timmu dengan bot, dan dia menjalankan sesinya sendiri, dengan perannya sendiri dan folder utamanya sendiri: tugas Claude-nya mulai di dalam folder itu dan tidak membaca apa pun di folder home-mu di luar itu. Kalau ada yang cuma boleh melihat, beri dia read_only di grupmu.
folder utama anggota~/aipager-users/<label>read_only/new
Empat peran, dan satu aturan alat per peran.
Peran yang berlaku adalah peran yang kamu pegang di chat tempat kamu bertindak, dan alat yang tidak boleh dipakai peran itu langsung ditolak sebelum jalan, bukan ditanyakan. Tidak ada apa pun di Telegram atau Mini App yang bisa mengubah siapa saja yang terdaftar: hanya aipager config, di komputer.
| Bisa | owner | admin | user | read_only |
|---|---|---|---|---|
| Mengirim pesan ke sesi | ✓ | ✓ | ✓ | ✕ |
| Izinkan, Tolak, menjawab pertanyaan Claude | ✓ | ✓ | ✓ | ✕ |
| Bash, dan apa pun yang menjalankan kode | ✓ | ✓ | ✕ | ✕ |
| Mode Akses penuh, /settings grup, /update | ✓ | ✓ | chat sendiri | ✕ |
| Di mana sesinya boleh bekerja | di mana saja | di mana saja | folder utama | folder utama |
| Membaca file kredensial (~/.ssh, …) | ✓ | ✓ | ✕ | ✕ |
Pakai seperti chat biasa.
Bukan konsol yang dibungkus tampilan chat: semua yang biasa kamu lakukan di Telegram juga bisa di sini. Bicara ke aipager di jalan pulang, lempar screenshot-nya, kirim ide berikutnya sebelum yang tadi selesai.
- 🎙️Ucapkan saja
Kirim pesan suara dan isinya diubah jadi teks di komputermu sendiri (tidak pernah di cloud siapa pun), ditampilkan balik supaya kamu lihat apa yang didengar aipager, lalu diketik ke dalam sesi seolah-olah kamu yang menulisnya.
0:07🎙️ Yang kudengar: perbaiki test e2e login yang suka gagal - 📎Screenshot bug-nya
Foto dan file masuk ke folder di komputermu dan Claude diarahkan ke path-nya, dengan keteranganmu sebagai pesan, atau “check this: …” kalau tidak ada keterangan. Kirim beberapa sekaligus dan semuanya masuk sebagai satu pesan.
- 📤Ia juga mengirimimu file
Minta dengan kata-katamu sendiri, “kirim screenshot-nya”, dan file-nya datang ke chat sesi itu tepat setelah jawabannya: gambar sebagai foto, video dan audio apa adanya, sisanya sebagai file, beberapa sekaligus sebagai satu album. Tidak pernah pengaturan aipager, kredensial Claude, atau kuncimu: semua itu ditolak sebelum apa pun terkirim.
kirim screenshot-nya - 👀Kirim yang berikutnya sekarang
Pesanmu sampai ke Claude begitu kamu kirim, bahkan di tengah tugas: 👀 selama antrean Claude sendiri masih menahannya, 👍 begitu Claude mengambilnya. ⚡ Kirim sekarang menyerahkannya tanpa menunggu langkah itu selesai.
- ⏸Tidak pernah dibaca sebagai jawaban
Pesan yang kamu kirim saat ada permintaan izin yang belum dijawab akan ditahan dulu, bukan dicampur ke dalam permintaan itu, dan masuk ke sesi begitu kamu menjawabnya.
- 🤖Agen dan perintah latar belakang, semuanya terpantau
Setiap agen latar belakang yang dimulai Claude dapat barisnya sendiri di kartu beserta apa yang sedang dikerjakannya, dan perintah latar belakang yang dibiarkan jalan punya timer-nya sendiri sampai berakhir.
- 🔔aipager yang bilang duluan
Peringatan konteks, percakapan yang diringkas, sesi yang sudah berakhir atau diam saja, tugas yang kelewat lama: kabarnya langsung masuk ke chat, tanpa kamu harus mengecek.
- ⌨️Tombolnya sudah ada di situ
Ada keyboard di bawah kotak pesan: satu tombol per sesi yang berjalan, lalu status, stop dan new, lalu Templat untuk pesan yang selalu kamu ketik ulang dan Perintah untuk yang ditangani Claude Code sendiri.
- 📋/status, seluruh chat sekaligus
Semua sesi dalam satu daftar yang bisa langsung kamu kendalikan: apa yang sedang dikerjakan masing-masing, modelnya, sisa konteksnya, berapa biayanya, apa yang mengantre di belakangnya, lengkap dengan Hentikan, Jawab dan menu lainnya di tiap sesi.
Dasbor, tetap di dalam Telegram.
/app membuka semua sesi sekaligus: satu kotak untuk masing-masing, lengkap dengan cincin konteks, folder, model dan biaya yang sudah terpakai. Tempat menjawab tetap di chat; aplikasinya untuk melihat semuanya dalam sekali pandang, dan untuk hal-hal yang canggung dilakukan di chat, seperti membaca diff atau mengubah pengaturan.
Satu kotak untuk tiap sesi, lengkap dengan cincin konteks, pemiliknya, modelnya dan biaya yang terpakai, dan satu baris di atasnya yang menunjukkan keadaan chat ini: mana yang sedang bekerja, mana yang siap, berapa biaya hari ini, berapa yang sudah berakhir. Tombol + memulai sesi lain: nama, folder dari yang sudah kamu pakai, dan model.
Sesi yang punya permintaan izin atau pertanyaan yang belum dijawab muncul paling atas, beserta apa yang ditanyakannya. Jawab di chat mengirim permintaan itu kembali ke bagian bawah chat, lengkap dengan tombolnya, dan kamu menjawabnya di sana.
Keadaannya, “Bekerja (3:12)” atau “Siap, terakhir aktif 5 menit lalu”, dan satu ketukan untuk Hentikan atau Lanjutkan. Di bawahnya alat-alat terakhir yang dipakai, jawaban terbaru, pengatur model, file yang diubah tugas itu dalam bentuk diff, dan pengaturan sesi itu sendiri.
Aktif secara bawaan, setiap permintaan dicocokkan dengan tanda tangan Telegram sendiri, dan halamannya tidak memuat apa pun dari luar: tidak ada font, tidak ada script. aipager miniapp disable mematikannya.
Dalam bahasamu, sampai ke angkanya.
Yang berubah hanya kata-kata aipager sendiri: kartu, permintaan, tombol, bilah tersemat, /status, Mini App, dokumentasinya. Sesimu tidak: Claude menjawab dalam bahasa yang kamu pakai saat menulis, dan apa yang dikirim aipager ke Claude tetap seperti aslinya. Pilih bahasanya dengan /language, atau biarkan mengikuti aplikasi Telegram-mu.
Bahasa Persia dan Arab dibaca dari kanan ke kiri, dengan angka Persia (۰-۹) atau Arab-Hindi (٠-٩) dan pemisahnya sendiri, baik di Telegram maupun di Mini App. Nama sesi, path, perintah dan kode tetap pada arahnya sendiri.
Tiap bahasa ditulis seperti orang yang memakai aplikasi dalam bahasa itu benar-benar bicara, termasuk kata serapannya, dengan bentuk jamak milik tiap bahasa (bahasa Arab punya enam).
Chat pribadi bisa mengikuti aplikasi Telegram-mu. Grup punya satu bahasa, diatur oleh admin, dan pop-up yang muncul setelah satu ketukan memakai bahasa orang yang mengetuknya.
README dan semua halaman di docs/ ikut diterjemahkan. Kalau terjemahan dan halaman bahasa Inggrisnya berbeda, versi bahasa Inggris yang berlaku.
pnpm test e2e/login --trace onTerminal tetap jadi acuannya.
Claude Code berjalan di terminal sungguhan, di dalam dtach, jadi tidak ada yang perlu membiarkan jendela terbuka. Tiap langkah memicu hook yang mengirim satu datagram ke aipager lewat socket lokal, dan aipager memperbarui satu pesan di chatmu. Jawabanmu kembali lewat jalur yang sama: keputusanmu ke hook yang sedang menahan tindakan itu, atau ketikan ke dalam sesi.
- Claude Codedi dalam dtach, tanpa perlu jendela
- hookjalan di tiap langkah
- aipagersatu proses, sebagai user-mu
- Telegramtoken bot milikmu sendiri
- chatmuchat pribadimu, grup timmu
aipager session api menyambung ke sesi yang sedang berjalan dari terminal mana pun. Ketik di sana, ketik di chat: sesi yang sama. Tutup jendelanya dan sesinya jalan terus, dan sambungannya bahkan tetap ikut sesi itu saat dimulai ulang.
aipager mengetik ke dalam sesi dan mendengarkan event dari Claude Code sendiri. Yang muncul di chatmu berasal dari hook dan percakapan yang tersimpan, bukan dari membaca isi layar terminal.
Hook mengirim satu datagram lalu selesai, sekitar 20 ms dari waktu Claude Code. Kalau aipager tidak sedang mendengarkan, event-nya dibuang begitu saja dan Claude jalan terus; aipager menyusul dari file milik sesi itu sendiri.
Tidak ada perantara.
aipager tidak pernah bicara dengan Anthropic. Satu-satunya yang bicara adalah Claude Code sendiri, dengan login milikmu, di komputermu sendiri. aipager menjalankannya di terminal dan mendengarkan hook yang diterbitkan Claude Code. Tidak ada endpoint hasil bongkaran, tidak ada proxy, tidak ada akun selain akunmu: sesi yang kamu kendalikan dari ponsel adalah sesi yang sama dengan yang kamu kendalikan dari keyboard.
aipager bicara ke Telegram Bot API dengan token bot milikmu sendiri. Tidak ada akun aipager dan tidak ada layanan aipager, dan tidak ada komputer orang lain di antara ponselmu dan komputermu.
aipager hanya menjawab di chat yang tercantum di konfigurasimu. Orang asing yang menemukan bot ini cuma dapat satu baris yang bilang bot itu tidak disetel untuk bicara dengannya; tidak ada satu pun yang dia kirim sampai ke sesi.
aipager hanya mendengarkan di loopback. Mini App keluar lewat tunnel Cloudflare, dan setiap permintaan di sana wajib membawa tanda tangan Telegram; aipager miniapp disable mematikannya.
Token bot dan id chat tersimpan di ~/.config/aipager/aipager.yaml dengan mode 600. Keduanya dijauhkan dari log aipager, dan disensor di mana pun keduanya bisa terselip ke dalamnya.
Tanpa sudo, tanpa setuid. Semua yang ditulisnya ada di folder home-mu, di /tmp atau di folder socket miliknya sendiri, dan setiap proses yang dijalankannya (claude, dtach, pemasangnya) jalan sebagai kamu.
settings.json milikmu yang menentukan apa yang perlu ditanyakan. aipager cuma meneruskan pertanyaannya, tidak pernah memutuskan apa yang boleh jalan, dan tombol sisa dari tugas yang sudah selesai tidak berlaku lagi, jadi tidak bisa bertindak pada pekerjaan yang sedang jalan.
Anggota dan peran hanya berubah lewat aipager config, di komputer. Tidak ada apa pun di Telegram maupun di Mini App yang bisa menambah orang atau memperluas peran siapa pun.
Tiap Izinkan, Tolak dan jawaban masuk ke ~/.claude/aipager-audit.jsonl, yang hanya bisa ditambah, lengkap dengan siapa yang mengetuknya kalau itu di grup.
Empat baris. Simpan di Pesan Tersimpan.
Ketuk salah satu baris untuk menyalinnya. Dua hal dulu: bot milikmu sendiri dari @BotFather (tekan Start di sana), dan Claude Code yang sudah login di komputer ini. Wizard di baris kedua menanyakan sisanya.
Taruh token bot di file yang tidak perlu dibacanya, lalu berikan ini ke Claude Code:
Install aipager for me by following https://aipager.run/agent.md. My Telegram bot token is in ~/.config/aipager/bot-token and my Telegram user id is <your id>.
Lebih suka package manager-mu sendiri? uv, pipx, Homebrew, Docker, Nix, AUR dan Snap. semua cara memasangnya →
Tanya saja.
Tambahkan Claude ke chatmu.
Lalu tutup terminalnya dan nikmati malammu.