Skip to content

Releases: youweichen0208/pi-harness

v1.2.1

Choose a tag to compare

@github-actions github-actions released this 09 Oct 23:32

文档转换与知识整理

  • 文档转换与 OKF 知识蒸馏成为两个独立、默认开启且可单独关闭的内置扩展。
  • 新增 CHM 转 Markdown,保留目录顺序、中文编码、表格、代码、图片和主题来源;PDF、Office、文本及源码统一输出可追溯的证据包。
  • OKF 从 Markdown 或证据包提取候选知识,保留来源、版本、冲突和复审信息;生成内容默认草稿,人工审核后再标记验证。
  • 增加本地跨仓上下文检索评测工具,不部署额外知识库服务,不自动发起模型调用。

问题修复

  • #46:扩展 worker 在异步操作及最终 IPC 回传完成前保持存活;并发列表刷新共享读取任务,卸载等待已有读取结束。
  • #47 / #49:打包真实 400/500/600 中文字体,统一 SVG 图标与浅色细滚动条;修复 Windows 命令计数、消息头、节点状态、扩展按钮及文件标题的拥挤与换行。
  • #48:连接节点后左侧 SSH 终端、右侧远端 Agent 同时可见;窄屏上下排列,远端原生工具继续在节点目录执行。
  • #50:Wiki 输入区支持模型与思考强度选择,文档会话准备及断线期间禁用。

SDK 仍锁定原版 1.0.4,协议 v41。文档解析依赖由用户显式安装;使用说明见仓库文档。

安装

npm install -g @youweichen/pi-harness@1.2.1

已有服务升级后运行 pi-harness server restart。桌面安装包见附件;macOS 使用 ad-hoc 签名、未公证,Windows 未签名,首次打开方式见部署文档。

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 09 Oct 14:49

内置 PDF 转 Markdown 与 OKF Wiki

  • 新增默认开启、可分别停用的 PDF 转换和 OKF 知识整理扩展,支持原生 tool_search 与 Codemode,Agent 可按任务发现并调用。
  • PDF 转 Markdown 支持本地中文 OCR、表格、图片、来源定位,以及依据原生字形坐标恢复代码缩进和空行;无法可靠核对的内容明确标记为需复核。
  • OKF 支持 PDF、Markdown、文本、DOCX、XLSX、PPTX 和明确选中的上传附件。当前会话中的 Agent 提取候选、去重、交叉核对并处理冲突,生成带引用的 OKF 0.2 Wiki。
  • 原件及图片归档随知识目录保存;支持逐文件检查点、取消和恢复,保护人工编辑。疑点与冲突保留草稿,明确否决的候选保留在报告中;自动发布不冒充人工审核。
  • Wiki 可打开未索引的原文证据链接,归档证据保持只读。Python 工作文件随 npm 和桌面应用打包,解析模型单独准备。

Pi SDK / pi-ai 保持 1.0.4,协议保持 v41。包含 1.1.0 的已有功能与修复。

使用

/pdf-md setup
/pdf-md convert ./raw/技术说明.pdf
/okf ingest ./raw,输出到 ./knowledge

首次处理 PDF 或 Office 需要通过 setup 准备独立 Python 3.12 环境并下载模型;需安装 uv,或用 /pdf-md settings 指定 Python 3.12 路径。安装可用 /pdf-md cancel 取消,/pdf-md doctor 检查环境。MD/TXT 无需此环境。两个扩展分别用 /pdf-md settings、/okf settings 开关,保存后 /reload 或新建会话刷新工具列表。

文档解析在本机执行,语义整理使用当前会话选择的模型。macOS arm64 已通过 7 个真实离线解析样例及工具完整链路;真实公司资料仍需核对。Windows/Linux 的解析质量尚未实机验证,Intel macOS 暂不支持自动 setup。详见文档知识扩展说明。

下载与升级

npm:npm install -g @youweichen/pi-harness@1.2.0。后台服务升级后运行 pi-harness server restart。

桌面安装包在 macOS、Windows、Linux 构建及产物回归全部通过后公开。macOS 未公证,macOS 15 及以后需在「系统设置 → 隐私与安全性」选择「仍要打开」;Windows 未签名,SmartScreen 中选择「更多信息 → 仍要运行」。

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 09 Oct 12:05

节点 Agent 与工作区修复

  • 新增 SSH 节点远端原生 pi Agent 工作台,支持流式回复、工具结果、远端模型、确认对话、排队、停止和新会话。远端需安装 pi 1.0.4 并配置自己的模型。
  • 文件栏和 Wiki 支持新建文件,改善刷新、目录缺失提示及重复提醒合并。
  • Wiki 左右面板支持拖动调整宽度,修复桌面聊天面板折叠后入口不可达;大文档按可见区域着色,减少加载开销。
  • 新增 /restart,重建当前 pi 运行实例并保留会话历史,重新加载扩展代码。
  • 修复 Plan 完成状态、扩展名称、文件拖放遮罩及桌面 SDK 文档和示例缺失。
  • 精简通用工具卡片,增加 MCP adapter 迁移说明;保留原生 MCP 配置。
  • 包含最新 develop 的安全、长会话、Wiki、Docker 与 Linux 包身份修复。

对应 issues #31–#45。Pi SDK / pi-ai 保持 1.0.4,协议保持 v41。

下载与升级

npm:npm install -g @youweichen/pi-harness@1.1.0。后台服务升级后运行 pi-harness server restart。

桌面安装包在 macOS、Windows、Linux 构建及产物回归全部通过后公开。macOS 未公证,macOS 15 及以后需在「系统设置 → 隐私与安全性」选择「仍要打开」;Windows 未签名,SmartScreen 中选择「更多信息 → 仍要运行」。

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 08 Oct 22:45

pi-harness 1.0.0

首个正式版。功能在 0.99.16 的基础上(协议 v41,Pi SDK / pi-ai 精确锁定 1.0.4),集中修复发布前审查发现的安全、稳定性与发布问题。

改名为 pi-harness(重要)

npm 包改为 @youweichen/pi-harness,命令改为 pi-harness,开机自启服务、桌面快捷方式和桌面版应用标识都随之改名。旧包 @youweichen/pi-web-ui 不再更新,也不会自动迁移。旧服务仍会启动旧包并占用同一端口,请先卸载:

pi-web-ui server uninstall              # 旧版开机自启服务和桌面快捷方式
npm uninstall -g @youweichen/pi-web-ui
npm install -g @youweichen/pi-harness
pi-harness server install --port <原端口> --cwd <原目录>   # 需要开机自启时

界面偏好(语言、外观、面板宽度)会恢复为默认值。Windows 桌面版会作为新应用安装,请先在「设置 → 应用」中卸载旧版。对话与配置保存在 ~/.pi-web、~/.pi/agent 和桌面版数据目录,不受影响。

相对 npm 0.9.0 的变化

旧包的最后一个 npm 版本是 0.9.0,0.10 至 0.99.16 只发布了桌面版:

  • Pi SDK / pi-ai 从 1.0.0 升至 1.0.4。Pi 1.0.3 起 Azure provider 名称由 azure-openai-responses 改为 azure,使用该 provider 时需按上游说明更新原生配置或重新登录;WebUI 不会改写你的凭据。
  • WebUI 不再接管代理与上下文,改用原版 pi 的配置、上下文文件、技能、扩展与 Codemode / MCP。0.9.0 随包安装的 @juicesharp/rpiv-todo 不再附带,需要时请按 pi 原生方式安装扩展。
  • 新增 Wiki 文档工作台、原生会话树、原生 plan、Extensions 包管理、系统提示词文件编辑与设置 v2、对话代码改动面板等功能,详见 GitHub Releases 中 0.10.0 至 0.99.16 的说明。
  • 升级后刷新已打开的页面。

安全

  • 默认只绑本机时,只接受 localhost、127.0.0.1、[::1] 作为 Host,阻止 DNS rebinding;用自定义域名访问本机服务时需设置 PI_WEB_ALLOW_HOSTS。
  • 桌面版每次启动生成随机口令;PI_WEB_TOKEN 不再传给终端和智能体执行的命令;口令变化后会重新下发 cookie,且只发给已认证的请求,匿名健康检查拿不到口令;/api/health 不再返回工作区路径。
  • 页面禁止被其他站点嵌入(frame-ancestors 'self'),并添加 nosniff、no-referrer。
  • 工作区路径校验覆盖 Windows 跨盘符、UNC 路径与指向工作区外的符号链接;非法 clientId 在握手时拒绝。
  • auth.json 与 SDK 使用同一把文件锁原子更新,解析失败时报错而不再覆盖;client-state.json、密钥文件、models.json 等以 0600 原子写入。
  • 修复生产依赖的已知漏洞(express、qs、proxy-addr、compression、undici),npm audit --omit=dev 为 0。

稳定性

  • 单条格式错误的 WebSocket 消息不再导致整个服务退出。
  • 关闭的浏览器标签页在空闲 30 分钟后回收会话(PI_WEB_CLIENT_IDLE_MINUTES,0 为关闭),client-state.json 最多保留 200 个客户端。
  • SSH 终端启用 TCP_NODELAY,按键回显不再被 Nagle 延迟。
  • 模型把工具调用写成文本时自动提醒一次,仍未执行则在消息上显示中断并提供重发。
  • 强制停止后恢复对话,重新打开的是该对话自己的会话文件,不会载入同项目里其他刚写入的对话。
  • 恢复过程中删除或关闭会话会清理新 runtime 和晚到扩展资源;设置、MCP、提示词与 /reload 按会话串行重载。
  • 消息完整内容及原生条目共同确定缓存身份,避免同时间戳长文本、图片或重复内容串用;历史摘要按视口挂载,保留搜索、展开和跳转。
  • 桌面服务日志保留固定尾部;开机自启保留自定义 Pi 配置目录。
  • 超过 4,096 条消息的长会话不再反复重新序列化全部消息,用户消息 ID 保持稳定,编辑重问不会定位到错误的消息。
  • 改动面板:未跟踪的符号链接不再让「未提交」视图报错;未跟踪文件最多显示 500 个,不再每个文件启动 3 个 git 进程;重复的刷新请求合并执行;差异超过 16 MiB 时改为只显示改动附近的上下文。
  • Wiki:恢复 .75em 段间距;开头属性只解析文档开头,大文档输入不再卡顿;**作者:** 张三 正确识别;插入日期使用当天日期。

Docker

  • 镜像把 pi 配置、认证、模型与对话会话(/data/pi-agent)和应用数据(/data/pi-harness)放在卷 /data 下;之前它们写在容器内用户目录,重建容器会丢失。旧卷 /app/.pi-web 不再使用。
  • Linux 构建与运行依赖安装均具备 node-pty 所需原生工具链;旧容器迁移步骤见部署手册。
  • compose 默认只把端口映射到 127.0.0.1,并设置 PI_WEB_ALLOW_HOSTS=localhost,127.0.0.1。对外开放前请设置 PI_WEB_TOKEN,详见部署手册「Docker」。

名称

  • 页面、书签、桌面窗口与界面品牌统一为 pi-harness。
  • 开机自启服务改名:macOS com.youweichen.pi-harness,Linux pi-harness.service,Windows 计划任务 pi-harness。

安装

  • npm:npm install -g @youweichen/pi-harness,需要 Node 22.19 或更高。
  • macOS:仅 ad-hoc 签名、未公证。macOS 14 及更早,右键 App 选择「打开」;macOS 15 及以后,需在「系统设置 → 隐私与安全性」底部点「仍要打开」,或运行 xattr -dr com.apple.quarantine /Applications/pi.app。应用内自动更新在 macOS 上可能无法安装,失败时请从 Releases 下载新版。
  • Windows:未签名,首次运行时 SmartScreen 提示请点「更多信息 → 仍要运行」。安装版选择 setup-x64.exe,免安装版选择 win-x64.exe 或 ZIP。
  • Linux:AppImage 或 deb。
  • Linux deb 包名和可执行文件改为 pi-harness,避免 apt 将它替换为系统仓库中的同名 pi 程序。旧桌面 deb 的识别和迁移见部署手册。

v0.99.16

Choose a tag to compare

@github-actions github-actions released this 08 Oct 13:42

Wiki 编辑与对话修复

  • 修复选择 /dmk 代码块或 /bg 表格后,语言/尺寸菜单跑到窗口左上角的问题;鼠标与键盘选择均保持在插入位置。
  • 新对话与 Wiki 文档对话继承当前模型的思考强度,避免要求开启思考的模型因回退到默认档位而报错。
  • 优化 Wiki 索引:仅解析文档、按内容缓存结果,并通过路径索引解析链接,减少大型代码项目中保存和发送等待。
  • 增加菜单定位、插入保存、思考强度继承及索引回归测试。

基于最新 origin/develop 发布。Pi SDK / pi-ai 保持 1.0.4,协议保持 v41。GitHub 三平台桌面包验证通过后公开发布。

下载

  • macOS Apple Silicon:.dmg 安装包或 .zip。
  • Windows x64:setup-x64.exe 安装版、win-x64.exe 便携版或 .zip。
  • Linux x64:.AppImage 或 .deb。

macOS 未公证:macOS 14 及以前可右键「打开」,macOS 15 及以后请在「系统设置 → 隐私与安全性」选择「仍要打开」。Windows 未签名:SmartScreen 选择「更多信息 → 仍要运行」。

v0.99.15

Choose a tag to compare

@github-actions github-actions released this 08 Oct 06:33

对话与代码改动

  • 对话显示每轮成功修改的文件汇总;点击文件直接打开右侧改动面板并定位。历史命令默认收为一行,当前运行组展开。
  • 新增「本轮/整个分支/未提交」范围、基准分支选择、文件列表、词级高亮、上下文折叠、差异搜索及 J/K 导航。支持重命名、二进制、大文件和无行号编辑提示。
  • ⌘D / Ctrl+D 切换面板;打开时收起项目栏,关闭后恢复;1200px 以下使用抽屉。浅深色、中文英文与桌面壳共用同一布局。
  • 回复底部增加复制与重新生成;改动文件引用可直接定位,GitHub PR 链接显示编号。输入框保持上下文和缓存用量摘要。
  • 同步 develop 的 pi-harness 品牌、包名和 CLI 命令更名,以及 Wiki 排版、索引状态与发布前修复。

Pi SDK / pi-ai 保持 1.0.4;协议升级至 v41。GitHub 三平台桌面包验证通过后公开发布。

下载

  • macOS Apple Silicon:.dmg 安装包或 .zip。
  • Windows x64:setup-x64.exe 安装版、win-x64.exe 便携版或 .zip。
  • Linux x64:.AppImage 或 .deb。

macOS 未公证:macOS 14 及以前可右键「打开」,macOS 15 及以后请在「系统设置 → 隐私与安全性」选择「仍要打开」。Windows 未签名:SmartScreen 选择「更多信息 → 仍要运行」。

v0.99.14

Choose a tag to compare

@github-actions github-actions released this 08 Oct 04:38

Wiki 文档页 v2

  • Markdown 打开即可编辑,新增独立分组工具栏;支持 8×6 表格尺寸选择、代码语言搜索、Mermaid 图与源码编辑、图片、双链和日期插入。
  • 更多菜单与斜杠菜单共用插入项,保留 Markdown 快捷写法、选区格式和原生撤销。
  • 标题使用本地 Source Serif 4 / Noto Serif SC 常用字子集,调整正文排版、信息标签、目录树和无底板标志。
  • 标准正文 760px,宽版 1000px;宽版收起两侧,打开对话后退出。保存状态移到顶栏,保留 800ms 自动保存、冲突重试及导航保存。

工具调用与计划状态

  • 模型将工具调用写成文本时,同一请求最多自动提醒一次;提醒以事件行展示,连续异常合并为一张恢复卡片。
  • 自动提醒后只回复文字、没有执行工具就结束,也会明确显示中断;支持重新发送原问题和附件,或换模型重发。
  • 顶栏、进度栏和消息使用一致的异常状态;自动提醒不再被当作用户的新问题或计划确认。
  • 历史待确认计划不再高亮为正在执行,避免看起来自动跳到后续步骤。

基于最新 develop,包含 PR #21 和 #22。Pi SDK / pi-ai 保持 1.0.4,协议保持 v40。

提供 macOS、Windows、Linux 桌面安装包。macOS 使用 ad-hoc 签名,首次打开可能需要右键选择「打开」;Windows 安装版选择 setup-x64.exe,免安装版选择 win-x64.exe 或 ZIP。

v0.99.13

Choose a tag to compare

@github-actions github-actions released this 08 Oct 02:55

主题与界面

  • Codemode、MCP、Extensions、系统提示词及 Wiki 统一使用主题变量,修复残留紫色和深色模式下的固定浅色背景。
  • 清理重复的发送/停止按钮规则,Wiki 改动图标保持绿色,命令输出 Git 状态使用独立色板。
  • Wiki 输入框统一为 8px 圆角、无光晕;只有聚焦且有非空白内容时显示蓝色描边。
  • Wiki 代码配色统一跟随应用外观,移除相互覆盖的深色色板。
  • 清理历史硬编码圆角;设计检查覆盖全部前端 CSS、TS、TSX,阻止不合规颜色与圆角进入新提交。

已合入的工具恢复修复

  • 模型将工具调用写成正文时,也能识别仅剩参数和结束标记的情况。
  • 通过可见的用户消息请求模型重新调用;没有真实工具进展时停止重复恢复,每条用户请求最多恢复 5 次。
  • 延长认证文件锁的等待时间,减少并发保存和刷新凭据时的锁竞争失败。

Pi SDK / pi-ai 保持 1.0.4,协议保持 v40。本次发布 GitHub 源码及 macOS、Windows、Linux 桌面安装包,不发布 npm。

macOS 使用 ad-hoc 签名;首次打开可能需要右键选择「打开」。Windows 安装版选择 setup-x64.exe,免安装版选择 win-x64.exe 或 ZIP。

v0.99.12

Choose a tag to compare

@github-actions github-actions released this 08 Oct 02:00

界面与主题

  • 清理旧等待标题样式,保留三色方块阶段指示器;进度区复用阶段文案。
  • 统一浅色、深色主题的蓝、绿、红、黄变量;发送按钮和 Mermaid 图表跟随主题。
  • Wiki 输入框、发送按钮与元信息标签统一圆角,完善停止及禁用状态。
  • 更新当前界面规范,旧规则归档为历史参考。

工具异常手动恢复

  • 模型把完整工具指令作为正文返回时,显示「工具调用解析失败」、模型名称与可展开原始输出。
  • 支持手动重发原问题或换模型重发;保留原附件及输入框草稿,等待模型切换确认后才发送。
  • 顶栏、右栏及当前计划步骤显示红色「中断」;新请求清除旧中断状态,会话只读时禁止重发。
  • 不执行正文 XML、不自动重试、不改写历史记录;此功能不保证消除上游模型输出格式异常。

Pi SDK / pi-ai 保持 1.0.4,协议保持 v40。本次发布 GitHub 源码及 macOS、Windows、Linux 桌面安装包,不发布 npm。

macOS 使用 ad-hoc 签名;首次打开可能需要右键选择「打开」。Windows 安装版选择 setup-x64.exe,免安装版选择 win-x64.exe 或 ZIP。

v0.99.11

Choose a tag to compare

@github-actions github-actions released this 08 Oct 01:28

进度与输出

  • 右栏改为「进度」「输出」双分区,默认展开、独立折叠,切换对话恢复展开;内容共用滚动区域,短窗口也能完整查看步骤与文件。
  • 进度仅展示原生计划及兼容历史计划,保留完整步骤名称、详情、完成标准和跳转;明确显示等待确认、暂停、失败与取消。
  • 输出仅列本轮成功创建或修改的文件,按路径合并、按工具调用去重,可靠时显示增删数;移除读取记录、命令数、总耗时和底部计划变化提示。

等待状态与异常输出

  • 对话与 Wiki 使用三色品牌方块等待指示器,区分理解问题、读取结果、思考及等待测试/构建,支持阶段计时、停止和减少动态效果。
  • 空思考标签不再生成重复的「模型附加内容」;隐藏正文末尾的孤立 DSML 结束标签,保留正常回复、代码示例和用户输入。
  • 模型将完整工具指令作为正文返回时,明确提示「工具指令未执行」,并保留可展开原文。此项用于识别异常,不自动执行 XML、不自动重试,也不保证消除上游模型输出格式异常。

安全与稳定性

  • 容错处理格式异常的 WebSocket 消息,避免服务进程退出。
  • 加强页面嵌入防护与 clientId 校验,限制不安全客户端标识。
  • 修复 PI_WEB_TOKEN 传入子进程的问题,并降低 SSH 终端交互延迟。

Pi SDK / pi-ai 保持 1.0.4,协议保持 v40。本次发布 GitHub 源码及 macOS、Windows、Linux 桌面安装包,不发布 npm。

macOS 使用 ad-hoc 签名;首次打开可能需要右键选择「打开」。Windows 安装版选择 setup-x64.exe,免安装版选择 win-x64.exe 或 ZIP。