@sema-agent/sdk 17.0.0 → 17.1.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/README.md +70 -1
- package/dist/errors.d.ts +13 -2
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +13 -2
- package/dist/errors.js.map +1 -1
- package/dist/health.d.ts +10 -1
- package/dist/health.d.ts.map +1 -1
- package/dist/health.js.map +1 -1
- package/dist/resources/sessions.d.ts +4 -1
- package/dist/resources/sessions.d.ts.map +1 -1
- package/dist/resources/sessions.js +4 -1
- package/dist/resources/sessions.js.map +1 -1
- package/dist/settings.d.ts +7 -8
- package/dist/settings.d.ts.map +1 -1
- package/dist/settings.js +1 -1
- package/dist/transport.d.ts +3 -1
- package/dist/transport.d.ts.map +1 -1
- package/dist/transport.js +4 -1
- package/dist/transport.js.map +1 -1
- package/dist/types.d.ts +50 -24
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/openapi.yaml +81 -25
- package/package.json +1 -1
package/dist/settings.d.ts
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* | settings key | core seam (落点) | source |
|
|
15
15
|
* |-------------------------|--------------------------------------------------------------------|-----------------------------------------|
|
|
16
16
|
* | `permissions` | `SessionPolicyStore` → {@link SessionPermissionRules} (tighten-only)| core session-policy-store.ts:26 |
|
|
17
|
-
* | `permissions.defaultMode` (permissionMode) | adapter **derive** → `toolPolicy`/`onAsk`/`handsReadOnly`(TOB-fleet server's
|
|
17
|
+
* | `permissions.defaultMode` (permissionMode) | adapter **derive** → `toolPolicy`/`onAsk`/`handsReadOnly`(TOB-fleet server's accepted wire values, same as {@link TaskRequest.permissionMode}: default/acceptEdits/plan/bypassPermissions/auto/dontAsk — `dontAsk` from server >=7.119.0, see {@link Capabilities.permissionModes}; server fresh-submit 400s an unknown word, fail-loud — TOC-local's own accepted set differs, see `:75` doc) | core v2-design §6.4 |
|
|
18
18
|
* | `hooks` | `RunnerDeps.hooks` = core `Hooks{preToolUse/postToolUse/userPromptSubmit}` (the shell-hook runner maps exit-code→`PreToolUseResult`) | core hooks.ts:22 / hooks.d.ts:19 |
|
|
19
19
|
* | `env` | `NodeExecutionEnv({ shellEnv, inheritEnv })` (secret-scrub default) | core harness/env/nodejs.ts |
|
|
20
20
|
* | `model` / `outputStyle` | `TaskSpec.model` / `RoleSpec.systemPrompt` / `appendSystemPrompt` | core types.ts |
|
|
@@ -122,9 +122,9 @@ export interface SettingsPermissions {
|
|
|
122
122
|
ask?: string[];
|
|
123
123
|
/** Extra directories added to the permission/fs scope (= CC `--add-dir`). posix-normalized before use. */
|
|
124
124
|
additionalDirectories?: string[];
|
|
125
|
-
/** 🔴 CC-parity permission MODE —— TS 类型层是 TOB-fleet server
|
|
126
|
-
* {@link TaskRequest.permissionMode}(types.ts)
|
|
127
|
-
*
|
|
125
|
+
/** 🔴 CC-parity permission MODE —— TS 类型层是 TOB-fleet server 受理面的闭集,与顶层
|
|
126
|
+
* {@link TaskRequest.permissionMode}(types.ts)同一只六值(server ≥7.119.0;≤7.118.x 只收前五值,`dontAsk` 在那些版本上 fresh 提交 400 ——
|
|
127
|
+
* **见位才发**:读 {@link Capabilities.permissionModes})。⚠️ 这些值是 **TOB-fleet** 的受理面,不是 TOC-local 的受理面(两者不同,见
|
|
128
128
|
* 本字段尾注)——本类型是两 wiring 共享的 TS 形状,但运行时校验各走各的路。The adapter DERIVES
|
|
129
129
|
* this onto the core substrate (no engine `permissionMode` field): `default`=gate 非豁免路径写(toolPolicy+onAsk
|
|
130
130
|
* ask-list;scratchpad 目录/已记住的会话豁免不问,非「逐次无一例外问」)· `acceptEdits`=cwd 内自动批准 Edit/Write、
|
|
@@ -147,10 +147,9 @@ export interface SettingsPermissions {
|
|
|
147
147
|
* `launchMode ?? fileMode(本键) ?? "default"` 直接读到的事实:两者都缺席时 derivedMode **落到显式字面量
|
|
148
148
|
* `"default"`**,不是「未定义」;由此得出的实际门形(是否问人)由壳侧 `modeToolPolicy` 独立裁决,不在本
|
|
149
149
|
* SDK 类型的断言范围内。⚠️ 值域也不完全同源:TOC-local 的 file 层校验(sema-cli `resolver.ts` B4 规则)
|
|
150
|
-
* **拒收** `bypassPermissions`(仅许 launch-flag 携带,settings.json 里出现即拒)
|
|
151
|
-
*
|
|
152
|
-
|
|
153
|
-
defaultMode?: "default" | "acceptEdits" | "plan" | "bypassPermissions" | "auto";
|
|
150
|
+
* **拒收** `bypassPermissions`(仅许 launch-flag 携带,settings.json 里出现即拒)。本联合是 TOB-fleet
|
|
151
|
+
* bundle 的受理面;TOC-local 与之的完整对表是明确挂起的跨仓项([2759]),本次不裁。 */
|
|
152
|
+
defaultMode?: "default" | "acceptEdits" | "plan" | "bypassPermissions" | "auto" | "dontAsk";
|
|
154
153
|
/** MANAGED kill-switch (CC enterprise key): MANAGED 层 enforce 后即便给 launch-flag 也拒 bypass(§6.4 admin ceiling)。 */
|
|
155
154
|
disableBypassPermissionsMode?: boolean;
|
|
156
155
|
/** MANAGED kill-switch: 禁 `acceptEdits` 自动批准模式(同 disableBypassPermissionsMode 机制)。 */
|
package/dist/settings.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,8GAA8G;AAC9G,MAAM,WAAW,mBAAmB;IAClC,sCAAsC;IACtC,IAAI,EAAE,SAAS,CAAC;IAChB;;wJAEoJ;IACpJ,OAAO,EAAE,MAAM,CAAC;IAChB,qFAAqF;IACrF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iHAAiH;IACjH,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;CACtB;AAED,gFAAgF;AAChF,MAAM,WAAW,mBAAmB;IAClC;;;;;;;;;;;;;;;;;;;;;;;;gEAwB4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2GAA2G;IAC3G,KAAK,EAAE,mBAAmB,EAAE,CAAC;CAC9B;AAED;;;;yEAIyE;AACzE,MAAM,WAAW,aAAa;IAC5B;;;;;;mIAM+H;IAC/H,UAAU,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACnC,gIAAgI;IAChI,WAAW,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACpC,iIAAiI;IACjI,gBAAgB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACzC,oDAAoD;IACpD,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,EAAE,GAAG,SAAS,CAAC;CACpD;AAED;;;0LAG0L;AAC1L,MAAM,WAAW,mBAAmB;IAClC;;;;;;;;;;;;;;;;;;;;;;oLAsBgL;IAChL,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,4CAA4C;IAC5C,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,0GAA0G;IAC1G,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC
|
|
1
|
+
{"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../src/settings.ts"],"names":[],"mappings":"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"}
|
package/dist/settings.js
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* | settings key | core seam (落点) | source |
|
|
15
15
|
* |-------------------------|--------------------------------------------------------------------|-----------------------------------------|
|
|
16
16
|
* | `permissions` | `SessionPolicyStore` → {@link SessionPermissionRules} (tighten-only)| core session-policy-store.ts:26 |
|
|
17
|
-
* | `permissions.defaultMode` (permissionMode) | adapter **derive** → `toolPolicy`/`onAsk`/`handsReadOnly`(TOB-fleet server's
|
|
17
|
+
* | `permissions.defaultMode` (permissionMode) | adapter **derive** → `toolPolicy`/`onAsk`/`handsReadOnly`(TOB-fleet server's accepted wire values, same as {@link TaskRequest.permissionMode}: default/acceptEdits/plan/bypassPermissions/auto/dontAsk — `dontAsk` from server >=7.119.0, see {@link Capabilities.permissionModes}; server fresh-submit 400s an unknown word, fail-loud — TOC-local's own accepted set differs, see `:75` doc) | core v2-design §6.4 |
|
|
18
18
|
* | `hooks` | `RunnerDeps.hooks` = core `Hooks{preToolUse/postToolUse/userPromptSubmit}` (the shell-hook runner maps exit-code→`PreToolUseResult`) | core hooks.ts:22 / hooks.d.ts:19 |
|
|
19
19
|
* | `env` | `NodeExecutionEnv({ shellEnv, inheritEnv })` (secret-scrub default) | core harness/env/nodejs.ts |
|
|
20
20
|
* | `model` / `outputStyle` | `TaskSpec.model` / `RoleSpec.systemPrompt` / `appendSystemPrompt` | core types.ts |
|
package/dist/transport.d.ts
CHANGED
|
@@ -49,10 +49,12 @@ export declare const RETRYABLE_STATUS: Set<number>;
|
|
|
49
49
|
* `POST /v1/tasks` 零工作时)—— 部署声明的工具超过名册的界,「调用方改请求绕不开、原样重试不改判,只有部署方改声明才行」;
|
|
50
50
|
* · `config.tool_schema_bound`(503,K-32 扩项 / server ≥7.106.0,core 7.35.0 #765)—— 工具的 `parameters` schema 超过名册行的键界;契约附录 A
|
|
51
51
|
* 该行「同族同档」= 上一条名册超界三码的族与档(core 包根 `TOOL_DECLARATION_CODES` 的成员;7.105.0 及以前同步腿是 200 + failed 体);
|
|
52
|
+
* · `state.scenario_assignment_unknown`(503,server ≥7.119.0)—— 这条 run 的场景指派悬空(中心指派的场景名本部署没有),拒在一切副作用与计费之前;server 契约明写
|
|
53
|
+
* 「不带 `Retry-After`:修好之前重发没有意义」—— 只有中心改指派 / 部署把场景加回册才行,与名册超界几码「只有部署方改声明才行」同档(同一条规则的又一员,不是第二条规则);
|
|
52
54
|
* · 以类(同一条规则,server 7.104.0 之前就在的两码,K-24 一并收;偏离任务书的射程 —— 任务书只点名 `corrupt_session`,理由见收车档):`corrupt`(500,会话规则店读不出它自己的字节 ——「不是 503:
|
|
53
55
|
* 重试改不了判」)与 `internal.memory_control_plane_corrupt`(500,记忆控制面 fail-closed 拒答 —— 两义都不是「稍后重试」:⑴ 什么都
|
|
54
56
|
* 没发生、要隔离坏字节,⑵ 修好文件系统后用同一个 `requestId` 重放)。
|
|
55
|
-
* 表外的 5xx 码照旧按状态重试(`internal.error` / `state.*` / `memory.admission_required` / 🔴 `fleet.lease_unavailable`(503,server ≥7.106.0 /
|
|
57
|
+
* 表外的 5xx 码照旧按状态重试(`internal.error` / 其余 `state.*`(本表现有 `state.scenario_assignment_unknown` 一员)/ `memory.admission_required` / 🔴 `fleet.lease_unavailable`(503,server ≥7.106.0 /
|
|
56
58
|
* S-866 ③:租约连接级失败而部署 fail-closed —— 零计费、「下一次提交就是下一次谈判」,契约明写瞬时可重试)/ 无码 503 …)。本表只管**本包自己的**
|
|
57
59
|
* 退避臂:抛出去的 typed 错误不变(`corrupt_session` 仍是带码 `APIError`,名册三码仍落 503 状态尾的 `ServiceStateError`),调用方要不要
|
|
58
60
|
* 事后再试(例如运维修好存档之后)是调用方的决定。
|
package/dist/transport.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAgBA;;sGAEsG;AACtG,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,YAAY,CAAC,EAAE,MAAM,KAAK,KAAK,CAAC;AAE1F,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,KAAK,CAAC;IACxB;;;;;4GAKwG;IACxG,YAAY,EAAE,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzE;;6GAEyG;IACzG,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB;;;2BAGuB;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;;;;;;wEAWwE;AACxE,eAAO,MAAM,gBAAgB,aAA0C,CAAC;AAExE
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
|
package/dist/transport.js
CHANGED
|
@@ -38,10 +38,12 @@ export const RETRYABLE_STATUS = new Set([408, 429, 500, 502, 503, 504]);
|
|
|
38
38
|
* `POST /v1/tasks` 零工作时)—— 部署声明的工具超过名册的界,「调用方改请求绕不开、原样重试不改判,只有部署方改声明才行」;
|
|
39
39
|
* · `config.tool_schema_bound`(503,K-32 扩项 / server ≥7.106.0,core 7.35.0 #765)—— 工具的 `parameters` schema 超过名册行的键界;契约附录 A
|
|
40
40
|
* 该行「同族同档」= 上一条名册超界三码的族与档(core 包根 `TOOL_DECLARATION_CODES` 的成员;7.105.0 及以前同步腿是 200 + failed 体);
|
|
41
|
+
* · `state.scenario_assignment_unknown`(503,server ≥7.119.0)—— 这条 run 的场景指派悬空(中心指派的场景名本部署没有),拒在一切副作用与计费之前;server 契约明写
|
|
42
|
+
* 「不带 `Retry-After`:修好之前重发没有意义」—— 只有中心改指派 / 部署把场景加回册才行,与名册超界几码「只有部署方改声明才行」同档(同一条规则的又一员,不是第二条规则);
|
|
41
43
|
* · 以类(同一条规则,server 7.104.0 之前就在的两码,K-24 一并收;偏离任务书的射程 —— 任务书只点名 `corrupt_session`,理由见收车档):`corrupt`(500,会话规则店读不出它自己的字节 ——「不是 503:
|
|
42
44
|
* 重试改不了判」)与 `internal.memory_control_plane_corrupt`(500,记忆控制面 fail-closed 拒答 —— 两义都不是「稍后重试」:⑴ 什么都
|
|
43
45
|
* 没发生、要隔离坏字节,⑵ 修好文件系统后用同一个 `requestId` 重放)。
|
|
44
|
-
* 表外的 5xx 码照旧按状态重试(`internal.error` / `state.*` / `memory.admission_required` / 🔴 `fleet.lease_unavailable`(503,server ≥7.106.0 /
|
|
46
|
+
* 表外的 5xx 码照旧按状态重试(`internal.error` / 其余 `state.*`(本表现有 `state.scenario_assignment_unknown` 一员)/ `memory.admission_required` / 🔴 `fleet.lease_unavailable`(503,server ≥7.106.0 /
|
|
45
47
|
* S-866 ③:租约连接级失败而部署 fail-closed —— 零计费、「下一次提交就是下一次谈判」,契约明写瞬时可重试)/ 无码 503 …)。本表只管**本包自己的**
|
|
46
48
|
* 退避臂:抛出去的 typed 错误不变(`corrupt_session` 仍是带码 `APIError`,名册三码仍落 503 状态尾的 `ServiceStateError`),调用方要不要
|
|
47
49
|
* 事后再试(例如运维修好存档之后)是调用方的决定。
|
|
@@ -56,6 +58,7 @@ export const NON_RETRYABLE_CODES = new Set([
|
|
|
56
58
|
"config.tool_contract_too_long",
|
|
57
59
|
"config.tool_roster_bound",
|
|
58
60
|
"config.tool_schema_bound",
|
|
61
|
+
"state.scenario_assignment_unknown",
|
|
59
62
|
"corrupt",
|
|
60
63
|
"internal.memory_control_plane_corrupt",
|
|
61
64
|
]);
|
package/dist/transport.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AA8BzD;;;;;;;;;;;wEAWwE;AACxE,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAExE
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -598,14 +598,17 @@ export interface TaskRequest {
|
|
|
598
598
|
* 判不出保护目标的写仍拒(`deniedBy:"mode"`)。
|
|
599
599
|
* · `auto` 武装 ⟺ `permissionMode === "auto"` ∧ 部署挂了分类器席 ∧ `caps.autoMode !== false`(单极;答旧极性的那一位 server 7.107.0 起删,
|
|
600
600
|
* 读 `capabilities.permissionModeAuto.armed` / `reason`)。请求的模式没生效 ⇒ 流上一帧 `engine_notice` `config.permission_mode_unavailable`(`effective` 恒 `default`)。
|
|
601
|
-
* ·
|
|
601
|
+
* · 词表:请求面**六词** = {@link PermissionMode}(server ≥7.119.0 起 `dontAsk` 受理、原样过境引擎:引擎按模式拒要问的调用 —— 零卡、`tool_end.gate.disposition`
|
|
602
|
+
* `{ kind: "denied", deniedBy: "mode", mode: "dontAsk" }`,run 照常收束;它不比 `default` 放得更宽。**例外**:一只 PreToolUse hook 自己的问、且这只问的类集里没有别的类托底时,引擎仍把它交给人
|
|
603
|
+
* 〔引擎 `arbitrateByMode`:`hook` 类且该行没有 `hookAskFloor`〕—— 「拒要问的调用」不含这一条)。**见位才发**:先读 {@link Capabilities.permissionModes}(位缺席 = 老 server,
|
|
604
|
+
* 请求面只收五词,`dontAsk` fresh 提交 400 `request.field_invalid`;≤7.118.x 的续跑重放把存下的 `dontAsk` 折成 `default`)。顶层键、`settings.permissions.defaultMode`、
|
|
605
|
+
* `GET /v1/capabilities?permissionMode=` 三处读同一只闭集。词表外的值照旧 400 `request.field_invalid`,句里的词表按**这台 server 自己的**列出(比对码,别比对整句)。
|
|
602
606
|
* ⚠️ 下文「omit ⇒ NO mode-derived gate」「`auto` 与请求词无关、按 principal 授权武装」「bypass adds NO mode-derived ask gate」三句只对 ≤7.105.0 成立。
|
|
603
607
|
*
|
|
604
|
-
* 🔴 PERMISSION MODE INTENT — the TOB-fleet server's
|
|
605
|
-
* `acceptEdits` | `bypassPermissions` | `auto` (
|
|
606
|
-
*
|
|
607
|
-
*
|
|
608
|
-
* internal set is wider (e.g. `dontAsk`); this is specifically what THIS wire's closed submit-gate accepts.
|
|
608
|
+
* 🔴 PERMISSION MODE INTENT — the TOB-fleet server's accepted wire values: `default` | `plan` |
|
|
609
|
+
* `acceptEdits` | `bypassPermissions` | `auto` | `dontAsk` (server >= 7.119.0; the engine's whole mode vocabulary, published as
|
|
610
|
+
* {@link Capabilities.permissionModes}). A server <= 7.118.x accepts the first five only — `dontAsk` there is a 400 on a fresh submit.
|
|
611
|
+
* This is what THIS wire's closed submit-gate accepts.
|
|
609
612
|
* The shell/web frontend carries
|
|
610
613
|
* the RAW mode; the SERVICE INTERPRETS it (axis-aware, tighten-only vs the deployment/operator baseline):
|
|
611
614
|
* `plan` ⇒ mount the first-party `present_plan` tool (core `TaskSpec.enablePlanMode`, CC ExitPlanMode parity) +
|
|
@@ -618,7 +621,7 @@ export interface TaskRequest {
|
|
|
618
621
|
* gate-policy for `auto` as for `default` (identical branch, server task-settings.ts) — sending `auto` is NOT
|
|
619
622
|
* itself what arms core's separate auto-mode classifier; that classifier is armed purely by the PRINCIPAL's
|
|
620
623
|
* entitlement (`runtimeCaps.autoMode === true` AND a deployment `deps.autoMode` wiring), independent of which
|
|
621
|
-
* of these
|
|
624
|
+
* of these words the request sends — an entitled principal's `default` request is screened too, and a
|
|
622
625
|
* non-entitled principal's `auto` request behaves as plain `default`; `bypassPermissions`
|
|
623
626
|
* is HONORED as a gate-shape choice that adds NO mode-derived ask gate — it is **not** a loosen: the
|
|
624
627
|
* deployment/operator baseline (deny/ask rules) still folds in deny-wins on top (`tightenTaskSpec`), so bypass
|
|
@@ -633,7 +636,7 @@ export interface TaskRequest {
|
|
|
633
636
|
* gate at all" (the SAME posture as `bypassPermissions`) is true only when NEITHER carrier supplies a mode. A
|
|
634
637
|
* caller that wants the manual-ask posture must send `"default"` on at least one carrier — omitting both is
|
|
635
638
|
* NOT equivalent to sending an explicit `"default"` on either. */
|
|
636
|
-
permissionMode?:
|
|
639
|
+
permissionMode?: PermissionMode;
|
|
637
640
|
/** 🔴 **READ 容纳面(`readFace` / READ deny 表)不在这条请求面上** —— 2026-08-16 亲读 server 7.25.0
|
|
638
641
|
* 实况定界(不是「SDK 还没跟上」,别照着 core 的 `TaskSpec.readFace` 在这里手拼一个键):
|
|
639
642
|
* · **接收面 = 部署席,单腿 env**:`READ_FACE`(`open`|`roots`,坏词启动期响亮拒)/ `READ_DENY_PATTERNS`
|
|
@@ -2421,19 +2424,20 @@ export type DeniedBy = "policy" | "hook" | "org" | "persisted_rule" | "classifie
|
|
|
2421
2424
|
/**
|
|
2422
2425
|
* 权限模式词(core 7.34.0 `PERMISSION_MODES`,六词;K-32 扩项 / server ≥7.106.0 起上 wire 的门记录位 {@link ModeRelease.mode} 用它)。
|
|
2423
2426
|
* 🔴 **在门记录这一面是真闭集**:server `dist/trace/project.js` 的 `modeLedgerDefect` 按 core `isPermissionMode` 筛,出集 ⇒ 整条 `gate` 不上帧
|
|
2424
|
-
* (与 {@link DeniedBy} 同一条纪律)
|
|
2425
|
-
*
|
|
2427
|
+
* (与 {@link DeniedBy} 同一条纪律)。请求面({@link TaskRequest.permissionMode})从 server 7.119.0 起收**同一只六词**(先读 {@link Capabilities.permissionModes});
|
|
2428
|
+
* ≤7.118.x 的请求面只收五词(`dontAsk` fresh 提交 400 `request.field_invalid`)—— 但它在那些版本上照样可能出现在门记录上
|
|
2429
|
+
* (例:部署旋钮 `UNATTENDED_PERMISSION_MODE=dontAsk` 的无人值守腿)。
|
|
2426
2430
|
*/
|
|
2427
2431
|
export type PermissionMode = "default" | "acceptEdits" | "plan" | "auto" | "bypassPermissions" | "dontAsk";
|
|
2428
2432
|
/**
|
|
2429
|
-
* 一只问**属于哪一类**(core `ASK_CLASSES`:7.34.0 铸二十词,core 7.39.0 起 `shell_floor` 入册 ⇒ 二十一词,core 7.40.0 起 `unstated` 入册 ⇒ 二十二词,core 7.41.0 起 `requires_user_interaction` 入册 ⇒ 二十三词,core 7.43.0 起 `classifier_no_ruling` 入册 ⇒
|
|
2433
|
+
* 一只问**属于哪一类**(core `ASK_CLASSES`:7.34.0 铸二十词,core 7.39.0 起 `shell_floor` 入册 ⇒ 二十一词,core 7.40.0 起 `unstated` 入册 ⇒ 二十二词,core 7.41.0 起 `requires_user_interaction` 入册 ⇒ 二十三词,core 7.43.0 起 `classifier_no_ruling` 入册 ⇒ 二十四词,core 7.45.0 起 `dangerous_delete` 入册 ⇒ **二十五词**;模式 × 类仲裁表的列)。K-32 扩项 / server ≥7.106.0 起出现在
|
|
2430
2434
|
* {@link ModeRelease.askClass} / `.classes` 与 deny 臂的 `askClass` / `classes` 上,以及通告 `permission.ask_released_by_mode` 的 detail 里;
|
|
2431
2435
|
* K-37 扩项 / server ≥7.109.0(S-934 ②)起也在审批面:活卡帧 / 卡面 / 运维队列行 / `/stream` `pending` 帧的 `askClass` / `classes`
|
|
2432
2436
|
* (同样经 core `isAskClass` 筛,读不出整对不投;见 {@link import("./resources/tool-approvals.js").ToolApprovalFrame.askClass})。
|
|
2433
2437
|
* 🔴 **门记录这一面是真闭集**(server 按 core `isAskClass` 筛,出集整条不上帧)。`bypassPermissions` 只放行其中**可放**的十类
|
|
2434
2438
|
* (core `RELEASABLE_ASK_CLASSES`:`transcript_write` / `rule_unreadable` / `probe` / `write_protection` / `tool_marks_mcp` / `tool_marks_a2a` /
|
|
2435
2439
|
* `artifact_shared_read` / `mode` / `unstated` / `ordinary`);其余(`operator_forced` 部署出身、`ask_rule` / `org_rule`、`hook`、`ancestor`、`content_question`、
|
|
2436
|
-
* `unverifiable_delete`、`governance_unavailable`、`policy_rra`、`requires_user_interaction` …)任何模式下都照问。
|
|
2440
|
+
* `dangerous_delete`(core 7.45.0)、`unverifiable_delete`、`governance_unavailable`、`policy_rra`、`requires_user_interaction` …)任何模式下都照问。
|
|
2437
2441
|
*
|
|
2438
2442
|
* 🔴 **`requires_user_interaction`(core 7.41.0;server ≥7.116.0 提货)= 服务器声明「这只工具每次都要用户在场」**:MCP 服务器在工具申报里声明
|
|
2439
2443
|
* `_meta["anthropic/requiresUserInteraction"] === true`(只认布尔 `true`)⇒ 这只工具的**每一次**调用都问人 —— **每种模式含 `bypassPermissions`** 都问(**不在**可放十类里),
|
|
@@ -2447,7 +2451,11 @@ export type PermissionMode = "default" | "acceptEdits" | "plan" | "auto" | "bypa
|
|
|
2447
2451
|
* 先探 `capabilities.settings.permissions.allowGrant`)· 运维 env `APPROVAL_GRANT` · PreToolUse hook 显式 `permissionDecision:"allow"` · 接审批面 · `permissionMode:"bypassPermissions"`(请求腿);
|
|
2448
2452
|
* `plan` 模式下只有**只读**的服务器工具出这张卡。本类说的是「**没人说**」,不是 `ask_rule` / `org_rule` 那种「有人说了问」。
|
|
2449
2453
|
*/
|
|
2450
|
-
export type AskClass = "content_question" | "hook" | "ancestor"
|
|
2454
|
+
export type AskClass = "content_question" | "hook" | "ancestor"
|
|
2455
|
+
/** core 7.45.0 / server ≥7.119.0:**受保护位置的删除**(`rm` / `rmdir` 的目标是文件系统根、顶层目录、家目录、任务根 / 工作目录 / 附加工作目录或它们的祖先 —— 含 `rm -rf *` 在任务根、`rm -rf ~/*` ——
|
|
2456
|
+
* 或 shell 拿到的是运行时才拼出的脚本〔`bash -c "$CMD"` / `eval "$(…)"`〕)。**只有人的答清得掉**:任何模式(含 `bypassPermissions`)、任何 allow(请求 `settings.permissions.allow`、运维 `APPROVAL_GRANT`、
|
|
2457
|
+
* 存下的 allow 行、技能清单、hook 的 allow)、`auto` 的分类器都清不掉;帧上同带 `requiresRealApproval:true`;没人答就不执行(无人值守腿拒)。**免疫 bypass**(不在可放十类里)。 */
|
|
2458
|
+
| "dangerous_delete" | "unverifiable_delete" | "transcript_write" | "org_rule" | "governance_unavailable" | "rule_unreadable" | "ask_rule" | "denial_limit_fallback"
|
|
2451
2459
|
/** core 7.43.0 #1353 / server ≥7.118.0:auto 模式的分类器**没判出来**(它跑不了 —— `error` / `timeout`,或答了却没有判词 —— `parse_error`),于是交给人:
|
|
2452
2460
|
* denial-limit 回落那一行(只有人的答清得掉;**免疫 bypass**,allow 规则清不掉,分类器不再被问)。活卡帧 / 收件箱行另带成因 {@link import("./resources/tool-approvals.js").ToolApprovalFrame.classifierNoRuling}。 */
|
|
2453
2461
|
| "classifier_no_ruling"
|
|
@@ -3410,7 +3418,7 @@ export interface McpToolFace {
|
|
|
3410
3418
|
export type AutoModeUnarmedReason = "mode_not_auto" | "deployment_incapable" | "org_denied" | "local_denied" | "settings_denied" | "resolver_fault" | (string & {});
|
|
3411
3419
|
/** 三代形共有的三位 —— server **≤7.56.0 只发这三位**(见 {@link PermissionModeAutoCapability})。 */
|
|
3412
3420
|
interface PermissionModeAutoBase {
|
|
3413
|
-
/**
|
|
3421
|
+
/** 提交面按闭集收 `"auto"`(server 写的是字面量,恒 `true`)。 */
|
|
3414
3422
|
accepted: true;
|
|
3415
3423
|
/** 分类器席位真挂上了(桩 / 一次性 CLI 不挂席位时如实 `false`)。 */
|
|
3416
3424
|
classifierSeat: boolean;
|
|
@@ -4011,11 +4019,21 @@ export interface Capabilities {
|
|
|
4011
4019
|
* ⇒ 四口 501 `capability.memory_optout_grant_required`)。
|
|
4012
4020
|
* 🔴 位为假时是 **501**(换部署形态),与 {@link memoryConsolidationDriver} 的 404(开旋钮)分家。 */
|
|
4013
4021
|
memoryOptOutGrant?: boolean;
|
|
4022
|
+
/**
|
|
4023
|
+
* server ≥7.119.0(`routes/capabilities.ts` 的能力对象,值 = 引擎 `PERMISSION_MODES` **全集**,引擎序)—— 这台 worker 的请求面**收的权限模式词**:今天六词
|
|
4024
|
+
* `default` / `acceptEdits` / `plan` / `auto` / `bypassPermissions` / `dontAsk`。顶层 {@link TaskRequest.permissionMode}、`settings.permissions.defaultMode`、
|
|
4025
|
+
* `GET /v1/capabilities?permissionMode=` 三处读同一只闭集;**位 ⟺ 面**:位里的每个词读口都收、位外的词 400 `request.field_invalid` 且句里的词表与位逐字同。
|
|
4026
|
+
*
|
|
4027
|
+
* 🔴 **见位才发 `dontAsk`**:位缺席 = 老 server(≤7.118.x),请求面只收五词,`dontAsk` fresh 提交 400。位在场且含某词 ⇒ 这个词可发。
|
|
4028
|
+
* 🔴 **开集读**:位是**引擎词表的原样转发**,不是 SDK 判成员的闭集 —— 引擎加第七个词时位里会先出现一个本包型面还不认识的串;按位决定发不发,别拿
|
|
4029
|
+
* {@link PermissionMode} 去过滤它。⚠️ 它说的是「这台 server 收这个词」,**不说**这个词在这次提交上会不会生效(`auto` 还要分类器席与授权,读 {@link permissionModeAuto})。
|
|
4030
|
+
*/
|
|
4031
|
+
permissionModes?: Array<PermissionMode | (string & {})>;
|
|
4014
4032
|
/** `permissionMode: "auto"` 的**缺省态披露**(server `routes/capabilities.ts:463`;裁决在
|
|
4015
4033
|
* `src/auto-mode-face.ts` 的 `judgeAutoModeArming`)。**各项刻意不合成一个布尔** —— 合成后
|
|
4016
4034
|
* 「这份二进制不认识 auto」与「认识但本机没有 entitlement 源」会得到同一个 `false`,而壳对这两种要做的
|
|
4017
4035
|
* 事不同(前者别给这一档;后者给,但别宣称在筛)。
|
|
4018
|
-
* · `accepted` ——
|
|
4036
|
+
* · `accepted` —— 提交面按闭集收 `"auto"`(恒 `true`,server 写的是字面量);
|
|
4019
4037
|
* · `classifierSeat` —— 分类器席位真挂上了(server 读装配面递来的 `autoModeFace.seatMounted`,
|
|
4020
4038
|
* 桩 / 一次性 CLI 不挂席位时如实 `false`);
|
|
4021
4039
|
* · `entitlementSource` —— **center 源在不在**,绝不冒充「你被授权了」(授权是 per-principal 的,
|
|
@@ -4028,7 +4046,7 @@ export interface Capabilities {
|
|
|
4028
4046
|
* **分词就是为了让壳指不同的路**(改本机 env vs 找组织)。按开集读:server 已经从四词长到六词。
|
|
4029
4047
|
* · `model` —— 分类器**配置**的模型路由(core 的 role 回落链 `classifier → summarize → default`);
|
|
4030
4048
|
* 解不出时 server **不写这个键**(把 core 的拒句当数据记进日志,读面不 500)。
|
|
4031
|
-
* 🔴 查询串 `?permissionMode
|
|
4049
|
+
* 🔴 查询串 `?permissionMode=<模式词>` 把「本次意图」折进裁决(缺席 = 按 auto 意图答;server ≥7.119.0 收六词,`dontAsk` 答 `armed:false` / `reason:"mode_not_auto"`,≤7.118.x 只收五词);闭集之外
|
|
4032
4050
|
* server 回 **400 `request.field_invalid`**(读面也不静默折词)。 */
|
|
4033
4051
|
permissionModeAuto?: PermissionModeAutoCapability;
|
|
4034
4052
|
/** READ 容纳面的**生效档**披露位(server `routes/capabilities.ts:484` = `deps.config.readFace ?? null`;#A4)。
|
|
@@ -4267,14 +4285,16 @@ export interface StoreCapability {
|
|
|
4267
4285
|
/** 运维**声明**的后端 = `DB_BACKEND` 词(含缺省推导)。词表属主 = server `DB_BACKEND_WORDS`(config 枚举 / 目录 / caps 同读一只常量)。 */
|
|
4268
4286
|
declared: StoreBackendWord;
|
|
4269
4287
|
/** **装配出的**后端(同一词表;没装出后端 = `"memory"`)。`declared ≠ backend` 是合法形,由调用方自己读出落差:
|
|
4270
|
-
* `DB_BACKEND=pg` + `SESSION_BACKEND=memory`(声明 pg、刻意不持久,**无** `degradedReason`)/
|
|
4271
|
-
* 缺省推导 local 起不来(`declared:"local"`、`backend:"memory"`、`"local_unwritable"`)。
|
|
4288
|
+
* `DB_BACKEND=pg` + `SESSION_BACKEND=memory`(声明 pg、刻意不持久,**无** `degradedReason`)/
|
|
4289
|
+
* 缺省推导 local 起不来(`declared:"local"`、`backend:"memory"`、`"local_unwritable"`)。
|
|
4290
|
+
* server ≥7.119.0:配了 DSN 的 SQL 库打不开 ⇒ 窗内重试、到窗**拒启**,**从不**退成内存 —— SQL 族没有降级态(≤7.118.x 的 `SESSION_BACKEND=auto` 会静默退内存并置 `degradedReason:"db_unreachable"`,
|
|
4291
|
+
* 那个词现在是 ⚰️ 退役词,见 {@link StoreDegradedReason})。 */
|
|
4272
4292
|
backend: StoreBackendWord;
|
|
4273
|
-
/** `backend !== "memory"`。壳据此渲「pg (durable)」/「
|
|
4293
|
+
/** `backend !== "memory"`。壳据此渲「pg (durable)」/「local declared, running in memory: local_unwritable」。 */
|
|
4274
4294
|
durable: boolean;
|
|
4275
|
-
/** 🔴 **present-iff
|
|
4276
|
-
*
|
|
4277
|
-
*
|
|
4295
|
+
/** 🔴 **present-iff 降级臂走过**:`"local_unwritable"` = **缺省推导**的 local 文件店建不出来(mkdir / 锁 /
|
|
4296
|
+
* 权限 / 只读挂载 / 磁盘满)。词表属主 = server `STORE_DEGRADED_REASONS`(server ≥7.119.0 只剩这一词);⚰️ `"db_unreachable"` 是**退役词**(≤7.118.x 的 SQL 族 auto 降级,7.119.0 随降级臂一并退役,
|
|
4297
|
+
* 服务端 ≥7.119.0 不再发)—— 老 server 仍会发,所以留在联合里;词表外的词按未知读。缺席 = 没降级(不是「不知道」)。 */
|
|
4278
4298
|
degradedReason?: StoreDegradedReason;
|
|
4279
4299
|
/** 🔴 **7.105.0 及以前的顶层 `sql` 对象原样搬入**(对象逐字同形,见 {@link SqlEngineCapability})。**present-iff** `backend` 是
|
|
4280
4300
|
* `mysql` / `pg` **且**驱动此刻给得出回读复核过的事实 —— 最近一次连接初始化被拒(S-137 ④)时缺席(此前的顶层 `sql:null` 那一义);
|
|
@@ -4283,7 +4303,11 @@ export interface StoreCapability {
|
|
|
4283
4303
|
}
|
|
4284
4304
|
/** `DB_BACKEND` 词表(server `DB_BACKEND_WORDS`;`store.declared` / `store.backend` 同读)。开集尾:新词到货不形变,按未知读。 */
|
|
4285
4305
|
export type StoreBackendWord = "mysql" | "pg" | "local" | "memory" | (string & {});
|
|
4286
|
-
/** `store.degradedReason` 词表(server `STORE_DEGRADED_REASONS
|
|
4306
|
+
/** `store.degradedReason` 词表(server `STORE_DEGRADED_REASONS`:server ≥7.119.0 闭集只剩 `local_unwritable`)。开集尾:词表外的词按未知读。
|
|
4307
|
+
*
|
|
4308
|
+
* ⚰️ **`"db_unreachable"` 是退役词,服务端 ≥7.119.0 不再发,底线抬过 7.118.x 后删**:≤7.118.x 的 server(支持地板之内)在 `SESSION_BACKEND=auto` 下 SQL 库打不开时静默退内存并发它;
|
|
4309
|
+
* 7.119.0 起配了 DSN 的库打不开 ⇒ 窗内重试、到窗**拒启**,SQL 族没有降级态。它留在联合与随包 spec 的 enum 里,是为了让消费端对着老 server 写得出契约给它的那一臂;
|
|
4310
|
+
* 登记在册(`CAPABILITY_RETIRED_WORDS["store.degradedReason"]`,对账门要求「SDK 词 == server 现行词 ∪ 退役名单」,名单里的词 server 现行表里不许有)。 */
|
|
4287
4311
|
export type StoreDegradedReason = "db_unreachable" | "local_unwritable" | (string & {});
|
|
4288
4312
|
/**
|
|
4289
4313
|
* 本部署的 **SQL 事务读语义**(S-131;7.105.0 及以前在 `Capabilities.sql`,**7.106.0 起在 {@link StoreCapability.sql}**)—— 与 server
|
|
@@ -4675,7 +4699,9 @@ export interface PendingCheckpoint {
|
|
|
4675
4699
|
* (older history folded into a summary message); can be LARGE — lazy-expand in UIs.
|
|
4676
4700
|
* With window params (server ≥1.162 four-face, board [611]) the response additionally carries
|
|
4677
4701
|
* `window` — ABSENT on an old engine (<1.162 strips the query before routing and returns the
|
|
4678
|
-
* full record): probe "no `window` in the response" to degrade honestly, never error.
|
|
4702
|
+
* full record): probe "no `window` in the response" to degrade honestly, never error.
|
|
4703
|
+
* 🔴 Server >= 7.119.0 (wire VALUE change, shape unchanged): string leaves inside `messages` pass the same redaction as the live and ledger frames — a credential-shaped
|
|
4704
|
+
* span reads `«redacted:…»`; the archive itself is untouched (read-side only), and a history with no credential-shaped span is byte-identical. See {@link SessionsResource.get}. */
|
|
4679
4705
|
export interface SessionRecord {
|
|
4680
4706
|
sessionId: string;
|
|
4681
4707
|
owner?: string | null;
|