personal-bot 0.2.5 → 0.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/README.zh-CN.md +3 -3
- package/docs/agent-collaboration.md +1 -1
- package/docs/dsh-implementation-plan.md +1 -1
- package/docs/subagent-upgrade-proposal.md +3 -3
- package/docs/technical-design.md +1 -1
- package/docs/validation.md +12 -2
- package/npm-shrinkwrap.json +68 -48
- package/package.json +8 -7
- package/resources/references/task-conductor.md +1 -1
package/README.md
CHANGED
|
@@ -44,7 +44,7 @@ pi
|
|
|
44
44
|
|
|
45
45
|
`--local` saves the package declaration in the project's `.pi/settings.json`. Review and grant project trust when Pi prompts you, and start Pi from the workspace root. Loading Personal Bot enables its roles, skills, tools, and shared Python environment preparation. There is no separate activation switch.
|
|
46
46
|
|
|
47
|
-
Use `pi install` without `--local` only when you want the extension in every Pi session. Use Pi package management or `pi config` to adjust an existing installation's scope. Do not load both the npm and source installations. The
|
|
47
|
+
Use `pi install` without `--local` only when you want the extension in every Pi session. Use Pi package management or `pi config` to adjust an existing installation's scope. Do not load both the npm and source installations. The development and test baseline is Pi 1.5.0; installer acceptance limits are recorded in [validation](docs/validation.md).
|
|
48
48
|
|
|
49
49
|
### Install from source
|
|
50
50
|
|
|
@@ -76,7 +76,7 @@ The bare `/pbot` action opens workspace, specialist, team, and history managemen
|
|
|
76
76
|
|
|
77
77
|
### Optional: Task Conductor
|
|
78
78
|
|
|
79
|
-
For scheduled tasks, recurring workflows, or DAGs, install `task-conductor-plugin`. This integration package is distinct from the `task-conductor` service and is not required for Personal Bot.
|
|
79
|
+
For scheduled tasks, recurring workflows, or DAGs, install `task-conductor-plugin`. This integration package is distinct from the `task-conductor` service and is not required for Personal Bot. Use it with the project's Pi 1.5.0 baseline, native MCP support, and npm.
|
|
80
80
|
|
|
81
81
|
Check `pi list` first. If the package is already installed but its skill is missing, check resource configuration and reload rather than installing it again. Review the [upstream integration guide](https://github.com/realqiyan/task-conductor/blob/master/docs/host-integrations.md), then run from the workspace root:
|
|
82
82
|
|
|
@@ -142,7 +142,7 @@ Personal Bot stores no private activation state in the workspace. Pi owns its co
|
|
|
142
142
|
|
|
143
143
|
## Updates and historical data
|
|
144
144
|
|
|
145
|
-
Current release: **0.2.
|
|
145
|
+
Current release: **0.2.6**. Personal Bot maintains no workspace format, initialization state, or workspace upgrade mechanism. Update the plugin through its native host package manager. For a local Pi installation, update the source, run `npm ci --ignore-scripts` if dependencies changed, then reload or restart Pi.
|
|
146
146
|
|
|
147
147
|
Stop active sub-sessions before changing versions. Sub-session compatibility follows the minor version before 1.0 and the major version from 1.0 onward. Sessions from another compatibility line cannot be resumed directly.
|
|
148
148
|
|
package/README.zh-CN.md
CHANGED
|
@@ -42,7 +42,7 @@ pi install --local npm:personal-bot
|
|
|
42
42
|
pi
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
-
`--local` 将包声明保存在项目 `.pi/settings.json`。按 Pi 提示确认项目信任,每次从工作区根目录启动。Pi 加载 Personal Bot 就会启用角色、技能、工具及共享 Python 环境准备;没有第二个启用开关。除非希望所有 Pi 会话都启用 Personal Bot,否则不要用省略 `--local` 的 `pi install` 注册全局扩展。已有全局安装请用 Pi 原生包管理或 `pi config`
|
|
45
|
+
`--local` 将包声明保存在项目 `.pi/settings.json`。按 Pi 提示确认项目信任,每次从工作区根目录启动。Pi 加载 Personal Bot 就会启用角色、技能、工具及共享 Python 环境准备;没有第二个启用开关。除非希望所有 Pi 会话都启用 Personal Bot,否则不要用省略 `--local` 的 `pi install` 注册全局扩展。已有全局安装请用 Pi 原生包管理或 `pi config` 调整加载范围。开发与测试基线为 Pi 1.5.0,安装器验收范围见[验证](docs/validation.md)。
|
|
46
46
|
|
|
47
47
|
### 从源码安装
|
|
48
48
|
|
|
@@ -74,7 +74,7 @@ Web 的裸 `/pbot` 打开工作区、专家、团队和历史管理页。专家
|
|
|
74
74
|
|
|
75
75
|
### 可选安装 Task Conductor
|
|
76
76
|
|
|
77
|
-
需要周期任务、重复流程或 DAG 时,安装接入包 `task-conductor-plugin`。它不是服务包 `task-conductor`,也不是启用 pbot
|
|
77
|
+
需要周期任务、重复流程或 DAG 时,安装接入包 `task-conductor-plugin`。它不是服务包 `task-conductor`,也不是启用 pbot 的前提。按本项目 Pi 1.5.0 基线使用原生 MCP 和 npm 接入。
|
|
78
78
|
|
|
79
79
|
先用 `pi list` 检查是否已经安装;已安装但技能不可见时,检查资源是否启用并重载,不要重复安装。新安装请审阅[官方接入说明](https://github.com/realqiyan/task-conductor/blob/master/docs/host-integrations.md),从工作区根目录执行:
|
|
80
80
|
|
|
@@ -140,7 +140,7 @@ Personal Bot 不在工作区内保存私有启用状态。Pi 配置仍由 Pi 管
|
|
|
140
140
|
|
|
141
141
|
## 更新与历史数据
|
|
142
142
|
|
|
143
|
-
当前版本为 **0.2.
|
|
143
|
+
当前版本为 **0.2.6**。不维护工作区格式、初始化状态或升级机制。插件更新使用对应宿主的原生包管理;Pi 本地安装则更新来源源码,依赖变化后执行 `npm ci --ignore-scripts`,再重载或重启 Pi。更换版本前先停止活动子会话;不同兼容线的子会话不能直接恢复。
|
|
144
144
|
|
|
145
145
|
子会话 JSONL 由 Pi 保存在原生 sessions 目录或原生配置指定的位置;`pbot/subagents/` 只保存控制记录与会话引用,团队公共记录保存在 `pbot/teams/`。0.2.0 不兼容旧会话位置,不迁移或删除 0.1.x 历史;旧记录不进入当前列表或后台调度。先在旧版停止活动成员,更新后重新创建 agent。共享 Python 环境使用用户级 `pbot/python/.venv`,具体系统路径见 [Python 说明](python/README.md)。不自动导入其他应用的会话、配置或环境,也不修改其数据。MCP 连接与 CLI 环境按原生方式显式配置;用户资料、历史证据和备份原样保留。
|
|
146
146
|
|
|
@@ -142,4 +142,4 @@ dsh 的 Web、原生 Remote、附件、长记录、冷读与恢复,以及真
|
|
|
142
142
|
|
|
143
143
|
进入成员前提示返回快捷键,团队成员使用相同入口。默认 tmux 绑定下,普通终端按 Ctrl+B 后按 d 脱离;主会话已在 tmux 中时,按 Ctrl+B 后按小写 l 切回。自定义绑定以自己的配置为准。返回不停止成员,不要用 /exit 代替。
|
|
144
144
|
|
|
145
|
-
Pi 1.
|
|
145
|
+
Pi 1.5.0 的本地 SDK、实际无认证 Pi/tmux 进程、文件并发与恢复测试已覆盖基础契约。未使用假模型或模拟 provider。2026-10-28 在 0.1.3 上的真实模型双成员冒烟已通过两种策略的单轮通信、原文引用与主通知;0.2.0 的原生存储调整及 Pi 1.4.0 升级仅做本地 SDK/无认证进程验证,未追加真实模型调用;异构模型、多轮讨论、长期使用与交互 TUI 尚未验收,详见[验证](validation.md)。单轮通过不证明一般协作质量或外部操作恰好一次。
|
|
@@ -63,7 +63,7 @@ Pi 只维护 `.pi/pbot/history/`,dsh 只维护 `.dsh/pbot/history/`,两端
|
|
|
63
63
|
|
|
64
64
|
原生命令提供 `/pbot init`、`status`、`python setup` 及专家、团队、history 入口。Web 模块通过 dsh 原生 Remote 查询和操作同一服务,提供专家完整记录、直接对话、停止/恢复,团队操作与 history 展开。查询路径不得隐式激活 Agent。
|
|
65
65
|
|
|
66
|
-
bundle patch 基于原生 Web profile,声明默认 pbot 组合、服务端插件和客户端依赖。固定版客户端发现只接受包根 Loader 名称,因此 `personal-bot` 包根导出作为 dsh 服务端入口的别名,bundle 使用包根名称加载;`personal-bot/dsh` 独立入口仍保留,Pi 继续显式加载源码入口。客户端遵守固定版本 module loader 格式;外部复用 Cordis、React 和原生 UI。宿主包为可选 peer,开发依赖固定版本,不在发布产物打包第二份 SDK。TypeBox
|
|
66
|
+
bundle patch 基于原生 Web profile,声明默认 pbot 组合、服务端插件和客户端依赖。固定版客户端发现只接受包根 Loader 名称,因此 `personal-bot` 包根导出作为 dsh 服务端入口的别名,bundle 使用包根名称加载;`personal-bot/dsh` 独立入口仍保留,Pi 继续显式加载源码入口。客户端遵守固定版本 module loader 格式;外部复用 Cordis、React 和原生 UI。宿主包为可选 peer,开发依赖固定版本,不在发布产物打包第二份 SDK。TypeBox 是共享契约库,声明为范围为 `"*"` 的必需 peer,并在开发依赖中锁定版本。Pi 原生加载器提供 TypeBox;dsh 不提供它,由包管理器在安装时补齐,不能依靠 Pi 的安装间接供应。固定版 dsh 的输出 schema 只支持结构约束和 `oneOf`,因此协作工具保留完整生产端校验,并向宿主提供去除 TypeBox 元数据、采用互斥分支的结构 schema。
|
|
67
67
|
|
|
68
68
|
安装使用原生插件流程。`--from-default-profile` 仅用于首次创建,不作为升级命令。Pi 安装 CLI 不扩展为 dsh 配置管理器。`prepack` 生成 CLI、dsh 服务端和 Web 产物;`dist` 仍只用于测试。
|
|
69
69
|
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
| 私人工作与团队工作混合排队 | 不做;团队运行期间独占成员,暂停收尾后才能切换 |
|
|
20
20
|
| 新增团队扫描器与定时器 | 不做;复用父侧 1 秒扫描和子侧 250 毫秒 pump |
|
|
21
21
|
| 新建复杂团队 TUI | 不做;先用 Pi 原生列表、输入与查看对话框 |
|
|
22
|
-
| 先升级 Pi 再开发 | 团队最初在 Pi 1.1.0 验证,不以升级为前提;当前依赖已升级至 1.
|
|
22
|
+
| 先升级 Pi 再开发 | 团队最初在 Pi 1.1.0 验证,不以升级为前提;当前依赖已升级至 1.5.0 |
|
|
23
23
|
|
|
24
24
|
首版限于同一工作区、同一父 session,一个 agent 最多属于一个未关闭团队。成员在 create 时确定;需要换人时关闭旧团队、用原 agent 创建新团队,历史保留。团队关闭不停止成员,成员仍可继续独立工作。
|
|
25
25
|
|
|
@@ -212,7 +212,7 @@ AgentFiles.enqueue 只需增加可选的预定 requestId。没有该参数时保
|
|
|
212
212
|
|
|
213
213
|
## 6. 成员如何直接取得彼此发言
|
|
214
214
|
|
|
215
|
-
使用当前 Pi 1.
|
|
215
|
+
使用当前 Pi 1.5.0 的两个原生入口:
|
|
216
216
|
|
|
217
217
|
1. `before_agent_start`:本次输入属于团队时,附加团队职责 section,并返回一个 `pbot.team-context` custom message,包含截至 throughSeq 的公共原文。私人或人工工作显式移除团队职责 section,不能只跳过设置而留下旧职责。
|
|
218
218
|
2. `turn_end`:成员在团队执行中时,在原生边界追加新到的公共原文;不设置 `continue: true`,不因为新消息再请求模型。
|
|
@@ -319,7 +319,7 @@ TeamService 接收普通成员状态与完成记录,返回待投递的父侧
|
|
|
319
319
|
- 版本兼容与运行能力分开判断:同一兼容线内还须核对 team-ready,不能只靠版本字符串猜测能力。
|
|
320
320
|
- 降级前关闭团队并停止相关进程;不承诺旧子入口能安全参与新团队协议。
|
|
321
321
|
- 不自动导入配置,不增加工作区格式、升级系统或存储版本计数。
|
|
322
|
-
- 开发依赖现锁定 Pi 1.
|
|
322
|
+
- 开发依赖现锁定 Pi 1.5.0;测试按新版结构化触发对象调用 before_agent_start,验证用户/custom 消息入口与 turn_end 本地契约,不增加旧 SDK 适配层。
|
|
323
323
|
|
|
324
324
|
### 三个实现步骤
|
|
325
325
|
|
package/docs/technical-design.md
CHANGED
|
@@ -113,6 +113,6 @@ Web 拥有草稿、上传和查询;接纳后的命令归服务端。命令不
|
|
|
113
113
|
|
|
114
114
|
Pi 将工具纳入 pbot namespace,codemode 按契约组合;dsh 注册原生工具,并在固定版可表达的 schema 之外继续校验完整领域契约。原生 CLI/MCP 与可选 Task Conductor 的接入和授权见[工具与执行](capability-design.md)。
|
|
115
115
|
|
|
116
|
-
扩展以 TypeScript 源码分发,由 Pi 加载;dist 仅供测试导入。安装 CLI 使用现有 TypeScript 工具链单独生成 lib,由 bin/pbot.mjs 启动,消费者无需编译或预装 Pi。dsh Host 与 Web 也编译到 lib,客户端由原生包根 Loader 发现;Pi 的入口仍由包清单明确指向 src。宿主 SDK 均为 optional peer,不捆绑另一份运行时;TypeBox
|
|
116
|
+
扩展以 TypeScript 源码分发,由 Pi 加载;dist 仅供测试导入。安装 CLI 使用现有 TypeScript 工具链单独生成 lib,由 bin/pbot.mjs 启动,消费者无需编译或预装 Pi。dsh Host 与 Web 也编译到 lib,客户端由原生包根 Loader 发现;Pi 的入口仍由包清单明确指向 src。宿主 SDK 均为 optional peer,不捆绑另一份运行时;TypeBox 声明为范围为 `"*"` 的必需 peer:Pi 通过原生加载器提供;dsh 安装时由包管理器补齐。开发依赖锁定 TypeBox 版本,不随包捆绑。Pi/CLI 保持 Node.js 22.19+,dsh 与完整开发使用 Node.js 24.9+。安装检查子进程在发现真实宿主后使用该宿主的 SDK 读取配置和切换来源声明。发布版本以 package.json 为准,包内组件共用该版本。子会话兼容线在 1.0 前按次版本、1.0 起按主版本判断,跨线会话不能直接恢复。
|
|
117
117
|
|
|
118
118
|
开发验证见[验证](validation.md),分发流程见[npm 发布](release.md)。
|
package/docs/validation.md
CHANGED
|
@@ -9,7 +9,7 @@ git diff --check
|
|
|
9
9
|
npm pack --dry-run
|
|
10
10
|
```
|
|
11
11
|
|
|
12
|
-
完整开发与验收使用 Linux、Node.js 24.9+;Pi 与独立 CLI 消费路径保留 Node.js 22.19+。CI 使用 Node 24.x 安装完整开发依赖、执行全量检查并构建候选包,再由独立 Node 22.19.0 作业安装同一 tarball,检查无宿主 SDK 的 CLI 与显式安装 Pi SDK 后的扩展、工具、技能及资料初始化。消费者检查不安装 dsh 开发依赖,也不调用模型。npm test 先构建 dist 和 CLI、dsh Host/Web 的 lib,再串行执行 Node 测试。测试使用真实本地文件、进程、计算、Pi 1.
|
|
12
|
+
完整开发与验收使用 Linux、Node.js 24.9+;Pi 与独立 CLI 消费路径保留 Node.js 22.19+。CI 使用 Node 24.x 安装完整开发依赖、执行全量检查并构建候选包,再由独立 Node 22.19.0 作业安装同一 tarball,检查无宿主 SDK 的 CLI 与显式安装 Pi SDK 后的扩展、工具、技能及资料初始化。消费者检查不安装 dsh 开发依赖,也不调用模型。npm test 先构建 dist 和 CLI、dsh Host/Web 的 lib,再串行执行 Node 测试。测试使用真实本地文件、进程、计算、Pi 1.5.0 与固定版 dsh 0.2.2-rc.1 SDK。Pi 开发依赖与相关传递组件统一锁定 1.5.0;宿主提供的包声明为 optional peer,不增加运行时副本。发布包包含 bin/lib,扩展仍由 Pi 加载 src,dist 不进入发布包。
|
|
13
13
|
|
|
14
14
|
| 范围 | 检查内容 |
|
|
15
15
|
| --- | --- |
|
|
@@ -23,7 +23,7 @@ npm pack --dry-run
|
|
|
23
23
|
| 历史查询 | 真实 SDK 保存的问答、补充输入、工具过滤、分支隔离、四叉分组、原文与摘要搜索、正文分页、重载复用、空会话不误报、旧目录复制、跨目录读取、缺失原文时保留存档、旧路径清理、按会话 ID 重新关联与工具契约 |
|
|
24
24
|
| 原生会话存储 | 真实 CLI 的默认 cwd 目录、settings/环境变量优先级、tmux 旧环境覆盖、空待命恢复、进入已停止会话不入队或重放旧任务、绝对路径绑定、身份检查、固定叶节点只读报告与旧布局保留 |
|
|
25
25
|
| 团队协作 | 轮流顺序、并行上限与轮间汇合、暂停/领取、原文分页、并发保存、mixed 隐私边界与未知结果 |
|
|
26
|
-
| 团队宿主接入 | Pi 1.
|
|
26
|
+
| 团队宿主接入 | Pi 1.5.0 的用户/custom 消息 before_agent_start、turn_end、原生 context 去重、子 reload 不重跑、窄通信工具与实例关闭 |
|
|
27
27
|
|
|
28
28
|
冒烟与 E2E 可分别运行 npm run test:smoke 和 npm run test:e2e。驱动直接提交工具输入,不生成模型响应。打包冒烟复用本地已安装依赖。
|
|
29
29
|
|
|
@@ -35,6 +35,16 @@ npm pack --dry-run
|
|
|
35
35
|
|
|
36
36
|
Node 测试不下载第三方 Python 依赖;原生库集成验证见 [Python 说明](../python/README.md)。
|
|
37
37
|
|
|
38
|
+
## Pi 1.5 本地回归
|
|
39
|
+
|
|
40
|
+
开发依赖及全部 8 个 Pi 传递组件统一锁定 1.5.0。macOS、Node.js 24.22.2、npm 11.19.1 下,`npm run check`、`npm test` 和正常 prepack 打包通过;125 项测试全部通过,无跳过。补充 9 项包接入回归通过,实际资源加载检查扩展错误与包警告均为空。
|
|
41
|
+
|
|
42
|
+
全仓版本检查覆盖源码、测试、脚本、CI、资料、文档和锁文件。自有依赖与当前使用说明已统一到 Pi 1.5.0。固定版 dsh 的第三方 `dsh-llm-pi-ai` 仍声明 `pi-ai: ^1.3.0`,当前锁文件与安装树均解析到 1.5.0,没有旧版 Pi 副本;不改写第三方发布包的依赖范围。既有 Pi 1.1/1.4 验收记录保留原版本。
|
|
43
|
+
|
|
44
|
+
实际 tarball 在隔离消费者目录通过 `scripts/check-consumer.mjs` 验证:独立 CLI 无需 Pi/dsh SDK,显式安装 Pi 1.5.0 后扩展加载无错误或包警告,四个工具、技能和 `/pbot init` 均通过,不发起模型请求。
|
|
45
|
+
|
|
46
|
+
本轮未调用真实模型,也未重新执行 Linux、Node.js 22.19.0 或人工 TUI 验收。
|
|
47
|
+
|
|
38
48
|
## 双宿主接入验收
|
|
39
49
|
|
|
40
50
|
已完成固定版 dsh 的 Host/Web、专家与团队、附件、通知、双来源 history 和人工管理。当前结果与证据位置持续记录在[实施记录](dsh-implementation-plan.md),使用入口见[dsh 使用](dsh.md)。
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "personal-bot",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.6",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "personal-bot",
|
|
9
|
-
"version": "0.2.
|
|
9
|
+
"version": "0.2.6",
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"ajv": "8.17.1",
|
|
12
12
|
"ajv-formats": "3.0.1",
|
|
13
|
-
"semver": "7.8.5"
|
|
14
|
-
"typebox": "1.3.27"
|
|
13
|
+
"semver": "7.8.5"
|
|
15
14
|
},
|
|
16
15
|
"bin": {
|
|
17
16
|
"pbot": "bin/pbot.mjs"
|
|
@@ -41,13 +40,14 @@
|
|
|
41
40
|
"@deepseek-ai/dsh-typert-registry": "0.2.2-rc.1",
|
|
42
41
|
"@deepseek-ai/dsh-user-approval": "0.2.2-rc.1",
|
|
43
42
|
"@deepseek-ai/dsh-working-directory": "0.2.2-rc.1",
|
|
44
|
-
"@earendil-works/pi-ai": "1.
|
|
45
|
-
"@earendil-works/pi-coding-agent": "1.
|
|
46
|
-
"@earendil-works/pi-tui": "1.
|
|
43
|
+
"@earendil-works/pi-ai": "1.5.0",
|
|
44
|
+
"@earendil-works/pi-coding-agent": "1.5.0",
|
|
45
|
+
"@earendil-works/pi-tui": "1.5.0",
|
|
47
46
|
"@types/node": "24.10.1",
|
|
48
47
|
"@types/semver": "7.7.1",
|
|
49
48
|
"dependency-cruiser": "18.5.0",
|
|
50
49
|
"esbuild": "0.25.12",
|
|
50
|
+
"typebox": "1.3.27",
|
|
51
51
|
"typescript": "5.9.3"
|
|
52
52
|
},
|
|
53
53
|
"engines": {
|
|
@@ -80,7 +80,8 @@
|
|
|
80
80
|
"@deepseek-ai/dsh-working-directory": "0.2.2-rc.1",
|
|
81
81
|
"@earendil-works/pi-ai": "*",
|
|
82
82
|
"@earendil-works/pi-coding-agent": "*",
|
|
83
|
-
"@earendil-works/pi-tui": "*"
|
|
83
|
+
"@earendil-works/pi-tui": "*",
|
|
84
|
+
"typebox": "*"
|
|
84
85
|
},
|
|
85
86
|
"peerDependenciesMeta": {
|
|
86
87
|
"@deepseek-ai/cordis": {
|
|
@@ -7141,36 +7142,36 @@
|
|
|
7141
7142
|
}
|
|
7142
7143
|
},
|
|
7143
7144
|
"node_modules/@earendil-works/pi-agent-core": {
|
|
7144
|
-
"version": "1.
|
|
7145
|
-
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-agent-core/-/pi-agent-core-1.
|
|
7146
|
-
"integrity": "sha512-
|
|
7145
|
+
"version": "1.5.0",
|
|
7146
|
+
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-agent-core/-/pi-agent-core-1.5.0.tgz",
|
|
7147
|
+
"integrity": "sha512-FOj+jXj48DbzMycR/ghNa2KcsqWmvOln24e0FnQOVgnd8vn5H79g335WdHaZUVdRo+zCeogb40/qPPlCWFuvmA==",
|
|
7147
7148
|
"dev": true,
|
|
7148
7149
|
"license": "MIT",
|
|
7149
7150
|
"dependencies": {
|
|
7150
|
-
"@earendil-works/pi-ai": "1.
|
|
7151
|
-
"
|
|
7151
|
+
"@earendil-works/pi-ai": "1.5.0",
|
|
7152
|
+
"@earendil-works/pi-schema": "1.5.0"
|
|
7152
7153
|
},
|
|
7153
7154
|
"engines": {
|
|
7154
7155
|
"node": ">=22.19.0"
|
|
7155
7156
|
}
|
|
7156
7157
|
},
|
|
7157
7158
|
"node_modules/@earendil-works/pi-ai": {
|
|
7158
|
-
"version": "1.
|
|
7159
|
-
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-ai/-/pi-ai-1.
|
|
7160
|
-
"integrity": "sha512-
|
|
7159
|
+
"version": "1.5.0",
|
|
7160
|
+
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-ai/-/pi-ai-1.5.0.tgz",
|
|
7161
|
+
"integrity": "sha512-VeWxNqTHSqRCf8AcY/6kvNwh+neRL6MPxZPePVztIQy6qqK9MR/YoCSN/ZgDnIyCD3pqEXgRyQbzk4KV4uvjbg==",
|
|
7161
7162
|
"dev": true,
|
|
7162
7163
|
"license": "MIT",
|
|
7163
7164
|
"dependencies": {
|
|
7164
7165
|
"@anthropic-ai/sdk": "0.129.0",
|
|
7165
7166
|
"@aws-sdk/client-bedrock-runtime": "3.1127.0",
|
|
7166
|
-
"@earendil-works/pi-
|
|
7167
|
+
"@earendil-works/pi-schema": "1.5.0",
|
|
7168
|
+
"@earendil-works/pi-telemetry": "1.5.0",
|
|
7167
7169
|
"@google/genai": "2.21.0",
|
|
7168
7170
|
"@smithy/node-http-handler": "4.12.1",
|
|
7169
7171
|
"http-proxy-agent": "9.1.0",
|
|
7170
7172
|
"https-proxy-agent": "9.1.0",
|
|
7171
7173
|
"openai": "7.19.0",
|
|
7172
|
-
"partial-json": "0.1.7"
|
|
7173
|
-
"typebox": "1.3.27"
|
|
7174
|
+
"partial-json": "0.1.7"
|
|
7174
7175
|
},
|
|
7175
7176
|
"bin": {
|
|
7176
7177
|
"pi-ai": "dist/cli.js"
|
|
@@ -7180,9 +7181,9 @@
|
|
|
7180
7181
|
}
|
|
7181
7182
|
},
|
|
7182
7183
|
"node_modules/@earendil-works/pi-codemode": {
|
|
7183
|
-
"version": "1.
|
|
7184
|
-
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-codemode/-/pi-codemode-1.
|
|
7185
|
-
"integrity": "sha512-
|
|
7184
|
+
"version": "1.5.0",
|
|
7185
|
+
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-codemode/-/pi-codemode-1.5.0.tgz",
|
|
7186
|
+
"integrity": "sha512-PLBJZ17AEWGzOlAAcFuOkw3PxkOti0JlFuZQyeF2GRTqbpuYo4k9t8YqUV2uOQVzrUnKdxahwaFUqc1eNS1WAg==",
|
|
7186
7187
|
"dev": true,
|
|
7187
7188
|
"license": "MIT",
|
|
7188
7189
|
"dependencies": {
|
|
@@ -7193,17 +7194,17 @@
|
|
|
7193
7194
|
}
|
|
7194
7195
|
},
|
|
7195
7196
|
"node_modules/@earendil-works/pi-coding-agent": {
|
|
7196
|
-
"version": "1.
|
|
7197
|
-
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-coding-agent/-/pi-coding-agent-1.
|
|
7198
|
-
"integrity": "sha512-
|
|
7197
|
+
"version": "1.5.0",
|
|
7198
|
+
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-coding-agent/-/pi-coding-agent-1.5.0.tgz",
|
|
7199
|
+
"integrity": "sha512-xNDZ5kqowO6Z03FS2gwAkPEGk1ssxVcYKQ6qZId84mFEvwACvvyc2l0vAMOS+c5zvxLRMLBE9r4y44IGYkMJaQ==",
|
|
7199
7200
|
"dev": true,
|
|
7200
7201
|
"license": "MIT",
|
|
7201
7202
|
"dependencies": {
|
|
7202
|
-
"@earendil-works/pi-agent-core": "1.
|
|
7203
|
-
"@earendil-works/pi-ai": "1.
|
|
7204
|
-
"@earendil-works/pi-codemode": "1.
|
|
7205
|
-
"@earendil-works/pi-mcp": "1.
|
|
7206
|
-
"@earendil-works/pi-tui": "1.
|
|
7203
|
+
"@earendil-works/pi-agent-core": "1.5.0",
|
|
7204
|
+
"@earendil-works/pi-ai": "1.5.0",
|
|
7205
|
+
"@earendil-works/pi-codemode": "1.5.0",
|
|
7206
|
+
"@earendil-works/pi-mcp": "1.5.0",
|
|
7207
|
+
"@earendil-works/pi-tui": "1.5.0",
|
|
7207
7208
|
"@silvia-odwyer/photon-node": "0.3.4",
|
|
7208
7209
|
"brace-expansion": "5.0.12",
|
|
7209
7210
|
"chalk": "6.0.0",
|
|
@@ -7214,12 +7215,12 @@
|
|
|
7214
7215
|
"hosted-git-info": "9.0.3",
|
|
7215
7216
|
"ignore": "7.0.8",
|
|
7216
7217
|
"jiti": "2.7.0",
|
|
7217
|
-
"minimatch": "
|
|
7218
|
+
"minimatch": "11.0.3",
|
|
7218
7219
|
"proper-lockfile": "4.1.2",
|
|
7219
7220
|
"quickjs-wasi": "3.6.2",
|
|
7220
7221
|
"semver": "7.8.5",
|
|
7221
7222
|
"typebox": "1.3.27",
|
|
7222
|
-
"undici": "8.
|
|
7223
|
+
"undici": "8.12.3",
|
|
7223
7224
|
"yaml": "2.9.0"
|
|
7224
7225
|
},
|
|
7225
7226
|
"bin": {
|
|
@@ -7230,9 +7231,9 @@
|
|
|
7230
7231
|
}
|
|
7231
7232
|
},
|
|
7232
7233
|
"node_modules/@earendil-works/pi-mcp": {
|
|
7233
|
-
"version": "1.
|
|
7234
|
-
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-mcp/-/pi-mcp-1.
|
|
7235
|
-
"integrity": "sha512-
|
|
7234
|
+
"version": "1.5.0",
|
|
7235
|
+
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-mcp/-/pi-mcp-1.5.0.tgz",
|
|
7236
|
+
"integrity": "sha512-DURw3IwHCTMHV8CzUJWVp9css27NowsCWfXt4xg2r09IZ+P1O/Uq58hp0hb9WJO0dbkaKGXKBIkV4LVXcu2nlg==",
|
|
7236
7237
|
"dev": true,
|
|
7237
7238
|
"license": "MIT",
|
|
7238
7239
|
"dependencies": {
|
|
@@ -7242,10 +7243,20 @@
|
|
|
7242
7243
|
"node": ">=22.19.0"
|
|
7243
7244
|
}
|
|
7244
7245
|
},
|
|
7246
|
+
"node_modules/@earendil-works/pi-schema": {
|
|
7247
|
+
"version": "1.5.0",
|
|
7248
|
+
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-schema/-/pi-schema-1.5.0.tgz",
|
|
7249
|
+
"integrity": "sha512-RW0MbT2tR65OY6xMsgB/yVBb7m/RTNwA+9hurSN1vVXfHZRVmVnXbruBPrx/PzbrQnW5yLVlMRWxErGDQtF1Hg==",
|
|
7250
|
+
"dev": true,
|
|
7251
|
+
"license": "MIT",
|
|
7252
|
+
"engines": {
|
|
7253
|
+
"node": ">=22.19.0"
|
|
7254
|
+
}
|
|
7255
|
+
},
|
|
7245
7256
|
"node_modules/@earendil-works/pi-telemetry": {
|
|
7246
|
-
"version": "1.
|
|
7247
|
-
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-telemetry/-/pi-telemetry-1.
|
|
7248
|
-
"integrity": "sha512-
|
|
7257
|
+
"version": "1.5.0",
|
|
7258
|
+
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-telemetry/-/pi-telemetry-1.5.0.tgz",
|
|
7259
|
+
"integrity": "sha512-VW3tcVdnNfl/Vk8wHPTzZdKkxcsCOM12ppiO4DXnd9wMxUCmOfLt/wvUnWeKWbTVlVSRg0uqKtnnhE2UCsG2Bw==",
|
|
7249
7260
|
"dev": true,
|
|
7250
7261
|
"license": "MIT",
|
|
7251
7262
|
"engines": {
|
|
@@ -7253,9 +7264,9 @@
|
|
|
7253
7264
|
}
|
|
7254
7265
|
},
|
|
7255
7266
|
"node_modules/@earendil-works/pi-tui": {
|
|
7256
|
-
"version": "1.
|
|
7257
|
-
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-tui/-/pi-tui-1.
|
|
7258
|
-
"integrity": "sha512-
|
|
7267
|
+
"version": "1.5.0",
|
|
7268
|
+
"resolved": "https://registry.npmmirror.com/@earendil-works/pi-tui/-/pi-tui-1.5.0.tgz",
|
|
7269
|
+
"integrity": "sha512-56KqrDVeLF18k+syppVbT35Ai1opbM44ot+sL7O3K40CaWwXCiwOpqEFugDBAILtAhseZh6uYIuYxPPOJHLFAA==",
|
|
7259
7270
|
"dev": true,
|
|
7260
7271
|
"license": "MIT",
|
|
7261
7272
|
"dependencies": {
|
|
@@ -8330,6 +8341,13 @@
|
|
|
8330
8341
|
"url": "https://opencollective.com/libvips"
|
|
8331
8342
|
}
|
|
8332
8343
|
},
|
|
8344
|
+
"node_modules/@isaacs/nonrecursive-glob-match": {
|
|
8345
|
+
"version": "1.1.0",
|
|
8346
|
+
"resolved": "https://registry.npmmirror.com/@isaacs/nonrecursive-glob-match/-/nonrecursive-glob-match-1.1.0.tgz",
|
|
8347
|
+
"integrity": "sha512-GPm/Dbvk5RLmhRnxXIa7nTpK0xtl4E0wj0MslsuNiJ1FIROU+2+9lgUC/dgF7Ey4QCWhfEsgxilMRMCdHPfDfw==",
|
|
8348
|
+
"dev": true,
|
|
8349
|
+
"license": "BlueOak-1.0.0"
|
|
8350
|
+
},
|
|
8333
8351
|
"node_modules/@joplin/turndown-plugin-gfm": {
|
|
8334
8352
|
"version": "1.0.68",
|
|
8335
8353
|
"resolved": "https://registry.npmjs.org/@joplin/turndown-plugin-gfm/-/turndown-plugin-gfm-1.0.68.tgz",
|
|
@@ -10975,13 +10993,14 @@
|
|
|
10975
10993
|
}
|
|
10976
10994
|
},
|
|
10977
10995
|
"node_modules/minimatch": {
|
|
10978
|
-
"version": "
|
|
10979
|
-
"resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-
|
|
10980
|
-
"integrity": "sha512-
|
|
10996
|
+
"version": "11.0.3",
|
|
10997
|
+
"resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-11.0.3.tgz",
|
|
10998
|
+
"integrity": "sha512-iny/40PEGkNJQ5/Pv6z3nm6FbRAby32GeZRjCUJk2WnNDbgPSTcdI+DDvLqsgBdD4cD5sMtMheqPPnehCCa8Nw==",
|
|
10981
10999
|
"dev": true,
|
|
10982
11000
|
"license": "BlueOak-1.0.0",
|
|
10983
11001
|
"dependencies": {
|
|
10984
|
-
"
|
|
11002
|
+
"@isaacs/nonrecursive-glob-match": "^1.0.3",
|
|
11003
|
+
"brace-expansion": "^5.0.12"
|
|
10985
11004
|
},
|
|
10986
11005
|
"engines": {
|
|
10987
11006
|
"node": "18 || 20 || >=22"
|
|
@@ -12353,6 +12372,7 @@
|
|
|
12353
12372
|
"version": "1.3.27",
|
|
12354
12373
|
"resolved": "https://registry.npmmirror.com/typebox/-/typebox-1.3.27.tgz",
|
|
12355
12374
|
"integrity": "sha512-zu+jc1pcy4UiNThxikUr36f0Rybk9PEeCg/NE6adeWr/SKsdNO4EzZHYRDlv2YCVAfj3Odq3dESSo/jNyoBXzA==",
|
|
12375
|
+
"dev": true,
|
|
12356
12376
|
"license": "MIT"
|
|
12357
12377
|
},
|
|
12358
12378
|
"node_modules/typescript": {
|
|
@@ -12370,9 +12390,9 @@
|
|
|
12370
12390
|
}
|
|
12371
12391
|
},
|
|
12372
12392
|
"node_modules/undici": {
|
|
12373
|
-
"version": "8.
|
|
12374
|
-
"resolved": "https://registry.npmmirror.com/undici/-/undici-8.
|
|
12375
|
-
"integrity": "sha512
|
|
12393
|
+
"version": "8.12.3",
|
|
12394
|
+
"resolved": "https://registry.npmmirror.com/undici/-/undici-8.12.3.tgz",
|
|
12395
|
+
"integrity": "sha512-+fdndUTwBP86cVjihTp21hZHo7d6oj1c/47XPA3lL8mM0XHs+C4EkcjmgRsFnFk2f/UONGDy9ItBItmXsLOQHw==",
|
|
12376
12396
|
"dev": true,
|
|
12377
12397
|
"license": "MIT",
|
|
12378
12398
|
"engines": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "personal-bot",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.6",
|
|
4
4
|
"repository": {
|
|
5
5
|
"type": "git",
|
|
6
6
|
"url": "git+https://github.com/realqiyan/personal-bot.git"
|
|
@@ -95,7 +95,8 @@
|
|
|
95
95
|
"@deepseek-ai/dsh-typert-registry": "0.2.2-rc.1",
|
|
96
96
|
"@earendil-works/pi-ai": "*",
|
|
97
97
|
"@earendil-works/pi-coding-agent": "*",
|
|
98
|
-
"@earendil-works/pi-tui": "*"
|
|
98
|
+
"@earendil-works/pi-tui": "*",
|
|
99
|
+
"typebox": "*"
|
|
99
100
|
},
|
|
100
101
|
"peerDependenciesMeta": {
|
|
101
102
|
"@deepseek-ai/cordis": { "optional": true },
|
|
@@ -134,8 +135,7 @@
|
|
|
134
135
|
"dependencies": {
|
|
135
136
|
"ajv": "8.17.1",
|
|
136
137
|
"ajv-formats": "3.0.1",
|
|
137
|
-
"semver": "7.8.5"
|
|
138
|
-
"typebox": "1.3.27"
|
|
138
|
+
"semver": "7.8.5"
|
|
139
139
|
},
|
|
140
140
|
"devDependencies": {
|
|
141
141
|
"@deepseek-ai/cordis": "4.1.0",
|
|
@@ -162,13 +162,14 @@
|
|
|
162
162
|
"@deepseek-ai/dsh-tool-executor-ptc": "0.2.2-rc.1",
|
|
163
163
|
"@deepseek-ai/dsh-typert-protocol": "0.2.2-rc.1",
|
|
164
164
|
"@deepseek-ai/dsh-typert-registry": "0.2.2-rc.1",
|
|
165
|
-
"@earendil-works/pi-ai": "1.
|
|
166
|
-
"@earendil-works/pi-coding-agent": "1.
|
|
167
|
-
"@earendil-works/pi-tui": "1.
|
|
165
|
+
"@earendil-works/pi-ai": "1.5.0",
|
|
166
|
+
"@earendil-works/pi-coding-agent": "1.5.0",
|
|
167
|
+
"@earendil-works/pi-tui": "1.5.0",
|
|
168
168
|
"@types/node": "24.10.1",
|
|
169
169
|
"@types/semver": "7.7.1",
|
|
170
170
|
"dependency-cruiser": "18.5.0",
|
|
171
171
|
"esbuild": "0.25.12",
|
|
172
|
+
"typebox": "1.3.27",
|
|
172
173
|
"typescript": "5.9.3"
|
|
173
174
|
}
|
|
174
175
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
先通过当前宿主的原生工具发现查找 Task Conductor,并加载 using-task-conductor 技能,以实际 MCP schema 为准。工具未直接显示不等于未安装;技能可用时,按技能处理连接或排障。
|
|
8
8
|
|
|
9
|
-
以下安装命令只适用于 Pi。技能缺失时,用 `pi list` 检查插件及资源启用状态。已有旧版接入包时,先审阅官方升级说明,确认来源和作用域后显式替换旧包声明,不同时加载两份;服务更新与 MCP
|
|
9
|
+
以下安装命令只适用于 Pi。技能缺失时,用 `pi list` 检查插件及资源启用状态。已有旧版接入包时,先审阅官方升级说明,确认来源和作用域后显式替换旧包声明,不同时加载两份;服务更新与 MCP 配置另行核对,保留任务历史。确未安装则按本项目基线使用 Pi 1.5.0,核对已有安装授权,已覆盖时直接使用工作区安装命令,未覆盖时再请求授权:
|
|
10
10
|
|
|
11
11
|
```bash
|
|
12
12
|
pi install --local npm:task-conductor-plugin
|