12 poin oleh GN⁺ 2026-02-25 | 2 komentar | Bagikan ke WhatsApp
  • Pi adalah agen coding minimalis berbasis terminal yang menyediakan struktur yang dapat diperluas sesuai workflow pengguna
  • Pengguna dapat menyusun lingkungan pengembangan mereka sendiri dengan menggabungkan ekstensi TypeScript, skill, template prompt, dan tema, lalu membagikannya sebagai paket npm atau git
  • Mendukung lebih dari 15 penyedia AI dan ratusan model, serta memungkinkan pergantian model di tengah sesi atau penambahan model kustom
  • Sesi disimpan sebagai riwayat berbentuk pohon, sehingga dapat kembali ke titik sebelumnya atau mengekspor ke HTML·GitHub gist
  • Dengan meminimalkan fitur inti dan mempertahankan filosofi desain yang berpusat pada ekstensibilitas, pengembang dapat langsung mengimplementasikan hanya fitur yang dibutuhkan atau menambahkannya sebagai paket

Ikhtisar Pi

  • Pi adalah harness coding terminal dengan struktur yang memungkinkan pengguna menyesuaikan alat tanpa mengubah workflow mereka
    • Sebagai komponen yang dapat diperluas, Pi mendukung ekstensi TypeScript, skill, template prompt, dan tema
    • Paket pi yang membundel komponen-komponen ini dapat dipasang dan dibagikan melalui npm atau git
  • Konfigurasi bawaannya kuat, tetapi tidak menyertakan fitur seperti sub-agent atau mode plan
  • Menyediakan empat mode (interaktif, print/JSON, RPC, SDK), dan contoh integrasi nyata dapat dilihat di clawdbot

Model dan penyedia

  • Mendukung lebih dari 15 penyedia dan ratusan model, termasuk Anthropic, OpenAI, Google, Azure, Bedrock, Mistral, Groq, Cerebras, xAI, Hugging Face, Kimi, MiniMax, OpenRouter, Ollama dan lainnya
  • Autentikasi dapat dilakukan dengan API key atau OAuth
  • Ganti model selama sesi dengan perintah /model atau Ctrl+L, dan putar model favorit dengan Ctrl+P
  • Model kustom dapat ditambahkan melalui models.json atau ekstensi

Manajemen sesi

  • Sesi disimpan dalam struktur pohon, dan titik sebelumnya dapat diakses dengan perintah /tree
  • Semua cabang disimpan dalam satu file, serta mendukung pemfilteran jenis pesan dan pelabelan bookmark
  • Dengan /export dapat mengekspor ke HTML, dan dengan /share dapat mengunggah ke GitHub gist serta membuat URL berbagi

Rekayasa konteks

  • Memungkinkan kontrol yang rinci atas context window melalui prompt sistem minimal dan ekstensibilitas
    • AGENTS.md: otomatis memuat panduan proyek saat mulai
    • SYSTEM.md: mengganti atau menambahkan prompt sistem dasar per proyek
    • Compaction: secara otomatis merangkum pesan sebelumnya saat mencapai batas konteks; melalui ekstensi, dapat diterapkan ringkasan berbasis topik atau ringkasan yang memahami kode
    • Skills: paket fungsi yang dimuat saat diperlukan, menjaga cache prompt sambil menyediakan fitur secara bertahap
    • Prompt templates: prompt yang dapat digunakan ulang dan diperluas dengan perintah /name
    • Dynamic context: melalui ekstensi, dapat menyisipkan pesan, memfilter riwayat, mengimplementasikan RAG, dan membangun memori jangka panjang

Queueing pesan

  • Pesan tetap dapat dikirim saat agen sedang bekerja
    • Enter: pesan steering yang diteruskan setelah eksekusi alat saat ini selesai
    • Alt+Enter: pesan follow-up yang diteruskan setelah pekerjaan selesai

Struktur ekstensi

  • Pi dirancang berpusat pada komponen primitif (Primitives), bukan fitur jadi, sehingga pengguna dapat mengimplementasikan fitur sendiri
    • Ekstensi berbentuk modul TypeScript, dengan akses ke alat, perintah, shortcut, event, dan seluruh TUI
    • Contoh ekstensi: sub-agent, mode plan, gate izin, perlindungan path, eksekusi SSH, sandboxing, integrasi MCP, editor kustom, overlay dan lain-lain
    • Bahkan ada ekstensi overlay game, seperti contoh “Yes, Doom runs.”
  • Jika tidak ingin mengimplementasikan sendiri, fitur dapat ditambahkan dengan memasang paket pi
  • Lebih dari 50 contoh ekstensi tersedia secara publik di GitHub

Manajemen paket

  • Ekstensi, skill, prompt, dan tema dapat dibundel sebagai paket lalu dipasang dari npm atau git
    • Contoh:
      $ pi install npm:@foo/pi-tools  
      $ pi install git:github.com/badlogic/pi-doom  
      
    • Mendukung pin versi (@1.2.3 atau @tag), pembaruan menyeluruh dengan pi update, melihat daftar dengan pi list, dan konfigurasi dengan pi config
    • Dapat diuji tanpa instalasi melalui perintah pi -e
  • Paket dapat dicari dan dibagikan melalui kata kunci npm pi-package atau channel Discord

Mode integrasi

  • Interactive: lingkungan TUI penuh
  • Print/JSON: pi -p "query" untuk skrip, --mode json untuk event stream
  • RPC: mendukung integrasi lingkungan non-Node melalui protokol JSON berbasis stdin/stdout
  • SDK: dapat di-embed ke dalam aplikasi, dengan contoh penggunaan nyata di clawdbot

Filosofi desain

  • Pi dirancang untuk memaksimalkan ekstensibilitas dengan meminimalkan inti, sehingga pengguna dapat mendefinisikan sendiri workflow mereka
    • Fitur seperti MCP, sub-agent, popup izin, mode plan, TODO bawaan, background bash tidak disertakan
    • Sebagai gantinya, fungsi yang sama dapat diimplementasikan melalui ekstensi, skill, dan paket, atau dihubungkan ke alat eksternal
    • Mendukung eksekusi dan observasi paralel melalui tmux
  • Pendekatan ini memungkinkan penyusunan lingkungan pengembangan yang dipimpin pengguna
  • Filosofi keseluruhannya dijelaskan lebih lanjut dalam blog post terkait

2 komentar

 
qodot 2026-02-26

Aku suka banget sama pi.

 
GN⁺ 2026-02-25
Pendapat Hacker News
  • Yang membuat Pi dan fenomena "claw" menarik bagiku adalah karena ini menunjukkan masa depan open source
    Sekarang, alih-alih mengirim permintaan fitur atau PR, kita memasuki era ketika orang mengunduh file skill yang memberi tahu agen coding cara menambahkan fitur
    Software tidak lagi menjadi hasil akhir yang statis, melainkan alat hidup yang berbeda untuk tiap pengguna
    Aku penasaran tooling seperti apa yang akan muncul dari paradigma kolaborasi baru ini

    • Aku juga melihat tren yang sama
      Software saat ini membuat pengguna tidak bisa mengendalikan lingkungannya, sehingga menimbulkan rasa keterasingan
      Namun software yang dipersonalisasi, murah, dan fleksibel bisa memberi rasa kepemilikan yang nyata
      Dulu desktop Linux memberi kebebasan seperti itu, dan sekarang sepertinya semua orang bisa menikmati manfaat itu
      Aku optimistis terhadap masa depan seperti ini
    • Aku juga belakangan sering memikirkan hal ini
      Ke depan, sepertinya akan makin banyak software yang sangat dipersonalisasi — sampai pada tingkat yang hanya dipahami oleh individu tertentu atau kelompok kecil
      Belakangan ini aku banyak membuat tool dengan Claude yang hanya kupakai bersama beberapa orang
      Misalnya aplikasi penjadwalan DnD, pengecek berita Formula E tanpa spoiler, dan situs voting koperasi panjat tebing
      Dulu tidak ada alasan untuk membuat hal-hal seperti ini, tetapi sekarang jadi memungkinkan
      Tulisan terkait sudah kurangkum di Releasing Software Now
    • Aku setuju dengan frasa "alat hidup yang berbeda dari salinan orang lain", tetapi menurutku model seperti ini akan sulit diadopsi institusi
      Perusahaan besar atau pemerintah tidak mungkin mengizinkan sistem yang tidak konsisten seperti ini
    • Aku tidak paham kenapa paradigma ini akan melahirkan tooling yang menarik
      Justru menurutku yang akan muncul adalah alat yang lebih buruk
    • Kalau semua orang memakai versi software yang berbeda-beda, membayangkan betapa rumitnya pemecahan masalah saja sudah bikin ngeri
  • Aku sudah terbiasa dengan OpenCode dan sedang mempertimbangkannya sebagai workspace AI pribadi
    Ekosistem Pi memang kecil, tetapi fleksibilitas dan ekstensibilitasnya lebih besar, dan semangat komunitasnya juga terasa
    Aku penasaran apakah lebih baik memakai Pi daripada OpenCode, dan opsi UI apa saja yang tersedia

    • Aku juga sedang memikirkan hal yang sama
      Aku pernah memakai OpenCode berbasis file .md untuk menulis dan mengorganisasi catatan, dan itu cukup cocok
      Sekarang aku sedang mencari harness baru yang lebih sesuai untuk pekerjaan ini
    • Arah yang kamu pahami sudah tepat
  • Ini harness favoritku belakangan ini
    Karena bisa diperluas sendiri, efisiensinya tinggi, dan aku sudah mengintegrasikannya ke proyek vibes
    Jauh lebih cepat daripada ACP

    • Aku penasaran kenapa ada perbedaan kecepatan antara integrasi langsung dan ACP
      Aku sedang mencari protokol interaksi agen serbaguna, dan ACP adalah salah satu kandidatnya
      Tetapi kalau bahkan OpenCode pun tidak memakai ACP di UI-nya, sepertinya memang ada sesuatu yang bermasalah
      Aku juga ingin tahu apakah ada opsi pengganti yang lebih baik
    • Aku penasaran harness apa saja yang sudah kamu bandingkan
    • Aku sangat suka ini! Rasanya seperti sesuatu yang ingin kubuat sendiri, tetapi ternyata sudah ada yang mewujudkannya
    • Apa maksudnya "harness"? Bukankah ini cuma agen coding?
  • Aku belum pernah melihat orang yang memakai Pi selama beberapa hari lalu tidak menjadikannya alat harian
    Begitu merasakan kebebasan untuk menyetel tool sesuai selera sendiri, sulit untuk kembali
    Ditambah lagi, di atasnya kita bisa membuat ekstensi yang keren

    • Dari yang kudengar, Pi itu seperti Neovim atau Emacs di dunia agen coding
    • Senang mendengarnya, tetapi bagiku Claude CLI dan OpenCode jauh lebih produktif daripada Pi
      Ekstensibilitas Pi memang menarik, tetapi kualitas kerja nyatanya terasa kurang
    • Aku penasaran fitur buatan sendiri apa yang paling kamu sukai yang tidak ada di Claude Code
  • Aku tidak mengerti kenapa harus repot coding lewat aplikasi terminal
    Hal yang sama bisa dilakukan lebih baik lewat ekstensi IDE, dan di VSCode pun tata letak jendela bisa dipulihkan seperti semula

    • Kalau aku memakai agen CLI, IDE sama sekali tidak dibutuhkan
      Rasanya seperti memberi instruksi ke rekan developer lewat chat teks
      Misalnya aku menyerahkan program pemeliharaan server ke Claude, lalu mengerjakan hal lain dan hanya mengecek hasilnya nanti
      Kalau tes lolos, seperti apa bentuk kodenya tidak terlalu penting
      Dalam praktiknya, hanya dengan sekitar 15 menit kerja aktif, aku bisa menjalankan beberapa tugas sekaligus
  • Aku memakai Pi lewat paket pi-coding-agent untuk Emacs
    Dalam mode RPC, ia membuat buffer Markdown untuk input/output, jadi jauh lebih nyaman daripada TUI lain
    Aku juga dengan mudah menghubungkannya ke issue tracker, dan mendefinisikan ulang perintah read dan write berbasis buffer Emacs
    Aku juga ingin mencoba meningkatkan perintah edit dengan memanfaatkan query tree-sitter milik Emacs
    Selain itu, lewat perintah emacs_eval, aku juga membuat penelusuran dokumentasi lewat EWW menjadi mungkin

    • Keren! Aku penasaran bagaimana kamu memetakan read dan write ke buffer Emacs
      Sebagai referensi, mode Pi untuk Emacs bisa diinstal di sini
      Aku juga sedang menambahkan fitur agar file terkait bisa langsung dibuka dari hasil pemanggilan read, write, dan edit
      Sebentar lagi juga akan ada dukungan untuk penelusuran sesi dan tree Pi serta integrasi Magit
  • Aku mulai dengan Pi, lalu selama 2 minggu terakhir memakai oh-my-pi
    Repositori oh-my-pi adalah versi batteries-included dari Pi

    • Aku penasaran bagaimana pengalamanmu memakai oh-my-pi
    • Aku juga ingin tahu apakah itu dijalankan dalam lingkungan sandbox, atau punya fitur isolasi
  • Aku juga jadi ingin mengkloning proyek yang ada lalu merilisnya dengan nama lain
    Misalnya sesuatu seperti "Waterfox — konsumen web minimalis"

  • Versi Pi yang sudah dikonfigurasi sebelumnya: oh-my-pi

    • Fork ini keren, tetapi menambahkan tool dari repositori mana pun secara serampangan tampak berisiko dari sisi keamanan
      Diperlukan lingkungan terisolasi agar bisa dipasang dan diuji dengan aman seperti aplikasi
    • Aku penggemar berat fork ini
      Aku berpindah dari codex/claude code → opencode → pi → oh-my-pi
    • Fork yang hebat! Aku juga sempat ingin berkontribusi, tetapi komunitasnya terasa agak tertutup
    • Akan bagus kalau tool web oh-my-pi bisa dipisahkan menjadi plugin Pi biasa
      Suatu saat aku ingin mencobanya sendiri
    • Tetapi menurutku ini justru melewatkan esensi Pi
      Daya tarik Pi ada pada keringanan dan otonominya, sedangkan oh-my-pi punya terlalu banyak fitur sehingga memberi kesan berat seperti OpenCode
  • Pi benar-benar membuat pilihan desain yang luar biasa
    Salut untuk Mario dan Armin — selera yang bagus memang akan terlihat pada akhirnya

    • Tetapi aku tidak mengerti kenapa hal seperti ini diimplementasikan dengan JavaScript