Pi-Harness v1.1.1
Patch release for the local-first desktop control plane and native workspace of Pi Coding Agent.
Author: wangmiao · tuziling84@gmail.com
Repository: https://github.com/wangmiaozero/pi-harness
License: GNU AGPL v3.0 only (AGPL-3.0-only)
English · 简体中文 · 한국어 · Русский · Français · Deutsch
English
Pi-Harness v1.1.1 is a reliability patch on v1.1.0: live provider model discovery, Anthropic-compatible Chinese gateways, the real login-shell Node.js for Pi install/update, and tag-triggered signed-or-unsigned GitHub Releases with updater metadata checks.
Downloads
| Platform | File |
|---|---|
| macOS Apple Silicon | Pi-Harness-1.1.1-arm64.dmg |
| macOS Intel | Pi-Harness-1.1.1.dmg |
| Windows x64 | Pi-Harness Setup 1.1.1.exe |
| Linux x64 | Pi-Harness-1.1.1.AppImage |
macOS builds are unsigned unless a signing identity was supplied during packaging. On first launch, use System Settings → Privacy & Security → Open Anyway, or run:
xattr -cr /Applications/Pi-Harness.appHighlights
- Fetch all models: Providers can load the live model catalog from the API root and import it on save. Base URL still means the API root only — OpenAI-compatible clients append
/chat/completions; Anthropic-compatible clients append/v1/messages. - Identity from URL: Generate provider key, display name, and internal name from the API hostname (for example
volces.com→ Volcengine) without contacting the endpoint. - Volcengine Ark / Anthropic-compatible CN gateways: Agent Plan chat uses
https://ark.cn-beijing.volces.com/api/plan+POST /v1/messages. Many of these gateways do not implement AnthropicGET /v1/models. Discovery now tries/modelsand/api/plan/v3/models, and treats a missing catalog as “enter a model ID and save” instead of a false configuration failure. NVIDIA and other OpenAI-compatible/modelsendpoints are unchanged. - Real Node.js for Pi: Detection, install, and update resolve the Node/npm that the login shell actually uses, instead of a stale GUI
PATH. - Pi update and built-in Skills: Update tasks no longer collide with Skill checksum validation; bundled Matt Pocock Skills still install from the packaged collection.
- Release automation: Pushing
v*runs CI (typecheck, lint, unit, compile, Electron E2E, package smoke) and a multi-platform Release job that requireslatest-mac.yml/latest.yml/latest-linux.yml, ZIP/NSIS/AppImage payloads, blockmaps, andSHA256SUMS. - Path and IPC hardening: Opening files in the OS file manager is allowlisted (workspace roots, Pi config/skills/packages). Package inspection, permissions, and source parsing are split out of the manager. Skills UI is modularized without a second capability model.
Reliability and security
- Model discovery is read-only: draft credentials never write
models.jsonuntil the user saves. OpenAI-compatibleGET /models404 still fails; only Anthropic-compatible missing catalogs are non-fatal. - Renderer still cannot submit shell commands, arbitrary URLs, or delete paths. Featured Skill and Package mutations stay on validated ids.
- Updater consumes only
wangmiaozero/pi-harnessGitHub Releases. Missing updater metadata no longer looks like a generic network error when the installed version already matches the latest tag. - Unsigned community artifacts are allowed when no signing secret is configured; they are not a substitute for notarized production builds.
Upgrade notes
- From v1.1.0, installed builds should discover this release in the background. macOS auto-update needs the ZIP +
latest-mac.yml; DMG is for manual install. - Volcengine Agent Plan: keep protocol Anthropic Messages, base URL
https://ark.cn-beijing.volces.com/api/plan, paste the Agent Plan API key, set a model id (for exampleglm-5.3orark-code-latest), then save. Use Test connection (real chat probe), not a failed/modelsfetch, to judge the provider. - Existing Node.js 22+ and Pi installs are reused. If Pi update still fails, check Overview environment detection against the same Node your terminal uses (
which node). - No new Agent Runtime, terminal, debugger, LSP, or IDE extension host.
Requirements
- Packaged application: Pi Coding Agent can be installed or repaired from Pi-Harness
- From source: Node.js ≥ 22 and pnpm
9.12.1
简体中文
Pi-Harness v1.1.1 是 v1.1.0 的可靠性补丁:提供商一键拉模型、Anthropic 兼容国产网关、用终端真实 Node 安装/更新 Pi,以及由 v* tag 触发并校验更新元数据的 GitHub Release。
下载
| 平台 | 文件 |
|---|---|
| macOS Apple Silicon | Pi-Harness-1.1.1-arm64.dmg |
| macOS Intel | Pi-Harness-1.1.1.dmg |
| Windows x64 | Pi-Harness Setup 1.1.1.exe |
| Linux x64 | Pi-Harness-1.1.1.AppImage |
macOS 构建未提供签名证书时安装包为未签名。首次打开请使用“系统设置 → 隐私与安全性 → 仍要打开”,或执行:
xattr -cr /Applications/Pi-Harness.app主要更新
- 一键获取全部模型: 从 API 根路径拉取模型目录,保存时导入。Base URL 只填根路径;OpenAI 兼容会拼
/chat/completions,Anthropic 兼容会拼/v1/messages。 - 按 URL 生成标识: 根据 API 主机名生成提供商标识、显示名和内部名称(例如
volces.com→ Volcengine),不请求远端。 - 火山方舟 / Anthropic 兼容国产网关: Agent Plan 对话地址是
https://ark.cn-beijing.volces.com/api/plan+POST /v1/messages。这类网关通常没有 Anthropic 的GET /v1/models。发现逻辑会再试/models与/api/plan/v3/models;目录不存在时改为提示手动填写模型 ID,不再误报成配置错误。NVIDIA 等 OpenAI 兼容/models行为不变。 - 使用终端真实 Node: 检测、安装、更新 Pi 时解析 login shell 里实际的 Node/npm,而不是 GUI 进程里过期的
PATH。 - Pi 更新与内置 Skills: 更新任务不再和 Skill 校验互相干扰;打包的 Matt Pocock Skills 仍从应用内集合安装。
- Release 自动化: 推送
v*跑 CI(typecheck / lint / unit / compile / Electron E2E / 打包冒烟)和多平台发布;缺少latest-*.yml、ZIP/NSIS/AppImage、blockmap 会直接失败,并生成SHA256SUMS。 - 路径与 IPC 收紧: 用系统访达打开文件必须落在允许根(工作区、Pi 配置/Skills/Packages)。Package 巡检、权限与来源解析从 manager 拆出。Skills 界面模块化,没有第二套 Capability 模型。
可靠性与安全
- 拉模型只读:草稿密钥在用户点保存前不会写入
models.json。OpenAI 兼容GET /models的 404 仍是错误;仅 Anthropic 兼容缺少目录时不视为配置失败。 - Renderer 仍不能提交 shell、任意 URL 或删除路径。Featured Skill 与 Package 只接受校验后的 id。
- 更新器只消费
wangmiaozero/pi-harness的正式 Release。已是最新版本时,缺失更新元数据不会再显示成普通网络失败。 - 未配置签名 Secret 时允许跳过签名,但不能把无签名包当成公证后的正式分发。
升级说明
- 从 v1.1.0 安装的正式包应能后台发现本版本。macOS 自动更新需要 ZIP +
latest-mac.yml;DMG 只用于手动安装。 - 火山方舟 Agent Plan:协议选 Anthropic Messages,Base URL 填
https://ark.cn-beijing.volces.com/api/plan,粘贴 Agent Plan API Key,填写模型 ID(如glm-5.3或ark-code-latest)后保存。用连接测试(真实 chat probe)判断通不通,不要用/models404 当配置错误。 - 已有 Node.js 22+ 与 Pi 会复用。若 Pi 更新仍失败,对照终端
which node检查 Overview 环境检测。 - 不新增第二套 Agent Runtime、集成终端、调试器、LSP 或 IDE 扩展宿主。
环境要求
- 安装包用户:可直接在 Pi-Harness 内安装或修复 Pi Coding Agent
- 从源码构建:Node.js ≥ 22,pnpm
9.12.1
한국어
v1.1.1은 v1.1.0의 패치입니다. 제공자 모델 일괄 가져오기, Anthropic 호환 중국 게이트웨이, 실제 로그인 셸 Node.js, tag 기반 GitHub Release를 포함합니다.
주요 변경 사항
- API 루트에서 모델 목록을 읽고 저장 시 가져오기. Anthropic 호환 엔드포인트에
/v1/models가 없으면 설정 오류로 취급하지 않음 - Volcengine Ark Agent Plan은
…/api/plan+POST /v1/messages사용 - Pi 설치/업데이트는 터미널과 같은 Node/npm을 사용
v*tag가 updater 메타데이터와SHA256SUMS를 검증한 뒤 Release 생성
Русский
v1.1.1 — патч поверх v1.1.0: загрузка каталога моделей провайдера, Anthropic-совместимые китайские шлюзы, реальный Node.js из login shell и GitHub Release по тегу v*.
Основные изменения
- Каталог моделей с корня API; отсутствие
GET /v1/modelsу Anthropic-совместимых шлюзов больше не считается ошибкой конфигурации - Volcengine Ark Agent Plan:
…/api/plan+POST /v1/messages - Установка/обновление Pi использует тот же Node/npm, что и терминал
- Тег
v*собирает пакеты, проверяет updater-метаданные и пишетSHA256SUMS
Français
La v1.1.1 corrige la v1.1.0 : import du catalogue de modèles, passerelles Anthropic chinoises, Node.js réel du login shell, et Release GitHub déclenchée par un tag v*.
Points clés
- Chargement des modèles depuis la racine API ; l’absence de
GET /v1/modelsn’est plus une erreur de configuration pour les passerelles Anthropic-compatibles - Volcengine Ark Agent Plan :
…/api/plan+POST /v1/messages - Installation/mise à jour de Pi avec le Node/npm du terminal
- Le tag
v*valide les métadonnées d’updater et génèreSHA256SUMS
Deutsch
v1.1.1 ist ein Patch auf v1.1.0: Modellkatalog laden, Anthropic-kompatible CN-Gateways, echtes Login-Shell-Node.js und GitHub-Release per v*-Tag.
Highlights
- Modelle von der API-Wurzel laden; fehlendes
GET /v1/modelsbei Anthropic-kompatiblen Gateways ist kein Konfigurationsfehler - Volcengine Ark Agent Plan:
…/api/plan+POST /v1/messages - Pi-Installation/-Update nutzt dasselbe Node/npm wie das Terminal
v*-Tag prüft Updater-Metadaten und erzeugtSHA256SUMS
Full changelog: v1.1.0...v1.1.1