@aalis/api-authority 0.10.0 → 0.11.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
@@ -1,3 +1,4 @@
1
+ import type { OriginKind } from '@aalis/api-approval';
1
2
  /** 细粒度能力标识,如 tool:file.write、command:shutdown */
2
3
  export type CapabilityId = string;
3
4
  /**
@@ -9,8 +10,11 @@ export type CapabilityVisibility = 'public' | 'restricted';
9
10
  /**
10
11
  * 能力确认要求(轴 B · 确认:是否需「人确认」这一步,与 visibility 正交、owner 也生效):
11
12
  * - 缺省/undefined:无需确认(不提醒)。
12
- * - 'session':执行前需人确认;可「本会话」记住(回复 YS),会话内同能力不再追问。
13
- * - 'always':每次都需确认,不接受会话记忆(最危险操作)。
13
+ * - 'session':执行前需人确认;系统源(ExecutionGuardContext.skipConfirm)与 restrictedPolicy 白名单可免。
14
+ * - 'always':每次都需确认,什么都免不掉(最危险操作)。
15
+ *
16
+ * 怎么确认看操作是谁发起的:工具由模型调用,确认是 owner 审批(@aalis/api-approval);指令由人亲手输入,
17
+ * 确认是向发出者本人核对意图(ExecutionGuardContext.confirmIntent)。
14
18
  *
15
19
  * 与 visibility 正交:visibility 管「授权(能不能)」,confirm 管「意图确认(是不是你本人此刻要)/防注入减速带」。
16
20
  * 即便 owner=`*`,命中 confirm 的能力仍须确认 —— 抵御 owner 会话内提示注入借权静默调高危。
@@ -69,6 +73,21 @@ export declare function resolveCapabilityPolicy(decl: CapabilityPolicyDecl, defa
69
73
  visibility: CapabilityVisibility;
70
74
  confirm?: CapabilityConfirm;
71
75
  };
76
+ /**
77
+ * 调用所在的入站回合(只由 agent 工具循环填写,指令与其他调用方没有)。守卫据它判发起回合的类别,
78
+ * 类别决定需要确认的工具调用能不能产生 owner 审批。
79
+ */
80
+ export interface InboundTurn {
81
+ /** 同 IncomingMessage.source:真人消息为 undefined,内部注入为注入方标识 */
82
+ source?: string;
83
+ /**
84
+ * 宿主通知延续某次工具调用时,那次调用的发言者(IncomingMessage.hostNotice.callerUserId)。
85
+ * 那次调用是 owner 在自己会话里发起的,这一轮才是 owner 链的延续
86
+ */
87
+ callerUserId?: string;
88
+ /** 同 IncomingMessage.messageId:入站消息的平台消息 id。转到后台的工具调用结束时,结束通知的回复据它引用这条消息 */
89
+ messageId?: string;
90
+ }
72
91
  /** 执行守卫上下文 —— 操作执行前权限检查的最小信息 */
73
92
  export interface ExecutionGuardContext {
74
93
  /** 操作名称(指令名 / 工具名) */
@@ -83,17 +102,11 @@ export interface ExecutionGuardContext {
83
102
  confirm?: CapabilityConfirm;
84
103
  /** 会话 ID */
85
104
  sessionId: string;
86
- /** 来源平台(会话语义:confirm 通道按它选路;等级判定见 actor) */
105
+ /** 来源平台(会话语义;等级判定见 actor) */
87
106
  platform: string;
88
107
  /** 用户 ID(物理发言者;等级判定见 actor) */
89
108
  userId?: string;
90
- /**
91
- * 授权身份(缺省 = platform/userId 本身):等级裁决(authorize)与 owner 的
92
- * 自动确认跳过按它评估;confirm 通道选路仍按会话身份。未授权后的救援闸
93
- * (restrictedPolicy 白名单 / 会话临时授予,均按会话身份登记)只在授权身份就是
94
- * 会话身份时适用——actor 覆盖了会话身份(委派 / 定时 / 自发回合的无主体)时整体
95
- * 不适用:物理发言者的放行不能替另一个身份解围(fail-safe,宁缺勿错)。
96
- */
109
+ /** 授权身份(缺省 = platform/userId 本身):等级裁决(authorize)按它评估 */
97
110
  actor?: {
98
111
  platform: string;
99
112
  userId: string;
@@ -102,15 +115,28 @@ export interface ExecutionGuardContext {
102
115
  args?: Record<string, unknown>;
103
116
  /**
104
117
  * 系统/受信源(如 scheduler,无人能点交互确认):仍走 authorize 评估调用者能力,**不**绕过它(防提权)。
105
- * 被拒时不走救援闸(isPreApproved);已授权时跳过非 always 的确认,always 照常确认。
118
+ * 已授权时跳过非 always 的确认,always 照常确认。
106
119
  */
107
120
  skipConfirm?: boolean;
108
- /** 调用方回合的中止信号:守卫把它透传给 requestAccess,中止后不再等确认(见 AccessRequest.signal)。 */
121
+ /** 调用所在回合的 id(工具调用由 agent 工具循环填写);审批随回合结束撤销 */
122
+ turnId?: string;
123
+ /** 这次工具调用的 id(同 ToolCallContext.callId);审批卡据它挂到工具卡上 */
124
+ callId?: string;
125
+ /** 调用所在的入站回合;缺省 = 调用不在由入站消息驱动的回合里(编排的节点、mcp-server 等) */
126
+ inbound?: InboundTurn;
127
+ /**
128
+ * 向发出者本人核对意图(指令用):调用方能在同一会话里当面问到发出者时提供,resolve true 为发出者确认。
129
+ * 需要确认的指令没有它(定时任务、编排注入的指令)就无从确认,按拒绝处理
130
+ */
131
+ confirmIntent?: () => Promise<boolean>;
132
+ /** 调用方回合的中止信号:守卫等 owner 审批期间回合中止,审批即撤销 */
109
133
  signal?: AbortSignal;
110
134
  }
135
+ /** 判发起回合的类别要的信息:执行守卫上下文的这几项,调用方按同样的口径填 */
136
+ export type OriginTurn = Pick<ExecutionGuardContext, 'sessionId' | 'platform' | 'userId' | 'actor' | 'inbound'>;
111
137
  /**
112
138
  * 执行守卫函数。返回 null 放行;返回 string 拦截(值为原因/提示)。
113
- * 由 plugin-authority 通过 setExecutionGuard() 注入。
139
+ * 由 plugin-authority 通过 setExecutionGuard() 注入,停用时摘掉。
114
140
  */
115
141
  export type ExecutionGuard = (ctx: ExecutionGuardContext) => Promise<string | null>;
116
142
  /**
@@ -126,61 +152,6 @@ export interface AuthorizeRequest {
126
152
  /** 操作原始风险(透传,供 minLevel 派生;缺省回退 visibility) */
127
153
  risk?: CapabilityRisk;
128
154
  }
129
- /**
130
- * 访问请求:操作已过授权、但声明了 confirm 时,经 requestAccess 发起意图确认;
131
- * 守卫的救援闸 isPreApproved 也用它描述被 authorize 拒绝的操作。
132
- */
133
- export interface AccessRequest {
134
- /** 操作名称 */
135
- name: string;
136
- /** 操作类型 */
137
- type: 'command' | 'tool';
138
- /** 触达的(受限)能力 */
139
- capability: CapabilityId;
140
- args?: Record<string, unknown>;
141
- sessionId: string;
142
- platform: string;
143
- userId?: string;
144
- /**
145
- * 操作的生效确认要求(见 CapabilityConfirm):
146
- * - 'session':可按会话记住,白名单与本会话已有的授予可免问。
147
- * - 'always':每次都问,不接受白名单与会话记忆。
148
- */
149
- confirm?: CapabilityConfirm;
150
- /**
151
- * 发起回合的中止信号(可选)。已中止即不问直接拒;等待应答期间中止则立即拒,
152
- * 确认通道应据此撤回未决提示。第三方 authority / 通道实现可忽略该字段(退化为等应答)。
153
- */
154
- signal?: AbortSignal;
155
- }
156
- /** 批准后授予的临时委托范围:once 不持久;session 为当前会话短时授予 */
157
- export interface TemporaryGrantSpec {
158
- scope: 'once' | 'session';
159
- /** 授予秒数,仅 scope=session 时有效 */
160
- durationSeconds?: number;
161
- /** 最大使用次数,仅 scope=session 时有效 */
162
- maxUses?: number;
163
- }
164
- export interface AccessDecision {
165
- allowed: boolean;
166
- grant?: TemporaryGrantSpec;
167
- }
168
- /** 一条生效中的临时能力委托 */
169
- export interface TemporaryGrant {
170
- id: string;
171
- capability: CapabilityId;
172
- name: string;
173
- type: 'command' | 'tool';
174
- sessionId: string;
175
- platform: string;
176
- userId?: string;
177
- expiresAt: number;
178
- maxUses?: number;
179
- used: number;
180
- createdAt: number;
181
- }
182
- /** 确认回调:boolean 为最简允许/拒绝;对象可附带临时委托范围 */
183
- export type AccessConfirmHandler = (request: AccessRequest) => Promise<boolean | AccessDecision>;
184
155
  /** 跨平台用户身份标识 */
185
156
  export interface UserIdentity {
186
157
  platform: string;
@@ -200,6 +171,12 @@ export interface AuthorityUserEntry {
200
171
  export interface AuthorityService {
201
172
  /** 是否为 owner(owners 配置命中 → 拥有 `*`) */
202
173
  isOwner(platform: string, userId?: string): boolean;
174
+ /**
175
+ * 这一轮是谁发起的(契约见 api-approval 的 OriginKind):按回合的来源判,不按授权身份判,会话的受众按会话管理里
176
+ * 记下的字段判。只有 owner 与 owner-chain 能产生审批;本地效果由触及服务按这一类别定主体:owner 与 owner-chain 为
177
+ * owner,subtask 随派出它的那一轮父会话,其余没有本地效果
178
+ */
179
+ originOf(turn: OriginTurn): OriginKind;
203
180
  /**
204
181
  * 统一权限闸 —— tools / commands 的执行守卫在操作边界调用本方法。
205
182
  * 数字等级裁决:deniedCapabilities(全局硬禁) > owner(∞) > 用户 level >= 操作 minLevel;
@@ -217,22 +194,6 @@ export interface AuthorityService {
217
194
  setUserLevel(target: UserIdentity, level: number): void;
218
195
  /** 删除用户记录(等级一并清除,回退默认 0) */
219
196
  removeUser(platform: string, userId: string): void;
220
- /**
221
- * 「未授权」分支专用闸:请求是否被 owner 预先放行(restrictedPolicy 白名单 / 该用户在本会话已有授予),
222
- * 且不触犯硬禁 / 资源保护。**绝不询问发起者本人**(杜绝自我确认提权)。守卫 authorize 拒绝后调本方法。
223
- */
224
- isPreApproved(request: AccessRequest): boolean;
225
- /** 意图确认:操作已过授权、但声明了 confirm 时调用(白名单策略 → 会话临时授予 → 确认回调;confirm='always' 只走确认回调) */
226
- requestAccess(request: AccessRequest): Promise<boolean>;
227
- listTemporaryGrants(): TemporaryGrant[];
228
- /** 撤销某能力上所有未过期的会话授予(操作门槛变更时调用),返回撤销条数 */
229
- revokeGrantsOfCapability(capability: string): number;
230
- revokeTemporaryGrant(id: string): boolean;
231
- /**
232
- * 注册平台确认通道('*' 为兜底)。返回注销函数——注册方 dispose 时必须调用,
233
- * 否则插件卸载后 authority 仍会把确认请求投给已死的 handler,等到超时才拒。
234
- */
235
- setConfirmHandler(platform: string, handler: AccessConfirmHandler): () => void;
236
197
  save(): void;
237
198
  listUsers(): AuthorityUserEntry[];
238
199
  }
@@ -253,8 +214,8 @@ declare module '@aalis/api-host-config' {
253
214
  */
254
215
  confirmOverrides?: Record<string, CapabilityConfirm | 'off'>;
255
216
  /**
256
- * 受限能力的临时放行策略(替代旧 dangerousPolicy):
257
- * allow 列出自动放行的 restricted 能力/操作名 glob(['*'] 全放);duration 放行时长(秒,0=永久)。
217
+ * 免确认白名单:allow 列出不必确认的能力 glob(['*'] 全放);duration 生效时长(秒,0=永久)。
218
+ * 只免 confirm 为 session 的确认,always 照常确认;不放宽授权,等级不够的照样拒。
258
219
  * 运行时启用时点(enabledAt)不持久化,是 plugin-authority 运行时状态。
259
220
  */
260
221
  restrictedPolicy?: {
@@ -262,12 +223,8 @@ declare module '@aalis/api-host-config' {
262
223
  duration?: number;
263
224
  };
264
225
  /**
265
- * auto 确认模式(owner 临时免 dangerous 二次确认,便于批处理;类 Claude Code auto):
266
- * epoch ms 截止时间;-1=一直;0/缺省=关。仅跳过 owner 自己的 session 确认,不动等级/deny,always 不跳。
267
- */
268
- autoConfirmUntil?: number;
269
- /**
270
- * 网络出口闸(SSRF 防护,粗粒度高效):限制由 LLM/用户 URL 触发的 safeFetch 能连到哪。
226
+ * 网络出口闸(SSRF 防护,粗粒度高效):限制由 LLM/用户 URL 触发的出口能连到哪,即 safeFetch,
227
+ * 以及 tool-browser 开启 blockPrivate 时的浏览器网络闸(三项都遵循)。
271
228
  * 不影响你自己配置的固定本地服务(ollama/onebot daemon 走裸 fetch,不过 safeFetch)。
272
229
  */
273
230
  network?: {
@@ -280,5 +237,5 @@ declare module '@aalis/api-host-config' {
280
237
  };
281
238
  }
282
239
  }
283
- export declare const authority: import("@aalis/core").ServiceDescriptor<AuthorityService, import("@aalis/core").ServiceRef<AuthorityService>>;
240
+ export declare const authority: import("@aalis/core").ServiceDescriptor<AuthorityService, AuthorityService>;
284
241
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -49,6 +49,6 @@ export function resolveCapabilityPolicy(decl, defaultVisibility = 'public') {
49
49
  confirm: decl.confirm ?? base.confirm,
50
50
  };
51
51
  }
52
- // ----- 服务描述符(按激活绑定;调用型:绑定接口是 ServiceRef)-----
52
+ // ----- 服务描述符(调用型:业务层就是提供者的形状)-----
53
53
  export const authority = defineService('authority');
54
54
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAqD5C,MAAM,aAAa,GAA8F;IAC/G,IAAI,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE;IAC9B,SAAS,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE;IACvC,SAAS,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE;CAC5D,CAAC;AAEF,oBAAoB;AACpB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AACnC,yDAAyD;AACzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAElC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAkE;IACnG,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,iBAAiB,CAAC;IACnD,OAAO,IAAI,CAAC,UAAU,KAAK,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC;AACjF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,IAAqB;IAIhD,OAAO,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACzC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,IAA0B,EAC1B,oBAA0C,QAAQ;IAKlD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,IAAI,iBAAiB;QACnE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;KACtC,CAAC;AACJ,CAAC;AA2PD,+CAA+C;AAC/C,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,CAAmB,WAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAyD5C,MAAM,aAAa,GAA8F;IAC/G,IAAI,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE;IAC9B,SAAS,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE;IACvC,SAAS,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,EAAE;CAC5D,CAAC;AAEF,oBAAoB;AACpB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC;AACnC,yDAAyD;AACzD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAElC;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAkE;IACnG,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW;QAAE,OAAO,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,iBAAiB,CAAC;IACnD,OAAO,IAAI,CAAC,UAAU,KAAK,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC;AACjF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,IAAqB;IAIhD,OAAO,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACzC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,IAA0B,EAC1B,oBAA0C,QAAQ;IAKlD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,OAAO;QACL,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,IAAI,iBAAiB;QACnE,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO;KACtC,CAAC;AACJ,CAAC;AAoMD,oCAAoC;AACpC,MAAM,CAAC,MAAM,SAAS,GAAG,aAAa,CAAmB,WAAW,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aalis/api-authority",
3
- "version": "0.10.0",
3
+ "version": "0.11.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -19,15 +19,16 @@
19
19
  "dist"
20
20
  ],
21
21
  "dependencies": {
22
- "@aalis/api-host-config": ">=0.1.0 <1.0.0"
22
+ "@aalis/api-approval": ">=0.1.0 <1.0.0",
23
+ "@aalis/api-host-config": ">=0.2.0 <1.0.0"
23
24
  },
24
25
  "devDependencies": {
25
26
  "@types/node": "^22.0.0",
26
27
  "typescript": "^5.7.0",
27
- "@aalis/core": "0.18.0"
28
+ "@aalis/core": "0.20.0"
28
29
  },
29
30
  "peerDependencies": {
30
- "@aalis/core": ">=0.18.0 <1.0.0"
31
+ "@aalis/core": ">=0.20.0 <1.0.0"
31
32
  },
32
33
  "keywords": [
33
34
  "aalis",