Konfigurasi, kustomisasi, pengaturan platform, dan referensi API untuk Pi.

Menggunakan Pi

Halaman ini mengumpulkan detail penggunaan sehari-hari yang tidak sesuai dengan halaman mulai cepat.

Mode Interaktif

Interactive Mode

Antarmuka memiliki empat area utama:

  • Startup header - pintasan, memuat context files, prompt templates, keterampilan, dan ekstensi
  • Pesan - pesan pengguna, tanggapan asisten, panggilan alat, hasil alat, pemberitahuan, kesalahan, dan UI ekstensi
  • Editor - tempat Anda mengetik; warna batas menunjukkan tingkat berpikir saat ini
  • Footer - direktori kerja, nama sesi, penggunaan token/cache, biaya, penggunaan konteks, dan model saat ini. Totalnya mencakup respons asisten, penggunaan yang dilaporkan oleh alat, dan pembuatan ringkasan.

Editor dapat diganti sementara dengan UI bawaan seperti /settings atau dengan UI ekstensi khusus.

Fitur Penyunting

Fitur Bagaimana
Referensi berkas Ketik @ untuk mencari file proyek secara fuzzy
Penyelesaian jalur Tekan Tab untuk menyelesaikan jalur
Masukan multi-baris Shift+Enter, atau Ctrl+Enter di Terminal Windows
Salin respons Ctrl+X menyalin pesan asisten terakhir; di /tree, ini menyalin pesan yang dipilih
Gambar Tempel dengan Ctrl+V, Alt+V di Windows, atau seret ke terminal
Perintah cangkang !command berjalan dan mengirimkan output ke model
Perintah shell tersembunyi !!command berjalan tanpa mengirimkan output ke model
Editor eksternal Ctrl+G membuka externalEditor, $VISUAL, $EDITOR, Notepad di Windows, atau nano di tempat lain

Lihat Keybindings untuk semua pintasan dan penyesuaian.

Perintah Tebas

Ketik / di editor untuk membuka penyelesaian perintah. Extensions dapat mendaftarkan perintah khusus, keterampilan tersedia sebagai /skill:name, dan prompt templates diperluas melalui /templatename.

Memerintah Keterangan
/login, /logout Kelola kredensial kunci OAuth atau API
/llama Unduh, muat, dan keluarkan model router llama.cpp
/model Ganti model
/scoped-models Mengaktifkan/menonaktifkan model untuk bersepeda Ctrl+P
/settings Tingkat berpikir, tema, penyampaian pesan, transportasi
/resume Pick dari sesi sebelumnya
/new Mulai sesi baru
/name <name> Tetapkan nama tampilan sesi
/session Tampilkan file sesi, ID, pesan, token, dan biaya
/tree Lompat ke titik mana pun dalam sesi dan lanjutkan dari sana
/trust Simpan keputusan kepercayaan proyek untuk sesi mendatang
/fork Buat sesi baru dari pesan pengguna sebelumnya
/clone Gandakan cabang aktif saat ini ke dalam sesi baru
/compact [prompt] Konteks ringkas secara manual, opsional dengan instruksi khusus
/copy Salin pesan asisten terakhir ke papan klip
/export [file] Ekspor sesi ke HTML atau JSONL
/import <file> Impor dan lanjutkan sesi dari file JSONL
/share Unggah sebagai inti GitHub pribadi dengan tautan HTML yang dapat dibagikan
/reload Muat ulang pengikatan kunci, ekstensi, keterampilan, perintah, tema, dan context files
/hotkeys Tampilkan semua pintasan keyboard
/changelog Tampilkan riwayat versi
/quit Keluar dari pi

Antrian Pesan

Anda dapat mengirimkan pesan saat agen masih bekerja:

  • Masuk mengantri pesan kemudi, dikirimkan setelah giliran asisten saat ini selesai menjalankan panggilan alatnya.
  • Alt+Enter mengantrekan pesan tindak lanjut, dikirimkan setelah agen menyelesaikan semua pekerjaan.
  • Escape membatalkan dan memulihkan antrean pesan ke editor.
  • Alt+Up mengambil pesan antrean kembali ke editor.

Di Terminal Windows, Alt+Enter adalah layar penuh secara default. Petakan ulang seperti yang dijelaskan dalam Terminal setup jika Anda ingin pi menerima pintasan.

Konfigurasikan pengiriman dalam Settings dengan steeringMode dan followUpMode.

Sesi

Sesi disimpan secara otomatis ke ~/.pi/agent/sessions/, diatur berdasarkan direktori kerja.

pi -c                  # Continue most recent session
pi -r                  # Browse and select a session
pi --no-session        # Ephemeral mode; do not save
pi --name "my task"    # Set session display name at startup
pi --session <path|id> # Use a specific session file or session ID
pi --fork <path|id>    # Fork a session into a new session file

Perintah sesi yang berguna:

  • /session menunjukkan file dan ID sesi saat ini.
  • /tree menavigasi dalam file session tree dan dapat meringkas cabang yang ditinggalkan.
  • /fork membuat sesi baru dari pesan pengguna sebelumnya.
  • /clone menduplikasi cabang aktif saat ini ke dalam file sesi baru.
  • /compact merangkum pesan-pesan lama ke dalam konteks bebas.

Lihat Sessions dan Compaction untuk detailnya.

File Konteks

Pi memuat AGENTS.md atau CLAUDE.md saat startup dari:

  • ~/.pi/agent/AGENTS.md untuk instruksi global
  • direktori induk, berjalan dari direktori kerja saat ini
  • direktori saat ini

Jika direktori berisi AGENTS.override.md, Pi akan memuatnya, bukan AGENTS.md atau CLAUDE.md dari direktori tersebut. File konteks dari direktori lain masih berlapis secara normal.

Gunakan context files untuk konvensi proyek, perintah, aturan keselamatan, dan preferensi. Nonaktifkan pemuatan dengan --no-context-files atau -nc.

File Perintah Sistem

Ganti prompt sistem default dengan:

  • .pi/SYSTEM.md untuk sebuah proyek
  • ~/.pi/agent/SYSTEM.md secara global

Tambahkan ke prompt default tanpa menggantinya dengan APPEND_SYSTEM.md di salah satu lokasi.

Kepercayaan Proyek

Pada startup interaktif, pi bertanya sebelum memercayai folder proyek yang berisi pengaturan lokal proyek, sumber daya, atau proyek .agents/skills dan tidak memiliki keputusan tersimpan untuk folder atau folder induk di ~/.pi/agent/trust.json. Mempercayai suatu proyek memungkinkan pi memuat sumber daya .pi/settings.json dan .pi, menginstal paket proyek yang hilang, dan menjalankan ekstensi proyek.

Sebelum keputusan kepercayaan, pi hanya memuat context files, ekstensi pengguna/global, dan ekstensi CLI -e sehingga dapat menangani peristiwa project_trust. Ekstensi proyek-lokal, ekstensi proyek yang dikelola paket, dan pengaturan proyek dimuat hanya setelah proyek dipercaya. Pemisahan ini juga berlaku ketika berpindah ke sesi dari cwd berbeda yang kepercayaannya belum terselesaikan dalam proses saat ini.

Mode non-interaktif (-p, --mode json, dan --mode rpc) tidak menampilkan prompt kepercayaan. Tanpa keputusan perwalian tersimpan yang dapat diterapkan, mereka menggunakan defaultProjectTrust dari pengaturan global: ask (default) dan never mengabaikan sumber daya proyek tersebut, sementara always memercayainya. Lewati --approve/-a atau --no-approve/-na untuk mengesampingkan kepercayaan proyek dalam sekali proses.

Jika tidak ada perpanjangan atau keputusan tersimpan yang berlaku, defaultProjectTrust mengontrol perilaku fallback. Setel ke "ask", "always", atau "never" di ~/.pi/agent/settings.json, atau ubah dengan /settings.

pi config dan perintah paket menggunakan aliran kepercayaan proyek yang sama, kecuali pi update tidak pernah diminta. Lewati --approve untuk memercayai pengaturan proyek-lokal untuk satu perintah atau --no-approve untuk mengabaikannya.

Gunakan /trust dalam mode interaktif untuk menyimpan keputusan kepercayaan proyek untuk sesi mendatang, termasuk kepercayaan untuk folder induk langsung. Ia hanya menulis ~/.pi/agent/trust.json; sesi saat ini tidak dimuat ulang, jadi mulai ulang pi agar perubahan diterapkan.

Mengekspor dan Berbagi Sesi

Gunakan /export [file] untuk menulis sesi ke HTML.

Gunakan /share untuk mengunggah inti GitHub pribadi dengan tautan HTML yang dapat dibagikan.

Jika Anda menggunakan pi untuk pekerjaan sumber terbuka dan ingin mempublikasikan sesi untuk penelitian model, prompt, alat, dan evaluasi, lihat badlogic/pi-share-hf. Ini menerbitkan sesi ke Hugging Face kumpulan data.

CLI Referensi

pi [options] [@files...] [messages...]

Perintah Paket

pi install <source> [-l]     # Install package, -l for project-local
pi remove <source> [-l]      # Remove package
pi uninstall <source> [-l]   # Alias for remove
pi update [source|self|pi]   # Update pi only, or one package source
pi update --all              # Update pi and packages; reconcile pinned git refs
pi update --extensions       # Update packages only; reconcile pinned git refs
pi update --models           # Refresh model catalogs only
pi update --self             # Update pi only
pi update --extension <src>  # Update one package
pi list                      # List installed packages
pi config                    # Enable/disable package resources

Perintah ini mengelola paket pi dan pi update dapat memperbarui instalasi pi CLI. Untuk menghapus instalasi pi itu sendiri, lihat Quickstart. pi config dan perintah paket proyek menerima --approve/--no-approve untuk mempercayai atau mengabaikan pengaturan lokal proyek untuk satu perintah. pi update tidak pernah meminta kepercayaan proyek.

Lihat Pi Packages untuk sumber paket dan catatan keamanan.

Mode

Bendera Keterangan
bawaan Modus interaktif
-p, --print Cetak respons dan keluar
--mode json Keluarkan semua peristiwa sebagai baris JSON; lihat JSON mode
--mode rpc mode RPC di atas stdin/stdout; lihat RPC mode
--export <in> [out] Ekspor sesi ke HTML

Dalam mode cetak, pi juga membaca pipa stdin dan menggabungkannya ke dalam prompt awal:

cat README.md | pi -p "Summarize this text"

Pilihan Model

Pilihan Keterangan
--provider <name> Penyedia, seperti anthropic, openai, atau google
--model <pattern> Pola atau ID model; mendukung provider/id dan opsional :<thinking>
--api-key <key> API key, mengesampingkan variabel lingkungan
--thinking <level> off, minimal, low, medium, high, xhigh, max
--models <patterns> Pola yang dipisahkan koma untuk bersepeda Ctrl+P
--list-models [search] Daftar model yang tersedia

Opsi Sesi

Pilihan Keterangan
-c, --continue Lanjutkan sesi terbaru
-r, --resume Telusuri dan pilih sesi
`--sesi <jalur\ tanda pengenal>`
`--garpu <jalur\ tanda pengenal>`
--session-dir <dir> Direktori penyimpanan sesi khusus
--no-session Modus sementara; jangan simpan
--name <name>, -n <name> Tetapkan nama tampilan sesi saat startup

Opsi Alat

Pilihan Keterangan
--tools <list>, -t <list> Izinkan alat bawaan, ekstensi, dan khusus tertentu yang diizinkan
--exclude-tools <list>, -xt <list> Nonaktifkan alat bawaan, ekstensi, dan khusus tertentu
--no-builtin-tools, -nbt Nonaktifkan alat bawaan tetapi tetap aktifkan ekstensi/alat khusus
--no-tools, -nt Nonaktifkan semua alat

Alat bawaan: read, bash, edit, write, grep, find, ls.

Opsi Sumber Daya

Pilihan Keterangan
-e, --extension <source> Muat ekstensi dari jalur, npm, atau git; dapat diulang
--no-extensions Nonaktifkan penemuan ekstensi
--skill <path> Muat keterampilan; dapat diulang
--no-skills Nonaktifkan penemuan keterampilan
--prompt-template <path> Muat template prompt; dapat diulang
--no-prompt-templates Nonaktifkan penemuan template cepat
--theme <path> Muat tema; dapat diulang
--no-themes Nonaktifkan penemuan tema
--no-context-files, -nc Nonaktifkan penemuan AGENTS.md dan CLAUDE.md

Gabungkan --no-* dengan tanda eksplisit untuk memuat apa yang Anda butuhkan, abaikan pengaturan. Contoh:

pi --no-extensions -e ./my-extension.ts

Opsi Lainnya

Pilihan Keterangan
--system-prompt <text> Ganti perintah default; context files dan keterampilan masih ditambahkan
--append-system-prompt <text> Tambahkan ke perintah sistem
--tui-mode <mode> Mode TUI: regular (default) atau eksperimental fullscreen
--verbose Paksa startup yang panjang lebar
-a, --approve Percayai file lokal proyek untuk proses ini
-na, --no-approve Abaikan file lokal proyek untuk proses ini
-h, --help Tunjukkan bantuan
-v, --version Tampilkan versi

Dalam mode fullscreen, transkrip bergulir di dalam area pandang terminal sementara pesan dalam antrean, status kerja, widget ekstensi, editor, dan footer tetap berada di bagian bawah. Input mouse/trackpad akan menggulir wilayah di bawah penunjuk; tindakan area pandang keyboard selalu tersedia. Gambar sebaris berfungsi di terminal yang mendukung protokol grafis Kitty, termasuk Kitty dan Ghostty. Di iTerm2 mereka dirender sebagai placeholder teks karena protokol gambar sebarisnya tidak dapat menghapus atau memotong penempatan selama pengguliran milik aplikasi. Dalam mode regular, pi menggunakan layar utama dan scrollback milik terminal, dan gambar sebaris iTerm2 terus ditampilkan secara normal.

Atur TUI mode di /settings untuk segera beralih antara regular dan fullscreen dan pilih default untuk sesi berikutnya. Output keluar layar penuh mengontrol apakah keluar dari layar penuh akan mencetak transkrip akhir atau memulihkan layar sebelumnya dan hanya mencetak petunjuk melanjutkan sesi.

Argumen File

Awali file dengan @ untuk memasukkannya ke dalam pesan:

pi @prompt.md "Answer this"
pi -p @screenshot.png "What's in this image?"
pi @code.ts @test.ts "Review these files"

Contoh

# Interactive with initial prompt
pi "List all .ts files in src/"

# Non-interactive
pi -p "Summarize this codebase"

# Non-interactive with piped stdin
cat README.md | pi -p "Summarize this text"

# Named one-shot session
pi --name "release audit" -p "Audit this repository"

# Different model
pi --provider openai --model gpt-4o "Help me refactor"

# Model with provider prefix
pi --model openai/gpt-4o "Help me refactor"

# Model with thinking level shorthand
pi --model sonnet:high "Solve this complex problem"

# Limit model cycling
pi --models "claude-*,gpt-4o"

# Read-only mode
pi --tools read,grep,find,ls -p "Review the code"

# Disable one extension or built-in tool while keeping the rest available
pi --exclude-tools ask_question

Prinsip Desain

Pi menjaga inti tetap kecil dan mendorong perilaku spesifik alur kerja ke dalam ekstensi, keterampilan, prompt templates, dan paket.

Ini sengaja tidak menyertakan MCP bawaan, sub-agen, pop-up izin, mode rencana, tugas, atau latar belakang bash. Anda dapat membangun atau menginstal alur kerja tersebut sebagai ekstensi atau paket, atau menggunakan alat eksternal seperti container dan tmux.

Untuk alasan selengkapnya, baca blog post.