@epoch-agent/protocol 0.3.1 → 0.4.0

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/dist/index.d.ts CHANGED
@@ -1198,6 +1198,103 @@ interface ActiveAgentRole {
1198
1198
  source?: AgentRoleSource;
1199
1199
  }
1200
1200
 
1201
+ /**
1202
+ * 宿主自定义的那几张开场卡片(2026-09-04)—— 画在新会话空屏那句招呼底下。
1203
+ *
1204
+ * 形状和口径逐字照 [`EpochConfig.sidebarMenu`](./sidebar-menu.ts):**宿主装配期
1205
+ * 预置的一个配置项,界面上没有写端点**,`GET /api/config` 原样下发、没配就不带
1206
+ * 这个键。为什么是配置项而不是 `createWebServer()` 的参数,全文在 `brand` 那个
1207
+ * 字段上(一句话:走 `epoch web --json` 起子进程的宿主没有构造函数可传)。
1208
+ *
1209
+ * ## ⚠️ 这一格的**默认形态是「一张都没有」**,而那是一条产品判据不是省事
1210
+ *
1211
+ * 这一屏 2026-08-18 撤掉过三条我们自己写的种子(出计划 / 读模块 / 跑测试),
1212
+ * 用户原话是**「其他的都太有指向性了」**:那三条把「这个 agent 是干什么的」窄成
1213
+ * 了「它是个改代码的」,而这一屏是绝大多数人见到它的第一眼。判据全文在 web 的
1214
+ * [session/blank.tsx](../../web/src/session/blank.tsx) 文件头那张表。
1215
+ *
1216
+ * 这个键解的正是那个矛盾:**有指向性的话交给知道自己用户在干什么的宿主去说。**
1217
+ * 所以宿主不配的时候这一屏**仍然只有一行招呼**,我们一张默认卡片都不塞 ——
1218
+ * 下一个想「至少给个例子吧」的人,先读上面那一段。
1219
+ *
1220
+ * ## 点下去发生什么:**把那句话填进输入框,不发出去**
1221
+ *
1222
+ * 这是这一格和 `sidebarMenu` 唯一的形状差别,而差别来自**动作的落点**:
1223
+ *
1224
+ * | 这一格 | `sidebarMenu` |
1225
+ * | -------------------------- | ------------------------------------ |
1226
+ * | 落点在**这一屏里**(输入框)| 落点在**这一屏外**(宿主自己的页面) |
1227
+ * | 我们自己做得到 | 只有宿主做得到 |
1228
+ * | 于是:直接填 | 于是:发一条 `postMessage` 请它自己办 |
1229
+ *
1230
+ * 所以这一格**没有消息契约**,宿主不必接监听 —— 少一样要对齐的东西。
1231
+ * 走的是界面里那条现成的「召唤」路(web 的 `ComposerProps.prefill`:追加、
1232
+ * 光标落到末尾、聚焦)。
1233
+ *
1234
+ * **填而不发**有两条账:
1235
+ *
1236
+ * - 卡片上那句话是个**起点**,不是一条成品消息 —— 用户十有八九要改一处再发;
1237
+ * - 点一下就往模型发一次请求,是在花用户(或宿主)的钱,而他按的只是一张
1238
+ * 写着「写周报」的卡片。
1239
+ */
1240
+ /**
1241
+ * 空屏上的一张卡片。
1242
+ *
1243
+ * ⚠️ `title` / `subtitle` / `prompt` 三个字段都是**宿主的话**,一个都不过 i18n
1244
+ * catalog —— 判据逐字同 {@link SidebarMenuItem}:它们的内容随宿主而变,没有有限
1245
+ * 的码可以枚举。用户把界面切成英文之后这几张卡**仍然是宿主给的那份文案**,
1246
+ * 那是预期形态不是漏翻。
1247
+ */
1248
+ interface BlankCard {
1249
+ /**
1250
+ * 这一份清单里认它的那个码。**不许重复**(core 的 schema 拦这一条)。
1251
+ *
1252
+ * ⚠️ 它和 {@link SidebarMenuItem.id} 不是同一种东西:那一个会**发回给宿主**
1253
+ * (宿主靠它分辨用户按了哪一行),而这一个哪儿都不去 —— 点下去发生的事完全在
1254
+ * 这张页里(把 {@link prompt} 填进输入框)。它在这儿只是 React 那个 `key`
1255
+ * 和「配重了」那道校验的抓手。
1256
+ *
1257
+ * 那为什么还要它:没有 `id` 的话,「配重了」这件事就只能拿 `title` 判,
1258
+ * 而两张卡**标题相同、提示词不同**是完全正当的配置(同一个动作的两个变体)。
1259
+ */
1260
+ id: string;
1261
+ /** 卡片上那行大字。空串是配错了(不要这一张就别写它),core 的 schema 会拦 */
1262
+ title: string;
1263
+ /**
1264
+ * 大字底下那行小字 —— **可以没有**,那时这张卡就只有一行。
1265
+ *
1266
+ * ⚠️ 和 `icon` 那一格不同,这里**没有兜底**:一列卡片有的两行有的一行,读起来
1267
+ * 是「这张说得细一点」,不是「那张掉了东西」。图标那一格之所以要兜底,是因为
1268
+ * 缺的是**一整列的左边界**(判据在 web 的 `HOST_ICON_FALLBACK` 上)。
1269
+ */
1270
+ subtitle?: string;
1271
+ /**
1272
+ * 点下去填进输入框的那句话。**这是这张卡真正在说的东西**,不是 `title`。
1273
+ *
1274
+ * 两者刻意分开:卡片上那行字要短到扫得过去(「写周报」),而填进去的那句话
1275
+ * 要长到模型接得住(「根据本周 git log 起草一份周报,按项目分组」)。
1276
+ * 合成一个字段的话,宿主只能二选一 —— 要么卡片上印着一整段话,要么发给模型的
1277
+ * 是三个字。
1278
+ *
1279
+ * 空串是配错了,core 的 schema 会拦:一张点下去什么都不填的卡,是决定 20 ①
1280
+ * 那句「画一个点了没反应的控件比不画更糟」的字面形态。
1281
+ */
1282
+ prompt: string;
1283
+ /**
1284
+ * 卡片上那枚图标的名字。**不给不等于没有图标** —— 会落一枚默认的。
1285
+ *
1286
+ * 判据、以及「为什么类型是 `string` 而不是一个联合」,逐字同
1287
+ * {@link SidebarMenuItem.icon}:图标名是第一方 Web UI 那张精灵图的私有词表,
1288
+ * 写进契约等于对宿主承诺那几十个名字一个都不改。**认哪几个名字由 web 那一层
1289
+ * 说了算**(和侧栏菜单共用同一张白名单,判据在 `shell/host-menu.tsx` 上),
1290
+ * 认不出来的当没给。
1291
+ *
1292
+ * ⚠️ 兜底那一枚和侧栏菜单**不是同一个**:那边是一个朝外的箭头(「点下去离开
1293
+ * 这一屏」),而这一格点下去**留在原地**。判据在 web 的 `BLANK_ICON_FALLBACK` 上。
1294
+ */
1295
+ icon?: string;
1296
+ }
1297
+
1201
1298
  /**
1202
1299
  * 内容合规的**契约值** —— 类别与动作。
1203
1300
  *
@@ -1827,6 +1924,23 @@ interface EpochConfig {
1827
1924
  * 兜(web 那一格滚动),不由校验兜。
1828
1925
  */
1829
1926
  sidebarMenu?: readonly SidebarMenuItem[];
1927
+ /**
1928
+ * 宿主自定义的那几张开场卡片(2026-09-04)。**缺省 = 新会话空屏上一张都没有**,
1929
+ * 那一屏仍然只有一行招呼。
1930
+ *
1931
+ * 形状、口径、以及「点下去把那句话填进输入框、不发出去」那条判据,全文在
1932
+ * [blank-cards.ts](./blank-cards.ts) 的文件头 —— 这儿只记它和上面两个键的
1933
+ * **关系**:三个键是同一类东西(宿主装配期按下的事实、只读、`GET /api/config`
1934
+ * 原样下发、没配就不带那个键),所以并排放在顶层。
1935
+ *
1936
+ * ⚠️ **「缺省一张都没有」不是省事,是一条产品判据**:这一屏 2026-08-18 撤掉过
1937
+ * 三条我们自己写的种子(用户原话「太有指向性了」)。这个键把那句话的发言权交给
1938
+ * 宿主,而**我们自己一张都不塞回去**。全文在 `blank-cards.ts` 文件头第二节。
1939
+ *
1940
+ * ⚠️ **空数组是配错了**(不要卡片就别写这个键),`id` 不许重复,不设条数上限
1941
+ * —— 三条都逐字同 {@link sidebarMenu}。
1942
+ */
1943
+ blankCards?: readonly BlankCard[];
1830
1944
  /**
1831
1945
  * `~/.epoch/artifacts/` 的保留策略(方案 47 PR-4)。**缺省 = 内置默认**
1832
1946
  * (7 天 / 512MB)—— 整段不配和显式写这两个默认值,行为逐字节相同。
@@ -5839,6 +5953,23 @@ interface WireConfigResponse {
5839
5953
  * 第一方 Web UI 自己的事,而这条端点也服务着自己画前端的宿主(EMBEDDING §10)。
5840
5954
  */
5841
5955
  sidebarMenu?: readonly SidebarMenuItem[];
5956
+ /**
5957
+ * 宿主自定义的那几张开场卡片 —— **宿主没配就没有这个键**(2026-09-04)。
5958
+ *
5959
+ * 和 {@link sidebarMenu} 同一个形状、同一个理由,连搭在这条端点上的理由都一样:
5960
+ * 新会话那一屏首屏就要画它,为一份可选的静态清单另开一个端点等于让每个客户端
5961
+ * 多一次往返。它**只读** —— 那是宿主装配期的事,界面上没有改它的入口。
5962
+ *
5963
+ * 来源是 `EpochConfig.blankCards`;每一项的字段含义、以及「点下去把那句话填进
5964
+ * 输入框而不是发出去」那条判据,全文在 [blank-cards.ts](./blank-cards.ts) 的
5965
+ * 文件头。
5966
+ *
5967
+ * ⚠️ **原样转发,服务端一个字都不改**,判据逐字同上面那个 `sidebarMenu`:
5968
+ * `title` / `subtitle` / `prompt` 不翻译(它们是宿主的话),`icon` 认不认得出来
5969
+ * 也不在这一层判 —— 那张白名单是第一方 Web UI 自己的事,而这条端点也服务着
5970
+ * 自己画前端的宿主(EMBEDDING §10)。
5971
+ */
5972
+ blankCards?: readonly BlankCard[];
5842
5973
  /**
5843
5974
  * 自动压缩那条线(决定 8 的第三个时刻,2026-08-16)。形状与三条判据见
5844
5975
  * {@link WireCompressionLine}。
@@ -6542,6 +6673,33 @@ interface WireReplayMessage extends EpochMessage {
6542
6673
  }
6543
6674
  interface WireMessageListResponse {
6544
6675
  messages: readonly WireReplayMessage[];
6676
+ /**
6677
+ * 这段会话到此刻**累计**花了多少(2026-09-04)。
6678
+ *
6679
+ * ## 它和上面那些 `turnFacts` 是**两笔账**,不许相加
6680
+ *
6681
+ * `turnFacts.usage` 是**每一轮**的(`finish.runUsage`),这一格是**整段会话**的
6682
+ * (`usage` 事件里那个 `cumulative`,真源是 `BudgetStore` 落盘的那本账)。
6683
+ * 判据逐字在 `web/src/settings/spend.tsx` 文件头:后者含 `BudgetStore` 从上一个
6684
+ * 进程恢复的历史,还含一轮里最后一次模型调用之后的压缩计费。
6685
+ *
6686
+ * ## 为什么要有它:那是网线上**补不回来的一帧**
6687
+ *
6688
+ * `usage` 是事件,新连上来的浏览器收不到过去那几帧。2026-08-18 补 `turnFacts`
6689
+ * 治的是「刷新之后每一轮的账没了」,而**总账**当时没跟着补 —— 症状在
6690
+ * 2026-09-02 把那个数搬到输入框旁边之后才显形:打开一段旧会话,逐轮脚注
6691
+ * 都有数、总账那一格空着。
6692
+ *
6693
+ * ## 缺席的三种情况,一种都不是故障(所以是可选字段,**不写 0**)
6694
+ *
6695
+ * 1. `GET /config` 的 `usageScope === 'run'` —— 那一档下没有 `BudgetStore`,
6696
+ * 「会话累计」这个东西本来就不存在;
6697
+ * 2. 这个会话一轮都还没跑过;
6698
+ * 3. 那条记录过了保留期(`BudgetStore` 的 `RETENTION_DAYS`,7 天)。
6699
+ *
6700
+ * 三种都是「不知道」,界面上一律整格不画 —— 画 0 是一个假事实。
6701
+ */
6702
+ usage?: TokenUsage;
6545
6703
  }
6546
6704
  declare const WIRE_MESSAGE_LIST_FIELDS: WireFields<WireMessageListResponse>;
6547
6705
  /**
@@ -8521,15 +8679,20 @@ interface WireRoleAddResponse {
8521
8679
  declare const WIRE_ROLE_ADD_RESPONSE_FIELDS: WireFields<WireRoleAddResponse>;
8522
8680
 
8523
8681
  /**
8524
- * 插件那一页的契约 —— 六条端点(方案 59 §六 E2,2026-08-21)。
8682
+ * 插件那一页的契约 —— 十条端点(方案 59 §六 E2,2026-08-21;本地源与市场管理
8683
+ * 2026-09-04 补,见下面第一节的**翻案**)。
8525
8684
  *
8526
8685
  * ```
8527
- * GET /api/plugins 装着的 + 市场里有什么 + pendingRestart
8528
- * POST /api/plugins/install/preview {ref} → 将安装什么,一个字节都不写
8529
- * POST /api/plugins/install {ref, token} → 真装
8530
- * POST /api/plugins/update/preview {name} 更新会带来什么
8531
- * POST /api/plugins/update {name, token} 真更新
8532
- * POST /api/plugins/uninstall {name} 卸载
8686
+ * GET /api/plugins 装着的 + 市场里有什么 + 已加的市场 + pendingRestart
8687
+ * POST /api/plugins/install/preview {ref} → 将安装什么,一个字节都不写
8688
+ * POST /api/plugins/install {ref, token} → 真装
8689
+ * POST /api/plugins/install/local/preview {path} 同上,来源是本机一条目录
8690
+ * POST /api/plugins/install/local {path, token} 真装
8691
+ * POST /api/plugins/update/preview {name} 更新会带来什么
8692
+ * POST /api/plugins/update {name, token} → 真更新
8693
+ * POST /api/plugins/uninstall {name} → 卸载
8694
+ * POST /api/plugins/marketplaces {source} → 加一个市场
8695
+ * POST /api/plugins/marketplaces/remove {name} → 移除一个市场
8533
8696
  * ```
8534
8697
  *
8535
8698
  * 底座是 `EpochRuntime.plugins`(方案 59 PR-4 落的那一片,判据全文在
@@ -8547,29 +8710,64 @@ declare const WIRE_ROLE_ADD_RESPONSE_FIELDS: WireFields<WireRoleAddResponse>;
8547
8710
  *
8548
8711
  * ---
8549
8712
  *
8550
- * # 一、⚠️ **只收 `<市场>/<插件>`,收不了路径** —— 这是这条路的安全性质本体
8551
- *
8552
- * {@link WirePluginInstallRequest} 上**没有 `source` 这个东西**,只有一个
8553
- * {@link WirePluginInstallRequest.ref}。于是「指一条任意路径装一个插件」这件事
8554
- * 在这个形状下**说不出口** —— 不是靠 review 盯住的,是编译期的事
8555
- * (同 `HostAgentRole` 少一个 `source`、同 runtime 那一层 `preview(ref)` 的入参)。
8713
+ * # 一、⚠️ 装进来的路**有两条,各自收一种东西**,第三种说不出口
8714
+ *
8715
+ * | 端点 | 收什么 | 真装的时候会发生什么 |
8716
+ * | ----------------------- | --------------------- | ----------------------------- |
8717
+ * | `install` | `<市场>/<插件>` | 看那条目录项,可能 clone / 拉包 |
8718
+ * | `install/local` | 本机一条**绝对路径** | **只 `symlinkSync` 一下** |
8719
+ * | 没有第三条 | — | — |
8720
+ *
8721
+ * {@link WirePluginInstallRequest} 上**没有 `source` 这个东西**,
8722
+ * {@link WirePluginLocalRequest} 上**只有一条 `path`**。于是「给我一个
8723
+ * `github:acme/x` 我就 clone」这件事在这两个形状下**都说不出口** ——
8724
+ * 不是靠 review 盯住的,是编译期的事(同 `HostAgentRole` 少一个 `source`)。
8725
+ *
8726
+ * ## ⚠️ 这一节 2026-09-04 **翻过案**,原话和翻案的理由都记在这儿
8727
+ *
8728
+ * 原话是「**只收 `<市场>/<插件>`,收不了路径**」,`plugins.tsx` 的文件头上还有
8729
+ * 配套的一句「**别在这儿加一个输入框**」。翻案的是**本地路径那一档**,
8730
+ * 三条判据:
8731
+ *
8732
+ * 1. **它和远程不是一个量级的风险,而原来那条判据把两者合在一起判了。**
8733
+ * `runtime/src/plugin-control.ts` 文件头第三节自己就把四种来源分成了两档:
8734
+ * 本地目录 = `symlinkSync`,其余三种 = 起子进程或拉网。`allowRemote` 默认关
8735
+ * 正是为了那三种。把「本地目录」和它们一起挡在网线外,挡掉的是那一档里**风险
8736
+ * 最低**的一种;
8737
+ * 2. **原来那条路在真实部署上是断的。** `epoch web --plugins` 传的是
8738
+ * `{ sources: [] }`(判据在 CLI 那个 `pluginsOption` 上)—— 一台自己机器上
8739
+ * 起的界面**没有任何预置市场**,而加市场当时只能在命令行上。于是「可视化装
8740
+ * 一个插件」这句话在 CLI 宿主上从来没有成立过:那一页只能看,不能装。
8741
+ * ⚠️ 这一条才是翻案的真正理由 —— 一道**只在没人走得到的路上生效**的闸门
8742
+ * 不是安全性,是一个空转的判断;
8743
+ * 3. **那道真闸门原地不动,而且它挡的正是这一条。** {@link WirePluginLocalRequest}
8744
+ * 照样吃第二节那道 403(LAN 那一档下一律拒),于是「浏览器在别人机器上」那个
8745
+ * 形态下这条路根本不存在。**本地路径这一档的全部前提是「网线另一头就是这台
8746
+ * 机器」**,而那正是 `lanExposed` 那一格答的问题。
8556
8747
  *
8557
8748
  * 逐条对着今天那条最像的路(`POST /api/skills/import`):
8558
8749
  *
8559
- * | 判据 | `skills/import` 今天 | 这一条 |
8560
- * | ---------------- | ------------------------- | -------------------------- |
8561
- * | 能不能传字节 | 不能(只收路径) | 不能 |
8562
- * | 能不能指任意路径 | **能**(收一个任意 path) | **不能**(只能从清单里挑) |
8563
- * | 清单是谁放的 | | 宿主主进程 / 用户自己敲的 |
8750
+ * | 判据 | `skills/import` | `install` | `install/local` |
8751
+ * | ---------------- | ------------------------- | -------------------- | -------------------- |
8752
+ * | 能不能传字节 | 不能(只收路径) | 不能 | 不能 |
8753
+ * | 能不能指任意路径 | **能** | **不能** | **能,但只限本地** |
8754
+ * | 装之前有没有预览 | | 有 | 有(**同一屏**) |
8755
+ * | LAN 那一档 | 不挡 | **403** | **403** |
8756
+ *
8757
+ * ⚠️ **`install/local` 只收本地,且必须是绝对路径。** 一条
8758
+ * `github:acme/x` 走到那条端点上会被判成 `not-local` 而不是「顺手当远程装了」——
8759
+ * 判据在 {@link WirePluginLocalRequest} 上。相对路径同样拒:它会按**服务进程的
8760
+ * cwd** 解析,而坐在浏览器前面的人根本不知道那是哪儿。
8564
8761
  *
8565
8762
  * ⚠️ 「清单」= `~/.epoch/marketplaces.json` 里那些,也就是**宿主预置的**加上
8566
- * **用户自己 `epoch plugin marketplace add` 加的**。要装清单外的东西,路仍然在,
8567
- * 只是**在命令行上** —— 那一问的闸门只该有一份。
8763
+ * **用户自己加的**。后者现在有两个入口(命令行那条 `epoch plugin marketplace add`
8764
+ * {@link WirePluginMarketplaceRequest}),而它们**是同一件事的两个入口,不是
8765
+ * 两道闸门** —— 网线那条多吃一道 403,判据同上第 3 条。
8568
8766
  *
8569
- * # 二、⚠️ 闸门:**绑在回环之外时那五条 POST 一律 403**
8767
+ * # 二、⚠️ 闸门:**绑在回环之外时那九条 POST 一律 403**
8570
8768
  *
8571
8769
  * 判据同 [wire-agent-role.ts](./wire-agent-role.ts) 那道,但**这条路比它还远一格**,
8572
- * 三条:
8770
+ * 四条:
8573
8771
  *
8574
8772
  * 1. **装一个插件会带进 hook 和 `mcp.json`,那两样起子进程。** 一份 `hooks.json`
8575
8773
  * 里的 `PreToolUse` 就是一条 shell 命令,`mcp.json` 里的一台就是一个可执行
@@ -8578,8 +8776,15 @@ declare const WIRE_ROLE_ADD_RESPONSE_FIELDS: WireFields<WireRoleAddResponse>;
8578
8776
  * 2. **`install/preview` 那条也吃这道闸,虽然它一个字节都不写。**
8579
8777
  * `allowRemote: true` 的宿主上,预览一条远程条目会 spawn `git clone --depth 1`
8580
8778
  * 到 staging(判据在 core 的 `install.ts` 那张表)—— 那是一次**由网线发起的
8581
- * 子进程**,不是一次只读。五条一起挡,比按「写不写盘」切一刀诚实;
8582
- * 3. **不能拿「反正他能让 agent 跑命令」开绿灯**,判据逐字同 `wire-agent-role.ts`
8779
+ * 子进程**,不是一次只读。九条一起挡,比按「写不写盘」切一刀诚实。
8780
+ * ⚠️ **加市场那条同理**:`addMarketplace` 会去取一份目录,远程市场那一档
8781
+ * 是一次网络请求 / 一次 clone;
8782
+ * 3. **本地那两条也一起挡**,虽然它们既不拉网也不起子进程 ——
8783
+ * 判据在第一节翻案那三条的第 3 条:本地路径这一档的**全部前提**就是
8784
+ * 「网线另一头就是这台机器」,而 `lanExposed` 为真时那句前提是假的。
8785
+ * ⚠️ 真按「不拉网就放行」切一刀的话,一个 LAN 上的人能指着**这台机器上任意
8786
+ * 一个目录**说「装它」—— 而那个目录里的 `hooks.json` 是谁写的,他知道我们不知道;
8787
+ * 4. **不能拿「反正他能让 agent 跑命令」开绿灯**,判据逐字同 `wire-agent-role.ts`
8583
8788
  * 第三节:`plan` 档和只读会话下 agent 一个字节都落不了盘,而这条端点落得了。
8584
8789
  *
8585
8790
  * ⚠️ **界面那一侧还有一道,但它是给人的**:`GET /api/config` 上带着 `lanExposed`,
@@ -8707,6 +8912,30 @@ interface WirePluginHit {
8707
8912
  /** 已经装过同名的了。界面据此把「安装」换成「已装上」 */
8708
8913
  installed: boolean;
8709
8914
  }
8915
+ /**
8916
+ * 已加的一个市场 —— 「插件从哪儿来」那张清单上的一行。
8917
+ *
8918
+ * ## 为什么要发这一张表,`hits` 已经在了
8919
+ *
8920
+ * `hits` 答的是「有什么插件」,这一张答的是「**清单是谁放的、还能不能加一条**」——
8921
+ * 而后者正是那一页在 CLI 宿主上从来答不出的问题(`epoch web --plugins` 传的是
8922
+ * `sources: []`,一个市场都没有,那时 `hits` 是空的,而空 `hits` 说不出
8923
+ * 「没加过市场」还是「加了但市场是空的」这两种完全不同的处境)。
8924
+ */
8925
+ interface WirePluginMarketplace {
8926
+ name: string;
8927
+ /** 用户敲的那串来源,原样 */
8928
+ source: string;
8929
+ /** 目录里有几条。0 是合法的 —— 一个空市场和没加过市场是两回事 */
8930
+ entries: number;
8931
+ addedAt: number;
8932
+ /**
8933
+ * 它是本地的吗。界面据此说清「刷新它要不要上网」——
8934
+ * 口径同 {@link WirePluginHit.installable}:这一格是**服务端算好的结论**,
8935
+ * 不是把 `allowRemote` 那个全局开关发上来让界面自己推。
8936
+ */
8937
+ local: boolean;
8938
+ }
8710
8939
  /**
8711
8940
  * `GET /api/plugins` —— 那一页的首屏,**一次取齐**。
8712
8941
  *
@@ -8723,6 +8952,11 @@ interface WirePluginsResponse {
8723
8952
  installed: readonly WirePluginEntry[];
8724
8953
  /** 已加的市场里全部条目。空关键词的答案是「全部」而不是「零条」 */
8725
8954
  hits: readonly WirePluginHit[];
8955
+ /**
8956
+ * 已加了哪几个市场。**空数组和 `hits` 为空不是同一件事**,
8957
+ * 判据在 {@link WirePluginMarketplace} 上。
8958
+ */
8959
+ marketplaces: readonly WirePluginMarketplace[];
8726
8960
  /**
8727
8961
  * **这一程动过插件、而那些改动还没生效。** 判据全文见文件头第三节。
8728
8962
  *
@@ -8756,6 +8990,62 @@ interface WirePluginInstallRequest extends WirePluginPreviewRequest {
8756
8990
  token: string;
8757
8991
  }
8758
8992
  declare const WIRE_PLUGIN_INSTALL_FIELDS: WireFields<WirePluginInstallRequest>;
8993
+ /**
8994
+ * `POST /api/plugins/install/local/preview` 的请求体 —— **本机上一条目录**。
8995
+ *
8996
+ * ## ⚠️ 只有 `path` 一格,而且它只能是**本地绝对路径**
8997
+ *
8998
+ * 这不是 {@link WirePluginPreviewRequest} 的一个「source 重载」——
8999
+ * 它是**另一条端点**,形状上只表达得出一件事。于是:
9000
+ *
9001
+ * - 往这儿传 `github:acme/x` → `not-local`,**不会**被当成远程装(`resolveSource`
9002
+ * 认得出那个前缀,这一层判它不是 `local` 就拒);
9003
+ * - 往这儿传一条相对路径 → 同样 `not-local`。它会按**服务进程的 cwd** 解析,
9004
+ * 而坐在浏览器前面的人不知道那是哪儿 —— 一次「装错了一个目录」的安装
9005
+ * 在这条路上是不可逆的(装完就有 `hooks.json` 挂着了)。
9006
+ *
9007
+ * ⚠️ **这条路上的 `path` 是服务端那台机器上的路径,不是浏览器那台的。**
9008
+ * 界面上必须把这句话说出来,判据逐字同 `skill-import.tsx` 的 `hint_local`:
9009
+ * 否则用户会对着一个看起来像上传框的东西反复贴自己电脑上的路径。
9010
+ *
9011
+ * ## 为什么它不吃 `allowRemote`
9012
+ *
9013
+ * 本地来源装的时候**只是 `symlinkSync` 一下**(判据在
9014
+ * `runtime/src/plugin-control.ts` 文件头第三节那张四行的表)。`allowRemote`
9015
+ * 默认关挡的是「起子进程 / 拉网」那三档,拿它顺手把本地也挡掉,
9016
+ * 等于让这条路在**默认配置下**永远走不通 —— 而那正是本地这一档存在的理由。
9017
+ */
9018
+ interface WirePluginLocalRequest {
9019
+ /** 本机上一条**绝对**路径,指向一个插件目录(里面得有 `epoch-plugin.json`) */
9020
+ path: string;
9021
+ }
9022
+ declare const WIRE_PLUGIN_LOCAL_FIELDS: WireFields<WirePluginLocalRequest>;
9023
+ /**
9024
+ * `POST /api/plugins/install/local` 的请求体。`token` 的判据同
9025
+ * {@link WirePluginInstallRequest} —— 本地源**一样要**:预览和安装之间那个目录
9026
+ * 完全可能被改过(它是一条软链的源头,改起来比远程包容易得多)。
9027
+ */
9028
+ interface WirePluginLocalInstallRequest extends WirePluginLocalRequest {
9029
+ token: string;
9030
+ }
9031
+ declare const WIRE_PLUGIN_LOCAL_INSTALL_FIELDS: WireFields<WirePluginLocalInstallRequest>;
9032
+ /**
9033
+ * `POST /api/plugins/marketplaces` 的请求体 —— 加一个市场。
9034
+ *
9035
+ * ⚠️ 这一条**收得下远程地址**(`github:acme/market` / 一条 https 的 JSON),
9036
+ * 而那和上面 `install/local` 只收本地**不矛盾**:加市场取的是一份**目录**
9037
+ * (一份 JSON),它本身不会往 `~/.epoch/plugins/` 里落任何会跑的东西。
9038
+ * 真要装里面某一条时,那一条照样要过 `installable` 那道 `allowRemote` 闸。
9039
+ *
9040
+ * 但取目录本身是一次网络动作,所以**远程市场那一档同样吃 `allowRemote`** ——
9041
+ * 关着的时候回 `remote-disabled`,判据同 `wireHostMarketplaces` 里那个循环
9042
+ * (两处是同一个风险的两处出口,那个文件头明写着)。
9043
+ */
9044
+ interface WirePluginMarketplaceRequest {
9045
+ /** 市场地址:一条本地路径 / 目录,或 `github:` / `https://` */
9046
+ source: string;
9047
+ }
9048
+ declare const WIRE_PLUGIN_MARKETPLACE_FIELDS: WireFields<WirePluginMarketplaceRequest>;
8759
9049
  /**
8760
9050
  * `POST /api/plugins/update/preview` 的请求体 —— 按**装着的那个名字**,不是 ref。
8761
9051
  *
@@ -8785,14 +9075,20 @@ declare const WIRE_PLUGIN_UPDATE_FIELDS: WireFields<WirePluginUpdateRequest>;
8785
9075
  * | 档 | 说的是 | 用户的下一步 |
8786
9076
  * | ----------------- | ------------------------------------------------ | ---------------- |
8787
9077
  * | `unknown-ref` | 不是 `<市场>/<插件>`,或那个市场 / 插件不存在 | 换一条 |
9078
+ * | `not-local` | 本地那条端点收到的不是一条**本地绝对路径** | 换一条绝对路径 |
8788
9079
  * | `remote-disabled` | 它是远程 source,而远程那一档关着 | 去开那个开关 |
8789
9080
  * | `conflict` | 已经装过同名的 | 先卸载 |
8790
9081
  * | `stale-token` | 你确认的和现在要装的对不上,**一个字节都没写** | 重看一次预览 |
8791
9082
  * | `not-installed` | update / uninstall 收到一个没装过的名字 | 先装上 |
8792
9083
  * | `nothing-to-do` | **不是出错**:软链装的插件一直是最新的 | 什么都不用做 |
8793
9084
  * | `failed` | 其余(拉不到 / 清单坏了 / 写记录时被抢先) | 看 `detail` |
9085
+ *
9086
+ * ⚠️ `not-local` **不能并进 `unknown-ref`**,尽管两者都是「你给的那串不对」:
9087
+ * 前者的下一步是「把相对路径改成绝对路径」或「这东西得从市场装」,
9088
+ * 后者是「换一条市场引用」。合成一档的表现是界面拿同一句话去答两个问题 ——
9089
+ * 而这条路上最常见的一次输入错误恰恰就是把 `github:` 贴进了本地那个框。
8794
9090
  */
8795
- type WirePluginRefuseReason = 'unknown-ref' | 'remote-disabled' | 'conflict' | 'stale-token' | 'not-installed' | 'nothing-to-do' | 'failed';
9091
+ type WirePluginRefuseReason = 'unknown-ref' | 'not-local' | 'remote-disabled' | 'conflict' | 'stale-token' | 'not-installed' | 'nothing-to-do' | 'failed';
8796
9092
  /** 一次 hook 盘点:这个事件上有几条 */
8797
9093
  interface WirePluginHookTally {
8798
9094
  type: string;
@@ -8908,6 +9204,26 @@ interface WirePluginActionResponse {
8908
9204
  reason: WirePluginRefuseReason | null;
8909
9205
  }
8910
9206
  declare const WIRE_PLUGIN_ACTION_FIELDS: WireFields<WirePluginActionResponse>;
9207
+ /**
9208
+ * `POST /api/plugins/marketplaces` / `.../marketplaces/remove` 的回执。
9209
+ *
9210
+ * ⚠️ **这一份上没有 `pendingRestart`,而那不是漏了**:加 / 移除一个市场
9211
+ * 一个扩展物都不动 —— 它改的是「有什么可以装」,不是「装了什么」。
9212
+ * 顺手发一格恒为旧值的 `pendingRestart` 会让界面以为刚才那一下动过插件。
9213
+ *
9214
+ * ⚠️ 失败也是 200,判据同 {@link WirePluginPreviewResponse}。
9215
+ * `remote-disabled` 那一档在这条路上说的是「取这份目录要上网,而远程那一档关着」。
9216
+ */
9217
+ interface WirePluginMarketplaceResponse {
9218
+ ok: boolean;
9219
+ /** 加成功那一档:刚进来的那一条。移除那一档是 `null`(它已经不在表里了) */
9220
+ marketplace: WirePluginMarketplace | null;
9221
+ /** 没成才有 */
9222
+ reason: WirePluginRefuseReason | null;
9223
+ /** 没成才有。**服务端渲染好的一句人话**,界面原样上屏 */
9224
+ detail: string | null;
9225
+ }
9226
+ declare const WIRE_PLUGIN_MARKETPLACE_RESPONSE_FIELDS: WireFields<WirePluginMarketplaceResponse>;
8911
9227
 
8912
9228
  /**
8913
9229
  * 一条诊断。**原样来自 `parseMcpConfig` 的 `issues`**,服务端不改写也不筛。
@@ -11943,4 +12259,4 @@ declare const SECRET_SERVICE = "epoch-agent";
11943
12259
  */
11944
12260
  declare const MCP_DATA_KEY_NAME = "mcp-auth-data-key";
11945
12261
 
11946
- export { ACTION_CONTEXTS, AGENT_ROLE_NAME_PATTERN, API_KEY_ENV_VARS, APPROVAL_OUTCOMES, type ActiveAgentRole, type AgentEvent, type AgentEventOf, type AgentEventType, type AgentRole, type AgentRoleScope, type AgentRoleSource, type ApprovalAnswer, type ApprovalOutcome, type ApprovalReply, type ApprovalRequest, type ArtifactKind, type AttributeValue, type Attributes, type BackgroundTaskInfo, type BackgroundTaskKind, type BackgroundTaskStatus, type BoundKey, type BudgetBreach, COMMAND_NAME_PATTERN, COMPLIANCE_ACTIONS, COMPLIANCE_CATEGORIES, type Catalogs, type ComplianceAction, type ComplianceCategory, type ContextBreakdown, type ContextSegment, type CustomCommandDef, type CustomCommandSource, DEFAULT_AGENT_ROLE, DEFAULT_LANG, type DecidedTrustLevel, type Diagnostic, DiagnosticSink, type DiagnosticStatus, type EpochConfig, type EpochContentPart, type EpochFilePart, type EpochHook, type EpochImagePart, type EpochMessage, type EpochMessageRole, type EpochPlugin, type EpochSessionPart, type EpochSkill, type EpochTextPart, type EpochTool, type EpochToolCall, type EpochToolResult, type EpochTurnFacts, type EpochUserContent, type ExpandedCommand, type FileOmitReason, type FinishReason, type FixableApproval, type FlatCatalog, GEN_AI, HEADLESS_INPUT_EVENT_TYPES, HEADLESS_INPUT_FORMATS, HEADLESS_OUTPUT_FORMATS, HEADLESS_PROTOCOL_VERSION, type HeadlessEnvelope, type HeadlessEvent, type HeadlessInit, type HeadlessInputEvent, type HeadlessInputEventType, type HeadlessInputFormat, type HeadlessLifecycleEvent, type HeadlessOutputFormat, type HeadlessResult, type HeadlessResultReason, type HookContext, type HookEvent, type HookHandler, type HookManager, type HookRegistration, type HookType, type JsonSchema, KEY_ACTIONS, type KeyAction, type KeyChord, type KeyContext, type KeySequence, type KeybindingReport, type KeybindingSource, type KeybindingTable, LANGS, type Lang, type LocalizedDetail, type LogFn, MAX_ATTACH_BYTES, MAX_ATTACH_FILES, MAX_ATTACH_TOTAL_BYTES, MAX_HEADER_CHARS, MAX_OPTIONS, MAX_QUESTIONS, MAX_SESSION_ATTACH_BYTES, MAX_SESSION_REFS, MCP_DATA_KEY_NAME, METRIC, MIN_OPTIONS, type MentionSet, type ModelRef, type ModelSelection, type ModelSelectionOrigin, NOOP_TELEMETRY, type NoticeCode, OPERATION_TYPES, type Operation, type OperationType, PERMISSION_LEVELS, PLAN_OUTCOMES, PROVIDER_INFOS, PROVIDER_TYPES, type PermissionDecision, type PermissionLevel, type PermissionManager, type PermissionRuleLists, type PlanApprovalOutcome, type PlanProposal, type PluginContext, type ProviderInfo, type ProviderType, type QuestionAnswer, type QuestionItem, type QuestionOption, type QuestionRequest, RESERVED_CHORDS, RESERVED_COMMAND_NAMES, type RejectReason, type RejectedKey, type RuleValue, SCHEDULE_INTERVAL_MINUTES, SCHEDULE_RUN_STATUSES, SCHEDULE_TEMPLATES, SEARCH_API_KEY_ENV, SEARCH_PROVIDER_TYPES, SECRET_SERVICE, SEQUENCE_CONTEXTS, SESSION_MENTION_PREFIX, SESSION_REFERENCE_ERROR_CODES, SHELL_KINDS, SIDEBAR_MENU_MESSAGE_TYPE, SIMULTANEOUS_CONTEXTS, SYSTEM_NOTE_PREFIX, type ScheduleAllowlist, type ScheduleBackendKind, type ScheduleCycle, type ScheduleDefinition, type SchedulePendingApproval, type SchedulePendingItem, type ScheduleRun, type ScheduleRunStatus, type ScheduleRunnerSpec, type ScheduleTemplate, type ScheduleTemplateId, type ScheduleTrigger, type ScheduleTriggerKind, type ScheduleWeekday, type SearchProviderType, type SecretBackendId, type SecretStore, type SelectionContext, type SelectionRejection, type SelectionWarning, type SessionAttachKind, type SessionAttachResult, type SessionOmitReason, type SessionSurfaceMessage, type SessionSurfaceView, type SetSelectionResult, type ShellKind, type SidebarMenuItem, type SidebarMenuMessage, type SpanLike, type SubToolCall, type SubToolCallResult, type Telemetry, type TokenUsage, type ToolAnnotations, type ToolArtifact, type ToolArtifactInput, type ToolContext, type ToolDefinition, ToolExposure, type ToolProvider, type ToolResult, type Translate, type TranslateVars, type TrustLevel, type TrustManager, type TrustRecord, type TrustScope, type VerifyResult, WIRE_ABORT_FIELDS, WIRE_ABOUT_FIELDS, WIRE_AGENT_ROLE_FIELDS, WIRE_APPROVAL_CACHE_REVOKE_REQUEST_FIELDS, WIRE_APPROVAL_CACHE_REVOKE_RESPONSE_FIELDS, WIRE_APPROVAL_LIST_FIELDS, WIRE_APPROVAL_ROW_FIELDS, WIRE_ARTIFACTS_FIELDS, WIRE_AUDIT_LOG_FIELDS, WIRE_AUDIT_ROW_FIELDS, WIRE_AUTH_COOKIE, WIRE_AUTH_COOKIE_ATTRS, WIRE_AUTH_TOKEN_PARAM, WIRE_BACKGROUND_TASK_FIELDS, WIRE_BLOCKED_GOALS_FIELDS, WIRE_BLOCKED_GOAL_FIELDS, WIRE_BLOCKED_LEVEL_FIELDS, WIRE_BUILTIN_CONNECTOR_FIELDS, WIRE_CACHED_APPROVAL_FIELDS, WIRE_CAPABILITIES_FIELDS, WIRE_CAPABILITY_PROJECT_FIELDS, WIRE_CHECKPOINT_LIST_FIELDS, WIRE_CHECKPOINT_SUMMARY_FIELDS, WIRE_COMMANDS_FIELDS, WIRE_COMMAND_EXPANSION_FIELDS, WIRE_COMPACT_FIELDS, WIRE_COMPRESSION_LINE_FIELDS, WIRE_CONFIG_FIELDS, WIRE_CONTEXT_FIELDS, WIRE_CREATE_SESSION_FIELDS, WIRE_CREATE_WORKSPACE_FIELDS, WIRE_CREATE_WORKSPACE_RESPONSE_FIELDS, WIRE_CUSTOM_COMMAND_FIELDS, WIRE_DELETE_SESSION_FIELDS, WIRE_DIFF_FILE_FIELDS, WIRE_ERROR_FIELDS, WIRE_FILE_CANDIDATES_FIELDS, WIRE_FILE_CANDIDATE_FIELDS, WIRE_FILE_CHANGE_FIELDS, WIRE_FILE_OPEN_RESPONSE_FIELDS, WIRE_FILE_REFERENCE_FIELDS, WIRE_FILE_STAT_MAX, WIRE_FILE_STAT_OK_FIELDS, WIRE_FILE_STAT_REFUSED_FIELDS, WIRE_FILE_STAT_RESPONSE_FIELDS, WIRE_FILE_TEXT_RESPONSE_FIELDS, WIRE_GOAL_ACTIONS, WIRE_GOAL_BLOCK_FIELDS, WIRE_GOAL_CLEAR_FIELDS, WIRE_GOAL_CREATE_FIELDS, WIRE_GOAL_FIELDS, WIRE_GOAL_LIMITS_FIELDS, WIRE_GOAL_PHASES, WIRE_GOAL_REFUSALS, WIRE_GOAL_RESPONSE_FIELDS, WIRE_GOAL_WRITE_FIELDS, WIRE_HEALTH_FIELDS, WIRE_IMAGE_REFERENCE_FIELDS, WIRE_KNOWN_WORKSPACE_FIELDS, WIRE_LANG_PARAM, WIRE_MANAGED_LOCK_FIELDS, WIRE_MCP_ADD_FIELDS, WIRE_MCP_ADD_RESPONSE_FIELDS, WIRE_MCP_APPLY_ENTRY_FIELDS, WIRE_MCP_APPLY_RESPONSE_FIELDS, WIRE_MCP_CONFIG_APPLY_FIELDS, WIRE_MCP_CONFIG_FIELDS, WIRE_MCP_CONFIG_ISSUE_FIELDS, WIRE_MCP_CONFIG_SAVE_FIELDS, WIRE_MCP_CONFIG_SAVE_RESPONSE_FIELDS, WIRE_MCP_CONNECTOR_FIELDS, WIRE_MCP_RECONNECT_FIELDS, WIRE_MESSAGE_LIST_FIELDS, WIRE_MODEL_FIELDS, WIRE_MODEL_SELECTION_FIELDS, WIRE_MODEL_SET_FIELDS, WIRE_MODEL_SUGGESTIONS_FIELDS, WIRE_PATCH_SESSION_FIELDS, WIRE_PATCH_SESSION_RESPONSE_FIELDS, WIRE_PERMISSION_RULE_FIELDS, WIRE_PERMISSION_SET_REQUEST_FIELDS, WIRE_PERMISSION_SET_RESPONSE_FIELDS, WIRE_PERMISSION_SHADOW_FIELDS, WIRE_PERMISSION_STATE_FIELDS, WIRE_PERMISSION_STATUS_FIELDS, WIRE_PLAN_ACTIONS, WIRE_PLAN_FIELDS, WIRE_PLAN_MODE_REQUEST_FIELDS, WIRE_PLAN_MODE_RESPONSE_FIELDS, WIRE_PLAN_MODE_STATE_FIELDS, WIRE_PLUGINS_FIELDS, WIRE_PLUGIN_ACTION_FIELDS, WIRE_PLUGIN_INSTALL_FIELDS, WIRE_PLUGIN_NAME_FIELDS, WIRE_PLUGIN_PREVIEW_FIELDS, WIRE_PLUGIN_PREVIEW_RESPONSE_FIELDS, WIRE_PLUGIN_UPDATE_FIELDS, WIRE_POLICY_DIR_FIELDS, WIRE_POLICY_STATUS_FIELDS, WIRE_PROVIDERS_FIELDS, WIRE_PROVIDER_KEY_FIELDS, WIRE_PROVIDER_MODELS_FIELDS, WIRE_PROVIDER_OPTION_FIELDS, WIRE_QUESTION_LIST_FIELDS, WIRE_QUESTION_ROW_FIELDS, WIRE_RESPOND_APPROVAL_FIELDS, WIRE_RESPOND_APPROVAL_RESPONSE_FIELDS, WIRE_RESPOND_QUESTION_FIELDS, WIRE_RESPOND_QUESTION_RESPONSE_FIELDS, WIRE_REWIND_FILE_PLAN_FIELDS, WIRE_REWIND_OUTCOME_FIELDS, WIRE_REWIND_PREVIEW_FIELDS, WIRE_REWIND_REQUEST_FIELDS, WIRE_REWIND_RESPONSE_FIELDS, WIRE_REWIND_SCOPES, WIRE_ROLE_ADD_FIELDS, WIRE_ROLE_ADD_RESPONSE_FIELDS, WIRE_SANDBOX_STATUS_FIELDS, WIRE_SCHEDULE_CAPABILITY_FIELDS, WIRE_SCHEDULE_CREATE_FIELDS, WIRE_SCHEDULE_DEFAULTS_FIELDS, WIRE_SCHEDULE_DELETE_FIELDS, WIRE_SCHEDULE_FIELDS, WIRE_SCHEDULE_FIX_FIELDS, WIRE_SCHEDULE_FIX_REQUEST_FIELDS, WIRE_SCHEDULE_ISSUE_CODES, WIRE_SCHEDULE_LIST_FIELDS, WIRE_SCHEDULE_PENDING_FIELDS, WIRE_SCHEDULE_RECORDING_FIELDS, WIRE_SCHEDULE_ROW_FIELDS, WIRE_SCHEDULE_RUNS_FIELDS, WIRE_SCHEDULE_RUN_FIELDS, WIRE_SCHEDULE_SAVE_FIELDS, WIRE_SECURITY_FIELDS, WIRE_SECURITY_WORKSPACE_FIELDS, WIRE_SEND_MESSAGE_FIELDS, WIRE_SEND_MESSAGE_RESPONSE_FIELDS, WIRE_SESSION_CANDIDATES_FIELDS, WIRE_SESSION_CANDIDATE_FIELDS, WIRE_SESSION_FINISH_FIELDS, WIRE_SESSION_LIST_FIELDS, WIRE_SESSION_REFERENCE_FIELDS, WIRE_SESSION_RESPONSE_FIELDS, WIRE_SESSION_SUMMARY_FIELDS, WIRE_SESSION_WORKSPACE_FIELDS, WIRE_SESSION_WORKSPACE_RESPONSE_FIELDS, WIRE_SETTINGS_FIELDS, WIRE_SETTINGS_WRITE_FIELDS, WIRE_SETTINGS_WRITE_REQUEST_FIELDS, WIRE_SETTING_ROW_FIELDS, WIRE_SETTING_STEP_FIELDS, WIRE_SETTING_WRITE_FIELDS, WIRE_SETTING_WRITE_LAYERS, WIRE_SKILL_BODY_FIELDS, WIRE_SKILL_FIELDS, WIRE_SKILL_IMPORT_FIELDS, WIRE_SKILL_IMPORT_PREVIEW_FIELDS, WIRE_SKILL_REMOVE_FIELDS, WIRE_TASKS_FIELDS, WIRE_TOOLS_FIELDS, WIRE_TOOL_GATE_FIELDS, WIRE_TOOL_ROW_FIELDS, WIRE_WORKSPACE_DIFF_FIELDS, WIRE_WORKSPACE_DIRS_FIELDS, WIRE_WORKSPACE_DIR_ENTRY_FIELDS, WIRE_WORKSPACE_REF_FIELDS, type WireAbortResponse, type WireAbout, type WireAgentEnvelope, type WireAgentEvent, type WireAgentRoleSummary, type WireApprovalCacheRevokeRequest, type WireApprovalCacheRevokeResponse, type WireApprovalListResponse, type WireApprovalRequest, type WireArtifactsResponse, type WireAuditCode, type WireAuditLog, type WireAuditOutcome, type WireAuditRow, type WireAuthDenyReason, type WireAuthDenyStatus, type WireAuthGuard, type WireAuthRequestView, type WireAuthVerdict, type WireBackgroundTask, type WireBindWorkspaceRequest, type WireBlockedGoal, type WireBlockedGoalsResponse, type WireBlockedLevel, type WireBuiltinConnector, type WireCachedApproval, type WireCachedDecision, type WireCapabilitiesResponse, type WireCapabilityProject, type WireCheckpointListResponse, type WireCheckpointSummary, type WireCommandExpansion, type WireCommandsResponse, type WireCompactRequest, type WireCompactResponse, type WireCompressionLine, type WireConfigResponse, type WireContextResponse, type WireCreateSessionRequest, type WireCreateSessionResponse, type WireCreateWorkspaceRequest, type WireCreateWorkspaceResponse, type WireCustomCommand, type WireDeleteSessionResponse, type WireDiffFile, type WireDiffNote, type WireDiffOmitReason, type WireDiffSource, type WireDiffStatus, type WireEnvelope, type WireErrorResponse, type WireEvent, type WireFields, type WireFileCandidate, type WireFileCandidatesResponse, type WireFileChange, type WireFileKind, type WireFileOpenRefusal, type WireFileOpenResponse, type WireFileReference, type WireFileRefusal, type WireFileStat, type WireFileStatOk, type WireFileStatRefused, type WireFileStatResponse, type WireFileTextResponse, type WireFixture, type WireFixtureCase, type WireGoal, type WireGoalBlock, type WireGoalClearResponse, type WireGoalCreateRequest, type WireGoalLimits, type WireGoalPhase, type WireGoalRefusal, type WireGoalResponse, type WireGoalUpdateRequest, type WireGoalWriteResponse, type WireHealthResponse, type WireHubEnvelope, type WireHubEvent, type WireImageReference, type WireKnownWorkspace, type WireManagedLock, type WireMcpAddRequest, type WireMcpAddResponse, type WireMcpApplyAction, type WireMcpApplyEntry, type WireMcpApplyResponse, type WireMcpConfigApplyRequest, type WireMcpConfigIssue, type WireMcpConfigResponse, type WireMcpConfigSaveRequest, type WireMcpConfigSaveResponse, type WireMcpConnector, type WireMcpReconnectResponse, type WireMessageListResponse, type WireModelCaveat, type WireModelProbeStatus, type WireModelRejection, type WireModelResponse, type WireModelSelection, type WireModelSetRequest, type WireModelSetResponse, type WireModelSource, type WireModelSuggestions, type WirePatchSessionRequest, type WirePatchSessionResponse, type WirePermissionRememberFailure, type WirePermissionRuleRow, type WirePermissionSetRequest, type WirePermissionSetResponse, type WirePermissionShadow, type WirePermissionState, type WirePermissionStatus, type WirePickDirectoryResponse, type WirePlanAction, type WirePlanModeRequest, type WirePlanModeResponse, type WirePlanModeState, type WirePlanResponse, type WirePluginActionResponse, type WirePluginCounts, type WirePluginEntry, type WirePluginHit, type WirePluginHookTally, type WirePluginInstallRequest, type WirePluginNameRequest, type WirePluginPreview, type WirePluginPreviewRequest, type WirePluginPreviewResponse, type WirePluginRefuseReason, type WirePluginSourceType, type WirePluginUpdateRequest, type WirePluginsResponse, type WirePolicyDir, type WirePolicyStatus, type WireProviderKeyRequest, type WireProviderKeyResponse, type WireProviderModelsRequest, type WireProviderModelsResponse, type WireProviderOption, type WireProviderSummary, type WireProvidersResponse, type WireQuestionListResponse, type WireQuestionRequest, type WireReplayMessage, type WireResetReason, type WireRespondApprovalRequest, type WireRespondApprovalResponse, type WireRespondQuestionRequest, type WireRespondQuestionResponse, type WireRewindAction, type WireRewindDrift, type WireRewindFilePlan, type WireRewindOutcome, type WireRewindPreview, type WireRewindRequest, type WireRewindResponse, type WireRewindScope, type WireRoleAddRequest, type WireRoleAddResponse, type WireSandboxReason, type WireSandboxStatus, type WireScheduleCapability, type WireScheduleCreateRequest, type WireScheduleDefaults, type WireScheduleDeleteResponse, type WireScheduleFixRequest, type WireScheduleFixResponse, type WireScheduleIssue, type WireScheduleIssueCode, type WireScheduleListResponse, type WireSchedulePendingResponse, type WireScheduleRecordingResponse, type WireScheduleRegisterRefusal, type WireScheduleRegisterWarning, type WireScheduleRegistration, type WireScheduleResponse, type WireScheduleRow, type WireScheduleRunResponse, type WireScheduleRunsResponse, type WireScheduleSaveResponse, type WireScheduleUpdateRequest, type WireSecurityResponse, type WireSecurityWorkspace, type WireSendMessageRequest, type WireSendMessageResponse, type WireSessionCandidate, type WireSessionCandidatesResponse, type WireSessionFinish, type WireSessionListResponse, type WireSessionReference, type WireSessionResponse, type WireSessionSummary, type WireSessionWorkspace, type WireSessionWorkspaceResponse, type WireSettingApply, type WireSettingFutile, type WireSettingLayer, type WireSettingRow, type WireSettingStep, type WireSettingValue, type WireSettingValueKind, type WireSettingWrite, type WireSettingWriteLayer, type WireSettingsResponse, type WireSettingsWriteRequest, type WireSettingsWriteResponse, type WireSkillBodyResponse, type WireSkillImportConflict, type WireSkillImportEntry, type WireSkillImportFailure, type WireSkillImportForm, type WireSkillImportIssue, type WireSkillImportPreviewResponse, type WireSkillImportResponse, type WireSkillRemoveFailure, type WireSkillRemoveResponse, type WireSkillSummary, type WireSummaryWorkspace, type WireTaggedEvent, type WireTasksResponse, type WireToolGate, type WireToolGateAxis, type WireToolRow, type WireToolSummary, type WireToolVerdict, type WireToolsResponse, type WireTurnState, type WireWorkspaceBinding, type WireWorkspaceDiffResponse, type WireWorkspaceDirEntry, type WireWorkspaceDirsResponse, type WireWorkspaceRef, apiKeyEnvVar, assertNeverPart, assistantTurnText, attachSessionSurface, chordId, collectPendingApprovals, compressionThresholdTokens, conformsToWire, contentToText, diagnosticToLine, extractAllMentions, extractMentions, extractSessionMentions, filePartSummary, flattenCatalog, getProviderInfo, hasFailure, isApprovalOutcome, isContextNearlyFull, isHeadlessInputFormat, isHeadlessLifecycleEvent, isHeadlessOutputFormat, isKeyAction, isLang, isMentionableFilePath, isOperationType, isPermissionLevel, isPlanOutcome, isProviderType, isQuestionAnswerMap, isSearchProviderType, isValidAgentRoleName, isValidCommandName, isWireGoalPhase, isWireHubEvent, isWirePlanAction, isWireRewindScope, isWireSettingWriteLayer, makeTranslate, normalizeApproval, packSessionSurface, parseChord, parseModelRef, parseSequence, perAction, placeholdersOf, promptTokens, sequenceId, sessionPartSummary, stripSystemNote, systemNote, tableOf, totalUsageTokens, translatorFor, turnDigest, unfixedRules, utf8ByteLength, wireFields };
12262
+ export { ACTION_CONTEXTS, AGENT_ROLE_NAME_PATTERN, API_KEY_ENV_VARS, APPROVAL_OUTCOMES, type ActiveAgentRole, type AgentEvent, type AgentEventOf, type AgentEventType, type AgentRole, type AgentRoleScope, type AgentRoleSource, type ApprovalAnswer, type ApprovalOutcome, type ApprovalReply, type ApprovalRequest, type ArtifactKind, type AttributeValue, type Attributes, type BackgroundTaskInfo, type BackgroundTaskKind, type BackgroundTaskStatus, type BlankCard, type BoundKey, type BudgetBreach, COMMAND_NAME_PATTERN, COMPLIANCE_ACTIONS, COMPLIANCE_CATEGORIES, type Catalogs, type ComplianceAction, type ComplianceCategory, type ContextBreakdown, type ContextSegment, type CustomCommandDef, type CustomCommandSource, DEFAULT_AGENT_ROLE, DEFAULT_LANG, type DecidedTrustLevel, type Diagnostic, DiagnosticSink, type DiagnosticStatus, type EpochConfig, type EpochContentPart, type EpochFilePart, type EpochHook, type EpochImagePart, type EpochMessage, type EpochMessageRole, type EpochPlugin, type EpochSessionPart, type EpochSkill, type EpochTextPart, type EpochTool, type EpochToolCall, type EpochToolResult, type EpochTurnFacts, type EpochUserContent, type ExpandedCommand, type FileOmitReason, type FinishReason, type FixableApproval, type FlatCatalog, GEN_AI, HEADLESS_INPUT_EVENT_TYPES, HEADLESS_INPUT_FORMATS, HEADLESS_OUTPUT_FORMATS, HEADLESS_PROTOCOL_VERSION, type HeadlessEnvelope, type HeadlessEvent, type HeadlessInit, type HeadlessInputEvent, type HeadlessInputEventType, type HeadlessInputFormat, type HeadlessLifecycleEvent, type HeadlessOutputFormat, type HeadlessResult, type HeadlessResultReason, type HookContext, type HookEvent, type HookHandler, type HookManager, type HookRegistration, type HookType, type JsonSchema, KEY_ACTIONS, type KeyAction, type KeyChord, type KeyContext, type KeySequence, type KeybindingReport, type KeybindingSource, type KeybindingTable, LANGS, type Lang, type LocalizedDetail, type LogFn, MAX_ATTACH_BYTES, MAX_ATTACH_FILES, MAX_ATTACH_TOTAL_BYTES, MAX_HEADER_CHARS, MAX_OPTIONS, MAX_QUESTIONS, MAX_SESSION_ATTACH_BYTES, MAX_SESSION_REFS, MCP_DATA_KEY_NAME, METRIC, MIN_OPTIONS, type MentionSet, type ModelRef, type ModelSelection, type ModelSelectionOrigin, NOOP_TELEMETRY, type NoticeCode, OPERATION_TYPES, type Operation, type OperationType, PERMISSION_LEVELS, PLAN_OUTCOMES, PROVIDER_INFOS, PROVIDER_TYPES, type PermissionDecision, type PermissionLevel, type PermissionManager, type PermissionRuleLists, type PlanApprovalOutcome, type PlanProposal, type PluginContext, type ProviderInfo, type ProviderType, type QuestionAnswer, type QuestionItem, type QuestionOption, type QuestionRequest, RESERVED_CHORDS, RESERVED_COMMAND_NAMES, type RejectReason, type RejectedKey, type RuleValue, SCHEDULE_INTERVAL_MINUTES, SCHEDULE_RUN_STATUSES, SCHEDULE_TEMPLATES, SEARCH_API_KEY_ENV, SEARCH_PROVIDER_TYPES, SECRET_SERVICE, SEQUENCE_CONTEXTS, SESSION_MENTION_PREFIX, SESSION_REFERENCE_ERROR_CODES, SHELL_KINDS, SIDEBAR_MENU_MESSAGE_TYPE, SIMULTANEOUS_CONTEXTS, SYSTEM_NOTE_PREFIX, type ScheduleAllowlist, type ScheduleBackendKind, type ScheduleCycle, type ScheduleDefinition, type SchedulePendingApproval, type SchedulePendingItem, type ScheduleRun, type ScheduleRunStatus, type ScheduleRunnerSpec, type ScheduleTemplate, type ScheduleTemplateId, type ScheduleTrigger, type ScheduleTriggerKind, type ScheduleWeekday, type SearchProviderType, type SecretBackendId, type SecretStore, type SelectionContext, type SelectionRejection, type SelectionWarning, type SessionAttachKind, type SessionAttachResult, type SessionOmitReason, type SessionSurfaceMessage, type SessionSurfaceView, type SetSelectionResult, type ShellKind, type SidebarMenuItem, type SidebarMenuMessage, type SpanLike, type SubToolCall, type SubToolCallResult, type Telemetry, type TokenUsage, type ToolAnnotations, type ToolArtifact, type ToolArtifactInput, type ToolContext, type ToolDefinition, ToolExposure, type ToolProvider, type ToolResult, type Translate, type TranslateVars, type TrustLevel, type TrustManager, type TrustRecord, type TrustScope, type VerifyResult, WIRE_ABORT_FIELDS, WIRE_ABOUT_FIELDS, WIRE_AGENT_ROLE_FIELDS, WIRE_APPROVAL_CACHE_REVOKE_REQUEST_FIELDS, WIRE_APPROVAL_CACHE_REVOKE_RESPONSE_FIELDS, WIRE_APPROVAL_LIST_FIELDS, WIRE_APPROVAL_ROW_FIELDS, WIRE_ARTIFACTS_FIELDS, WIRE_AUDIT_LOG_FIELDS, WIRE_AUDIT_ROW_FIELDS, WIRE_AUTH_COOKIE, WIRE_AUTH_COOKIE_ATTRS, WIRE_AUTH_TOKEN_PARAM, WIRE_BACKGROUND_TASK_FIELDS, WIRE_BLOCKED_GOALS_FIELDS, WIRE_BLOCKED_GOAL_FIELDS, WIRE_BLOCKED_LEVEL_FIELDS, WIRE_BUILTIN_CONNECTOR_FIELDS, WIRE_CACHED_APPROVAL_FIELDS, WIRE_CAPABILITIES_FIELDS, WIRE_CAPABILITY_PROJECT_FIELDS, WIRE_CHECKPOINT_LIST_FIELDS, WIRE_CHECKPOINT_SUMMARY_FIELDS, WIRE_COMMANDS_FIELDS, WIRE_COMMAND_EXPANSION_FIELDS, WIRE_COMPACT_FIELDS, WIRE_COMPRESSION_LINE_FIELDS, WIRE_CONFIG_FIELDS, WIRE_CONTEXT_FIELDS, WIRE_CREATE_SESSION_FIELDS, WIRE_CREATE_WORKSPACE_FIELDS, WIRE_CREATE_WORKSPACE_RESPONSE_FIELDS, WIRE_CUSTOM_COMMAND_FIELDS, WIRE_DELETE_SESSION_FIELDS, WIRE_DIFF_FILE_FIELDS, WIRE_ERROR_FIELDS, WIRE_FILE_CANDIDATES_FIELDS, WIRE_FILE_CANDIDATE_FIELDS, WIRE_FILE_CHANGE_FIELDS, WIRE_FILE_OPEN_RESPONSE_FIELDS, WIRE_FILE_REFERENCE_FIELDS, WIRE_FILE_STAT_MAX, WIRE_FILE_STAT_OK_FIELDS, WIRE_FILE_STAT_REFUSED_FIELDS, WIRE_FILE_STAT_RESPONSE_FIELDS, WIRE_FILE_TEXT_RESPONSE_FIELDS, WIRE_GOAL_ACTIONS, WIRE_GOAL_BLOCK_FIELDS, WIRE_GOAL_CLEAR_FIELDS, WIRE_GOAL_CREATE_FIELDS, WIRE_GOAL_FIELDS, WIRE_GOAL_LIMITS_FIELDS, WIRE_GOAL_PHASES, WIRE_GOAL_REFUSALS, WIRE_GOAL_RESPONSE_FIELDS, WIRE_GOAL_WRITE_FIELDS, WIRE_HEALTH_FIELDS, WIRE_IMAGE_REFERENCE_FIELDS, WIRE_KNOWN_WORKSPACE_FIELDS, WIRE_LANG_PARAM, WIRE_MANAGED_LOCK_FIELDS, WIRE_MCP_ADD_FIELDS, WIRE_MCP_ADD_RESPONSE_FIELDS, WIRE_MCP_APPLY_ENTRY_FIELDS, WIRE_MCP_APPLY_RESPONSE_FIELDS, WIRE_MCP_CONFIG_APPLY_FIELDS, WIRE_MCP_CONFIG_FIELDS, WIRE_MCP_CONFIG_ISSUE_FIELDS, WIRE_MCP_CONFIG_SAVE_FIELDS, WIRE_MCP_CONFIG_SAVE_RESPONSE_FIELDS, WIRE_MCP_CONNECTOR_FIELDS, WIRE_MCP_RECONNECT_FIELDS, WIRE_MESSAGE_LIST_FIELDS, WIRE_MODEL_FIELDS, WIRE_MODEL_SELECTION_FIELDS, WIRE_MODEL_SET_FIELDS, WIRE_MODEL_SUGGESTIONS_FIELDS, WIRE_PATCH_SESSION_FIELDS, WIRE_PATCH_SESSION_RESPONSE_FIELDS, WIRE_PERMISSION_RULE_FIELDS, WIRE_PERMISSION_SET_REQUEST_FIELDS, WIRE_PERMISSION_SET_RESPONSE_FIELDS, WIRE_PERMISSION_SHADOW_FIELDS, WIRE_PERMISSION_STATE_FIELDS, WIRE_PERMISSION_STATUS_FIELDS, WIRE_PLAN_ACTIONS, WIRE_PLAN_FIELDS, WIRE_PLAN_MODE_REQUEST_FIELDS, WIRE_PLAN_MODE_RESPONSE_FIELDS, WIRE_PLAN_MODE_STATE_FIELDS, WIRE_PLUGINS_FIELDS, WIRE_PLUGIN_ACTION_FIELDS, WIRE_PLUGIN_INSTALL_FIELDS, WIRE_PLUGIN_LOCAL_FIELDS, WIRE_PLUGIN_LOCAL_INSTALL_FIELDS, WIRE_PLUGIN_MARKETPLACE_FIELDS, WIRE_PLUGIN_MARKETPLACE_RESPONSE_FIELDS, WIRE_PLUGIN_NAME_FIELDS, WIRE_PLUGIN_PREVIEW_FIELDS, WIRE_PLUGIN_PREVIEW_RESPONSE_FIELDS, WIRE_PLUGIN_UPDATE_FIELDS, WIRE_POLICY_DIR_FIELDS, WIRE_POLICY_STATUS_FIELDS, WIRE_PROVIDERS_FIELDS, WIRE_PROVIDER_KEY_FIELDS, WIRE_PROVIDER_MODELS_FIELDS, WIRE_PROVIDER_OPTION_FIELDS, WIRE_QUESTION_LIST_FIELDS, WIRE_QUESTION_ROW_FIELDS, WIRE_RESPOND_APPROVAL_FIELDS, WIRE_RESPOND_APPROVAL_RESPONSE_FIELDS, WIRE_RESPOND_QUESTION_FIELDS, WIRE_RESPOND_QUESTION_RESPONSE_FIELDS, WIRE_REWIND_FILE_PLAN_FIELDS, WIRE_REWIND_OUTCOME_FIELDS, WIRE_REWIND_PREVIEW_FIELDS, WIRE_REWIND_REQUEST_FIELDS, WIRE_REWIND_RESPONSE_FIELDS, WIRE_REWIND_SCOPES, WIRE_ROLE_ADD_FIELDS, WIRE_ROLE_ADD_RESPONSE_FIELDS, WIRE_SANDBOX_STATUS_FIELDS, WIRE_SCHEDULE_CAPABILITY_FIELDS, WIRE_SCHEDULE_CREATE_FIELDS, WIRE_SCHEDULE_DEFAULTS_FIELDS, WIRE_SCHEDULE_DELETE_FIELDS, WIRE_SCHEDULE_FIELDS, WIRE_SCHEDULE_FIX_FIELDS, WIRE_SCHEDULE_FIX_REQUEST_FIELDS, WIRE_SCHEDULE_ISSUE_CODES, WIRE_SCHEDULE_LIST_FIELDS, WIRE_SCHEDULE_PENDING_FIELDS, WIRE_SCHEDULE_RECORDING_FIELDS, WIRE_SCHEDULE_ROW_FIELDS, WIRE_SCHEDULE_RUNS_FIELDS, WIRE_SCHEDULE_RUN_FIELDS, WIRE_SCHEDULE_SAVE_FIELDS, WIRE_SECURITY_FIELDS, WIRE_SECURITY_WORKSPACE_FIELDS, WIRE_SEND_MESSAGE_FIELDS, WIRE_SEND_MESSAGE_RESPONSE_FIELDS, WIRE_SESSION_CANDIDATES_FIELDS, WIRE_SESSION_CANDIDATE_FIELDS, WIRE_SESSION_FINISH_FIELDS, WIRE_SESSION_LIST_FIELDS, WIRE_SESSION_REFERENCE_FIELDS, WIRE_SESSION_RESPONSE_FIELDS, WIRE_SESSION_SUMMARY_FIELDS, WIRE_SESSION_WORKSPACE_FIELDS, WIRE_SESSION_WORKSPACE_RESPONSE_FIELDS, WIRE_SETTINGS_FIELDS, WIRE_SETTINGS_WRITE_FIELDS, WIRE_SETTINGS_WRITE_REQUEST_FIELDS, WIRE_SETTING_ROW_FIELDS, WIRE_SETTING_STEP_FIELDS, WIRE_SETTING_WRITE_FIELDS, WIRE_SETTING_WRITE_LAYERS, WIRE_SKILL_BODY_FIELDS, WIRE_SKILL_FIELDS, WIRE_SKILL_IMPORT_FIELDS, WIRE_SKILL_IMPORT_PREVIEW_FIELDS, WIRE_SKILL_REMOVE_FIELDS, WIRE_TASKS_FIELDS, WIRE_TOOLS_FIELDS, WIRE_TOOL_GATE_FIELDS, WIRE_TOOL_ROW_FIELDS, WIRE_WORKSPACE_DIFF_FIELDS, WIRE_WORKSPACE_DIRS_FIELDS, WIRE_WORKSPACE_DIR_ENTRY_FIELDS, WIRE_WORKSPACE_REF_FIELDS, type WireAbortResponse, type WireAbout, type WireAgentEnvelope, type WireAgentEvent, type WireAgentRoleSummary, type WireApprovalCacheRevokeRequest, type WireApprovalCacheRevokeResponse, type WireApprovalListResponse, type WireApprovalRequest, type WireArtifactsResponse, type WireAuditCode, type WireAuditLog, type WireAuditOutcome, type WireAuditRow, type WireAuthDenyReason, type WireAuthDenyStatus, type WireAuthGuard, type WireAuthRequestView, type WireAuthVerdict, type WireBackgroundTask, type WireBindWorkspaceRequest, type WireBlockedGoal, type WireBlockedGoalsResponse, type WireBlockedLevel, type WireBuiltinConnector, type WireCachedApproval, type WireCachedDecision, type WireCapabilitiesResponse, type WireCapabilityProject, type WireCheckpointListResponse, type WireCheckpointSummary, type WireCommandExpansion, type WireCommandsResponse, type WireCompactRequest, type WireCompactResponse, type WireCompressionLine, type WireConfigResponse, type WireContextResponse, type WireCreateSessionRequest, type WireCreateSessionResponse, type WireCreateWorkspaceRequest, type WireCreateWorkspaceResponse, type WireCustomCommand, type WireDeleteSessionResponse, type WireDiffFile, type WireDiffNote, type WireDiffOmitReason, type WireDiffSource, type WireDiffStatus, type WireEnvelope, type WireErrorResponse, type WireEvent, type WireFields, type WireFileCandidate, type WireFileCandidatesResponse, type WireFileChange, type WireFileKind, type WireFileOpenRefusal, type WireFileOpenResponse, type WireFileReference, type WireFileRefusal, type WireFileStat, type WireFileStatOk, type WireFileStatRefused, type WireFileStatResponse, type WireFileTextResponse, type WireFixture, type WireFixtureCase, type WireGoal, type WireGoalBlock, type WireGoalClearResponse, type WireGoalCreateRequest, type WireGoalLimits, type WireGoalPhase, type WireGoalRefusal, type WireGoalResponse, type WireGoalUpdateRequest, type WireGoalWriteResponse, type WireHealthResponse, type WireHubEnvelope, type WireHubEvent, type WireImageReference, type WireKnownWorkspace, type WireManagedLock, type WireMcpAddRequest, type WireMcpAddResponse, type WireMcpApplyAction, type WireMcpApplyEntry, type WireMcpApplyResponse, type WireMcpConfigApplyRequest, type WireMcpConfigIssue, type WireMcpConfigResponse, type WireMcpConfigSaveRequest, type WireMcpConfigSaveResponse, type WireMcpConnector, type WireMcpReconnectResponse, type WireMessageListResponse, type WireModelCaveat, type WireModelProbeStatus, type WireModelRejection, type WireModelResponse, type WireModelSelection, type WireModelSetRequest, type WireModelSetResponse, type WireModelSource, type WireModelSuggestions, type WirePatchSessionRequest, type WirePatchSessionResponse, type WirePermissionRememberFailure, type WirePermissionRuleRow, type WirePermissionSetRequest, type WirePermissionSetResponse, type WirePermissionShadow, type WirePermissionState, type WirePermissionStatus, type WirePickDirectoryResponse, type WirePlanAction, type WirePlanModeRequest, type WirePlanModeResponse, type WirePlanModeState, type WirePlanResponse, type WirePluginActionResponse, type WirePluginCounts, type WirePluginEntry, type WirePluginHit, type WirePluginHookTally, type WirePluginInstallRequest, type WirePluginLocalInstallRequest, type WirePluginLocalRequest, type WirePluginMarketplace, type WirePluginMarketplaceRequest, type WirePluginMarketplaceResponse, type WirePluginNameRequest, type WirePluginPreview, type WirePluginPreviewRequest, type WirePluginPreviewResponse, type WirePluginRefuseReason, type WirePluginSourceType, type WirePluginUpdateRequest, type WirePluginsResponse, type WirePolicyDir, type WirePolicyStatus, type WireProviderKeyRequest, type WireProviderKeyResponse, type WireProviderModelsRequest, type WireProviderModelsResponse, type WireProviderOption, type WireProviderSummary, type WireProvidersResponse, type WireQuestionListResponse, type WireQuestionRequest, type WireReplayMessage, type WireResetReason, type WireRespondApprovalRequest, type WireRespondApprovalResponse, type WireRespondQuestionRequest, type WireRespondQuestionResponse, type WireRewindAction, type WireRewindDrift, type WireRewindFilePlan, type WireRewindOutcome, type WireRewindPreview, type WireRewindRequest, type WireRewindResponse, type WireRewindScope, type WireRoleAddRequest, type WireRoleAddResponse, type WireSandboxReason, type WireSandboxStatus, type WireScheduleCapability, type WireScheduleCreateRequest, type WireScheduleDefaults, type WireScheduleDeleteResponse, type WireScheduleFixRequest, type WireScheduleFixResponse, type WireScheduleIssue, type WireScheduleIssueCode, type WireScheduleListResponse, type WireSchedulePendingResponse, type WireScheduleRecordingResponse, type WireScheduleRegisterRefusal, type WireScheduleRegisterWarning, type WireScheduleRegistration, type WireScheduleResponse, type WireScheduleRow, type WireScheduleRunResponse, type WireScheduleRunsResponse, type WireScheduleSaveResponse, type WireScheduleUpdateRequest, type WireSecurityResponse, type WireSecurityWorkspace, type WireSendMessageRequest, type WireSendMessageResponse, type WireSessionCandidate, type WireSessionCandidatesResponse, type WireSessionFinish, type WireSessionListResponse, type WireSessionReference, type WireSessionResponse, type WireSessionSummary, type WireSessionWorkspace, type WireSessionWorkspaceResponse, type WireSettingApply, type WireSettingFutile, type WireSettingLayer, type WireSettingRow, type WireSettingStep, type WireSettingValue, type WireSettingValueKind, type WireSettingWrite, type WireSettingWriteLayer, type WireSettingsResponse, type WireSettingsWriteRequest, type WireSettingsWriteResponse, type WireSkillBodyResponse, type WireSkillImportConflict, type WireSkillImportEntry, type WireSkillImportFailure, type WireSkillImportForm, type WireSkillImportIssue, type WireSkillImportPreviewResponse, type WireSkillImportResponse, type WireSkillRemoveFailure, type WireSkillRemoveResponse, type WireSkillSummary, type WireSummaryWorkspace, type WireTaggedEvent, type WireTasksResponse, type WireToolGate, type WireToolGateAxis, type WireToolRow, type WireToolSummary, type WireToolVerdict, type WireToolsResponse, type WireTurnState, type WireWorkspaceBinding, type WireWorkspaceDiffResponse, type WireWorkspaceDirEntry, type WireWorkspaceDirsResponse, type WireWorkspaceRef, apiKeyEnvVar, assertNeverPart, assistantTurnText, attachSessionSurface, chordId, collectPendingApprovals, compressionThresholdTokens, conformsToWire, contentToText, diagnosticToLine, extractAllMentions, extractMentions, extractSessionMentions, filePartSummary, flattenCatalog, getProviderInfo, hasFailure, isApprovalOutcome, isContextNearlyFull, isHeadlessInputFormat, isHeadlessLifecycleEvent, isHeadlessOutputFormat, isKeyAction, isLang, isMentionableFilePath, isOperationType, isPermissionLevel, isPlanOutcome, isProviderType, isQuestionAnswerMap, isSearchProviderType, isValidAgentRoleName, isValidCommandName, isWireGoalPhase, isWireHubEvent, isWirePlanAction, isWireRewindScope, isWireSettingWriteLayer, makeTranslate, normalizeApproval, packSessionSurface, parseChord, parseModelRef, parseSequence, perAction, placeholdersOf, promptTokens, sequenceId, sessionPartSummary, stripSystemNote, systemNote, tableOf, totalUsageTokens, translatorFor, turnDigest, unfixedRules, utf8ByteLength, wireFields };
package/dist/index.js CHANGED
@@ -1162,6 +1162,7 @@ var WIRE_ROLE_ADD_RESPONSE_FIELDS = wireFields()({
1162
1162
  var WIRE_PLUGINS_FIELDS = wireFields()({
1163
1163
  installed: true,
1164
1164
  hits: true,
1165
+ marketplaces: true,
1165
1166
  pendingRestart: true
1166
1167
  });
1167
1168
  var WIRE_PLUGIN_PREVIEW_FIELDS = wireFields()({ ref: true });
@@ -1169,6 +1170,14 @@ var WIRE_PLUGIN_INSTALL_FIELDS = wireFields()({
1169
1170
  ref: true,
1170
1171
  token: true
1171
1172
  });
1173
+ var WIRE_PLUGIN_LOCAL_FIELDS = wireFields()({ path: true });
1174
+ var WIRE_PLUGIN_LOCAL_INSTALL_FIELDS = wireFields()({
1175
+ path: true,
1176
+ token: true
1177
+ });
1178
+ var WIRE_PLUGIN_MARKETPLACE_FIELDS = wireFields()({
1179
+ source: true
1180
+ });
1172
1181
  var WIRE_PLUGIN_NAME_FIELDS = wireFields()({ name: true });
1173
1182
  var WIRE_PLUGIN_UPDATE_FIELDS = wireFields()({
1174
1183
  name: true,
@@ -1188,6 +1197,12 @@ var WIRE_PLUGIN_ACTION_FIELDS = wireFields()({
1188
1197
  detail: true,
1189
1198
  reason: true
1190
1199
  });
1200
+ var WIRE_PLUGIN_MARKETPLACE_RESPONSE_FIELDS = wireFields()({
1201
+ ok: true,
1202
+ marketplace: true,
1203
+ reason: true,
1204
+ detail: true
1205
+ });
1191
1206
  // src/wire-mcp-config.ts
1192
1207
  var WIRE_MCP_CONFIG_ISSUE_FIELDS = wireFields()({
1193
1208
  path: true,
@@ -1697,4 +1712,4 @@ function translatorFor(catalogs, lang) {
1697
1712
  return (key, vars) => translate(lang, key, vars);
1698
1713
  }
1699
1714
 
1700
- export { ACTION_CONTEXTS, AGENT_ROLE_NAME_PATTERN, API_KEY_ENV_VARS, APPROVAL_OUTCOMES, COMMAND_NAME_PATTERN, COMPLIANCE_ACTIONS, COMPLIANCE_CATEGORIES, DEFAULT_AGENT_ROLE, DEFAULT_LANG, DiagnosticSink, GEN_AI, HEADLESS_INPUT_EVENT_TYPES, HEADLESS_INPUT_FORMATS, HEADLESS_OUTPUT_FORMATS, HEADLESS_PROTOCOL_VERSION, KEY_ACTIONS, LANGS, MAX_ATTACH_BYTES, MAX_ATTACH_FILES, MAX_ATTACH_TOTAL_BYTES, MAX_HEADER_CHARS, MAX_OPTIONS, MAX_QUESTIONS, MAX_SESSION_ATTACH_BYTES, MAX_SESSION_REFS, MCP_DATA_KEY_NAME, METRIC, MIN_OPTIONS, NOOP_TELEMETRY, OPERATION_TYPES, PERMISSION_LEVELS, PLAN_OUTCOMES, PROVIDER_INFOS, PROVIDER_TYPES, RESERVED_CHORDS, RESERVED_COMMAND_NAMES, SCHEDULE_INTERVAL_MINUTES, SCHEDULE_RUN_STATUSES, SCHEDULE_TEMPLATES, SEARCH_API_KEY_ENV, SEARCH_PROVIDER_TYPES, SECRET_SERVICE, SEQUENCE_CONTEXTS, SESSION_MENTION_PREFIX, SESSION_REFERENCE_ERROR_CODES, SHELL_KINDS, SIDEBAR_MENU_MESSAGE_TYPE, SIMULTANEOUS_CONTEXTS, SYSTEM_NOTE_PREFIX, ToolExposure, WIRE_ABORT_FIELDS, WIRE_ABOUT_FIELDS, WIRE_AGENT_ROLE_FIELDS, WIRE_APPROVAL_CACHE_REVOKE_REQUEST_FIELDS, WIRE_APPROVAL_CACHE_REVOKE_RESPONSE_FIELDS, WIRE_APPROVAL_LIST_FIELDS, WIRE_APPROVAL_ROW_FIELDS, WIRE_ARTIFACTS_FIELDS, WIRE_AUDIT_LOG_FIELDS, WIRE_AUDIT_ROW_FIELDS, WIRE_AUTH_COOKIE, WIRE_AUTH_COOKIE_ATTRS, WIRE_AUTH_TOKEN_PARAM, WIRE_BACKGROUND_TASK_FIELDS, WIRE_BLOCKED_GOALS_FIELDS, WIRE_BLOCKED_GOAL_FIELDS, WIRE_BLOCKED_LEVEL_FIELDS, WIRE_BUILTIN_CONNECTOR_FIELDS, WIRE_CACHED_APPROVAL_FIELDS, WIRE_CAPABILITIES_FIELDS, WIRE_CAPABILITY_PROJECT_FIELDS, WIRE_CHECKPOINT_LIST_FIELDS, WIRE_CHECKPOINT_SUMMARY_FIELDS, WIRE_COMMANDS_FIELDS, WIRE_COMMAND_EXPANSION_FIELDS, WIRE_COMPACT_FIELDS, WIRE_COMPRESSION_LINE_FIELDS, WIRE_CONFIG_FIELDS, WIRE_CONTEXT_FIELDS, WIRE_CREATE_SESSION_FIELDS, WIRE_CREATE_WORKSPACE_FIELDS, WIRE_CREATE_WORKSPACE_RESPONSE_FIELDS, WIRE_CUSTOM_COMMAND_FIELDS, WIRE_DELETE_SESSION_FIELDS, WIRE_DIFF_FILE_FIELDS, WIRE_ERROR_FIELDS, WIRE_FILE_CANDIDATES_FIELDS, WIRE_FILE_CANDIDATE_FIELDS, WIRE_FILE_CHANGE_FIELDS, WIRE_FILE_OPEN_RESPONSE_FIELDS, WIRE_FILE_REFERENCE_FIELDS, WIRE_FILE_STAT_MAX, WIRE_FILE_STAT_OK_FIELDS, WIRE_FILE_STAT_REFUSED_FIELDS, WIRE_FILE_STAT_RESPONSE_FIELDS, WIRE_FILE_TEXT_RESPONSE_FIELDS, WIRE_GOAL_ACTIONS, WIRE_GOAL_BLOCK_FIELDS, WIRE_GOAL_CLEAR_FIELDS, WIRE_GOAL_CREATE_FIELDS, WIRE_GOAL_FIELDS, WIRE_GOAL_LIMITS_FIELDS, WIRE_GOAL_PHASES, WIRE_GOAL_REFUSALS, WIRE_GOAL_RESPONSE_FIELDS, WIRE_GOAL_WRITE_FIELDS, WIRE_HEALTH_FIELDS, WIRE_IMAGE_REFERENCE_FIELDS, WIRE_KNOWN_WORKSPACE_FIELDS, WIRE_LANG_PARAM, WIRE_MANAGED_LOCK_FIELDS, WIRE_MCP_ADD_FIELDS, WIRE_MCP_ADD_RESPONSE_FIELDS, WIRE_MCP_APPLY_ENTRY_FIELDS, WIRE_MCP_APPLY_RESPONSE_FIELDS, WIRE_MCP_CONFIG_APPLY_FIELDS, WIRE_MCP_CONFIG_FIELDS, WIRE_MCP_CONFIG_ISSUE_FIELDS, WIRE_MCP_CONFIG_SAVE_FIELDS, WIRE_MCP_CONFIG_SAVE_RESPONSE_FIELDS, WIRE_MCP_CONNECTOR_FIELDS, WIRE_MCP_RECONNECT_FIELDS, WIRE_MESSAGE_LIST_FIELDS, WIRE_MODEL_FIELDS, WIRE_MODEL_SELECTION_FIELDS, WIRE_MODEL_SET_FIELDS, WIRE_MODEL_SUGGESTIONS_FIELDS, WIRE_PATCH_SESSION_FIELDS, WIRE_PATCH_SESSION_RESPONSE_FIELDS, WIRE_PERMISSION_RULE_FIELDS, WIRE_PERMISSION_SET_REQUEST_FIELDS, WIRE_PERMISSION_SET_RESPONSE_FIELDS, WIRE_PERMISSION_SHADOW_FIELDS, WIRE_PERMISSION_STATE_FIELDS, WIRE_PERMISSION_STATUS_FIELDS, WIRE_PLAN_ACTIONS, WIRE_PLAN_FIELDS, WIRE_PLAN_MODE_REQUEST_FIELDS, WIRE_PLAN_MODE_RESPONSE_FIELDS, WIRE_PLAN_MODE_STATE_FIELDS, WIRE_PLUGINS_FIELDS, WIRE_PLUGIN_ACTION_FIELDS, WIRE_PLUGIN_INSTALL_FIELDS, WIRE_PLUGIN_NAME_FIELDS, WIRE_PLUGIN_PREVIEW_FIELDS, WIRE_PLUGIN_PREVIEW_RESPONSE_FIELDS, WIRE_PLUGIN_UPDATE_FIELDS, WIRE_POLICY_DIR_FIELDS, WIRE_POLICY_STATUS_FIELDS, WIRE_PROVIDERS_FIELDS, WIRE_PROVIDER_KEY_FIELDS, WIRE_PROVIDER_MODELS_FIELDS, WIRE_PROVIDER_OPTION_FIELDS, WIRE_QUESTION_LIST_FIELDS, WIRE_QUESTION_ROW_FIELDS, WIRE_RESPOND_APPROVAL_FIELDS, WIRE_RESPOND_APPROVAL_RESPONSE_FIELDS, WIRE_RESPOND_QUESTION_FIELDS, WIRE_RESPOND_QUESTION_RESPONSE_FIELDS, WIRE_REWIND_FILE_PLAN_FIELDS, WIRE_REWIND_OUTCOME_FIELDS, WIRE_REWIND_PREVIEW_FIELDS, WIRE_REWIND_REQUEST_FIELDS, WIRE_REWIND_RESPONSE_FIELDS, WIRE_REWIND_SCOPES, WIRE_ROLE_ADD_FIELDS, WIRE_ROLE_ADD_RESPONSE_FIELDS, WIRE_SANDBOX_STATUS_FIELDS, WIRE_SCHEDULE_CAPABILITY_FIELDS, WIRE_SCHEDULE_CREATE_FIELDS, WIRE_SCHEDULE_DEFAULTS_FIELDS, WIRE_SCHEDULE_DELETE_FIELDS, WIRE_SCHEDULE_FIELDS, WIRE_SCHEDULE_FIX_FIELDS, WIRE_SCHEDULE_FIX_REQUEST_FIELDS, WIRE_SCHEDULE_ISSUE_CODES, WIRE_SCHEDULE_LIST_FIELDS, WIRE_SCHEDULE_PENDING_FIELDS, WIRE_SCHEDULE_RECORDING_FIELDS, WIRE_SCHEDULE_ROW_FIELDS, WIRE_SCHEDULE_RUNS_FIELDS, WIRE_SCHEDULE_RUN_FIELDS, WIRE_SCHEDULE_SAVE_FIELDS, WIRE_SECURITY_FIELDS, WIRE_SECURITY_WORKSPACE_FIELDS, WIRE_SEND_MESSAGE_FIELDS, WIRE_SEND_MESSAGE_RESPONSE_FIELDS, WIRE_SESSION_CANDIDATES_FIELDS, WIRE_SESSION_CANDIDATE_FIELDS, WIRE_SESSION_FINISH_FIELDS, WIRE_SESSION_LIST_FIELDS, WIRE_SESSION_REFERENCE_FIELDS, WIRE_SESSION_RESPONSE_FIELDS, WIRE_SESSION_SUMMARY_FIELDS, WIRE_SESSION_WORKSPACE_FIELDS, WIRE_SESSION_WORKSPACE_RESPONSE_FIELDS, WIRE_SETTINGS_FIELDS, WIRE_SETTINGS_WRITE_FIELDS, WIRE_SETTINGS_WRITE_REQUEST_FIELDS, WIRE_SETTING_ROW_FIELDS, WIRE_SETTING_STEP_FIELDS, WIRE_SETTING_WRITE_FIELDS, WIRE_SETTING_WRITE_LAYERS, WIRE_SKILL_BODY_FIELDS, WIRE_SKILL_FIELDS, WIRE_SKILL_IMPORT_FIELDS, WIRE_SKILL_IMPORT_PREVIEW_FIELDS, WIRE_SKILL_REMOVE_FIELDS, WIRE_TASKS_FIELDS, WIRE_TOOLS_FIELDS, WIRE_TOOL_GATE_FIELDS, WIRE_TOOL_ROW_FIELDS, WIRE_WORKSPACE_DIFF_FIELDS, WIRE_WORKSPACE_DIRS_FIELDS, WIRE_WORKSPACE_DIR_ENTRY_FIELDS, WIRE_WORKSPACE_REF_FIELDS, apiKeyEnvVar, assertNeverPart, assistantTurnText, attachSessionSurface, chordId, collectPendingApprovals, compressionThresholdTokens, conformsToWire, contentToText, diagnosticToLine, extractAllMentions, extractMentions, extractSessionMentions, filePartSummary, flattenCatalog, getProviderInfo, hasFailure, isApprovalOutcome, isContextNearlyFull, isHeadlessInputFormat, isHeadlessLifecycleEvent, isHeadlessOutputFormat, isKeyAction, isLang, isMentionableFilePath, isOperationType, isPermissionLevel, isPlanOutcome, isProviderType, isQuestionAnswerMap, isSearchProviderType, isValidAgentRoleName, isValidCommandName, isWireGoalPhase, isWireHubEvent, isWirePlanAction, isWireRewindScope, isWireSettingWriteLayer, makeTranslate, normalizeApproval, packSessionSurface, parseChord, parseModelRef, parseSequence, perAction, placeholdersOf, promptTokens, sequenceId, sessionPartSummary, stripSystemNote, systemNote, tableOf, totalUsageTokens, translatorFor, turnDigest, unfixedRules, utf8ByteLength, wireFields };
1715
+ export { ACTION_CONTEXTS, AGENT_ROLE_NAME_PATTERN, API_KEY_ENV_VARS, APPROVAL_OUTCOMES, COMMAND_NAME_PATTERN, COMPLIANCE_ACTIONS, COMPLIANCE_CATEGORIES, DEFAULT_AGENT_ROLE, DEFAULT_LANG, DiagnosticSink, GEN_AI, HEADLESS_INPUT_EVENT_TYPES, HEADLESS_INPUT_FORMATS, HEADLESS_OUTPUT_FORMATS, HEADLESS_PROTOCOL_VERSION, KEY_ACTIONS, LANGS, MAX_ATTACH_BYTES, MAX_ATTACH_FILES, MAX_ATTACH_TOTAL_BYTES, MAX_HEADER_CHARS, MAX_OPTIONS, MAX_QUESTIONS, MAX_SESSION_ATTACH_BYTES, MAX_SESSION_REFS, MCP_DATA_KEY_NAME, METRIC, MIN_OPTIONS, NOOP_TELEMETRY, OPERATION_TYPES, PERMISSION_LEVELS, PLAN_OUTCOMES, PROVIDER_INFOS, PROVIDER_TYPES, RESERVED_CHORDS, RESERVED_COMMAND_NAMES, SCHEDULE_INTERVAL_MINUTES, SCHEDULE_RUN_STATUSES, SCHEDULE_TEMPLATES, SEARCH_API_KEY_ENV, SEARCH_PROVIDER_TYPES, SECRET_SERVICE, SEQUENCE_CONTEXTS, SESSION_MENTION_PREFIX, SESSION_REFERENCE_ERROR_CODES, SHELL_KINDS, SIDEBAR_MENU_MESSAGE_TYPE, SIMULTANEOUS_CONTEXTS, SYSTEM_NOTE_PREFIX, ToolExposure, WIRE_ABORT_FIELDS, WIRE_ABOUT_FIELDS, WIRE_AGENT_ROLE_FIELDS, WIRE_APPROVAL_CACHE_REVOKE_REQUEST_FIELDS, WIRE_APPROVAL_CACHE_REVOKE_RESPONSE_FIELDS, WIRE_APPROVAL_LIST_FIELDS, WIRE_APPROVAL_ROW_FIELDS, WIRE_ARTIFACTS_FIELDS, WIRE_AUDIT_LOG_FIELDS, WIRE_AUDIT_ROW_FIELDS, WIRE_AUTH_COOKIE, WIRE_AUTH_COOKIE_ATTRS, WIRE_AUTH_TOKEN_PARAM, WIRE_BACKGROUND_TASK_FIELDS, WIRE_BLOCKED_GOALS_FIELDS, WIRE_BLOCKED_GOAL_FIELDS, WIRE_BLOCKED_LEVEL_FIELDS, WIRE_BUILTIN_CONNECTOR_FIELDS, WIRE_CACHED_APPROVAL_FIELDS, WIRE_CAPABILITIES_FIELDS, WIRE_CAPABILITY_PROJECT_FIELDS, WIRE_CHECKPOINT_LIST_FIELDS, WIRE_CHECKPOINT_SUMMARY_FIELDS, WIRE_COMMANDS_FIELDS, WIRE_COMMAND_EXPANSION_FIELDS, WIRE_COMPACT_FIELDS, WIRE_COMPRESSION_LINE_FIELDS, WIRE_CONFIG_FIELDS, WIRE_CONTEXT_FIELDS, WIRE_CREATE_SESSION_FIELDS, WIRE_CREATE_WORKSPACE_FIELDS, WIRE_CREATE_WORKSPACE_RESPONSE_FIELDS, WIRE_CUSTOM_COMMAND_FIELDS, WIRE_DELETE_SESSION_FIELDS, WIRE_DIFF_FILE_FIELDS, WIRE_ERROR_FIELDS, WIRE_FILE_CANDIDATES_FIELDS, WIRE_FILE_CANDIDATE_FIELDS, WIRE_FILE_CHANGE_FIELDS, WIRE_FILE_OPEN_RESPONSE_FIELDS, WIRE_FILE_REFERENCE_FIELDS, WIRE_FILE_STAT_MAX, WIRE_FILE_STAT_OK_FIELDS, WIRE_FILE_STAT_REFUSED_FIELDS, WIRE_FILE_STAT_RESPONSE_FIELDS, WIRE_FILE_TEXT_RESPONSE_FIELDS, WIRE_GOAL_ACTIONS, WIRE_GOAL_BLOCK_FIELDS, WIRE_GOAL_CLEAR_FIELDS, WIRE_GOAL_CREATE_FIELDS, WIRE_GOAL_FIELDS, WIRE_GOAL_LIMITS_FIELDS, WIRE_GOAL_PHASES, WIRE_GOAL_REFUSALS, WIRE_GOAL_RESPONSE_FIELDS, WIRE_GOAL_WRITE_FIELDS, WIRE_HEALTH_FIELDS, WIRE_IMAGE_REFERENCE_FIELDS, WIRE_KNOWN_WORKSPACE_FIELDS, WIRE_LANG_PARAM, WIRE_MANAGED_LOCK_FIELDS, WIRE_MCP_ADD_FIELDS, WIRE_MCP_ADD_RESPONSE_FIELDS, WIRE_MCP_APPLY_ENTRY_FIELDS, WIRE_MCP_APPLY_RESPONSE_FIELDS, WIRE_MCP_CONFIG_APPLY_FIELDS, WIRE_MCP_CONFIG_FIELDS, WIRE_MCP_CONFIG_ISSUE_FIELDS, WIRE_MCP_CONFIG_SAVE_FIELDS, WIRE_MCP_CONFIG_SAVE_RESPONSE_FIELDS, WIRE_MCP_CONNECTOR_FIELDS, WIRE_MCP_RECONNECT_FIELDS, WIRE_MESSAGE_LIST_FIELDS, WIRE_MODEL_FIELDS, WIRE_MODEL_SELECTION_FIELDS, WIRE_MODEL_SET_FIELDS, WIRE_MODEL_SUGGESTIONS_FIELDS, WIRE_PATCH_SESSION_FIELDS, WIRE_PATCH_SESSION_RESPONSE_FIELDS, WIRE_PERMISSION_RULE_FIELDS, WIRE_PERMISSION_SET_REQUEST_FIELDS, WIRE_PERMISSION_SET_RESPONSE_FIELDS, WIRE_PERMISSION_SHADOW_FIELDS, WIRE_PERMISSION_STATE_FIELDS, WIRE_PERMISSION_STATUS_FIELDS, WIRE_PLAN_ACTIONS, WIRE_PLAN_FIELDS, WIRE_PLAN_MODE_REQUEST_FIELDS, WIRE_PLAN_MODE_RESPONSE_FIELDS, WIRE_PLAN_MODE_STATE_FIELDS, WIRE_PLUGINS_FIELDS, WIRE_PLUGIN_ACTION_FIELDS, WIRE_PLUGIN_INSTALL_FIELDS, WIRE_PLUGIN_LOCAL_FIELDS, WIRE_PLUGIN_LOCAL_INSTALL_FIELDS, WIRE_PLUGIN_MARKETPLACE_FIELDS, WIRE_PLUGIN_MARKETPLACE_RESPONSE_FIELDS, WIRE_PLUGIN_NAME_FIELDS, WIRE_PLUGIN_PREVIEW_FIELDS, WIRE_PLUGIN_PREVIEW_RESPONSE_FIELDS, WIRE_PLUGIN_UPDATE_FIELDS, WIRE_POLICY_DIR_FIELDS, WIRE_POLICY_STATUS_FIELDS, WIRE_PROVIDERS_FIELDS, WIRE_PROVIDER_KEY_FIELDS, WIRE_PROVIDER_MODELS_FIELDS, WIRE_PROVIDER_OPTION_FIELDS, WIRE_QUESTION_LIST_FIELDS, WIRE_QUESTION_ROW_FIELDS, WIRE_RESPOND_APPROVAL_FIELDS, WIRE_RESPOND_APPROVAL_RESPONSE_FIELDS, WIRE_RESPOND_QUESTION_FIELDS, WIRE_RESPOND_QUESTION_RESPONSE_FIELDS, WIRE_REWIND_FILE_PLAN_FIELDS, WIRE_REWIND_OUTCOME_FIELDS, WIRE_REWIND_PREVIEW_FIELDS, WIRE_REWIND_REQUEST_FIELDS, WIRE_REWIND_RESPONSE_FIELDS, WIRE_REWIND_SCOPES, WIRE_ROLE_ADD_FIELDS, WIRE_ROLE_ADD_RESPONSE_FIELDS, WIRE_SANDBOX_STATUS_FIELDS, WIRE_SCHEDULE_CAPABILITY_FIELDS, WIRE_SCHEDULE_CREATE_FIELDS, WIRE_SCHEDULE_DEFAULTS_FIELDS, WIRE_SCHEDULE_DELETE_FIELDS, WIRE_SCHEDULE_FIELDS, WIRE_SCHEDULE_FIX_FIELDS, WIRE_SCHEDULE_FIX_REQUEST_FIELDS, WIRE_SCHEDULE_ISSUE_CODES, WIRE_SCHEDULE_LIST_FIELDS, WIRE_SCHEDULE_PENDING_FIELDS, WIRE_SCHEDULE_RECORDING_FIELDS, WIRE_SCHEDULE_ROW_FIELDS, WIRE_SCHEDULE_RUNS_FIELDS, WIRE_SCHEDULE_RUN_FIELDS, WIRE_SCHEDULE_SAVE_FIELDS, WIRE_SECURITY_FIELDS, WIRE_SECURITY_WORKSPACE_FIELDS, WIRE_SEND_MESSAGE_FIELDS, WIRE_SEND_MESSAGE_RESPONSE_FIELDS, WIRE_SESSION_CANDIDATES_FIELDS, WIRE_SESSION_CANDIDATE_FIELDS, WIRE_SESSION_FINISH_FIELDS, WIRE_SESSION_LIST_FIELDS, WIRE_SESSION_REFERENCE_FIELDS, WIRE_SESSION_RESPONSE_FIELDS, WIRE_SESSION_SUMMARY_FIELDS, WIRE_SESSION_WORKSPACE_FIELDS, WIRE_SESSION_WORKSPACE_RESPONSE_FIELDS, WIRE_SETTINGS_FIELDS, WIRE_SETTINGS_WRITE_FIELDS, WIRE_SETTINGS_WRITE_REQUEST_FIELDS, WIRE_SETTING_ROW_FIELDS, WIRE_SETTING_STEP_FIELDS, WIRE_SETTING_WRITE_FIELDS, WIRE_SETTING_WRITE_LAYERS, WIRE_SKILL_BODY_FIELDS, WIRE_SKILL_FIELDS, WIRE_SKILL_IMPORT_FIELDS, WIRE_SKILL_IMPORT_PREVIEW_FIELDS, WIRE_SKILL_REMOVE_FIELDS, WIRE_TASKS_FIELDS, WIRE_TOOLS_FIELDS, WIRE_TOOL_GATE_FIELDS, WIRE_TOOL_ROW_FIELDS, WIRE_WORKSPACE_DIFF_FIELDS, WIRE_WORKSPACE_DIRS_FIELDS, WIRE_WORKSPACE_DIR_ENTRY_FIELDS, WIRE_WORKSPACE_REF_FIELDS, apiKeyEnvVar, assertNeverPart, assistantTurnText, attachSessionSurface, chordId, collectPendingApprovals, compressionThresholdTokens, conformsToWire, contentToText, diagnosticToLine, extractAllMentions, extractMentions, extractSessionMentions, filePartSummary, flattenCatalog, getProviderInfo, hasFailure, isApprovalOutcome, isContextNearlyFull, isHeadlessInputFormat, isHeadlessLifecycleEvent, isHeadlessOutputFormat, isKeyAction, isLang, isMentionableFilePath, isOperationType, isPermissionLevel, isPlanOutcome, isProviderType, isQuestionAnswerMap, isSearchProviderType, isValidAgentRoleName, isValidCommandName, isWireGoalPhase, isWireHubEvent, isWirePlanAction, isWireRewindScope, isWireSettingWriteLayer, makeTranslate, normalizeApproval, packSessionSurface, parseChord, parseModelRef, parseSequence, perAction, placeholdersOf, promptTokens, sequenceId, sessionPartSummary, stripSystemNote, systemNote, tableOf, totalUsageTokens, translatorFor, turnDigest, unfixedRules, utf8ByteLength, wireFields };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epoch-agent/protocol",
3
- "version": "0.3.1",
3
+ "version": "0.4.0",
4
4
  "private": false,
5
5
  "description": "epoch-agent 契约层:工具 / 事件 / 权限 / 插件的类型定义,零运行时依赖",
6
6
  "repository": {