feat: 权限档位体系(三档 plan/workspace/full + 四桥 from_session_id)
L2 核心改动:sessions 表补 permission_mode / permission_enforcement 两列 (sqlite + pg 同步),三桥 lib/permission-mode.js 翻译档位到平台原生配置, homeagent advisory 模式提示词告知模型实际强制力。四桥全部携带 from_session_id 供 relay 去重与会话回溯。 FromHuman / ToHuman 判据已加入心跳 payload 与 notify/mail.go。
This commit is contained in:
33
plugins/dsh-mail-bridge/lib/permission-mode.d.ts
vendored
Normal file
33
plugins/dsh-mail-bridge/lib/permission-mode.d.ts
vendored
Normal file
@ -0,0 +1,33 @@
|
||||
export const MODE_PLAN: 'plan';
|
||||
export const MODE_WORKSPACE: 'workspace';
|
||||
export const MODE_FULL: 'full';
|
||||
export const MODES: string[];
|
||||
export const DEFAULT_MODE: string;
|
||||
|
||||
export const ENFORCE_NATIVE: 'native';
|
||||
export const ENFORCE_ADVISORY: 'advisory';
|
||||
|
||||
export function normalizeMode(mode: unknown): string;
|
||||
export function normalizeEnforcement(e: unknown): string;
|
||||
export function modeAtMost(a: string, b: string): string;
|
||||
export function modeNeedsHuman(mode: string): boolean;
|
||||
|
||||
export interface OpencodePermissionRule {
|
||||
permission: string;
|
||||
action: string;
|
||||
pattern: string;
|
||||
}
|
||||
export function opencodePermissions(mode: string): OpencodePermissionRule[];
|
||||
|
||||
export function dshSandboxMode(mode: string): 'read-only' | 'workspace-write' | 'danger-full-access';
|
||||
export function dshApprovalPolicy(mode: string): 'ask' | 'never';
|
||||
|
||||
export function piGuardedTools(mode: string): string[];
|
||||
export function piBlocksOutright(mode: string): boolean;
|
||||
|
||||
export interface ModeBriefingCtx {
|
||||
mode: string;
|
||||
enforcement: string;
|
||||
workspace?: string;
|
||||
}
|
||||
export function modeBriefing(ctx: ModeBriefingCtx): string;
|
||||
Reference in New Issue
Block a user