@dsh-edge/dsh-edge-agent 0.0.0-stage → 0.1.2
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/CHANGELOG.md +158 -0
- package/LICENSE +21 -0
- package/README.md +181 -2
- package/config/edge.example.json +179 -0
- package/config/privacy-policy.json +202 -0
- package/cordis.desktop-safe.patch.yml +129 -0
- package/cordis.patch.yml +382 -0
- package/cordis.yml +374 -0
- package/lib/attestation.d.ts +2 -0
- package/lib/attestation.d.ts.map +1 -0
- package/lib/attestation.js +2 -0
- package/lib/audit-log.d.ts +2 -0
- package/lib/audit-log.d.ts.map +1 -0
- package/lib/audit-log.js +2 -0
- package/lib/client.js +87 -0
- package/lib/cloud-llm-adapter.d.ts +2 -0
- package/lib/cloud-llm-adapter.d.ts.map +1 -0
- package/lib/cloud-llm-adapter.js +2 -0
- package/lib/dsh-adapter/attestation.d.ts +42 -0
- package/lib/dsh-adapter/attestation.d.ts.map +1 -0
- package/lib/dsh-adapter/attestation.js +40 -0
- package/lib/dsh-adapter/audit-log.d.ts +139 -0
- package/lib/dsh-adapter/audit-log.d.ts.map +1 -0
- package/lib/dsh-adapter/audit-log.js +376 -0
- package/lib/dsh-adapter/cloud-egress.d.ts +181 -0
- package/lib/dsh-adapter/cloud-egress.d.ts.map +1 -0
- package/lib/dsh-adapter/cloud-egress.js +257 -0
- package/lib/dsh-adapter/cloud-llm-adapter.d.ts +416 -0
- package/lib/dsh-adapter/cloud-llm-adapter.d.ts.map +1 -0
- package/lib/dsh-adapter/cloud-llm-adapter.js +1472 -0
- package/lib/dsh-adapter/contract.d.ts +80 -0
- package/lib/dsh-adapter/contract.d.ts.map +1 -0
- package/lib/dsh-adapter/contract.js +194 -0
- package/lib/dsh-adapter/desktop-cookie-janitor.d.ts +214 -0
- package/lib/dsh-adapter/desktop-cookie-janitor.d.ts.map +1 -0
- package/lib/dsh-adapter/desktop-cookie-janitor.js +409 -0
- package/lib/dsh-adapter/dsh-edge-agent.d.ts +48 -0
- package/lib/dsh-adapter/dsh-edge-agent.d.ts.map +1 -0
- package/lib/dsh-adapter/dsh-edge-agent.js +64 -0
- package/lib/dsh-adapter/edge-config.d.ts +484 -0
- package/lib/dsh-adapter/edge-config.d.ts.map +1 -0
- package/lib/dsh-adapter/edge-config.js +898 -0
- package/lib/dsh-adapter/edge-context-view.d.ts +184 -0
- package/lib/dsh-adapter/edge-context-view.d.ts.map +1 -0
- package/lib/dsh-adapter/edge-context-view.js +483 -0
- package/lib/dsh-adapter/effective-model.d.ts +85 -0
- package/lib/dsh-adapter/effective-model.d.ts.map +1 -0
- package/lib/dsh-adapter/effective-model.js +171 -0
- package/lib/dsh-adapter/etscli-shell-guard.d.ts +244 -0
- package/lib/dsh-adapter/etscli-shell-guard.d.ts.map +1 -0
- package/lib/dsh-adapter/etscli-shell-guard.js +420 -0
- package/lib/dsh-adapter/etscli-tools.d.ts +112 -0
- package/lib/dsh-adapter/etscli-tools.d.ts.map +1 -0
- package/lib/dsh-adapter/etscli-tools.js +393 -0
- package/lib/dsh-adapter/file-logger.d.ts +294 -0
- package/lib/dsh-adapter/file-logger.d.ts.map +1 -0
- package/lib/dsh-adapter/file-logger.js +564 -0
- package/lib/dsh-adapter/function-call-external.d.ts +357 -0
- package/lib/dsh-adapter/function-call-external.d.ts.map +1 -0
- package/lib/dsh-adapter/function-call-external.js +1005 -0
- package/lib/dsh-adapter/host-egress-guard.d.ts +161 -0
- package/lib/dsh-adapter/host-egress-guard.d.ts.map +1 -0
- package/lib/dsh-adapter/host-egress-guard.js +213 -0
- package/lib/dsh-adapter/host-llm-trace.d.ts +198 -0
- package/lib/dsh-adapter/host-llm-trace.d.ts.map +1 -0
- package/lib/dsh-adapter/host-llm-trace.js +344 -0
- package/lib/dsh-adapter/http-api-routes.d.ts +61 -0
- package/lib/dsh-adapter/http-api-routes.d.ts.map +1 -0
- package/lib/dsh-adapter/http-api-routes.js +79 -0
- package/lib/dsh-adapter/http-api-sessions.d.ts +105 -0
- package/lib/dsh-adapter/http-api-sessions.d.ts.map +1 -0
- package/lib/dsh-adapter/http-api-sessions.js +173 -0
- package/lib/dsh-adapter/http-api.d.ts +221 -0
- package/lib/dsh-adapter/http-api.d.ts.map +1 -0
- package/lib/dsh-adapter/http-api.js +1811 -0
- package/lib/dsh-adapter/index.d.ts +62 -0
- package/lib/dsh-adapter/index.d.ts.map +1 -0
- package/lib/dsh-adapter/index.js +97 -0
- package/lib/dsh-adapter/input-guard-messages.d.ts +56 -0
- package/lib/dsh-adapter/input-guard-messages.d.ts.map +1 -0
- package/lib/dsh-adapter/input-guard-messages.js +136 -0
- package/lib/dsh-adapter/input-guard.d.ts +508 -0
- package/lib/dsh-adapter/input-guard.d.ts.map +1 -0
- package/lib/dsh-adapter/input-guard.js +2174 -0
- package/lib/dsh-adapter/intent-prompts.d.ts +77 -0
- package/lib/dsh-adapter/intent-prompts.d.ts.map +1 -0
- package/lib/dsh-adapter/intent-prompts.js +97 -0
- package/lib/dsh-adapter/intent-router.d.ts +710 -0
- package/lib/dsh-adapter/intent-router.d.ts.map +1 -0
- package/lib/dsh-adapter/intent-router.js +2802 -0
- package/lib/dsh-adapter/intent-signals.d.ts +208 -0
- package/lib/dsh-adapter/intent-signals.d.ts.map +1 -0
- package/lib/dsh-adapter/intent-signals.js +391 -0
- package/lib/dsh-adapter/invariant-install.d.ts +16 -0
- package/lib/dsh-adapter/invariant-install.d.ts.map +1 -0
- package/lib/dsh-adapter/invariant-install.js +15 -0
- package/lib/dsh-adapter/invariant.d.ts +16 -0
- package/lib/dsh-adapter/invariant.d.ts.map +1 -0
- package/lib/dsh-adapter/invariant.js +22 -0
- package/lib/dsh-adapter/llm-adapters.d.ts +19 -0
- package/lib/dsh-adapter/llm-adapters.d.ts.map +1 -0
- package/lib/dsh-adapter/llm-adapters.js +16 -0
- package/lib/dsh-adapter/llm-internal-caller.d.ts +92 -0
- package/lib/dsh-adapter/llm-internal-caller.d.ts.map +1 -0
- package/lib/dsh-adapter/llm-internal-caller.js +100 -0
- package/lib/dsh-adapter/llm-max-turns.d.ts +55 -0
- package/lib/dsh-adapter/llm-max-turns.d.ts.map +1 -0
- package/lib/dsh-adapter/llm-max-turns.js +127 -0
- package/lib/dsh-adapter/llm-trace-store.d.ts +131 -0
- package/lib/dsh-adapter/llm-trace-store.d.ts.map +1 -0
- package/lib/dsh-adapter/llm-trace-store.js +205 -0
- package/lib/dsh-adapter/llm-trace.d.ts +450 -0
- package/lib/dsh-adapter/llm-trace.d.ts.map +1 -0
- package/lib/dsh-adapter/llm-trace.js +463 -0
- package/lib/dsh-adapter/local-llm-adapter.d.ts +141 -0
- package/lib/dsh-adapter/local-llm-adapter.d.ts.map +1 -0
- package/lib/dsh-adapter/local-llm-adapter.js +787 -0
- package/lib/dsh-adapter/local-storage.d.ts +96 -0
- package/lib/dsh-adapter/local-storage.d.ts.map +1 -0
- package/lib/dsh-adapter/local-storage.js +198 -0
- package/lib/dsh-adapter/model-router.d.ts +79 -0
- package/lib/dsh-adapter/model-router.d.ts.map +1 -0
- package/lib/dsh-adapter/model-router.js +107 -0
- package/lib/dsh-adapter/ohttp-gateway.d.ts +49 -0
- package/lib/dsh-adapter/ohttp-gateway.d.ts.map +1 -0
- package/lib/dsh-adapter/ohttp-gateway.js +32 -0
- package/lib/dsh-adapter/openai-sse.d.ts +85 -0
- package/lib/dsh-adapter/openai-sse.d.ts.map +1 -0
- package/lib/dsh-adapter/openai-sse.js +462 -0
- package/lib/dsh-adapter/pii-utils.d.ts +96 -0
- package/lib/dsh-adapter/pii-utils.d.ts.map +1 -0
- package/lib/dsh-adapter/pii-utils.js +324 -0
- package/lib/dsh-adapter/plugin-host.d.ts +38 -0
- package/lib/dsh-adapter/plugin-host.d.ts.map +1 -0
- package/lib/dsh-adapter/plugin-host.js +38 -0
- package/lib/dsh-adapter/plugin.d.ts +46 -0
- package/lib/dsh-adapter/plugin.d.ts.map +1 -0
- package/lib/dsh-adapter/plugin.js +100 -0
- package/lib/dsh-adapter/privacy-policy.d.ts +237 -0
- package/lib/dsh-adapter/privacy-policy.d.ts.map +1 -0
- package/lib/dsh-adapter/privacy-policy.js +391 -0
- package/lib/dsh-adapter/prompt-guard.d.ts +152 -0
- package/lib/dsh-adapter/prompt-guard.d.ts.map +1 -0
- package/lib/dsh-adapter/prompt-guard.js +872 -0
- package/lib/dsh-adapter/realm-skill-bridge.d.ts +365 -0
- package/lib/dsh-adapter/realm-skill-bridge.d.ts.map +1 -0
- package/lib/dsh-adapter/realm-skill-bridge.js +1180 -0
- package/lib/dsh-adapter/sanitizer-pipeline.d.ts +140 -0
- package/lib/dsh-adapter/sanitizer-pipeline.d.ts.map +1 -0
- package/lib/dsh-adapter/sanitizer-pipeline.js +431 -0
- package/lib/dsh-adapter/secure-bridge.d.ts +47 -0
- package/lib/dsh-adapter/secure-bridge.d.ts.map +1 -0
- package/lib/dsh-adapter/secure-bridge.js +35 -0
- package/lib/dsh-adapter/session-attribution.d.ts +70 -0
- package/lib/dsh-adapter/session-attribution.d.ts.map +1 -0
- package/lib/dsh-adapter/session-attribution.js +76 -0
- package/lib/dsh-adapter/sessions.d.ts +86 -0
- package/lib/dsh-adapter/sessions.d.ts.map +1 -0
- package/lib/dsh-adapter/sessions.js +179 -0
- package/lib/dsh-adapter/tcm.d.ts +55 -0
- package/lib/dsh-adapter/tcm.d.ts.map +1 -0
- package/lib/dsh-adapter/tcm.js +94 -0
- package/lib/dsh-adapter/td-bus.d.ts +87 -0
- package/lib/dsh-adapter/td-bus.d.ts.map +1 -0
- package/lib/dsh-adapter/td-bus.js +196 -0
- package/lib/dsh-adapter/tool-runner.d.ts +185 -0
- package/lib/dsh-adapter/tool-runner.d.ts.map +1 -0
- package/lib/dsh-adapter/tool-runner.js +271 -0
- package/lib/dsh-adapter/tools.d.ts +118 -0
- package/lib/dsh-adapter/tools.d.ts.map +1 -0
- package/lib/dsh-adapter/tools.js +292 -0
- package/lib/dsh-adapter/types.d.ts +23 -0
- package/lib/dsh-adapter/types.d.ts.map +1 -0
- package/lib/dsh-adapter/types.js +16 -0
- package/lib/dsh-adapter/voice-input.d.ts +30 -0
- package/lib/dsh-adapter/voice-input.d.ts.map +1 -0
- package/lib/dsh-adapter/voice-input.js +34 -0
- package/lib/dsh-adapter/web-search-tavily-bocha.d.ts +152 -0
- package/lib/dsh-adapter/web-search-tavily-bocha.d.ts.map +1 -0
- package/lib/dsh-adapter/web-search-tavily-bocha.js +289 -0
- package/lib/http-api.d.ts +2 -0
- package/lib/http-api.d.ts.map +1 -0
- package/lib/http-api.js +2 -0
- package/lib/index.d.ts +48 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +49 -0
- package/lib/intent-router.d.ts +2 -0
- package/lib/intent-router.d.ts.map +1 -0
- package/lib/intent-router.js +2 -0
- package/lib/llm-adapters.d.ts +2 -0
- package/lib/llm-adapters.d.ts.map +1 -0
- package/lib/llm-adapters.js +2 -0
- package/lib/local-llm-adapter.d.ts +2 -0
- package/lib/local-llm-adapter.d.ts.map +1 -0
- package/lib/local-llm-adapter.js +2 -0
- package/lib/local-storage.d.ts +2 -0
- package/lib/local-storage.d.ts.map +1 -0
- package/lib/local-storage.js +2 -0
- package/lib/model-router.d.ts +2 -0
- package/lib/model-router.d.ts.map +1 -0
- package/lib/model-router.js +2 -0
- package/lib/ohttp-gateway.d.ts +2 -0
- package/lib/ohttp-gateway.d.ts.map +1 -0
- package/lib/ohttp-gateway.js +2 -0
- package/lib/plugin-host.d.ts +2 -0
- package/lib/plugin-host.d.ts.map +1 -0
- package/lib/plugin-host.js +2 -0
- package/lib/privacy-policy.d.ts +2 -0
- package/lib/privacy-policy.d.ts.map +1 -0
- package/lib/privacy-policy.js +2 -0
- package/lib/prompt-guard.d.ts +2 -0
- package/lib/prompt-guard.d.ts.map +1 -0
- package/lib/prompt-guard.js +2 -0
- package/lib/sanitizer-pipeline.d.ts +2 -0
- package/lib/sanitizer-pipeline.d.ts.map +1 -0
- package/lib/sanitizer-pipeline.js +2 -0
- package/lib/secure-bridge.d.ts +2 -0
- package/lib/secure-bridge.d.ts.map +1 -0
- package/lib/secure-bridge.js +2 -0
- package/lib/sessions.d.ts +2 -0
- package/lib/sessions.d.ts.map +1 -0
- package/lib/sessions.js +2 -0
- package/lib/tcm.d.ts +2 -0
- package/lib/tcm.d.ts.map +1 -0
- package/lib/tcm.js +2 -0
- package/lib/td-bus.d.ts +2 -0
- package/lib/td-bus.d.ts.map +1 -0
- package/lib/td-bus.js +2 -0
- package/lib/tools.d.ts +2 -0
- package/lib/tools.d.ts.map +1 -0
- package/lib/tools.js +2 -0
- package/lib/voice-input.d.ts +2 -0
- package/lib/voice-input.d.ts.map +1 -0
- package/lib/voice-input.js +2 -0
- package/package.json +253 -3
- package/presets/agent-preset-edge.json +50 -0
- package/presets/edge.desktop-safe.patch.yml +503 -0
- package/presets/edge.patch.yml +557 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* prompt-guard — 端侧隐私安全防护(完整实现)
|
|
3
|
+
*
|
|
4
|
+
* 核心功能:
|
|
5
|
+
* 1. PII 脱敏(手机号、身份证、银行卡、邮箱、API Key)
|
|
6
|
+
* 2. 基础输入限制(长度、频率)
|
|
7
|
+
* 3. 中英文注入检测(16+ 模式)
|
|
8
|
+
* 4. privacy-policy 联动:输入端数据分类检测(secret 级阻断)
|
|
9
|
+
* 5. 与 sanitizer-pipeline 协调:输出端避免 desanitize→mask 矛盾
|
|
10
|
+
* 6. 全局频率限制(防 sessionId 绕过)
|
|
11
|
+
* 7. 可配置注入规则(cordis.yml rules 字段)
|
|
12
|
+
* 8. 模型辅助检测预留接口
|
|
13
|
+
*
|
|
14
|
+
* @module dsh-edge-agent/prompt-guard
|
|
15
|
+
*/
|
|
16
|
+
import { Service } from '@deepseek-ai/cordis';
|
|
17
|
+
import Schema from '@deepseek-ai/schemastery';
|
|
18
|
+
import type { PrivacyPolicyServiceImpl } from './privacy-policy.js';
|
|
19
|
+
export declare const name = "prompt-guard";
|
|
20
|
+
export declare const inject: readonly ["privacyPolicy", "auditLog", "llm"];
|
|
21
|
+
/** Minimal interface our router needs from the audit-log service. */
|
|
22
|
+
interface AuditLike {
|
|
23
|
+
log(entry: {
|
|
24
|
+
level: 'debug' | 'info' | 'warn' | 'error' | 'security';
|
|
25
|
+
kind: string;
|
|
26
|
+
source: string;
|
|
27
|
+
payload: Record<string, unknown>;
|
|
28
|
+
}): Promise<unknown>;
|
|
29
|
+
}
|
|
30
|
+
export interface InjectionRuleConfig {
|
|
31
|
+
name: string;
|
|
32
|
+
pattern: string;
|
|
33
|
+
/** Phase C: rule severity — `block` (default, hard reject) vs `warn`
|
|
34
|
+
* (passes through but audit-tagged) vs `sanitize` (rewrite each match to
|
|
35
|
+
* `[REDACTED:<ruleName>]`, audit `guard.rule.sanitized`, do NOT block;
|
|
36
|
+
* the rewritten text is exposed via `InputCheckResult.sanitizedText`). */
|
|
37
|
+
action?: 'block' | 'warn' | 'sanitize';
|
|
38
|
+
}
|
|
39
|
+
export interface Config {
|
|
40
|
+
maxInputLength: number;
|
|
41
|
+
maxRequestsPerMinute: number;
|
|
42
|
+
enablePIIRedaction: boolean;
|
|
43
|
+
enableInjectionDetection: boolean;
|
|
44
|
+
enableRateLimit: boolean;
|
|
45
|
+
rules: InjectionRuleConfig[];
|
|
46
|
+
enableModelDetection: boolean;
|
|
47
|
+
/** §7.125: 入口安检的设备操作正则层开关。 */
|
|
48
|
+
enableDeviceCommandFastPath: boolean;
|
|
49
|
+
modelDetectionProvider: string;
|
|
50
|
+
modelDetectionModel: string;
|
|
51
|
+
modelDetectionTimeoutMs: number;
|
|
52
|
+
modelDetectionMaxInputLength: number;
|
|
53
|
+
}
|
|
54
|
+
export declare const Config: Schema<Config>;
|
|
55
|
+
export interface InputCheckResult {
|
|
56
|
+
safe: boolean;
|
|
57
|
+
reason?: string;
|
|
58
|
+
riskLevel?: 'low' | 'medium' | 'high';
|
|
59
|
+
/** privacy-policy 数据分类结果('public' | 'internal' | 'confidential' | 'secret') */
|
|
60
|
+
dataClassification?: string;
|
|
61
|
+
/** 命中的注入规则名列表 */
|
|
62
|
+
injectionPatterns?: string[];
|
|
63
|
+
/** Phase C sanitize: rewritten text when one or more `sanitize`-tier
|
|
64
|
+
* injection rules rewrote matches. Undefined when no sanitize hit
|
|
65
|
+
* occurred. Callers may forward this in place of the original input
|
|
66
|
+
* to the model, but the original `text` argument is left untouched. */
|
|
67
|
+
sanitizedText?: string;
|
|
68
|
+
/** Phase C sanitize: rule names that rewrote matches (each at least once). */
|
|
69
|
+
sanitizedRules?: string[];
|
|
70
|
+
/** §7.125: the device-command verdict when the entry-layer regex matched.
|
|
71
|
+
* Present only on a hit; `pure` says whether the text was nothing but
|
|
72
|
+
* the device operation (and therefore eligible to skip the LLM check). */
|
|
73
|
+
deviceCommand?: {
|
|
74
|
+
device: string;
|
|
75
|
+
action: string;
|
|
76
|
+
matched: string;
|
|
77
|
+
pure: boolean;
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
export interface OutputCheckContext {
|
|
81
|
+
/** 该 session 是否由 sanitizer-pipeline 管理(有活跃映射表)。
|
|
82
|
+
* 为 true 时跳过 prompt-guard 的输出 PII 掩码,避免与 sanitizer desanitize 矛盾。 */
|
|
83
|
+
sanitized?: boolean;
|
|
84
|
+
}
|
|
85
|
+
export interface OutputCheckResult {
|
|
86
|
+
filtered: string;
|
|
87
|
+
redacted: Array<{
|
|
88
|
+
type: string;
|
|
89
|
+
masked: string;
|
|
90
|
+
}>;
|
|
91
|
+
}
|
|
92
|
+
export interface PromptGuardService {
|
|
93
|
+
checkInput(text: string, sessionId: string): Promise<InputCheckResult>;
|
|
94
|
+
checkOutput(text: string, context?: OutputCheckContext): Promise<OutputCheckResult>;
|
|
95
|
+
stop(): void;
|
|
96
|
+
}
|
|
97
|
+
export declare class PromptGuardServiceImpl extends Service implements PromptGuardService {
|
|
98
|
+
private readonly config;
|
|
99
|
+
private readonly privacyPolicy;
|
|
100
|
+
private readonly auditLog;
|
|
101
|
+
/** Local LLM runtime (provided by `local-llm-adapter`). Optional: when absent
|
|
102
|
+
* the model-based detection path is skipped silently (fail-open). */
|
|
103
|
+
private readonly llm;
|
|
104
|
+
private readonly requestCounts;
|
|
105
|
+
private globalCount;
|
|
106
|
+
private readonly globalMaxRequestsPerMinute;
|
|
107
|
+
private cleanupTimer;
|
|
108
|
+
private readonly injectionPatterns;
|
|
109
|
+
/** §7.125: operator-extended device-command terms (ADDITIVE on top of the
|
|
110
|
+
* built-in vocabulary in ./intent-signals.ts). */
|
|
111
|
+
private readonly deviceCommandOverrides;
|
|
112
|
+
constructor(ctx: any, config: Config, privacyPolicy?: PrivacyPolicyServiceImpl, auditLog?: AuditLike, llm?: any, deviceCommands?: {
|
|
113
|
+
devices?: string[];
|
|
114
|
+
actions?: string[];
|
|
115
|
+
});
|
|
116
|
+
/** 停止清理定时器。 */
|
|
117
|
+
stop(): void;
|
|
118
|
+
private startCleanupTimer;
|
|
119
|
+
checkInput(text: string, sessionId: string): Promise<InputCheckResult>;
|
|
120
|
+
checkOutput(text: string, context?: OutputCheckContext): Promise<OutputCheckResult>;
|
|
121
|
+
/**
|
|
122
|
+
* Model-based semantic safety check.
|
|
123
|
+
*
|
|
124
|
+
* Streams a security-classification prompt to the local LLM (Qwen3-4B by
|
|
125
|
+
* default) and parses a structured `{safe, threats, dataClass, rationale}`
|
|
126
|
+
* JSON verdict. Any failure mode — disabled flag, missing llm handle,
|
|
127
|
+
* text too long, network error, abort, malformed JSON — is **fail-open**:
|
|
128
|
+
* the method returns `null` and the regex/PII verdict from earlier steps
|
|
129
|
+
* stands. Only an explicit `safe:false` verdict is returned to the
|
|
130
|
+
* caller as a high-risk block.
|
|
131
|
+
*/
|
|
132
|
+
private modelBasedCheck;
|
|
133
|
+
private checkGlobalRateLimit;
|
|
134
|
+
private checkRateLimit;
|
|
135
|
+
/**
|
|
136
|
+
* §7.125 (2026-10-27): the device-command extension terms = patch config
|
|
137
|
+
* (config/edge.json stages.intent.deviceCommands) + the policy file's
|
|
138
|
+
* stages.intent.deviceCommands (hot-reloadable, read LIVE per check).
|
|
139
|
+
* Both are ADDITIVE on top of the built-in vocabulary — the same
|
|
140
|
+
* contract intent-router's Tier-0 uses.
|
|
141
|
+
*/
|
|
142
|
+
private deviceCommandTerms;
|
|
143
|
+
private audit;
|
|
144
|
+
}
|
|
145
|
+
declare module '@deepseek-ai/cordis' {
|
|
146
|
+
interface Context {
|
|
147
|
+
promptGuard: PromptGuardServiceImpl;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
export declare function apply(ctx: any, config: Config): Promise<() => Promise<void>>;
|
|
151
|
+
export {};
|
|
152
|
+
//# sourceMappingURL=prompt-guard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt-guard.d.ts","sourceRoot":"","sources":["../../src/dsh-adapter/prompt-guard.ts"],"names":[],"mappings":"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"}
|