@epoch-agent/core 0.28.0 → 0.30.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 +200 -50
- package/dist/index.js +580 -299
- package/package.json +3 -3
package/dist/index.d.ts
CHANGED
|
@@ -7265,8 +7265,8 @@ declare function loadPlugins(opts: PluginLoadOptions): PluginArtifacts;
|
|
|
7265
7265
|
* | 族 | 谁读它 |
|
|
7266
7266
|
* | ----------------------------------------------- | ---------------------------------------- |
|
|
7267
7267
|
* | `name` / `version` / `epochVersion` / `author` | **epoch 自己** —— 装不装得上、叫什么 |
|
|
7268
|
-
* | `displayName` / `category` / `
|
|
7269
|
-
* | `description` / `homepage` / `keywords`
|
|
7268
|
+
* | `displayName` / `category` / `visibility` / `changelog` | **上传那一屏的预填**,epoch 一个字不读 |
|
|
7269
|
+
* | `description` / `homepage` / `keywords` / `icon` | 两边都读(`icon` 见它那一格) |
|
|
7270
7270
|
* | `dependencies` | **epoch 自己** —— 装它时要一起装谁 |
|
|
7271
7271
|
*
|
|
7272
7272
|
* 第二族 2026-09-15 加的,判据在它们自己那几格上。要紧的一条:它们是**预填**,
|
|
@@ -7866,6 +7866,58 @@ interface PluginAbout {
|
|
|
7866
7866
|
/** 读一个插件目录里给人看的那几段散文。**任何一格读不出都只是缺席,不抛、不报** */
|
|
7867
7867
|
declare function readPluginAbout(dir: string, pluginName: string): PluginAbout;
|
|
7868
7868
|
|
|
7869
|
+
/**
|
|
7870
|
+
* 插件**包里自带**的那张图标 —— 宿主目录没给图标时的兜底(2026-10-12)。
|
|
7871
|
+
*
|
|
7872
|
+
* ## 一、优先级:宿主目录 → 包里这一张 → 名字首字
|
|
7873
|
+
*
|
|
7874
|
+
* 市场目录条目上的 `icon` 是**宿主**写的(`marketplace.ts` 的 `EntrySchema.icon`),
|
|
7875
|
+
* 它永远先赢;这里读的是作者写在 `epoch-plugin.json` 里的那一格,只在宿主那一格缺席时
|
|
7876
|
+
* 才轮到它。两张都没有,界面退回彩色底 + 名字首字(web 的 `PluginFace`)。
|
|
7877
|
+
*
|
|
7878
|
+
* 在这之前清单里的 `icon` 只是上传那一屏的**预填**,epoch 一个字不读 —— 于是一个
|
|
7879
|
+
* 从本机目录装的插件、或者宿主目录里没写图标的插件,卡片上永远只有首字。
|
|
7880
|
+
*
|
|
7881
|
+
* ## 二、⚠️ 交出去的**一律是 `data:`**,不是路径也不是 URL
|
|
7882
|
+
*
|
|
7883
|
+
* 清单里那一格三种写法,处理各不相同:
|
|
7884
|
+
*
|
|
7885
|
+
* | 写法 | 处理 |
|
|
7886
|
+
* | -------------------------- | ------------------------------------------------------- |
|
|
7887
|
+
* | 包内相对路径 `assets/x.png` | 读出来转成 `data:` —— epoch 不替插件托管文件 |
|
|
7888
|
+
* | `data:image/…` | 原样交出 |
|
|
7889
|
+
* | `https://…` 等任何带协议的 | **忽略** |
|
|
7890
|
+
*
|
|
7891
|
+
* 转成 `data:` 而不是开一条「读插件目录里的文件」的端点,是因为那条端点要自己扛
|
|
7892
|
+
* 路径逃逸、Origin 校验和 SVG 同源执行三件事;内联之后浏览器只是渲一张 `<img>`,
|
|
7893
|
+
* 而 `<img>` 里的 SVG **不执行脚本**。
|
|
7894
|
+
*
|
|
7895
|
+
* **忽略 URL** 是 2026-10-12 拍的:宿主目录里写一条 URL,是宿主决定让自己的服务器
|
|
7896
|
+
* 知道「有人在看这个列表」(判据在 `EntrySchema.icon` 上);包里写一条 URL,
|
|
7897
|
+
* 那个服务器就是**插件作者**挑的第三方 —— 用户只是打开插件页,就被一个他没选过的
|
|
7898
|
+
* 地址记了一笔。`data:` 和相对路径都不发请求,表达力一点没少。
|
|
7899
|
+
*
|
|
7900
|
+
* ## 三、读不出一律缺席,不抛、不报
|
|
7901
|
+
*
|
|
7902
|
+
* 口径同 [about.ts](./about.ts):一张读不出来的图标不该让一个插件变成别的意思。
|
|
7903
|
+
* 路径逃出插件根(含软链指出去)、扩展名不在白名单、文件超过
|
|
7904
|
+
* {@link PLUGIN_ICON_MAX_BYTES} —— 全部当没写。
|
|
7905
|
+
*
|
|
7906
|
+
* ## 四、上限为什么是 32 KiB
|
|
7907
|
+
*
|
|
7908
|
+
* 这一份会**跟着插件列表的每一次响应走**(装着的每一行一份),不是点开才拉。
|
|
7909
|
+
* 一张 128px 的 png 约 10 KiB、一张 svg 通常 2 KiB 以内;32 KiB 给足了余量,
|
|
7910
|
+
* 又让二十个插件的列表最坏也就多 ~860 KB。
|
|
7911
|
+
*/
|
|
7912
|
+
/** 包内图标文件的上限(字节)。理由见文件头第四节 */
|
|
7913
|
+
declare const PLUGIN_ICON_MAX_BYTES: number;
|
|
7914
|
+
/**
|
|
7915
|
+
* 读一个插件目录里那张自带的图标,交出一条 `data:`。
|
|
7916
|
+
*
|
|
7917
|
+
* 清单读不出、没写 `icon`、或者那一格不合规矩 → `undefined`(规矩见文件头)。
|
|
7918
|
+
*/
|
|
7919
|
+
declare function readPluginIcon(dir: string): string | undefined;
|
|
7920
|
+
|
|
7869
7921
|
/**
|
|
7870
7922
|
* 插件安装记录 —— `~/.epoch/plugins.json` 的读写(方案 32)。
|
|
7871
7923
|
*
|
|
@@ -7965,6 +8017,35 @@ declare class PluginStore {
|
|
|
7965
8017
|
private write;
|
|
7966
8018
|
}
|
|
7967
8019
|
|
|
8020
|
+
/**
|
|
8021
|
+
* 取包进度的**结构化**那一路(2026-10-11)。
|
|
8022
|
+
*
|
|
8023
|
+
* ## 为什么在 `onProgress(string)` 之外再开一路
|
|
8024
|
+
*
|
|
8025
|
+
* `onProgress` 发的是 core 用**进程语言**渲染好的一句话,CLI 直接打到终端上正合适。
|
|
8026
|
+
* 但 web 那条路上,一次请求可能带着别的 `?lang=`,而且界面要的不只是一句话:
|
|
8027
|
+
* 它要知道「现在是哪一步」才画得出对应的文案,要拿到字节数才画得出进度条。
|
|
8028
|
+
* 所以这一路只发数据,文案由界面那一侧自己渲染。两路在同一些位置**成对发出**,
|
|
8029
|
+
* 判据见 `install.ts` 里每一处 `onProgress` 旁边那一行 `emitStep`。
|
|
8030
|
+
*
|
|
8031
|
+
* ## 字节进度为什么要节流
|
|
8032
|
+
*
|
|
8033
|
+
* 一次下载的 chunk 可能有几千个,每个都往网线上写一行的话,界面一秒要重渲染几百次,
|
|
8034
|
+
* 而人眼根本分辨不出这么细的变化。所以按「距上次 ≥200ms 或又多了 ≥1%」放行,
|
|
8035
|
+
* 最后一个字节那一下(`received === total`)一定放行,不然进度条会停在 99%。
|
|
8036
|
+
*/
|
|
8037
|
+
/** 取包走到哪一步了。形状和 protocol 的 `WirePluginProgressStep` 同构(core 不依赖 protocol) */
|
|
8038
|
+
interface InstallStep {
|
|
8039
|
+
phase: 'git' | 'npm' | 'host' | 'download' | 'extract' | 'dep';
|
|
8040
|
+
target: string;
|
|
8041
|
+
/** 只在 `dep` 那一步有 */
|
|
8042
|
+
dep?: string;
|
|
8043
|
+
/** 已取到的字节数,拿得到才有 */
|
|
8044
|
+
received?: number;
|
|
8045
|
+
/** 总字节数,对面说了才有 */
|
|
8046
|
+
total?: number;
|
|
8047
|
+
}
|
|
8048
|
+
|
|
7968
8049
|
/**
|
|
7969
8050
|
* 安装来源的解析 —— 用户敲的那串字符串 → {@link ResolvedSource}(方案 32)。
|
|
7970
8051
|
*
|
|
@@ -8137,6 +8218,12 @@ interface InstallOptions {
|
|
|
8137
8218
|
confirm?: (preview: InstallPreview) => Promise<boolean>;
|
|
8138
8219
|
/** 进度提示(clone / 下载)。不给就静默 —— 库不替宿主决定往哪儿写 */
|
|
8139
8220
|
onProgress?: (message: string) => void;
|
|
8221
|
+
/**
|
|
8222
|
+
* 同一批进度的**结构化**那一路(2026-10-11):哪一步、取的是什么、取到多少字节。
|
|
8223
|
+
* 和 {@link onProgress} 在同一些位置成对发,不给就静默。
|
|
8224
|
+
* 判据(为什么另开一路、字节为什么节流)在 [install-progress.ts](./install-progress.ts) 文件头
|
|
8225
|
+
*/
|
|
8226
|
+
onStep?: (step: InstallStep) => void;
|
|
8140
8227
|
/**
|
|
8141
8228
|
* 取一个 `host:` 来源的包 —— **由宿主去下,我们一个网络请求都不发**(2026-09-08)。
|
|
8142
8229
|
*
|
|
@@ -8157,6 +8244,14 @@ interface InstallOptions {
|
|
|
8157
8244
|
target: string;
|
|
8158
8245
|
/** 我们准备好的一个**空临时目录**,包放这儿。用完由我们清掉 */
|
|
8159
8246
|
destDir: string;
|
|
8247
|
+
/**
|
|
8248
|
+
* 可选:宿主边下边报字节数(2026-10-11)。不调就没有字节进度 —— 界面上只有
|
|
8249
|
+
* 「正在从宿主取」和已用秒数。调得再频繁也没关系,这一层会节流
|
|
8250
|
+
*/
|
|
8251
|
+
onProgress?: (progress: {
|
|
8252
|
+
received: number;
|
|
8253
|
+
total?: number;
|
|
8254
|
+
}) => void;
|
|
8160
8255
|
}) => Promise<{
|
|
8161
8256
|
ok: true;
|
|
8162
8257
|
archivePath: string;
|
|
@@ -8199,6 +8294,13 @@ interface InstallPreview {
|
|
|
8199
8294
|
* 缺席 = 构造这份预览的那条路没读(老的调用方、用例里手写的预览),界面照旧只画名字。
|
|
8200
8295
|
*/
|
|
8201
8296
|
about?: PluginAbout;
|
|
8297
|
+
/**
|
|
8298
|
+
* 包里自带的那张图标,已经转成 `data:`(2026-10-12,判据在 icon.ts 文件头)。
|
|
8299
|
+
*
|
|
8300
|
+
* ⚠️ **它是兜底,不是这一屏的头像**:界面先用点进来那张市场卡上的图标(宿主写的),
|
|
8301
|
+
* 那一格缺席才轮到它。缺席 = 包里没写 / 写的是 URL(忽略)/ 读不出。
|
|
8302
|
+
*/
|
|
8303
|
+
icon?: string;
|
|
8202
8304
|
/**
|
|
8203
8305
|
* 已经装过的同名插件;有值时这次安装会被拒(验收 #8)。
|
|
8204
8306
|
*
|
|
@@ -12234,6 +12336,7 @@ declare const EpochConfigSchema: z.ZodObject<{
|
|
|
12234
12336
|
id: z.ZodString;
|
|
12235
12337
|
label: z.ZodString;
|
|
12236
12338
|
icon: z.ZodOptional<z.ZodString>;
|
|
12339
|
+
pinned: z.ZodOptional<z.ZodBoolean>;
|
|
12237
12340
|
}, z.core.$strip>>>;
|
|
12238
12341
|
userMenu: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
12239
12342
|
id: z.ZodString;
|
|
@@ -16760,13 +16863,15 @@ type ScheduleIssueCode =
|
|
|
16760
16863
|
| 'max-turns-invalid'
|
|
16761
16864
|
/** 墙钟超时必须是正数 */
|
|
16762
16865
|
| 'timeout-invalid'
|
|
16763
|
-
/** 时刻不是 `HH:mm
|
|
16866
|
+
/** 时刻不是 `HH:mm`(周期档多个时刻时,每个认不出来的各报一条) */
|
|
16764
16867
|
| 'trigger-time-invalid'
|
|
16868
|
+
/** 周期档一天的时刻超过了 `SCHEDULE_MAX_TIMES_PER_DAY` */
|
|
16869
|
+
| 'trigger-times-too-many'
|
|
16765
16870
|
/** 每周档一天都没选 */
|
|
16766
16871
|
| 'trigger-weekdays-empty'
|
|
16767
16872
|
/** 每月档的「几号」不在 1–31 之内,或者一个都没选 */
|
|
16768
16873
|
| 'trigger-days-invalid'
|
|
16769
|
-
/**
|
|
16874
|
+
/** 间隔不是正整数分钟,或者不在 `SCHEDULE_INTERVAL_MIN_MINUTES`–`MAX` 之内 */
|
|
16770
16875
|
| 'trigger-interval-invalid'
|
|
16771
16876
|
/** 单次档的日期不是 `YYYY-MM-DD`,或者压根不是一个真实存在的日子 */
|
|
16772
16877
|
| 'trigger-once-date-invalid'
|
|
@@ -17260,19 +17365,28 @@ declare function listRunningSchedules(db: SqliteDatabase, clock?: () => number):
|
|
|
17260
17365
|
/**
|
|
17261
17366
|
* 触发器的校验、下一次触发时刻、以及生效区间(方案 45 §2.1)。
|
|
17262
17367
|
*
|
|
17263
|
-
* ##
|
|
17368
|
+
* ## 「按间隔」档的时刻锚在**每天的午夜**,不在创建时刻
|
|
17264
17369
|
*
|
|
17265
17370
|
* 这一条是两个平台能逐字一致的全部原因:
|
|
17266
17371
|
*
|
|
17267
17372
|
* ```
|
|
17268
17373
|
* 每 15 分钟 → 每小时的 :00 :15 :30 :45
|
|
17269
17374
|
* 每 2 小时 → 每天的 00:00 02:00 04:00 …
|
|
17375
|
+
* 每 7 分钟 → 每天的 00:00 00:07 … 23:55,次日 00:00 重新起算
|
|
17270
17376
|
* ```
|
|
17271
17377
|
*
|
|
17272
|
-
* Windows
|
|
17273
|
-
* macOS 那侧本来就只能列举时刻(`StartCalendarInterval`)。
|
|
17378
|
+
* Windows 那侧是「每天 00:00 触发 + 重复间隔 n 分钟、持续 1 天」(任务 XML 的
|
|
17379
|
+
* `Repetition`),macOS 那侧本来就只能列举时刻(`StartCalendarInterval`)。
|
|
17274
17380
|
* 换成「从创建那一刻起每 15 分钟」的话,Windows 能表达而 macOS 表达不了 ——
|
|
17275
17381
|
* 于是同一条任务在两台机器上跑在不同的时刻,而这种漂移只有对着日志比才看得出来。
|
|
17382
|
+
* 除不尽一天的间隔,午夜那一格会短一截:那是这条约定的代价,用户 2026-10-12 拍的板
|
|
17383
|
+
* (取值范围和三个例子在 protocol 的 `SCHEDULE_INTERVAL_MIN_MINUTES` 上)。
|
|
17384
|
+
*
|
|
17385
|
+
* ## 周期档一天可以有几个时刻
|
|
17386
|
+
*
|
|
17387
|
+
* `at` + `alsoAt`,读的时候一律走 protocol 的 `cronTimes()`(去重、升序)。
|
|
17388
|
+
* 写进库之前过一遍 {@link normalizeTrigger},于是单时刻的任务存出来和多时刻
|
|
17389
|
+
* 这一格出现之前**逐字节一样**(判据在 protocol 那个类型的注释上)。
|
|
17276
17390
|
*
|
|
17277
17391
|
* ## 这里算出来的「下一次」只用于**显示**
|
|
17278
17392
|
*
|
|
@@ -17301,6 +17415,17 @@ declare function parseDate(value: string): {
|
|
|
17301
17415
|
* 校验触发器本身。**不看生效区间**(那要和触发器合起来判,见 `validateWindow`)。
|
|
17302
17416
|
*/
|
|
17303
17417
|
declare function validateTrigger(trigger: ScheduleTrigger, now?: number): ScheduleIssue[];
|
|
17418
|
+
/** 间隔是不是正整数分钟、且在 protocol 给的范围里(含两端) */
|
|
17419
|
+
declare function isValidInterval(everyMinutes: number): boolean;
|
|
17420
|
+
/**
|
|
17421
|
+
* 写进库之前的归一:周期档的时刻**去重、升序**,`at` 是最早那个,其余进 `alsoAt`;
|
|
17422
|
+
* 只剩一个时刻时**不写 `alsoAt` 这个键**。
|
|
17423
|
+
*
|
|
17424
|
+
* 不写那个键(而不是写 `alsoAt: []`)是这一格的全部意义:单时刻任务存出来的
|
|
17425
|
+
* JSON 和多时刻出现之前逐字节一样,老版本的读者、`doctor` 的比对都不受影响。
|
|
17426
|
+
* 其余档原样返回。
|
|
17427
|
+
*/
|
|
17428
|
+
declare function normalizeTrigger(trigger: ScheduleTrigger): ScheduleTrigger;
|
|
17304
17429
|
/**
|
|
17305
17430
|
* 校验生效区间。
|
|
17306
17431
|
*
|
|
@@ -17456,10 +17581,8 @@ type DraftParse = Parsed<ScheduleDraft>;
|
|
|
17456
17581
|
/**
|
|
17457
17582
|
* 触发器。
|
|
17458
17583
|
*
|
|
17459
|
-
*
|
|
17460
|
-
*
|
|
17461
|
-
* 上的行为不一致(判据在协议那个常量上)。拦在这儿的好处是回给它的话能带上全集,
|
|
17462
|
-
* 它下一轮就改对了。
|
|
17584
|
+
* `everyMinutes` 的范围在这儿就拦住、不等 `validateTrigger`:拦在这儿回给模型的话
|
|
17585
|
+
* 能带上范围和「每天从 0 点起算」那条语义,它下一轮就改对了。
|
|
17463
17586
|
*/
|
|
17464
17587
|
declare function parseTrigger(v: unknown): Parsed<ScheduleTrigger>;
|
|
17465
17588
|
/**
|
|
@@ -17931,16 +18054,31 @@ interface BackendOptions {
|
|
|
17931
18054
|
*/
|
|
17932
18055
|
declare function resolveScheduleBackend(platform?: NodeJS.Platform, opts?: BackendOptions): Promise<ScheduleBackend | null>;
|
|
17933
18056
|
/**
|
|
17934
|
-
*
|
|
18057
|
+
* 「按间隔」档展开成「一天里的哪些时刻」—— launchd 那侧列举 `StartCalendarInterval` 用。
|
|
18058
|
+
*
|
|
18059
|
+
* 公共语义是**每天从 0 点起算**(判据全文在 [trigger.ts](../trigger.ts) 的文件头)。三种形状:
|
|
17935
18060
|
*
|
|
17936
|
-
*
|
|
17937
|
-
*
|
|
17938
|
-
*
|
|
18061
|
+
* | 间隔 | 展开成 | 例 |
|
|
18062
|
+
* | ------------------------------ | ------------------------------ | -------------------------- |
|
|
18063
|
+
* | 能整除 60 分钟 | `minutes`:每小时的这几分 | 15 → `[0, 15, 30, 45]` |
|
|
18064
|
+
* | 整小时数且能整除 24 小时 | `hours`:每天的这几点整 | 120 → `[0, 2, 4, …, 22]` |
|
|
18065
|
+
* | 其余(7 分钟、90 分钟、5 小时) | `clock`:当天逐个列出 | 7 → 00:00 00:07 … 23:55 |
|
|
18066
|
+
*
|
|
18067
|
+
* ⚠️ **前两种不能并进第三种**,哪怕第三种算出来的时刻一模一样:已经注册的任务,
|
|
18068
|
+
* `doctor` 是拿「重新渲染一遍 plist」去和盘上那份逐字比的,前两种的形状变了,
|
|
18069
|
+
* 每一条老任务都会报一次漂移。第三种是多时刻那一笔(2026-10-12)才有的。
|
|
17939
18070
|
*/
|
|
17940
|
-
|
|
17941
|
-
hours?: number[];
|
|
18071
|
+
type IntervalSlots = {
|
|
17942
18072
|
minutes: number[];
|
|
18073
|
+
} | {
|
|
18074
|
+
hours: number[];
|
|
18075
|
+
} | {
|
|
18076
|
+
clock: Array<{
|
|
18077
|
+
hour: number;
|
|
18078
|
+
minute: number;
|
|
18079
|
+
}>;
|
|
17943
18080
|
};
|
|
18081
|
+
declare function intervalSlots(everyMinutes: number): IntervalSlots;
|
|
17944
18082
|
|
|
17945
18083
|
/**
|
|
17946
18084
|
* 注册器 —— 把 store、OS 后端、那条 argv 三样拧在一起(方案 45 §2.5 / §2.6)。
|
|
@@ -18177,7 +18315,8 @@ declare function pruneSchedules(drifts: readonly ScheduleDrift[], opts: Diagnose
|
|
|
18177
18315
|
* 而**丢掉**」
|
|
18178
18316
|
*
|
|
18179
18317
|
* 所以「每 15 分钟」写成四个 dict(`Minute` = 0/15/30/45),
|
|
18180
|
-
* 而不是 `StartInterval: 900
|
|
18318
|
+
* 而不是 `StartInterval: 900`。这也是「按间隔」档每天从 0 点重新起算的真正原因:
|
|
18319
|
+
* 列举只能列「一天里的哪些时刻」,「从某一刻起连续每 7 分钟」列不出来。
|
|
18181
18320
|
*
|
|
18182
18321
|
* ## 停用不是 `bootout`
|
|
18183
18322
|
*
|
|
@@ -18207,44 +18346,54 @@ declare const LAUNCHD_LABEL_PREFIX = "cn.epoch.schedule.";
|
|
|
18207
18346
|
* Windows 后端:任务计划程序(`schtasks`,方案 45 §2.2)。
|
|
18208
18347
|
*
|
|
18209
18348
|
* ```
|
|
18210
|
-
* schtasks /Create /F /
|
|
18211
|
-
* /TN "epoch\<taskId>"
|
|
18212
|
-
* /TR "\"<node 绝对路径>\" \"<入口 js>\" schedule fire <taskId> --home <dir>"
|
|
18213
|
-
* /SC DAILY /ST 09:00 /SD 2026/08/14 /ED 2026/12/31
|
|
18349
|
+
* schtasks /Create /F /TN "epoch\<taskId>" /XML <临时文件>
|
|
18214
18350
|
* ```
|
|
18215
18351
|
*
|
|
18216
|
-
*
|
|
18352
|
+
* ## 注册走 `/XML`,不走 `/SC /ST /TR` 那组参数(2026-10-12 换的)
|
|
18353
|
+
*
|
|
18354
|
+
* 原来那组参数**一条任务只能挂一个触发器**,于是「每天 09:00、14:00、18:00」和
|
|
18355
|
+
* 「每月 1 号、15 号」都表达不了(后者以前在注册前就被拒了)。任务 XML 的
|
|
18356
|
+
* `<Triggers>` 最多收 48 个(`triggersType` 的 `maxOccurs="48"`,微软的 Task Scheduler
|
|
18357
|
+
* Schema 文档),一个时刻一个 `CalendarTrigger`,多天放进同一个触发器里。
|
|
18358
|
+
*
|
|
18359
|
+
* `/XML` 只能和 `/RU` `/RP` 一起用(`schtasks /Create` 文档原文),所以原来那几个
|
|
18360
|
+
* 参数的意思全部搬进了 XML,**一条都没丢**:
|
|
18361
|
+
*
|
|
18362
|
+
* | 原来的参数 | XML 里的对应 | 为什么要它 |
|
|
18363
|
+
* | -------------- | --------------------------------------------- | ------------------------------------------ |
|
|
18364
|
+
* | `/IT` | `<LogonType>InteractiveToken</LogonType>` | 只在用户登录时跑 —— 密钥走 DPAPI 用户密钥,未登录会话取不到;用 `/RU` `/RP` 存密码换「不登录也跑」是反向的 |
|
|
18365
|
+
* | `/RL LIMITED` | `<RunLevel>LeastPrivilege</RunLevel>` | 定时任务不该以管理员身份跑 |
|
|
18366
|
+
* | `/TN epoch\…` | 照旧走 `/TN` | 任务计划程序里一眼看见「这些是 epoch 的」,`doctor` 按前缀枚举 |
|
|
18367
|
+
* | `/F` | 照旧走 `/F` | 覆盖同名,「改了再保存」是幂等的 |
|
|
18368
|
+
* | `/TR` | `<Command>` + `<Arguments>` | 两个绝对路径(node + 入口 js),见 argv.ts |
|
|
18369
|
+
*
|
|
18370
|
+
* `Settings` 那一段照抄 `/Create` 建出来的任务导出的原文(真机实测),**只改了两格**:
|
|
18371
|
+
* `DisallowStartIfOnBatteries` / `StopIfGoingOnBatteries` 从 `true` 改成 `false` ——
|
|
18372
|
+
* 原来 Windows 笔记本不插电时定时任务一律不跑,而 macOS 上没有这个限制(用户 2026-10-12 拍的板)。
|
|
18373
|
+
*
|
|
18374
|
+
* ## 换了之后顺带没了的三条老边界
|
|
18217
18375
|
*
|
|
18218
|
-
* -
|
|
18219
|
-
*
|
|
18220
|
-
*
|
|
18221
|
-
* 让用户把 Windows 密码交出来,代价远大于收益。
|
|
18222
|
-
* - **`/RL LIMITED`**(默认值,显式写出来)—— 定时任务不该以管理员身份跑。
|
|
18223
|
-
* - **`/TN "epoch\<taskId>"`** —— 带一层 `epoch\` 目录,用户在任务计划程序里能
|
|
18224
|
-
* 一眼看见「这些是 epoch 的」,`doctor` 也能按前缀枚举。
|
|
18225
|
-
* - **`/F`** —— 覆盖同名,让「改了任务再保存」是幂等的。
|
|
18226
|
-
* - **`/TR` 里两个绝对路径**(node + 入口 js,不是 `epoch.cmd`),见 argv.ts。
|
|
18376
|
+
* 2026-08-18 在真 Windows 上撞出来的那三条([验收记录](../../../../../docs/verify/VERIFY_RECORD-45-schedule-windows.md)),
|
|
18377
|
+
* 在 `/XML` 这条路上都不成立了,2026-10-12 逐条重验过
|
|
18378
|
+
* ([验收记录](../../../../../docs/verify/VERIFY_RECORD-schedule-multi-times.md)):
|
|
18227
18379
|
*
|
|
18228
|
-
*
|
|
18380
|
+
* 1. **`/TR` 最长 261 字符** —— 那是 `/TR` 这个参数的限制。`<Arguments>` 超过 300 字符照样建得出来,
|
|
18381
|
+
* 所以源码形态(`pnpm epoch:dev`,394 字符)现在也能注册;
|
|
18382
|
+
* 2. **`/Z` 要求结束边界** —— 我们从来不写 `DeleteExpiredTaskAfter`,单次档收摊仍然走 `retire()`;
|
|
18383
|
+
* 3. **`/SC MONTHLY /D` 只收一天** —— XML 的 `<DaysOfMonth>` 收多个 `<Day>`。
|
|
18229
18384
|
*
|
|
18230
|
-
*
|
|
18231
|
-
* 里。要它就得走 `/XML` 递一份完整的任务 XML。**v1 不做补跑**,理由不是难 ——
|
|
18232
|
-
* 是补跑的产品语义本身是错的(下午 4 点开机补跑一份 9 点的仓库巡检,价值是负的)。
|
|
18385
|
+
* ## 新的两条硬约束(同样是真机实测)
|
|
18233
18386
|
*
|
|
18234
|
-
*
|
|
18387
|
+
* - **XML 文件必须是 UTF-16LE + BOM**。写成 UTF-8(声明也改成 UTF-8)当场报
|
|
18388
|
+
* 「任务 XML 格式错误 … 无法切换编码」;
|
|
18389
|
+
* - **生效区间的截止那天要写到 `T23:59:59`**。原来 `/ED 2026/12/31` 落进 XML 是
|
|
18390
|
+
* `EndBoundary 2026-12-31T00:00:00` —— 截止那天 0 点就停了,那天 9 点的任务不跑,
|
|
18391
|
+
* 和界面上「含首尾」相反。这一笔顺带修掉(只对重新保存过的任务生效)。
|
|
18235
18392
|
*
|
|
18236
|
-
*
|
|
18237
|
-
* 上递进去过。第一次真跑就撞出三条帮助原文**没写**的边界,全部记在
|
|
18238
|
-
* [验收记录](../../../../../docs/verify/VERIFY_RECORD-45-schedule-windows.md) 里:
|
|
18393
|
+
* ## 已确认做不到的一件事:没有「错过了就尽快补跑」
|
|
18239
18394
|
*
|
|
18240
|
-
*
|
|
18241
|
-
*
|
|
18242
|
-
* 2. **`/Z` 要求任务有结束边界**。`/SC ONCE` 不带 `/ET` / `/DU` 时没有
|
|
18243
|
-
* `EndBoundary`,`/Z` 会让整条 `/Create` 报「任务 XML 缺少个所需元素或属性」。
|
|
18244
|
-
* 所以单次档**不带 `/Z`**,收摊仍然走 `retire()`(macOS 那侧一直是这么做的)。
|
|
18245
|
-
* 3. **`/SC MONTHLY` 的 `/D` 只收一天**(`1` - `31`),逗号列表报「值对 /D 选项
|
|
18246
|
-
* 无效」。而 `ScheduleTrigger` 的每月档允许多天、launchd 也原生支持多天,
|
|
18247
|
-
* 所以这里只能明确拒绝 —— 见 `register()` 里那道闸。
|
|
18395
|
+
* 那个设置是 XML 的 `StartWhenAvailable`,现在够得着了,但**照样不写**:
|
|
18396
|
+
* 补跑的产品语义本身是错的(下午 4 点开机补跑一份 9 点的仓库巡检,价值是负的)。
|
|
18248
18397
|
*
|
|
18249
18398
|
* ## 读回那一侧一律走 `/Query /XML`,不碰 `/FO LIST`
|
|
18250
18399
|
*
|
|
@@ -18254,7 +18403,8 @@ declare const LAUNCHD_LABEL_PREFIX = "cn.epoch.schedule.";
|
|
|
18254
18403
|
* 而 `enabled` 恒等于 `true`(**一条已停用的任务被报成启用**,是不安全的方向)。
|
|
18255
18404
|
*
|
|
18256
18405
|
* ⚠️ `/Query /XML` 有个坑:它吐的 XML 声明写着 `encoding="UTF-16"`,但管道里的
|
|
18257
|
-
* 字节不是 UTF-16
|
|
18406
|
+
* 字节不是 UTF-16(中文系统上实测是 GBK)。所以**别**把它交给一个信任声明的解析器,
|
|
18407
|
+
* 我们只按元素名取几段。
|
|
18258
18408
|
*/
|
|
18259
18409
|
|
|
18260
18410
|
/** 任务名前缀。**定死** —— 同 launchd 的 Label 前缀,改了就留下枚举不到的孤儿 */
|
|
@@ -21112,4 +21262,4 @@ declare function resolveCodeModeWorker(baseDir: string, exists?: typeof existsSy
|
|
|
21112
21262
|
*/
|
|
21113
21263
|
declare function codeModeWorkerPath(): string | undefined;
|
|
21114
21264
|
|
|
21115
|
-
export { ABOUT_DESC_MAX_CHARS, ABOUT_README_MAX_CHARS, AGENT_ROLE_DIAG_MODULE, ARTIFACT_MAX_TOTAL_BYTES, ARTIFACT_RETENTION_DEFAULTS, ATTACHMENT_MAX_TOTAL_BYTES, ATTACHMENT_RETENTION_DEFAULTS, type AcquireResult, type AgentConfig, AgentLoop, type AgentProvider, type AgentSite, type AgentSiteRef, AppearanceStore, type AppendMessageInput, ApprovalCache, type ApprovalDecision, type ArtifactOpenRefusal, type ArtifactRetention, type AskQuestionDeps, type AttachmentRetention, BLOCKED_TOOLS, type BackendOptions, type BackendOutcome, type BackgroundTaskSource, type BaseOrigin, type BaseSlot, type BeginTurnInput, type BreakdownInput, BudgetGuard, type BudgetGuardOptions, type BudgetInfo, type BudgetLevel, type BudgetOptions, type BudgetStatus, BudgetStore, type BudgetStoreOptions, type BuildFireArgvInput, type BuildIndexOptions, CHECKPOINT_MAX_TOTAL_BYTES, CLAUDE_EVENT_NAMES, CLAUDE_TOOL_NAMES, CODE_MODE_LIMITS, CODE_MODE_SDK_TAG, CONFIG_KEYS, CURRENT_CONFIG_VERSION, type CachedApproval, type CachedDecision, type CheckpointCapture, type CheckpointFile, CheckpointManager, type CheckpointManagerOptions, type CheckpointManifest, CheckpointStore, type CheckpointStoreOptions, type CheckpointSummary, type ClaudeHooksParseOptions, type CodeModeLimits, type CodeRequest, type CodeResult, CodeSandbox, type CommandHookConfig, type CommandHookResult, type CommandLoadOutcome, type CommandLoadSummary, type CommandResult, type CommandRunner, type CompactionResult, type CompiledRules, type ComplianceDirSpec, type ComplianceDirsSummary, ComplianceEngine, type ComplianceEngineInput, type ComplianceGate, type ComplianceHit, type ComplianceRule, type ComplianceRuleSource, type ComplianceSettings, type ComplianceVerdict, type CompressConfig, type CompressResult, type ConfigMigration, type ConfigOrigins, ContextCompressor, type ContextEngine, type CreateScheduleInput, type CreateSessionInput, DEFAULT_COMPLIANCE_ACTIONS, DEFAULT_COMPLIANCE_SETTINGS, DEFAULT_COMPRESSION_THRESHOLD, DEFAULT_GOAL_MAX_ROUNDS, DEFAULT_MAX_HOLD_CHARS, type DelegateArgs, type DelegateConfig, DelegateManager, type DelegateTaskResult, type DiagnoseOptions, type DiscoverOutcome, type DiscoveredFile, type DoctorReport, type DraftParse, EMPTY_RULES, EPOCH_DISK_LEDGER, EpochConfigSchema, type ExpandOptions, type ExtractOutcome, FTS_TABLES, FTS_TRIGGERS, type FallbackEvent, type FileSlots, type FileSourceKind, type ForkInput, type FrontmatterParse, type FrontmatterSplit, type FtsHealth, type FtsReclaim, type FtsSpace, type FtsTableHealth, GOAL_BLOCK_CODES, type GateAxis, type GateVerdict, type GenerateInput, type GenerateOutput, type Goal, type GoalBlockReason, type GoalClear, type GoalPhase, type GoalPromptView, type GoalRefusal, type GoalRoundResult, GoalService, GoalStore, type GoalToolDeps, type GoalWrite, HEADLESS_AUDIT_CODES, type HeadlessPolicy, type HookConfigEntry, HookManager, type HookManagerOptions, type HookMatcher, type HookSourceKind, type HookSourceStatus, type HookSourcesOptions, type HookSourcesSummary, type HooksParseOutcome, type MemoryManager$1 as IMemoryManager, INSTRUCTION_BUDGET_CHARS, INSTRUCTION_FILES, type SessionManager$1 as ISessionManager, type SkillSystem$1 as ISkillSystem, ImageLoadError, type ImageSize, type ImportDecision, type ImportGate, type ImportGoal, type ImportMessage, type ImportNode, type ImportPartsResult, type ImportSessionInput, type ImportSessionMeta, type ImportSessionResult, type ImportSkipReason, type ImportTodo, ImportTrustStore, type InstallDependency, type InstallOptions, type InstallOutcome, type InstallPreview, type InstructionScan, type InstructionSource, type IsolationReason, type IsolationReport, type JsonSchemaDocument, LAUNCHD_LABEL_PREFIX, LOCK_HEARTBEAT_MS, LOCK_STALE_MS, type LastOpenSession, LastOpenSessions, type LayerOutcome, type LayerScalars, type LayerStatus, type LearningContext, type LearningResult, type LearningSkipReason, type LexiconLoadOutcome, type LifecycleOutcome, type ListCandidatesInput, type ListSessionsInput, type ListSessionsOutput, type LoadCommandsOptions, type LoadConfigOptions, type LoadKeybindingsOptions, type LoadKeybindingsResult, type LoadRolesOptions, type LoadedPlugin, type LockHolder, MARKETPLACE_DISPLAY_FIELDS, MARKETPLACE_FILE, MAX_AUDIT_ENTRIES, MAX_COMMAND_DEPTH, MAX_GOAL_MAX_ROUNDS, MAX_IMPORT_DEPTH, MAX_LAST_OPEN_SESSIONS, MAX_OBJECTIVE_CHARS, MAX_REASON_CHARS, MAX_RECENT_WORKSPACES, MODEL_GIVE_UP_THRESHOLD, MULTIMODAL_DEFAULTS, type ManagedPolicy, ManagedPolicyError, type ManagedSettings, ManagedSettingsSchema, type MarketplaceCatalog, type MarketplaceCategory, type MarketplaceDisplay, type MarketplaceDisplayField, type MarketplaceEntry, type MarketplaceOutcome, type MarketplaceRecord, type MarketplaceStatus, type MemoryConfig, type MemoryEntry, type MemoryImportRecord, type MemoryImportResult, MemoryManager, type MemoryManagerOptions, type MemoryNotice, type MemoryRemoval, type MemorySearchResult, type MemoryTarget, type MemoryWriteResult, type MentionPart, type MentionResolution, type Message, type MessageHit, type MessageRecord, type MessageSurface, type ModelCapability, ModelFailureTracker, type ModelMetaEntry, type ModelPricing, type MultimodalPolicy, NOMINAL_TOTAL_BYTES, NO_REVEALED_TOOLS, type NonInteractiveProbe, type OsTaskSnapshot, type OutputGuard, PACK_EXCLUDES, PACK_MAX_BYTES, PACK_MAX_FILES, PERMISSION_AUDIT_CODES, PLUGIN_LAYOUT, PLUGIN_MANIFEST_FILE, PLUGIN_MANIFEST_KEYS, PLUGIN_NAME_PATTERN, PLUGIN_ROOT_ENV, PLUGIN_ROOT_TOKEN, PLUGIN_VISIBILITY, POLICY_DECISIONS, PROBE_VERSION, PROJECT_AGENTS_SUBDIR, PROVIDER_NO_CREDENTIAL, type PackFile, type PackLimits, type PackOutcome, type PackPlan, type PackPlanOutcome, type PermissionAuditCode, type PermissionAuditEntry, type PermissionAuditOutcome, type PermissionAuditScope, type PermissionAuditSnapshot, PermissionManager, type PersistFailureKind, type PersistedBudget, type PersistedPart, type PlanApprovalFn, type PlanEnterResult, type PlanModeDeps, PlanModeState, type PlanSettlement, type PluginAbout, type PluginArtifacts, type PluginAuthor, PluginAuthorSchema, type PluginCommandDir, type PluginCounts, type PluginDoc, type PluginHookFile, type PluginInventory, type PluginLoadOptions, type PluginManifest, type PluginPathRef, type PluginRecord, type PluginSettingsFile, type PluginSourceType, type PluginStateReadOutcome, PluginStore, type PluginVisibility, type PolicyDirSpec, type PolicyDirsSummary, type PolicyLoadOutcome, type PolicyRule, PolicyRuleSchema, type PricingAt, type PricingOverride, type ProjectContext, type ProjectExtensionInventory, ProviderError, ProviderRouter, type ProviderStreamChunk, type ProviderToolCall$1 as ProviderToolCall, type ProviderWarning, type PruneResult, type QuestionAskFn, RECORDING_KEEP_RUNS, RECORDING_MAX_BYTES, ROLE_FRONTMATTER_SCHEMA, RUN_CODE_TOOL, type ReadMessagesInput, type ReadMessagesOutput, type RecentWorkspace, RecentWorkspaces, type RecordRunInput, type RecorderOptions, type RecoveryAction, type RegisterInput, type RegisterOutcome, type RegistrarOptions, type RegistrationPatch, type RepairOutcome, type ResolveMentionsOptions, type ResolveReferenceInput, type ResolveSettingsOptions, type ResolvedCompression, type ResolvedReference, type ResolvedSource, type ResponseFormat, type RestorePartsOptions, type RewindAction, type RewindDrift, type RewindFilePlan, type RewindOptions, type RewindOutcome, type RewindPreview, type RoleCreateFailure, type RoleCreateInput, type RoleCreateOptions, type RoleCreateOutcome, type RoleLoadOutcome, type RoleLoadSummary, type RoleMergeNotice, type RoleMergeResult, type RoleRemoveFailure, type RoleRemoveOptions, type RoleRemoveOutcome, type RoleScope, type RuleMatch, type RuleSuggestion, type RuleVerdict, type RunCodeFailure, type RunCodeInput, type RunCodeOutcome, type RunCodeToolDeps, type RunEstimateInput, type RunInput, type RunResult, type RunningSchedule, SANDBOX_COVERS, SANDBOX_EXCLUDES, SCALAR_KEYS, SCHEDULE_DEFAULTS, SCHEDULE_DEFAULT_ALLOWLIST, SCHEDULE_FORM_BUDGET_USD, SCHEDULE_ISSUE_CODES, SCHTASKS_FOLDER, SESSION_MESSAGES_READ_TOOL, SESSION_MESSAGES_SEARCH_TOOL, SESSION_QUERY_TOOLS, SESSION_SEARCH_TOOL, SESSION_TRACE_TOOL, SETTINGS_LAYER_ORDER, SETTING_WRITE_KEYS, SETTING_WRITE_LAYERS, SKILL_ASSET_DIRS, SKILL_CREATE_TOOL, SKILL_EDIT_TOOL, SKILL_FILE, SKILL_PATCH_TOOL, SKILL_VIEW_TOOL, SKILL_WRITE_FILE_TOOL, SLASH_COMMANDS_DIAG_MODULE, type ScalarKey, type ScanInstructionsOptions, type ScheduleArgvRefusal, type ScheduleArgvResult, type ScheduleArgvWarning, type ScheduleBackend, type ScheduleCliEntry, type ScheduleDraftDeps, type ScheduleDrift, type ScheduleDriftKind, type ScheduleImportInput, type ScheduleInstallForm, type ScheduleIssue, type ScheduleIssueCode, type ScheduleLock, ScheduleRecorder, ScheduleRegistrar, ScheduleStore, type ScheduleValidation, type SchemaExport, type SearchHit, type SearchInput, type SearchMessagesInput, type SearchMessagesOutput, type SearchOutput, type SearchSessionsInput, type SelectionDeps, type SelfConnector, type SelfIndexInput, type SelfSettings, type Session, type SessionCandidate, type SessionHit, SessionManager, type SessionMentionDeps, type SessionMeta, SessionQueries, SessionReferences, type SessionSearchDeps, type SessionStats, type SessionSurface, type SessionTrace, type SessionVisibility, type SessionVisibilityInput, type SettingApply, type SettingApplyFacts, type SettingChain, type SettingFutile, type SettingLayer, type SettingStep, type SettingValue, type SettingValueKind, type SettingWriteFailure, type SettingWriteKey, type SettingWriteLayer, type SettingWriteOutcome, type SettingWriteRequest, type SettingWriteTarget, type SettingWriteTargetsOptions, type SettingsFile, SettingsFileError, SettingsFileSchema, type SettingsLayer, type SettingsResolution, type ShadowFinding, type ShadowKind, type Skill, type SkillDirSource, type SkillDirSpec, type SkillDirsSummary, type SkillImportConflict, type SkillImportDone, type SkillImportEntry, type SkillImportFailure, type SkillImportForm, type SkillImportOptions, type SkillImportPreview, type SkillImportResult, type SkillIndexEntry, type SkillIndexOptions, type SkillIndexResidency, type SkillIndexStats, SkillLearner, type SkillLearningProvider, type SkillMeta, type SkillStats, SkillSystem, type SkillSystemOptions, type SkillViewDeps, type SkillWriteDeps, type SteerSource, type StoredAppearance, type SubAgentRunner, type SubTask, type SubToolCaller, type SummarizeOutput, type SurfaceMessage, type SystemPromptParams, type SystemPromptSegments, TOOL_SEARCH_TOOL, TaskNoticeTracker, type TodoItem, type ToolCall, type ToolConflict, type ToolGate, type ToolNameFidelity, type ToolNameLookup, ToolRegistry, type ToolRevealState, type ToolScope, type ToolSearchDeps, type ToolTableCost, type TraceInput, type TraceNode, TrackerDB, type TrustDecision, type TrustGate, type TrustGateOptions, TrustManager, type TurnRecord, type TurnTiming, type UpdateScheduleInput, type UtilityModelInfo, type ValidateScheduleInput, type VersionCheck, Workspace, type WorkspaceFiles, type WorkspaceIssue, type WorkspaceIssueKind, acquireScheduleLock, addMarketplace, addUsage, admitArtifact, admitArtifacts, affectedPaths, approvalEntryFor, approvalRootFor, artifactLaunchArgv, artifactOpenRefusal, assertLevelAllowed, blockedRoleTools, buildContextBreakdown, buildFireArgv, buildFtsMatchQuery, buildSchemaExports, buildSystemPrompt, buildTrigramMatchQuery, builtinRoles, checkEpochVersion, checkFtsHealth, checkShadowing, classifyPersistFailure, classifyProviderError, clearModelCache, coalesceRecording, codeModeWorkerPath, commandNameFromRelPath, compileRuleLists, compressionOptions, computeCost, computeCostMicros, computeExecHash, countRules, createAllowAllGate, createAllowAllImportGate, createAskQuestionTool, createCodeExecTool, createDelegateTool, createDenyAllGate, createDenyAllImportGate, createGoalTool, createImportGate, createMemoryTool, createPlanModeTools, createRoleFile, createRoleScope, createRunCodeTool, createScheduleDraftTool, createSessionMessagesReadTool, createSessionMessagesSearchTool, createSessionSearchTool, createSessionSearchTools, createSessionTraceTool, createSkillViewTool, createSkillWriteTools, createTodoTool, createToolRevealState, createToolScope, createToolSearchTool, createTrustGate, currentEpochVersion, decideImport, decideTrust, defaultConfig, defaultModelOf, describeArtifactRefusal, describeBackgroundTask, describeHeadlessPolicy, describeIsolation, describeJsonError, diagnoseSchedules, discoverMarkdown, discoverModels, discoverProject, displayAllows, displayCurrency, draftCommandLine, draftWidening, escapeRuleContent, estimateImageTokens, estimateRunTokens, estimateTokens, evaluateSelection, expandCommand, expandImports, explainSetting, extractArchive, findInstructionFiles, findProjectInstructions, findRole, formatBytes, formatSkillIndex, formatUsd, gateForTool, getCapability, getConfigIssues, getConfigOrigins, getImportGate, getTrustGate, grantedPathsFor, hasDedicatedExecContent, hasExecTierContent, hasPromptCaching, hasProviderCredentials, hasReadTierContent, imageFromBase64, imageFromPath, imagePartTokens, importParts, importSkills, installPlugin, instructionDirs, instructionNotices, intervalSlots, inventoryProjectExtensions, inventoryTotal, isBlockCode, isCodeModeDeferred, isEmptyRules, isGoalPhase, isNonInteractive, isReadOnlySubCall, isSettingWriteLayer, isTransientPersistFailure, isValidPluginName, isWithinWindow, isWritableSettingKey, labelSlug, layerRank, listRunningSchedules, listSessionCandidates, listWorkspaceFiles, loadCommandDefinitions, loadCommandFile, loadCommands, loadConfig, loadHookSources, loadKeybindings, loadLexiconDir, loadLexiconFiles, loadPlugins, loadPolicyFiles, loadPolicyRules, loadRoleDefinitions, loadRoleDir, loadedImports, localDateString, managedSwitchNotes, mapClaudeToolName, mapEpochToolName, mapOperationType, matchPreauthorization, matchRuleLists, matchesHook, mentionsPluginRoot, mergeHeadlessPolicy, mergeRoles, mergeSchedulePatch, microsToUsd, modelListCandidates, needsAllowlist, nextFallbackModel, nextRunAt, noConfigOrigins, noManagedPolicy, noPlugins, openArtifact, originOf, packFileName, packPlugin, parseClaudeSettingsHooks, parseClock, parseDate, parseFrontmatter, parseHooksConfig, parseHooksConfigVerbose, parseImportLine, parseModelList, parseRoleDefinition, parseScheduleDraft, parseSkillFrontmatter, parseTrigger, pendingImageTokens, persistFailureCode, persistParts, persistToolResults, persistedUsage, planPack, previewSkillImport, pricingFor, projectEntryForDisplay, pruneArtifacts, pruneAttachments, pruneRecordings, pruneSchedules, readImageSize, readMarketplaces, readPluginAbout, readPluginManifest, readPluginRecords, readProviderKeyEnv, readRecording, readSessionSurface, reclaimFtsSpace, redactLine, refreshOpenRouterMetadata, removeMarketplace, removeRecordings, removeRoleFile, removeSessionArtifacts, removeSessionAttachments, renderImportTree, renderProjectContext, renderSdkDeclaration, renderSelfIndex, repairSchedules, resolveArtifactRetention, resolveCodeModeWorker, resolveComplianceDirs, resolveEntrySource, resolveInWorkspace, resolveMarketplaceRef, resolveMentions, resolveMultimodalPolicy, resolvePolicyDirs, resolvePricingAt, resolveProjectRoot, resolveScheduleBackend, resolveSessionReference, resolveSessionVisibility, resolveSettings, resolveSkillDirs, resolveSource, resolveTar, resolveWorkspace, restoreParts, revealScopedProvider, roleScopedProvider, roleSourceLabel, ruleCovers, ruleFromString, ruleToString, runCode, runCommand, sanitizeArgNames, sanitizeCommand, sanitizeFtsQuery, sanitizePath, sanitizeToolOutput, scanInstructions, scanPluginDir, scanSkillDirs, searchMarketplaces, setDisplayCurrency, setImportGate, setPluginEnabled, setTrustGate, settingValueChoices, settingValueKind, settingWriteApply, settingWriteLayers, settingWriteTargets, skillIndexDescription, skillIndexResidency, skillIndexStats, sniffMediaType, splitFrontmatter, staticToolProvider, stripArtifactData, substitutePluginRoot, suggestRuleFromApproval, systemOpenArgv, systemPromptSegments, toPosix, toolDefinitionTokens, toolMatches, toolTableTokens, totalTokens, traceSession, triggerPeriodMs, unescapeRuleContent, uninstallPlugin, unknownRoleSkills, unknownRoleTools, unloadedInstructionFiles, updateMarketplace, updatePlugin, usdToMicros, validateSchedule, validateTrigger, validateWindow, withGoalCompression, withGoalPrompt, workspaceDisplayPath, writeSettingValue };
|
|
21265
|
+
export { ABOUT_DESC_MAX_CHARS, ABOUT_README_MAX_CHARS, AGENT_ROLE_DIAG_MODULE, ARTIFACT_MAX_TOTAL_BYTES, ARTIFACT_RETENTION_DEFAULTS, ATTACHMENT_MAX_TOTAL_BYTES, ATTACHMENT_RETENTION_DEFAULTS, type AcquireResult, type AgentConfig, AgentLoop, type AgentProvider, type AgentSite, type AgentSiteRef, AppearanceStore, type AppendMessageInput, ApprovalCache, type ApprovalDecision, type ArtifactOpenRefusal, type ArtifactRetention, type AskQuestionDeps, type AttachmentRetention, BLOCKED_TOOLS, type BackendOptions, type BackendOutcome, type BackgroundTaskSource, type BaseOrigin, type BaseSlot, type BeginTurnInput, type BreakdownInput, BudgetGuard, type BudgetGuardOptions, type BudgetInfo, type BudgetLevel, type BudgetOptions, type BudgetStatus, BudgetStore, type BudgetStoreOptions, type BuildFireArgvInput, type BuildIndexOptions, CHECKPOINT_MAX_TOTAL_BYTES, CLAUDE_EVENT_NAMES, CLAUDE_TOOL_NAMES, CODE_MODE_LIMITS, CODE_MODE_SDK_TAG, CONFIG_KEYS, CURRENT_CONFIG_VERSION, type CachedApproval, type CachedDecision, type CheckpointCapture, type CheckpointFile, CheckpointManager, type CheckpointManagerOptions, type CheckpointManifest, CheckpointStore, type CheckpointStoreOptions, type CheckpointSummary, type ClaudeHooksParseOptions, type CodeModeLimits, type CodeRequest, type CodeResult, CodeSandbox, type CommandHookConfig, type CommandHookResult, type CommandLoadOutcome, type CommandLoadSummary, type CommandResult, type CommandRunner, type CompactionResult, type CompiledRules, type ComplianceDirSpec, type ComplianceDirsSummary, ComplianceEngine, type ComplianceEngineInput, type ComplianceGate, type ComplianceHit, type ComplianceRule, type ComplianceRuleSource, type ComplianceSettings, type ComplianceVerdict, type CompressConfig, type CompressResult, type ConfigMigration, type ConfigOrigins, ContextCompressor, type ContextEngine, type CreateScheduleInput, type CreateSessionInput, DEFAULT_COMPLIANCE_ACTIONS, DEFAULT_COMPLIANCE_SETTINGS, DEFAULT_COMPRESSION_THRESHOLD, DEFAULT_GOAL_MAX_ROUNDS, DEFAULT_MAX_HOLD_CHARS, type DelegateArgs, type DelegateConfig, DelegateManager, type DelegateTaskResult, type DiagnoseOptions, type DiscoverOutcome, type DiscoveredFile, type DoctorReport, type DraftParse, EMPTY_RULES, EPOCH_DISK_LEDGER, EpochConfigSchema, type ExpandOptions, type ExtractOutcome, FTS_TABLES, FTS_TRIGGERS, type FallbackEvent, type FileSlots, type FileSourceKind, type ForkInput, type FrontmatterParse, type FrontmatterSplit, type FtsHealth, type FtsReclaim, type FtsSpace, type FtsTableHealth, GOAL_BLOCK_CODES, type GateAxis, type GateVerdict, type GenerateInput, type GenerateOutput, type Goal, type GoalBlockReason, type GoalClear, type GoalPhase, type GoalPromptView, type GoalRefusal, type GoalRoundResult, GoalService, GoalStore, type GoalToolDeps, type GoalWrite, HEADLESS_AUDIT_CODES, type HeadlessPolicy, type HookConfigEntry, HookManager, type HookManagerOptions, type HookMatcher, type HookSourceKind, type HookSourceStatus, type HookSourcesOptions, type HookSourcesSummary, type HooksParseOutcome, type MemoryManager$1 as IMemoryManager, INSTRUCTION_BUDGET_CHARS, INSTRUCTION_FILES, type SessionManager$1 as ISessionManager, type SkillSystem$1 as ISkillSystem, ImageLoadError, type ImageSize, type ImportDecision, type ImportGate, type ImportGoal, type ImportMessage, type ImportNode, type ImportPartsResult, type ImportSessionInput, type ImportSessionMeta, type ImportSessionResult, type ImportSkipReason, type ImportTodo, ImportTrustStore, type InstallDependency, type InstallOptions, type InstallOutcome, type InstallPreview, type InstallStep, type InstructionScan, type InstructionSource, type IsolationReason, type IsolationReport, type JsonSchemaDocument, LAUNCHD_LABEL_PREFIX, LOCK_HEARTBEAT_MS, LOCK_STALE_MS, type LastOpenSession, LastOpenSessions, type LayerOutcome, type LayerScalars, type LayerStatus, type LearningContext, type LearningResult, type LearningSkipReason, type LexiconLoadOutcome, type LifecycleOutcome, type ListCandidatesInput, type ListSessionsInput, type ListSessionsOutput, type LoadCommandsOptions, type LoadConfigOptions, type LoadKeybindingsOptions, type LoadKeybindingsResult, type LoadRolesOptions, type LoadedPlugin, type LockHolder, MARKETPLACE_DISPLAY_FIELDS, MARKETPLACE_FILE, MAX_AUDIT_ENTRIES, MAX_COMMAND_DEPTH, MAX_GOAL_MAX_ROUNDS, MAX_IMPORT_DEPTH, MAX_LAST_OPEN_SESSIONS, MAX_OBJECTIVE_CHARS, MAX_REASON_CHARS, MAX_RECENT_WORKSPACES, MODEL_GIVE_UP_THRESHOLD, MULTIMODAL_DEFAULTS, type ManagedPolicy, ManagedPolicyError, type ManagedSettings, ManagedSettingsSchema, type MarketplaceCatalog, type MarketplaceCategory, type MarketplaceDisplay, type MarketplaceDisplayField, type MarketplaceEntry, type MarketplaceOutcome, type MarketplaceRecord, type MarketplaceStatus, type MemoryConfig, type MemoryEntry, type MemoryImportRecord, type MemoryImportResult, MemoryManager, type MemoryManagerOptions, type MemoryNotice, type MemoryRemoval, type MemorySearchResult, type MemoryTarget, type MemoryWriteResult, type MentionPart, type MentionResolution, type Message, type MessageHit, type MessageRecord, type MessageSurface, type ModelCapability, ModelFailureTracker, type ModelMetaEntry, type ModelPricing, type MultimodalPolicy, NOMINAL_TOTAL_BYTES, NO_REVEALED_TOOLS, type NonInteractiveProbe, type OsTaskSnapshot, type OutputGuard, PACK_EXCLUDES, PACK_MAX_BYTES, PACK_MAX_FILES, PERMISSION_AUDIT_CODES, PLUGIN_ICON_MAX_BYTES, PLUGIN_LAYOUT, PLUGIN_MANIFEST_FILE, PLUGIN_MANIFEST_KEYS, PLUGIN_NAME_PATTERN, PLUGIN_ROOT_ENV, PLUGIN_ROOT_TOKEN, PLUGIN_VISIBILITY, POLICY_DECISIONS, PROBE_VERSION, PROJECT_AGENTS_SUBDIR, PROVIDER_NO_CREDENTIAL, type PackFile, type PackLimits, type PackOutcome, type PackPlan, type PackPlanOutcome, type PermissionAuditCode, type PermissionAuditEntry, type PermissionAuditOutcome, type PermissionAuditScope, type PermissionAuditSnapshot, PermissionManager, type PersistFailureKind, type PersistedBudget, type PersistedPart, type PlanApprovalFn, type PlanEnterResult, type PlanModeDeps, PlanModeState, type PlanSettlement, type PluginAbout, type PluginArtifacts, type PluginAuthor, PluginAuthorSchema, type PluginCommandDir, type PluginCounts, type PluginDoc, type PluginHookFile, type PluginInventory, type PluginLoadOptions, type PluginManifest, type PluginPathRef, type PluginRecord, type PluginSettingsFile, type PluginSourceType, type PluginStateReadOutcome, PluginStore, type PluginVisibility, type PolicyDirSpec, type PolicyDirsSummary, type PolicyLoadOutcome, type PolicyRule, PolicyRuleSchema, type PricingAt, type PricingOverride, type ProjectContext, type ProjectExtensionInventory, ProviderError, ProviderRouter, type ProviderStreamChunk, type ProviderToolCall$1 as ProviderToolCall, type ProviderWarning, type PruneResult, type QuestionAskFn, RECORDING_KEEP_RUNS, RECORDING_MAX_BYTES, ROLE_FRONTMATTER_SCHEMA, RUN_CODE_TOOL, type ReadMessagesInput, type ReadMessagesOutput, type RecentWorkspace, RecentWorkspaces, type RecordRunInput, type RecorderOptions, type RecoveryAction, type RegisterInput, type RegisterOutcome, type RegistrarOptions, type RegistrationPatch, type RepairOutcome, type ResolveMentionsOptions, type ResolveReferenceInput, type ResolveSettingsOptions, type ResolvedCompression, type ResolvedReference, type ResolvedSource, type ResponseFormat, type RestorePartsOptions, type RewindAction, type RewindDrift, type RewindFilePlan, type RewindOptions, type RewindOutcome, type RewindPreview, type RoleCreateFailure, type RoleCreateInput, type RoleCreateOptions, type RoleCreateOutcome, type RoleLoadOutcome, type RoleLoadSummary, type RoleMergeNotice, type RoleMergeResult, type RoleRemoveFailure, type RoleRemoveOptions, type RoleRemoveOutcome, type RoleScope, type RuleMatch, type RuleSuggestion, type RuleVerdict, type RunCodeFailure, type RunCodeInput, type RunCodeOutcome, type RunCodeToolDeps, type RunEstimateInput, type RunInput, type RunResult, type RunningSchedule, SANDBOX_COVERS, SANDBOX_EXCLUDES, SCALAR_KEYS, SCHEDULE_DEFAULTS, SCHEDULE_DEFAULT_ALLOWLIST, SCHEDULE_FORM_BUDGET_USD, SCHEDULE_ISSUE_CODES, SCHTASKS_FOLDER, SESSION_MESSAGES_READ_TOOL, SESSION_MESSAGES_SEARCH_TOOL, SESSION_QUERY_TOOLS, SESSION_SEARCH_TOOL, SESSION_TRACE_TOOL, SETTINGS_LAYER_ORDER, SETTING_WRITE_KEYS, SETTING_WRITE_LAYERS, SKILL_ASSET_DIRS, SKILL_CREATE_TOOL, SKILL_EDIT_TOOL, SKILL_FILE, SKILL_PATCH_TOOL, SKILL_VIEW_TOOL, SKILL_WRITE_FILE_TOOL, SLASH_COMMANDS_DIAG_MODULE, type ScalarKey, type ScanInstructionsOptions, type ScheduleArgvRefusal, type ScheduleArgvResult, type ScheduleArgvWarning, type ScheduleBackend, type ScheduleCliEntry, type ScheduleDraftDeps, type ScheduleDrift, type ScheduleDriftKind, type ScheduleImportInput, type ScheduleInstallForm, type ScheduleIssue, type ScheduleIssueCode, type ScheduleLock, ScheduleRecorder, ScheduleRegistrar, ScheduleStore, type ScheduleValidation, type SchemaExport, type SearchHit, type SearchInput, type SearchMessagesInput, type SearchMessagesOutput, type SearchOutput, type SearchSessionsInput, type SelectionDeps, type SelfConnector, type SelfIndexInput, type SelfSettings, type Session, type SessionCandidate, type SessionHit, SessionManager, type SessionMentionDeps, type SessionMeta, SessionQueries, SessionReferences, type SessionSearchDeps, type SessionStats, type SessionSurface, type SessionTrace, type SessionVisibility, type SessionVisibilityInput, type SettingApply, type SettingApplyFacts, type SettingChain, type SettingFutile, type SettingLayer, type SettingStep, type SettingValue, type SettingValueKind, type SettingWriteFailure, type SettingWriteKey, type SettingWriteLayer, type SettingWriteOutcome, type SettingWriteRequest, type SettingWriteTarget, type SettingWriteTargetsOptions, type SettingsFile, SettingsFileError, SettingsFileSchema, type SettingsLayer, type SettingsResolution, type ShadowFinding, type ShadowKind, type Skill, type SkillDirSource, type SkillDirSpec, type SkillDirsSummary, type SkillImportConflict, type SkillImportDone, type SkillImportEntry, type SkillImportFailure, type SkillImportForm, type SkillImportOptions, type SkillImportPreview, type SkillImportResult, type SkillIndexEntry, type SkillIndexOptions, type SkillIndexResidency, type SkillIndexStats, SkillLearner, type SkillLearningProvider, type SkillMeta, type SkillStats, SkillSystem, type SkillSystemOptions, type SkillViewDeps, type SkillWriteDeps, type SteerSource, type StoredAppearance, type SubAgentRunner, type SubTask, type SubToolCaller, type SummarizeOutput, type SurfaceMessage, type SystemPromptParams, type SystemPromptSegments, TOOL_SEARCH_TOOL, TaskNoticeTracker, type TodoItem, type ToolCall, type ToolConflict, type ToolGate, type ToolNameFidelity, type ToolNameLookup, ToolRegistry, type ToolRevealState, type ToolScope, type ToolSearchDeps, type ToolTableCost, type TraceInput, type TraceNode, TrackerDB, type TrustDecision, type TrustGate, type TrustGateOptions, TrustManager, type TurnRecord, type TurnTiming, type UpdateScheduleInput, type UtilityModelInfo, type ValidateScheduleInput, type VersionCheck, Workspace, type WorkspaceFiles, type WorkspaceIssue, type WorkspaceIssueKind, acquireScheduleLock, addMarketplace, addUsage, admitArtifact, admitArtifacts, affectedPaths, approvalEntryFor, approvalRootFor, artifactLaunchArgv, artifactOpenRefusal, assertLevelAllowed, blockedRoleTools, buildContextBreakdown, buildFireArgv, buildFtsMatchQuery, buildSchemaExports, buildSystemPrompt, buildTrigramMatchQuery, builtinRoles, checkEpochVersion, checkFtsHealth, checkShadowing, classifyPersistFailure, classifyProviderError, clearModelCache, coalesceRecording, codeModeWorkerPath, commandNameFromRelPath, compileRuleLists, compressionOptions, computeCost, computeCostMicros, computeExecHash, countRules, createAllowAllGate, createAllowAllImportGate, createAskQuestionTool, createCodeExecTool, createDelegateTool, createDenyAllGate, createDenyAllImportGate, createGoalTool, createImportGate, createMemoryTool, createPlanModeTools, createRoleFile, createRoleScope, createRunCodeTool, createScheduleDraftTool, createSessionMessagesReadTool, createSessionMessagesSearchTool, createSessionSearchTool, createSessionSearchTools, createSessionTraceTool, createSkillViewTool, createSkillWriteTools, createTodoTool, createToolRevealState, createToolScope, createToolSearchTool, createTrustGate, currentEpochVersion, decideImport, decideTrust, defaultConfig, defaultModelOf, describeArtifactRefusal, describeBackgroundTask, describeHeadlessPolicy, describeIsolation, describeJsonError, diagnoseSchedules, discoverMarkdown, discoverModels, discoverProject, displayAllows, displayCurrency, draftCommandLine, draftWidening, escapeRuleContent, estimateImageTokens, estimateRunTokens, estimateTokens, evaluateSelection, expandCommand, expandImports, explainSetting, extractArchive, findInstructionFiles, findProjectInstructions, findRole, formatBytes, formatSkillIndex, formatUsd, gateForTool, getCapability, getConfigIssues, getConfigOrigins, getImportGate, getTrustGate, grantedPathsFor, hasDedicatedExecContent, hasExecTierContent, hasPromptCaching, hasProviderCredentials, hasReadTierContent, imageFromBase64, imageFromPath, imagePartTokens, importParts, importSkills, installPlugin, instructionDirs, instructionNotices, intervalSlots, inventoryProjectExtensions, inventoryTotal, isBlockCode, isCodeModeDeferred, isEmptyRules, isGoalPhase, isNonInteractive, isReadOnlySubCall, isSettingWriteLayer, isTransientPersistFailure, isValidInterval, isValidPluginName, isWithinWindow, isWritableSettingKey, labelSlug, layerRank, listRunningSchedules, listSessionCandidates, listWorkspaceFiles, loadCommandDefinitions, loadCommandFile, loadCommands, loadConfig, loadHookSources, loadKeybindings, loadLexiconDir, loadLexiconFiles, loadPlugins, loadPolicyFiles, loadPolicyRules, loadRoleDefinitions, loadRoleDir, loadedImports, localDateString, managedSwitchNotes, mapClaudeToolName, mapEpochToolName, mapOperationType, matchPreauthorization, matchRuleLists, matchesHook, mentionsPluginRoot, mergeHeadlessPolicy, mergeRoles, mergeSchedulePatch, microsToUsd, modelListCandidates, needsAllowlist, nextFallbackModel, nextRunAt, noConfigOrigins, noManagedPolicy, noPlugins, normalizeTrigger, openArtifact, originOf, packFileName, packPlugin, parseClaudeSettingsHooks, parseClock, parseDate, parseFrontmatter, parseHooksConfig, parseHooksConfigVerbose, parseImportLine, parseModelList, parseRoleDefinition, parseScheduleDraft, parseSkillFrontmatter, parseTrigger, pendingImageTokens, persistFailureCode, persistParts, persistToolResults, persistedUsage, planPack, previewSkillImport, pricingFor, projectEntryForDisplay, pruneArtifacts, pruneAttachments, pruneRecordings, pruneSchedules, readImageSize, readMarketplaces, readPluginAbout, readPluginIcon, readPluginManifest, readPluginRecords, readProviderKeyEnv, readRecording, readSessionSurface, reclaimFtsSpace, redactLine, refreshOpenRouterMetadata, removeMarketplace, removeRecordings, removeRoleFile, removeSessionArtifacts, removeSessionAttachments, renderImportTree, renderProjectContext, renderSdkDeclaration, renderSelfIndex, repairSchedules, resolveArtifactRetention, resolveCodeModeWorker, resolveComplianceDirs, resolveEntrySource, resolveInWorkspace, resolveMarketplaceRef, resolveMentions, resolveMultimodalPolicy, resolvePolicyDirs, resolvePricingAt, resolveProjectRoot, resolveScheduleBackend, resolveSessionReference, resolveSessionVisibility, resolveSettings, resolveSkillDirs, resolveSource, resolveTar, resolveWorkspace, restoreParts, revealScopedProvider, roleScopedProvider, roleSourceLabel, ruleCovers, ruleFromString, ruleToString, runCode, runCommand, sanitizeArgNames, sanitizeCommand, sanitizeFtsQuery, sanitizePath, sanitizeToolOutput, scanInstructions, scanPluginDir, scanSkillDirs, searchMarketplaces, setDisplayCurrency, setImportGate, setPluginEnabled, setTrustGate, settingValueChoices, settingValueKind, settingWriteApply, settingWriteLayers, settingWriteTargets, skillIndexDescription, skillIndexResidency, skillIndexStats, sniffMediaType, splitFrontmatter, staticToolProvider, stripArtifactData, substitutePluginRoot, suggestRuleFromApproval, systemOpenArgv, systemPromptSegments, toPosix, toolDefinitionTokens, toolMatches, toolTableTokens, totalTokens, traceSession, triggerPeriodMs, unescapeRuleContent, uninstallPlugin, unknownRoleSkills, unknownRoleTools, unloadedInstructionFiles, updateMarketplace, updatePlugin, usdToMicros, validateSchedule, validateTrigger, validateWindow, withGoalCompression, withGoalPrompt, workspaceDisplayPath, writeSettingValue };
|