Pi için yapılandırma, özelleştirme, platform kurulumu ve API referansları.

Pi kullanımı

Bu sayfa, hızlı başlangıç ​​sayfasına sığmayan günlük kullanım ayrıntılarını toplar.

İnteraktif Mod

Interactive Mode

Arayüzün dört ana alanı vardır:

  • Başlangıç ​​başlığı - kısayollar, yüklü context files, prompt templates, beceriler ve uzantılar
  • Mesajlar - kullanıcı mesajları, asistan yanıtları, araç çağrıları, araç sonuçları, bildirimler, hatalar ve uzantı kullanıcı arayüzü
  • Editör - yazdığınız yer; kenarlık rengi mevcut düşünme düzeyini gösterir
  • Altbilgi - çalışma dizini, oturum adı, belirteç/önbellek kullanımı, maliyet, içerik kullanımı ve geçerli model. Toplamlar; asistan yanıtlarını, araçlar tarafından bildirilen kullanımı ve özet oluşturmayı içerir.

Düzenleyici, /settings gibi yerleşik kullanıcı arayüzü veya özel uzantı kullanıcı arayüzü ile geçici olarak değiştirilebilir.

Düzenleyici Özellikleri

Özellik Nasıl
Dosya referansı Proje dosyalarını bulanık aramak için @ yazın
Yol tamamlama Yolları tamamlamak için Sekme tuşuna basın
Çok hatlı giriş Windows Terminalinde Shift+Enter veya Ctrl+Enter
Yanıtı kopyala Ctrl+X son yardımcı mesajını kopyalar; /tree'de seçilen mesajı kopyalar
Görseller Windows'ta Ctrl+V, Alt+V ile yapıştırın veya terminale sürükleyin
Kabuk komutu !command çalıştırır ve çıktıyı modele gönderir
Gizli kabuk komutu !!command modele çıktı göndermeden çalışır
Harici editör Ctrl+G, Windows'ta externalEditor, $VISUAL, $EDITOR, Not Defteri'ni veya başka yerde nano'yi açar

Tüm kısayollar ve özelleştirme için Keybindings'ye bakın.

Eğik Çizgi Komutları

Komut tamamlamayı açmak için düzenleyiciye / yazın. Extensions özel komutları kaydedebilir, beceriler /skill:name olarak mevcuttur ve prompt templates, /templatename aracılığıyla genişletilir.

Emretmek Tanım
/login, /logout OAuth veya API anahtar kimlik bilgilerini yönetin
/llama llama.cpp yönlendirici modellerini indirin, yükleyin ve kaldırın
/model Modelleri değiştir
/scoped-models Ctrl+P döngüsü için modelleri etkinleştirme/devre dışı bırakma
/settings Düşünme düzeyi, tema, mesaj iletimi, aktarım
/resume Önceki oturumlardan Pick
/new Yeni bir oturum başlat
/name <name> Oturumun görünen adını ayarlayın
/session Oturum dosyasını, kimliği, mesajları, belirteçleri ve maliyeti göster
/tree Oturumun herhangi bir noktasına atlayın ve oradan devam edin
/trust Gelecek oturumlar için proje güven kararını kaydedin
/fork Önceki bir kullanıcı mesajından yeni bir oturum oluşturun
/clone Geçerli etkin dalı yeni bir oturuma kopyala
/compact [prompt] İsteğe bağlı olarak özel talimatlarla bağlamı manuel olarak sıkıştırın
/copy Son asistan mesajını panoya kopyala
/export [file] Oturumu HTML'ye aktar veya JSONL
/import <file> JSONL dosyasından bir oturumu içe aktarın ve devam ettirin
/share Paylaşılabilir HTML bağlantısıyla özel GitHub özet olarak yükleyin
/reload Tuş atamalarını, uzantıları, becerileri, istemleri, temaları ve context files'yi yeniden yükleyin
/hotkeys Tüm klavye kısayollarını göster
/changelog Sürüm geçmişini görüntüle
/quit pi'den çık

Mesaj Sırası

Temsilci hâlâ çalışırken mesaj gönderebilirsiniz:

  • Enter, geçerli asistan sırasının araç çağrılarını yürütmesi tamamlandıktan sonra iletilen bir direksiyon mesajını sıraya koyar.
  • Alt+Enter, aracı tüm işi tamamladıktan sonra teslim edilecek bir takip mesajını sıraya koyar.
  • Escape sıradaki iletileri iptal eder ve düzenleyiciye geri yükler.
  • Alt+Up sıraya alınmış mesajları düzenleyiciye geri getirir.

Windows Terminalinde Alt+Enter varsayılan olarak tam ekrandır. Pi'nin kısayolu almasını istiyorsanız, Terminal setup'de açıklandığı gibi yeniden eşleyin.

Settings'de teslimatı steeringMode ve followUpMode ile yapılandırın.

Oturumlar

Oturumlar, çalışma dizinine göre düzenlenerek otomatik olarak ~/.pi/agent/sessions/'ye kaydedilir.

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

Yararlı oturum komutları:

  • /session geçerli oturum dosyasını ve kimliğini gösterir.
  • /tree dosya içi session tree içinde gezinir ve terkedilmiş dalları özetleyebilir.
  • /fork daha önceki bir kullanıcı mesajından yeni bir oturum oluşturur.
  • /clone mevcut aktif dalı yeni bir oturum dosyasına kopyalar.
  • /compact eski mesajları serbest bağlamda özetler.

Ayrıntılar için Sessions ve Compaction'e bakın.

Bağlam Dosyaları

Pi başlangıçta AGENTS.md veya CLAUDE.md'yi yükler:

  • ~/.pi/agent/AGENTS.md genel talimatlar için
  • ana dizinler, geçerli çalışma dizininden yukarı doğru yürüme
  • geçerli dizin

Bir dizin AGENTS.override.md içeriyorsa, Pi o dizindeki AGENTS.md veya CLAUDE.md yerine onu yükler. Diğer dizinlerdeki içerik dosyaları hala normal şekilde katmanlanıyor.

Proje kuralları, komutlar, güvenlik kuralları ve tercihler için context files kullanın. --no-context-files veya -nc ile yüklemeyi devre dışı bırakın.

Sistem Bilgi İstemi Dosyaları

Varsayılan sistem istemini şununla değiştirin:

  • .pi/SYSTEM.md bir proje için
  • ~/.pi/agent/SYSTEM.md küresel olarak

Her iki konumda da APPEND_SYSTEM.md ile değiştirmeden varsayılan istemi ekleyin.

Proje Güveni

Etkileşimli başlangıçta pi, proje yerel ayarlarını, kaynaklarını veya proje .agents/skills'yi içeren ve ~/.pi/agent/trust.json'deki klasör veya ana klasör için kayıtlı bir kararı olmayan bir proje klasörüne güvenmeden önce sorar. Bir projeye güvenmek pi'nin .pi/settings.json ve .pi kaynakları yüklemesine, eksik proje paketlerini yüklemesine ve proje uzantılarını yürütmesine olanak tanır.

Güven kararından önce pi yalnızca context files, kullanıcı/global uzantıları ve CLI -e uzantılarını yükler, böylece project_trust olayını işleyebilirler. Proje yerel uzantıları, proje paketi tarafından yönetilen uzantılar ve proje ayarları yalnızca projeye güvenildikten sonra yüklenir. Bu bölünme, mevcut süreçte güveni çözülmemiş farklı bir cwd'den oturuma geçiş yaparken de geçerlidir.

Etkileşimli olmayan modlar (-p, --mode json ve --mode rpc) bir güven istemi göstermez. Geçerli bir kayıtlı güven kararı olmadan, genel ayarlardan defaultProjectTrust kullanırlar: ask (varsayılan) ve never bu proje kaynaklarını yok sayarken, always onlara güvenir. Bir çalıştırma için proje güvenini geçersiz kılmak için --approve/-a veya --no-approve/-na'yi geçin.

Hiçbir uzatma veya kayıtlı karar geçerli değilse, defaultProjectTrust geri dönüş davranışını kontrol eder. ~/.pi/agent/settings.json'de "ask", "always" veya "never" olarak ayarlayın veya /settings ile değiştirin.

pi config ve paket komutları aynı proje güven akışını kullanır, ancak pi update hiçbir zaman istemde bulunmaz. Bir komut için proje yerel ayarlarına güvenmek için --approve veya bunları yok saymak için --no-approve iletin.

Yakın ana klasöre yönelik güven de dahil olmak üzere gelecekteki oturumlar için bir proje güveni kararını kaydetmek için etkileşimli modda /trust tuşunu kullanın. Sadece ~/.pi/agent/trust.json yazıyor; geçerli oturum yeniden yüklenmediğinden değişikliklerin etkili olması için pi'yi yeniden başlatın.

Oturumları Dışa Aktarma ve Paylaşma

HTML'ye bir oturum yazmak için /export [file] tuşunu kullanın.

Paylaşılabilir bir HTML bağlantısına sahip özel bir GitHub özetini yüklemek için /share kullanın.

Açık kaynak çalışması için pi kullanıyorsanız ve model, bilgi istemi, araç ve değerlendirme araştırması için oturumlar yayınlamak istiyorsanız, bkz. badlogic/pi-share-hf. Oturumları Hugging Face veri kümesine yayınlar.

CLI Referans

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

Paket Komutları

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

Bu komutlar pi paketlerini yönetir ve pi update pi CLI kurulumunu güncelleyebilir. Pi'nin kendisini kaldırmak için bkz. Quickstart. pi config ve proje paketi komutları, bir komut için proje yerel ayarlarına güvenmek veya bunları yok saymak için --approve/--no-approve'yi kabul eder. pi update hiçbir zaman proje güvenini istemez.

Paket kaynakları ve güvenlik notları için Pi Packages'a bakın.

Modlar

Bayrak Tanım
varsayılan Etkileşimli mod
-p, --print Yanıtı yazdır ve çık
--mode json Tüm olayları JSON satır olarak çıktılayın; bkz. JSON mode
--mode rpc RPC modu stdin/stdout üzerinde; bkz. RPC mode
--export <in> [out] Bir oturumu HTML'ye aktarma

Yazdırma modunda pi ayrıca borulu stdin'yi okur ve bunu ilk komut istemiyle birleştirir:

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

Model Seçenekleri

Seçenek Tanım
--provider <name> Sağlayıcı, örneğin anthropic, openai veya google
--model <pattern> Model modeli veya kimliği; provider/id ve isteğe bağlı :<thinking>'yi destekler
--api-key <key> API key, ortam değişkenlerini geçersiz kılma
--thinking <level> off, minimal, low, medium, high, xhigh, max
--models <patterns> Ctrl+P döngüsü için virgülle ayrılmış desenler
--list-models [search] Mevcut modelleri listele

Oturum Seçenekleri

Seçenek Tanım
-c, --continue En son oturuma devam et
-r, --resume Bir oturuma göz atın ve seçin
`--session <yol\ kimlik>`
`--fork <yol\ kimlik>`
--session-dir <dir> Özel oturum depolama dizini
--no-session Geçici mod; kaydetme
--name <name>, -n <name> Oturumun görünen adını başlangıçta ayarla

Araç Seçenekleri

Seçenek Tanım
--tools <list>, -t <list> Belirli yerleşik, uzantı ve özel araçları izin verilenler listesine ekleyin
--exclude-tools <list>, -xt <list> Belirli yerleşik, uzantı ve özel araçları devre dışı bırakın
--no-builtin-tools, -nbt Yerleşik araçları devre dışı bırakın ancak uzantıyı/özel araçları etkin tutun
--no-tools, -nt Tüm araçları devre dışı bırak

Yerleşik araçlar: read, bash, edit, write, grep, find, ls.

Kaynak Seçenekleri

Seçenek Tanım
-e, --extension <source> Yoldan, npm veya git'ten bir uzantı yükleyin; tekrarlanabilir
--no-extensions Uzantı bulmayı devre dışı bırak
--skill <path> Bir beceri yükleyin; tekrarlanabilir
--no-skills Beceri keşfini devre dışı bırak
--prompt-template <path> Bir bilgi istemi şablonu yükleyin; tekrarlanabilir
--no-prompt-templates Bilgi istemi şablonu bulmayı devre dışı bırak
--theme <path> Bir tema yükleyin; tekrarlanabilir
--no-themes Tema bulmayı devre dışı bırak
--no-context-files, -nc AGENTS.md ve CLAUDE.md bulmayı devre dışı bırakın

Ayarları göz ardı ederek tam olarak ihtiyacınız olanı yüklemek için --no-*'yi açık işaretlerle birleştirin. Örnek:

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

Diğer Seçenekler

Seçenek Tanım
--system-prompt <text> Varsayılan istemi değiştirin; context files ve beceriler hâlâ eklidir
--append-system-prompt <text> Sistem istemine ekle
--tui-mode <mode> TUI modu: regular (varsayılan) veya deneysel fullscreen
--verbose Ayrıntılı başlatmayı zorla
-a, --approve Bu çalıştırma için proje yerel dosyalarına güvenin
-na, --no-approve Bu çalıştırma için proje yerel dosyalarını yoksay
-h, --help Yardımı göster
-v, --version Sürümü göster

fullscreen modunda, sıradaki mesajlar, çalışma durumu, uzantı widget'ları, düzenleyici ve alt bilgi altta sabit kalırken transkript terminal görünüm penceresinin içinde kayar. Fare/izleme dörtgeni girişi işaretçinin altındaki bölgeyi kaydırır; klavye görünüm alanı eylemleri her zaman kullanılabilir durumda kalır. Satır içi görüntüler, Kitty ve Ghostty dahil, Kitty grafik protokolünü destekleyen terminallerde çalışır. iTerm2'de satır içi görüntü protokolü, uygulamaya ait kaydırma sırasında yerleşimleri silemediğinden veya kırpamadığından metin yer tutucuları olarak oluşturulurlar. regular modunda pi, ana ekranı ve terminale ait geri kaydırmayı kullanır ve iTerm2 satır içi görüntüleri normal şekilde oluşturulmaya devam eder.

regular ve fullscreen arasında hemen geçiş yapmak için /settings'de TUI modunu ayarlayın ve gelecek oturumlar için varsayılanı seçin. Tam ekran çıkış çıkışı, tam ekrandan çıkmanın son transkripti mi yazdıracağını yoksa önceki ekranı geri yükleyip yalnızca oturum devam ettirme ipucunu mu yazdıracağını kontrol eder.

Dosya Bağımsız Değişkenleri

Mesaja eklemek için dosyaların önüne @ ekleyin:

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

Örnekler

# 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

Tasarım İlkeleri

Pi çekirdeği küçük tutar ve iş akışına özgü davranışı uzantılara, becerilere, prompt templates ve paketlere aktarır.

Kasıtlı olarak yerleşik MCP, alt aracıları, izin açılır pencerelerini, plan modunu, yapılacak işleri veya arka planı bash içermez. Bu iş akışlarını uzantılar veya paketler halinde oluşturabilir veya yükleyebilir ya da kapsayıcılar ve tmux gibi harici araçları kullanabilirsiniz.

Gerekçenin tamamı için blog post bölümünü okuyun.