Pemasangan & Penggunaan
Ciri-ciri
Kawalan jauh
- Sambung mana-mana sesi dari pelayar dengan lampiran teks atau imej
- Mulakan sesi baharu sepenuhnya pada mana-mana laluan projek, terus dari UI web
- Penukaran model dalam pelayar dan pemilih tahap pemikiran, setiap sesi
- Status pekerja setiap sesi (melahu / berjalan / ralat) dengan pemulihan automatik semasa ranap
- Berbilang sesi berjalan selari — mulakan kerja dalam satu, tonton strim yang lain
PI_WEB_TOKENuntuk pendedahan LAN yang selamat — diperlukan secara lalai untuk sebarang ikatan bukan gelung-balik yang eksplisit
Membaca sesi
- Layari sesi merentas projek dengan penapis, carian, dan navigasi cawangan penuh
- Kemas kini tambahan langsung semasa pi masih berjalan (melalui fsnotify; latensi ~ms)
- Mod ikut untuk mengekori sesi aktif
- Pautan dalam ke mesej individu
- Muat turun sesi sebagai JSONL
- Kongsi syot kilat statik sebagai GitHub Gist rahsia
- Sambungan pi
/web,/remote,/refresh,/pi-web tokendan/pi-web set-tokenuntuk membuka sesi, QR jauh, penyegerakan sesi, dan pengurusan token
Keperluan
- Go 1.25+
pidalamPATHanda untuk sembang pelayar/penukaran model- Pilihan:
ghuntuk perkongsian
Pemasangan
Pakej Pi (disyorkan)
pi install npm:@ygncode/pi-web@betaArahan tunggal ini:
- Memasang pakej npm pi di bawah direktori pakej pi
- Menjalankan skrip
postinstallpakej (bash install.sh) - Memuat turun binari pi-web yang sepadan untuk versi pakej dan platform anda dari GitHub Releases
- Memasangnya ke
~/.pi/agent/bin/pi-web - Menyediakan auto-mula semasa log masuk (launchd pada macOS, systemd pada Linux)
- Mendaftarkan arahan pi
/web,/remote,/refresh,/pi-web token, dan/pi-web set-token
Penamaan automatik sesi terbina dalam pi-web (bukan sambungan) dan dikonfigurasikan pada halaman /settings. Ia dihidupkan secara lalai: pi-web menamakan sesi secara automatik menggunakan heuristik perkataan terbina dalam percuma (tiada AI), menamakan semula pada setiap mesej baharu. Anda boleh menukar kepada penamaan sekali setiap sesi, dan/atau memilih model untuk menulis tajuk yang lebih pintar dan bukannya heuristik.
Pada Linux, auto-mula dikonfigurasikan sebagai perkhidmatan systemd pengguna di ~/.config/systemd/user/pi-web.service. Pemasang menulis semula ExecStart ke laluan binari sebenar yang dipasang. Jika Tailscale tersedia semasa masa jalan, pi-web menerbitkan pelayan localhost dengan Tailscale Serve HTTPS. Jika systemd pengguna tidak tersedia, jalankan secara manual dengan ~/.pi/agent/bin/pi-web -o.
Untuk memasang hanya untuk projek tertentu (dikongsi dengan pasukan anda melalui .pi/settings.json):
pi install -l npm:@ygncode/pi-web@betaKemudian mulakan semula pi (atau jalankan /reload), dan gunakan /web, /pi-web, /remote, /refresh. Urus token akses anda dengan /pi-web token dan /pi-web set-token.
Jika npm gagal dengan ENOTEMPTY semasa menamakan semula @ygncode/pi-web, buang direktori sandaran tersembunyi npm yang lapuk dan pasang semula saluran beta:
rm -rf ~/.pi/agent/npm/node_modules/@ygncode/.pi-web-*
pi install npm:@ygncode/pi-web@betaPemasangan pantas (tiada alat binaan diperlukan)
curl -fsSL https://raw.githubusercontent.com/ygncode/pi-web/main/install.sh | bashIni memuat turun binari pi-web terkini, memasangnya ke /usr/local/bin, dan menyediakan auto-mula semasa log masuk. Tiada Go, Node, atau pi diperlukan.
Muat turun binari
Binari pra-bina dilampirkan pada setiap GitHub Release.
# macOS (Apple Silicon)
curl -L -o pi-web https://github.com/ygncode/pi-web/releases/latest/download/pi-web-darwin-arm64
chmod +x pi-web
# macOS (Intel)
curl -L -o pi-web https://github.com/ygncode/pi-web/releases/latest/download/pi-web-darwin-amd64
chmod +x pi-web
# Linux (amd64)
curl -L -o pi-web https://github.com/ygncode/pi-web/releases/latest/download/pi-web-linux-amd64
chmod +x pi-web
# Linux (arm64)
curl -L -o pi-web https://github.com/ygncode/pi-web/releases/latest/download/pi-web-linux-arm64
chmod +x pi-webKemudian alihkannya ke PATH anda:
cp pi-web ~/.pi/agent/bin/
# atau seluruh sistem:
sudo cp pi-web /usr/local/bin/Bina dari sumber
git clone https://github.com/ygncode/pi-web.git
cd pi-web
make build # membina bundle Vite, kemudian membenamkannya ke dalam binari Go
# pilihan: letakkan pada PATH
cp pi-web ~/.pi/agent/bin/Bundle frontend dibenamkan oleh web/assets_embed.go, jadi go build memerlukan web/dist wujud terlebih dahulu. make build melakukan kedua-dua langkah mengikut urutan; jika anda membina secara manual, jalankan npm --prefix web install && npm --prefix web run build sebelum go build ./cmd/pi-web.
Nyahpasang
pi remove npm:@ygncode/pi-web@betaIni menjalankan skrip preuninstall pakej (bash uninstall.sh), yang memberhentikan contoh yang sedang berjalan dan membuang:
- binari pi-web (
~/.pi/agent/bin/pi-web, atau/usr/local/bin/pi-webuntuk pemasangan kendiri) - fail versi (
~/.pi/agent/pi-web-version) - fail keadaan masa jalan (
~/.pi/agent/pi-web/pi-web-state.json) - konfigurasi auto-mula (plist launchd pada macOS, perkhidmatan systemd pengguna pada Linux)
Data anda dikekalkan supaya pemasangan semula kemudian menyambung dari tempat anda berhenti: ~/.pi/agent/pi-web.sqlite, ~/.pi/agent/pi-web-memory.sqlite, fail sesi anda di bawah ~/.pi/agent/sessions/, dan ~/.config/pi-web/env (termasuk PI_WEB_TOKEN). Buang fail tersebut secara manual jika anda mahu permulaan bersih.
Penggunaan
# Mulakan pada port lalai (31415)
pi-web
# Mulakan dan buka pelayar
pi-web -o
# Port tersuai
pi-web -p 8080
# Ganti hos ikatan (loopback tidak disahkan secara lalai)
pi-web --host 127.0.0.1
# Ikatan bukan gelung-balik memerlukan token — pi-web enggan bermula tanpanya
PI_WEB_TOKEN=$(openssl rand -hex 16) pi-web --host 192.168.1.50Secara lalai, pi-web mengikat ke 127.0.0.1. Jika Tailscale berjalan dengan MagicDNS, pi-web juga menjalankan tailscale serve --bg --https=<port> http://127.0.0.1:<port> dan mencetak URL HTTPS tailnet. Sebarang ikatan bukan gelung-balik yang eksplisit memerlukan PI_WEB_TOKEN ditetapkan; hantar --insecure untuk mengatasi bagi ujian setempat.
Akses Jauh
Biarkan pi-web mendengar secara setempat, kemudian gunakan URL HTTPS Tailscale yang dicetak dari telefon atau komputer riba anda pada tailnet.
Pada Linux, benarkan pengguna anda mengurus Tailscale sebelum memasang/menjalankan pi-web, jika tidak tailscale serve mungkin memerlukan sudo dan auto-mula boleh gagal:
sudo tailscale set --operator=$USER# 1. Mulakan pi-web
pi-web
# 2. Dari mana-mana peranti lain yang disambungkan Tailscale, buka URL
# "Tailscale HTTPS" yang dicetak.Secara lalai, pi-web enggan mengikat ke alamat bukan gelung-balik melainkan
PI_WEB_TOKENditetapkan — sesiapa yang boleh mencapai alamat terikat boleh melihat sesi dan menghantar arahan kepada pi. Untuk mengatasi perlindungan ini bagi ujian rangkaian setempat, hantar--insecure. Jangan gunakan--insecurepada Tailscale atau mana-mana alamat yang boleh dicapai dari luar mesin anda.Klien boleh menghantar token melalui pengepala
Authorization: Bearer <token>, pengepalaX-Pi-Token, atau sekali melalui?token=<token>(yang menetapkan kukipi_tokenuntuk permintaan seterusnya). Token yang dihantar melalui?token=akan berakhir dalam sejarah pelayar, log akses pelayan, dan pengepalaRefererdari mana-mana pautan pada halaman — lebih suka bentuk pengepala untuk apa-apa selain penanda buku awal.
Sembang Pelayar
Buka halaman sesi dan gunakan penggubah di bahagian bawah untuk menyambung sesi yang tepat itu.
Entermenghantar,Shift+Entermenyisipkan baris baharu- Seret-dan-lepas atau tampal imej terus ke dalam penggubah
- Pemilih model dan pemilih tahap pemikiran terletak di pengepala — perubahan digunakan kepada pekerja pi asas dengan serta-merta
- Setiap sesi aktif mendapat pekerja
pi --mode rpckhusus tersendiri, jadi sesi berbeza tidak menyekat satu sama lain
Berkongsi Sesi
Klik Kongsi pada halaman sesi untuk mencipta GitHub Gist rahsia.
Keperluan:
ghdipasanggh auth loginselesai
Perkongsian mengembalikan:
- URL gist rahsia
- URL pratonton di
https://pi.dev/session/#<gistId>
Gist yang dikongsi adalah syot kilat dan tidak dikemas kini secara langsung.
Auto-Mula Semasa Log Masuk
macOS
cp init/com.pi-web.plist ~/Library/LaunchAgents/
launchctl load ~/Library/LaunchAgents/com.pi-web.plistLinux (systemd)
# Pasang perkhidmatan systemd pengguna
mkdir -p ~/.config/systemd/user
cp init/pi-web.service ~/.config/systemd/user/
# Pilihan: tetapkan PI_WEB_TOKEN anda untuk ikatan bukan gelung-balik
# (atau gunakan /pi-web set-token <token> dari dalam pi)
mkdir -p ~/.config/pi-web
echo 'PI_WEB_TOKEN=token-anda-di-sini' > ~/.config/pi-web/env
# Dayakan dan mulakan
systemctl --user daemon-reload
systemctl --user enable --now pi-web.service
# Semak status
systemctl --user status pi-web.service
# Lihat log
journalctl --user -u pi-web.service -fUntuk perkhidmatan bermula semasa but (sebelum log masuk), gunakan perkhidmatan sistem sebaliknya: salin
init/pi-web.serviceke/etc/systemd/system/dan gunakansudo systemctl.