sam-4screen-desktop 2026-8-5:10:29:15
This commit is contained in:
@@ -46,7 +46,7 @@ OmniRoute is the central LLM routing proxy running on .13 (port 20128/20129). Al
|
||||
| Sync | `/omni sync` (re-fetch model list) |
|
||||
| Access (local) | `http://192.168.20.13:20129/v1` |
|
||||
| Access (via Caddy) | `https://omniroute.lab.audasmedia.com.au/v1` |
|
||||
| API key | `sk-fff5c0d55c0bc0bf-b58ed0-76da5716` (stored in `~/.config/environment.d/10-secrets.conf` on .27/.51, hardcoded in settings.json on .13) |
|
||||
| API key | `sk-fff5c0d55c0bc0bf-b58ed0-76da5716` (stored in `~/.config/environment.d/10-secrets.conf` on .27/.51; on .13 in `~/.pi/agent/settings.json` — `chmod 600`, outside any git repo). ⚠️ This key is also written in this doc — rotate/move to a vault secret if this file ever syncs outside the vault |
|
||||
|
||||
---
|
||||
|
||||
@@ -81,11 +81,13 @@ pi → omni provider → POST /v1/chat/completions { model: "default-opencode-go
|
||||
|
||||
### Per-machine setup state
|
||||
|
||||
| Machine | Package installed | Provider config | `/omni setup` done | Models synced |
|
||||
|---------|-----------------|-----------------|-------------------|--------------|
|
||||
| .27 | ✅ In home.nix | ✅ `omni` | ✅ | ✅ |
|
||||
| .13 | ✅ pi install | ✅ `omni` | ✅ | ✅ |
|
||||
| .51 | ✅ pi install | ✅ `omni` | ✅ | ✅ |
|
||||
pi is **Nix-managed on all three** — the nixpkgs **`pi-coding-agent`** package (v0.82.1) in `home.packages` (npx wrapper removed 2026-08-05). Version uniform on all machines (matches all three flake locks). Updates = nixpkgs flake bump + rebuild. Global settings also include **pi-tool-display** (see below).
|
||||
|
||||
| Machine | pi package | pi version | Provider config | `/omni setup` done | Models synced |
|
||||
|---------|-----------|-----------|-----------------|-------------------|--------------|
|
||||
| .27 | `pi-coding-agent` (home.nix) | 0.82.1 | ✅ `omni` | ✅ | ✅ |
|
||||
| .13 | `pi-coding-agent` (home.nix) | 0.82.1 | ✅ `omni` | ✅ | ✅ |
|
||||
| .51 | `pi-coding-agent` (home.nix) | 0.82.1 | ✅ `omni` | ✅ | ✅ |
|
||||
|
||||
---
|
||||
|
||||
@@ -110,8 +112,35 @@ pi → omni provider → POST /v1/chat/completions { model: "default-opencode-go
|
||||
| **gentle-engram** | `~/.agents` | Memory service connecting to engram via ENGRAM_URL. Replaces memory-vault. Session capture, compaction recovery |
|
||||
| **headroom-bridge** | `~/.agents` | `compress_for_agent` tool — compresses >20K chars via Headroom Docker on .13:8787. 60-95% token reduction |
|
||||
| **pi-langfuse** | `~/.agents` (vendored from npm 1.5.8, commit `bc91a15`) | Langfuse LLM observability for pi — one trace per conversation, grouped by pi session, with tokens + cost. Activate per project via `/config-add ext pi-langfuse`. See [[#pi-langfuse — LLM Observability for Pi]] |
|
||||
| **pi-tool-display** | `~/.agents` (vendored npm 0.5.0, commit `41cc33d`) | OpenCode-style compact tool rendering, adaptive edit/write diffs, pending-edit previews, thinking labels. **Global** — 0 tools / 0 token cost (added via home.nix settings). `/tool-display` presets: opencode / balanced / verbose |
|
||||
| **pi-lsp-extension** | `~/.agents` (vendored npm 1.3.0, commit `41cc33d`) | LSP diagnostics, hover, definition, references, symbols, rename, completions, code_actions + tree-sitter `code_overview`/`ast_search`/`code_rewrite`. **Per-project** via `/config-add ext pi-lsp-extension` (10 tools — token-lean). Commands: `/lsp`, `/lsp-config`, `/lsp-restart`, `/lsp-lombok` |
|
||||
|
||||
|
||||
### pi-tool-display
|
||||
|
||||
OpenCode-style tool rendering for pi (vendored from npm `pi-tool-display@0.5.0`, by MasuRii, commit `41cc33d`).
|
||||
|
||||
| Aspect | Detail |
|
||||
|---|---|
|
||||
| **What it does** | Compact built-in tool rendering (read/grep/find/ls/bash/edit/write), adaptive split/unified edit diffs, workspace-scoped pending edit/write previews while streaming, thinking labels, optional native user message box |
|
||||
| **Placement** | **Global** — registers 0 tools (pure TUI renderer), so no token cost. Added to the Gitea package `extensions` list in home.nix global settings (`extensions/pi-tool-display/index.ts`) on all three machines |
|
||||
| **Presets** | `/tool-display` → opencode / balanced / verbose |
|
||||
| **Token note** | Compacts/truncates tool output = saves context. Does NOT remove blocks from the transcript (that's `pi-foldable-tools`, deliberately skipped — overlapping renderer, no persistent token gain) |
|
||||
| **Compat** | peer range `^0.74–0.80` — verified working on pi 0.82.1 |
|
||||
|
||||
### pi-lsp-extension
|
||||
|
||||
LSP integration for pi (vendored from npm `pi-lsp-extension@1.3.0`, by samfoy, commit `41cc33d`).
|
||||
|
||||
| Aspect | Detail |
|
||||
|---|---|
|
||||
| **Tools (11)** | `lsp_diagnostics`, `lsp_hover`, `lsp_definition`, `lsp_references`, `lsp_symbols`, `lsp_rename`, `lsp_completions`, `lsp_code_actions`, `code_overview`, `ast_search`, `code_rewrite` |
|
||||
| **Commands** | `/lsp` (server status), `/lsp-config <lang> <cmd> [args]`, `/lsp-restart <lang>`, `/lsp-lombok` |
|
||||
| **Placement** | **Per-project** via `/config-add ext pi-lsp-extension` (10+ tool defs — token-lean). Same on all machines |
|
||||
| **Language servers** | Installed via home.nix: `vtsls` (TS/JS/React — use `/lsp-config typescript vtsls stdio`), `pyright` (Python), `gopls` (Go), `clang-tools` (C/C++/Arduino), `yaml-language-server`, `bash-language-server`, `vscode-langservers-extracted` (JSON/HTML/CSS), `lua-language-server`, `emmet-ls`, `intelephense` (PHP — paid; free alt `phpactor`), `nixd` (Nix), `marksman` (Markdown), `lemminx` (XML). Rust later → `rust-analyzer` |
|
||||
| **Auto-diagnostics** | After `edit`/`write`, appends compile errors for the changed file when a server is running (configurable via `.pi-lsp.json` in workspace root) |
|
||||
| **⚠️ Vendoring pitfall** | The published package imports `vscode-languageserver-protocol/node.js` — the `.js` subpath was dropped from v3.18's `exports` map, which crashes the whole extension at load (no commands appear). Fixed in our vendor (commit `57c5cd2`): import `/node` instead. **Re-apply if re-vendoring from npm** |
|
||||
|
||||
### pi-subagents (@tintinweb)
|
||||
|
||||
v0.10.2, installed globally. 18 custom agent types in `~/.pi/agent/agents/` → `~/.agents/agents/`. Tools: `Agent()`, `get_subagent_result()`, `steer_subagent()`. `/agents` command for interactive management. Features: background agents with concurrency (4 default), mid-run steering, session resume, worktree isolation, scheduling, persistent widget showing live agent status. Cross-extension RPC event bus. Patched: 24h agent survival (was 10min), clearDisabled on session start. See [[Pi Subagent]] for full documentation.
|
||||
|
||||
Reference in New Issue
Block a user