@lobu/core 7.2.0 → 8.0.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 +8 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -7
- package/dist/index.js.map +1 -1
- package/dist/lobu-guidance.d.ts +5 -0
- package/dist/lobu-guidance.d.ts.map +1 -0
- package/dist/lobu-guidance.js +51 -0
- package/dist/lobu-guidance.js.map +1 -0
- package/dist/lobu-toml-schema.d.ts +49 -0
- package/dist/lobu-toml-schema.d.ts.map +1 -1
- package/dist/lobu-toml-schema.js +48 -0
- package/dist/lobu-toml-schema.js.map +1 -1
- package/dist/modules.d.ts +1 -47
- package/dist/modules.d.ts.map +1 -1
- package/dist/modules.js +0 -74
- package/dist/modules.js.map +1 -1
- package/dist/types.d.ts +38 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/encryption.d.ts +21 -0
- package/dist/utils/encryption.d.ts.map +1 -1
- package/dist/utils/encryption.js +50 -12
- package/dist/utils/encryption.js.map +1 -1
- package/dist/utils/session-file.d.ts +86 -0
- package/dist/utils/session-file.d.ts.map +1 -0
- package/dist/utils/session-file.js +104 -0
- package/dist/utils/session-file.js.map +1 -0
- package/dist/worker/transport.d.ts +0 -5
- package/dist/worker/transport.d.ts.map +1 -1
- package/dist/worker/wire.d.ts +105 -0
- package/dist/worker/wire.d.ts.map +1 -0
- package/dist/worker/wire.js +18 -0
- package/dist/worker/wire.js.map +1 -0
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -3,17 +3,17 @@ export * from "./agent-policy";
|
|
|
3
3
|
export type { AgentAccessStore, AgentConfigStore, AgentConnectionStore, AgentMetadata, AgentSettings, AgentStore, ChannelBinding, ConnectionSettings, Grant, GrantKind, StoredConnection, } from "./agent-store";
|
|
4
4
|
export { inferGrantKind } from "./agent-store";
|
|
5
5
|
export type { AgentConfigResponse, AgentInfo, CatalogProvider, Connection, McpConfig, ModelOption, PermissionGrant, PrefillMcp, PrefillSkill, ProviderInfo, ProviderState, ProviderStatus, SettingsSnapshot, Skill, SkillMcpServerInfo, } from "./api-types";
|
|
6
|
+
export * from "./capabilities";
|
|
6
7
|
export type { CommandContext, CommandDefinition } from "./command-registry";
|
|
7
8
|
export { CommandRegistry } from "./command-registry";
|
|
8
|
-
export { BaseInstructionProvider } from "./instruction-provider";
|
|
9
|
-
export * from "./capabilities";
|
|
10
9
|
export * from "./constants";
|
|
11
|
-
export * from "./guardrails";
|
|
12
10
|
export * from "./errors";
|
|
11
|
+
export * from "./guardrails";
|
|
12
|
+
export { BaseInstructionProvider } from "./instruction-provider";
|
|
13
13
|
export type { ProviderRegistryEntry, ProvidersConfigFile, } from "./integration-types";
|
|
14
|
-
export {
|
|
14
|
+
export { renderFallbackSystemContext, renderSkillMemorySection, } from "./lobu-guidance";
|
|
15
|
+
export { type AgentEntry as TomlAgentEntry, type EgressEntry as TomlEgressEntry, type LobuTomlConfig, lobuConfigSchema, type McpServerEntry as TomlMcpServerEntry, type MemoryEntry as TomlMemoryEntry, type NetworkEntry as TomlNetworkEntry, type PlatformEntry as TomlPlatformEntry, type ProviderEntry as TomlProviderEntry, type SkillsEntry as TomlSkillsEntry, type ToolsEntry, type ToolsEntry as TomlToolsEntry, type WorkerEntry as TomlWorkerEntry, } from "./lobu-toml-schema";
|
|
15
16
|
export * from "./logger";
|
|
16
|
-
export type { ActionButton, ModuleSessionContext } from "./modules";
|
|
17
17
|
export * from "./modules";
|
|
18
18
|
export type { OtelConfig, Span, Tracer } from "./otel";
|
|
19
19
|
export { createChildSpan, createRootSpan, createSpan, flushTracing, getCurrentSpan, getTraceparent, getTracer, initTracing, runInSpanContext, SpanKind, SpanStatusCode, shutdownTracing, withChildSpan, withSpan, } from "./otel";
|
|
@@ -22,7 +22,7 @@ export type { ConfigProviderMeta, ProviderConfigEntry, } from "./provider-config
|
|
|
22
22
|
export * from "./secret-refs";
|
|
23
23
|
export { getSentry, initSentry } from "./sentry";
|
|
24
24
|
export { extractTraceId, generateTraceId } from "./trace";
|
|
25
|
-
export type { AgentEgressConfig, AgentMcpConfig, AgentOptions, AuthProfile, CliBackendConfig, ConversationMessage, DeclaredCredential, DomainJudgeRule, HistoryMessage, InstalledProvider, InstructionContext, InstructionProvider, LogLevel, McpOAuthConfig, McpServerConfig, ModelSelectionMode, ModelSelectionState, NetworkConfig, NixConfig, ProviderModelPreferences, RegistryEntry, SessionContext, SkillConfig, SkillMcpServer, SkillsConfig, SuggestedPrompt, ThinkingLevel, ThreadResponsePayload, ToolsConfig, UserSuggestion, } from "./types";
|
|
25
|
+
export type { AgentEgressConfig, AgentMcpConfig, AgentOptions, AuthProfile, CliBackendConfig, ConversationMessage, DeclaredCredential, DomainJudgeRule, HistoryMessage, InstalledProvider, InstructionContext, InstructionProvider, LogLevel, McpOAuthConfig, McpServerConfig, ModelSelectionMode, ModelSelectionState, NetworkConfig, NixConfig, ProviderModelPreferences, RegistryEntry, SessionContext, SkillConfig, SkillMcpServer, SkillPreToolGuardrail, SkillsConfig, SuggestedPrompt, ThinkingLevel, ThreadResponsePayload, ToolsConfig, UserSuggestion, } from "./types";
|
|
26
26
|
export { hasCredentialSource } from "./types";
|
|
27
27
|
export type { BaseMessage } from "./types/message";
|
|
28
28
|
export * from "./utils/encryption";
|
|
@@ -33,7 +33,9 @@ export type { McpStatus, McpToolDef } from "./utils/mcp-tool-instructions";
|
|
|
33
33
|
export * from "./utils/network-domains";
|
|
34
34
|
export * from "./utils/retry";
|
|
35
35
|
export * from "./utils/sanitize";
|
|
36
|
+
export { entryToMessage, type ParsedMessage, parseSessionEntries, type SessionEntry, } from "./utils/session-file";
|
|
36
37
|
export * from "./utils/urls";
|
|
37
38
|
export * from "./worker/auth";
|
|
38
39
|
export type { WorkerTransport, WorkerTransportConfig, } from "./worker/transport";
|
|
40
|
+
export type { JobType, MessagePayload, QueuedMessage } from "./worker/wire";
|
|
39
41
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAIA,cAAc,gBAAgB,CAAC;AAE/B,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,oBAAoB,EACpB,aAAa,EACb,aAAa,EACb,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,KAAK,EACL,SAAS,EACT,gBAAgB,GACjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,YAAY,EACV,mBAAmB,EACnB,SAAS,EACT,eAAe,EACf,UAAU,EACV,SAAS,EACT,WAAW,EACX,eAAe,EACf,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,KAAK,EACL,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5E,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -16,26 +16,34 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
17
17
|
};
|
|
18
18
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.hasCredentialSource = exports.generateTraceId = exports.extractTraceId = exports.initSentry = exports.getSentry = exports.withSpan = exports.withChildSpan = exports.shutdownTracing = exports.SpanStatusCode = exports.SpanKind = exports.runInSpanContext = exports.initTracing = exports.getTracer = exports.getTraceparent = exports.getCurrentSpan = exports.flushTracing = exports.createSpan = exports.createRootSpan = exports.createChildSpan = exports.lobuConfigSchema = exports.BaseInstructionProvider = exports.CommandRegistry = exports.inferGrantKind = void 0;
|
|
19
|
+
exports.parseSessionEntries = exports.entryToMessage = exports.hasCredentialSource = exports.generateTraceId = exports.extractTraceId = exports.initSentry = exports.getSentry = exports.withSpan = exports.withChildSpan = exports.shutdownTracing = exports.SpanStatusCode = exports.SpanKind = exports.runInSpanContext = exports.initTracing = exports.getTracer = exports.getTraceparent = exports.getCurrentSpan = exports.flushTracing = exports.createSpan = exports.createRootSpan = exports.createChildSpan = exports.lobuConfigSchema = exports.renderSkillMemorySection = exports.renderFallbackSystemContext = exports.BaseInstructionProvider = exports.CommandRegistry = exports.inferGrantKind = void 0;
|
|
20
20
|
__exportStar(require("./agent-policy"), exports);
|
|
21
21
|
var agent_store_1 = require("./agent-store");
|
|
22
22
|
Object.defineProperty(exports, "inferGrantKind", { enumerable: true, get: function () { return agent_store_1.inferGrantKind; } });
|
|
23
|
+
__exportStar(require("./capabilities"), exports);
|
|
23
24
|
// Command registry
|
|
24
25
|
var command_registry_1 = require("./command-registry");
|
|
25
26
|
Object.defineProperty(exports, "CommandRegistry", { enumerable: true, get: function () { return command_registry_1.CommandRegistry; } });
|
|
26
|
-
// Shared base for InstructionProvider implementations (server + worker)
|
|
27
|
-
var instruction_provider_1 = require("./instruction-provider");
|
|
28
|
-
Object.defineProperty(exports, "BaseInstructionProvider", { enumerable: true, get: function () { return instruction_provider_1.BaseInstructionProvider; } });
|
|
29
|
-
__exportStar(require("./capabilities"), exports);
|
|
30
27
|
__exportStar(require("./constants"), exports);
|
|
31
|
-
// Guardrail primitive (type + registry + parallel runner + no-op builtin)
|
|
32
|
-
__exportStar(require("./guardrails"), exports);
|
|
33
28
|
// Errors & logging
|
|
34
29
|
__exportStar(require("./errors"), exports);
|
|
30
|
+
// Guardrail primitive (type + registry + parallel runner + no-op builtin)
|
|
31
|
+
__exportStar(require("./guardrails"), exports);
|
|
32
|
+
// Shared base for InstructionProvider implementations (server + worker)
|
|
33
|
+
var instruction_provider_1 = require("./instruction-provider");
|
|
34
|
+
Object.defineProperty(exports, "BaseInstructionProvider", { enumerable: true, get: function () { return instruction_provider_1.BaseInstructionProvider; } });
|
|
35
|
+
// Lobu memory guidance (rendered into the OpenClaw plugin's fallback system
|
|
36
|
+
// context and into the bundled `lobu` skill's "Memory Defaults" section). Lives
|
|
37
|
+
// in core so the openclaw-plugin and the server-side skill-sync test can both
|
|
38
|
+
// import it via the package name instead of a cross-package relative path.
|
|
39
|
+
var lobu_guidance_1 = require("./lobu-guidance");
|
|
40
|
+
Object.defineProperty(exports, "renderFallbackSystemContext", { enumerable: true, get: function () { return lobu_guidance_1.renderFallbackSystemContext; } });
|
|
41
|
+
Object.defineProperty(exports, "renderSkillMemorySection", { enumerable: true, get: function () { return lobu_guidance_1.renderSkillMemorySection; } });
|
|
35
42
|
// lobu.toml zod schema (canonical — used by CLI and gateway)
|
|
36
43
|
var lobu_toml_schema_1 = require("./lobu-toml-schema");
|
|
37
44
|
Object.defineProperty(exports, "lobuConfigSchema", { enumerable: true, get: function () { return lobu_toml_schema_1.lobuConfigSchema; } });
|
|
38
45
|
__exportStar(require("./logger"), exports);
|
|
46
|
+
// Module system
|
|
39
47
|
__exportStar(require("./modules"), exports);
|
|
40
48
|
// OpenTelemetry tracing
|
|
41
49
|
var otel_1 = require("./otel");
|
|
@@ -71,6 +79,10 @@ __exportStar(require("./utils/lock"), exports);
|
|
|
71
79
|
__exportStar(require("./utils/network-domains"), exports);
|
|
72
80
|
__exportStar(require("./utils/retry"), exports);
|
|
73
81
|
__exportStar(require("./utils/sanitize"), exports);
|
|
82
|
+
// Shared OpenClaw session.jsonl parser (gateway + worker).
|
|
83
|
+
var session_file_1 = require("./utils/session-file");
|
|
84
|
+
Object.defineProperty(exports, "entryToMessage", { enumerable: true, get: function () { return session_file_1.entryToMessage; } });
|
|
85
|
+
Object.defineProperty(exports, "parseSessionEntries", { enumerable: true, get: function () { return session_file_1.parseSessionEntries; } });
|
|
74
86
|
__exportStar(require("./utils/urls"), exports);
|
|
75
87
|
__exportStar(require("./worker/auth"), exports);
|
|
76
88
|
//# 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":";;AAEA,4EAA4E;;;;;;;;;;;;;;;;;AAE5E,iDAA+B;AAe/B,6CAA+C;AAAtC,6GAAA,cAAc,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAEA,4EAA4E;;;;;;;;;;;;;;;;;AAE5E,iDAA+B;AAe/B,6CAA+C;AAAtC,6GAAA,cAAc,OAAA;AAmBvB,iDAA+B;AAE/B,mBAAmB;AACnB,uDAAqD;AAA5C,mHAAA,eAAe,OAAA;AACxB,8CAA4B;AAC5B,mBAAmB;AACnB,2CAAyB;AACzB,0EAA0E;AAC1E,+CAA6B;AAC7B,wEAAwE;AACxE,+DAAiE;AAAxD,+HAAA,uBAAuB,OAAA;AAMhC,4EAA4E;AAC5E,gFAAgF;AAChF,8EAA8E;AAC9E,2EAA2E;AAC3E,iDAGyB;AAFvB,4HAAA,2BAA2B,OAAA;AAC3B,yHAAA,wBAAwB,OAAA;AAE1B,6DAA6D;AAC7D,uDAc4B;AAV1B,oHAAA,gBAAgB,OAAA;AAWlB,2CAAyB;AACzB,gBAAgB;AAChB,4CAA0B;AAE1B,wBAAwB;AACxB,+BAegB;AAdd,uGAAA,eAAe,OAAA;AACf,sGAAA,cAAc,OAAA;AACd,kGAAA,UAAU,OAAA;AACV,oGAAA,YAAY,OAAA;AACZ,sGAAA,cAAc,OAAA;AACd,sGAAA,cAAc,OAAA;AACd,iGAAA,SAAS,OAAA;AACT,mGAAA,WAAW,OAAA;AACX,wGAAA,gBAAgB,OAAA;AAChB,gGAAA,QAAQ,OAAA;AACR,sGAAA,cAAc,OAAA;AACd,uGAAA,eAAe,OAAA;AACf,qGAAA,aAAa,OAAA;AACb,gGAAA,QAAQ,OAAA;AAeV,gDAA8B;AAC9B,gBAAgB;AAChB,mCAAiD;AAAxC,mGAAA,SAAS,OAAA;AAAE,oGAAA,UAAU,OAAA;AAC9B,iCAA0D;AAAjD,uGAAA,cAAc,OAAA;AAAE,wGAAA,eAAe,OAAA;AAmCxC,iCAA8C;AAArC,4GAAA,mBAAmB,OAAA;AAI5B,YAAY;AACZ,qDAAmC;AACnC,8CAA4B;AAC5B,+CAA6B;AAC7B,+CAA6B;AAE7B,0DAAwC;AACxC,gDAA8B;AAC9B,mDAAiC;AACjC,2DAA2D;AAC3D,qDAK8B;AAJ5B,8GAAA,cAAc,OAAA;AAEd,mHAAA,mBAAmB,OAAA;AAGrB,+CAA6B;AAC7B,gDAA8B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lobu-guidance.d.ts","sourceRoot":"","sources":["../src/lobu-guidance.ts"],"names":[],"mappings":"AA8BA,wBAAgB,2BAA2B,CAAC,OAAO,CAAC,EAAE;IACpD,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GAAG,MAAM,CAkBT;AAED,wBAAgB,wBAAwB,IAAI,MAAM,CAYjD"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.renderFallbackSystemContext = renderFallbackSystemContext;
|
|
4
|
+
exports.renderSkillMemorySection = renderSkillMemorySection;
|
|
5
|
+
const MEMORY_INTRO = "Your long-term memory is powered by Lobu. Do NOT use local files (memory/, MEMORY.md) for memory.";
|
|
6
|
+
const MEMORY_RULE_TEMPLATES = [
|
|
7
|
+
"Lobu automatically recalls relevant memories when you receive a message.",
|
|
8
|
+
"To save something, call {{saveTool}} with the content and an appropriate semantic_type.",
|
|
9
|
+
"To search, call {{searchTool}}. Results include view_url links to the web interface.",
|
|
10
|
+
"NEVER construct Lobu URLs yourself. When the user asks for a link, call {{searchTool}} to get the correct view_url.",
|
|
11
|
+
'When the user says "remember this", save it to Lobu immediately.',
|
|
12
|
+
];
|
|
13
|
+
function renderTemplate(template, tools) {
|
|
14
|
+
// Use regex /g instead of String.prototype.replaceAll so this file compiles
|
|
15
|
+
// against core's ES2020 lib (replaceAll lands in ES2021).
|
|
16
|
+
return template
|
|
17
|
+
.replace(/\{\{saveTool\}\}/g, tools.saveTool)
|
|
18
|
+
.replace(/\{\{searchTool\}\}/g, tools.searchTool);
|
|
19
|
+
}
|
|
20
|
+
function renderLobuMemoryGuidance(tools) {
|
|
21
|
+
return MEMORY_RULE_TEMPLATES.map((template) => renderTemplate(template, tools));
|
|
22
|
+
}
|
|
23
|
+
function renderFallbackSystemContext(options) {
|
|
24
|
+
const isGateway = options?.gatewayMode === true;
|
|
25
|
+
const tools = isGateway
|
|
26
|
+
? { saveTool: "save_memory", searchTool: "search_memory" }
|
|
27
|
+
: { saveTool: "lobu_save_memory", searchTool: "lobu_search_memory" };
|
|
28
|
+
const lines = renderLobuMemoryGuidance(tools);
|
|
29
|
+
const authGuidance = isGateway
|
|
30
|
+
? "\n- If save_memory or search_memory returns an authentication error, call lobu_login to start authentication. After the user completes login, call lobu_login_check to finish."
|
|
31
|
+
: "";
|
|
32
|
+
return `<lobu-system>
|
|
33
|
+
## Memory
|
|
34
|
+
|
|
35
|
+
${MEMORY_INTRO}
|
|
36
|
+
${lines.map((line) => `- ${line}`).join("\n")}${authGuidance}
|
|
37
|
+
</lobu-system>`;
|
|
38
|
+
}
|
|
39
|
+
function renderSkillMemorySection() {
|
|
40
|
+
const lines = renderLobuMemoryGuidance({
|
|
41
|
+
saveTool: "save_memory",
|
|
42
|
+
searchTool: "search_memory",
|
|
43
|
+
});
|
|
44
|
+
return [
|
|
45
|
+
"## Memory Defaults",
|
|
46
|
+
"",
|
|
47
|
+
MEMORY_INTRO,
|
|
48
|
+
...lines.map((line) => `- ${line}`),
|
|
49
|
+
].join("\n");
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=lobu-guidance.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lobu-guidance.js","sourceRoot":"","sources":["../src/lobu-guidance.ts"],"names":[],"mappings":";;AA8BA,kEAoBC;AAED,4DAYC;AA3DD,MAAM,YAAY,GAChB,mGAAmG,CAAC;AAEtG,MAAM,qBAAqB,GAAG;IAC5B,0EAA0E;IAC1E,yFAAyF;IACzF,sFAAsF;IACtF,qHAAqH;IACrH,kEAAkE;CACnE,CAAC;AAEF,SAAS,cAAc,CAAC,QAAgB,EAAE,KAA0B;IAClE,4EAA4E;IAC5E,0DAA0D;IAC1D,OAAO,QAAQ;SACZ,OAAO,CAAC,mBAAmB,EAAE,KAAK,CAAC,QAAQ,CAAC;SAC5C,OAAO,CAAC,qBAAqB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,wBAAwB,CAAC,KAA0B;IAC1D,OAAO,qBAAqB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC5C,cAAc,CAAC,QAAQ,EAAE,KAAK,CAAC,CAChC,CAAC;AACJ,CAAC;AAED,SAAgB,2BAA2B,CAAC,OAE3C;IACC,MAAM,SAAS,GAAG,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAChD,MAAM,KAAK,GAAwB,SAAS;QAC1C,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,eAAe,EAAE;QAC1D,CAAC,CAAC,EAAE,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,oBAAoB,EAAE,CAAC;IAEvE,MAAM,KAAK,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAE9C,MAAM,YAAY,GAAG,SAAS;QAC5B,CAAC,CAAC,gLAAgL;QAClL,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;;;EAGP,YAAY;EACZ,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,YAAY;eAC7C,CAAC;AAChB,CAAC;AAED,SAAgB,wBAAwB;IACtC,MAAM,KAAK,GAAG,wBAAwB,CAAC;QACrC,QAAQ,EAAE,aAAa;QACvB,UAAU,EAAE,eAAe;KAC5B,CAAC,CAAC;IAEH,OAAO;QACL,oBAAoB;QACpB,EAAE;QACF,YAAY;QACZ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;KACpC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
|
|
@@ -96,6 +96,34 @@ declare const egressSchema: z.ZodObject<{
|
|
|
96
96
|
extra_policy: z.ZodOptional<z.ZodString>;
|
|
97
97
|
judge_model: z.ZodOptional<z.ZodString>;
|
|
98
98
|
}, z.core.$strip>;
|
|
99
|
+
/**
|
|
100
|
+
* Inline guardrail declared in `lobu.toml` as an array of `[[agents.<id>.guardrails_inline]]`
|
|
101
|
+
* tables. Sibling to the name-based `guardrails = ["secret-scan", ...]` list —
|
|
102
|
+
* use this when you want to attach an ad-hoc LLM-judge guardrail without
|
|
103
|
+
* registering a named guardrail at gateway boot.
|
|
104
|
+
*
|
|
105
|
+
* Example:
|
|
106
|
+
* [[agents.<id>.guardrails_inline]]
|
|
107
|
+
* stage = "output"
|
|
108
|
+
* judge = "Never mention competitors."
|
|
109
|
+
*
|
|
110
|
+
* [[agents.<id>.guardrails_inline]]
|
|
111
|
+
* stage = "pre-tool"
|
|
112
|
+
* tools = ["github.delete_repo"]
|
|
113
|
+
* judge = "Only allow when issue ref matches active sprint."
|
|
114
|
+
*
|
|
115
|
+
* `tools` is only meaningful for `pre-tool` and is silently ignored for
|
|
116
|
+
* other stages.
|
|
117
|
+
*/
|
|
118
|
+
declare const guardrailInlineSchema: z.ZodObject<{
|
|
119
|
+
stage: z.ZodEnum<{
|
|
120
|
+
input: "input";
|
|
121
|
+
output: "output";
|
|
122
|
+
"pre-tool": "pre-tool";
|
|
123
|
+
}>;
|
|
124
|
+
judge: z.ZodString;
|
|
125
|
+
tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
126
|
+
}, z.core.$strip>;
|
|
99
127
|
declare const toolsSchema: z.ZodObject<{
|
|
100
128
|
pre_approved: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
101
129
|
allowed: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
@@ -183,6 +211,16 @@ declare const agentEntrySchema: z.ZodObject<{
|
|
|
183
211
|
strict: z.ZodOptional<z.ZodBoolean>;
|
|
184
212
|
}, z.core.$strip>>;
|
|
185
213
|
guardrails: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
214
|
+
guardrails_disabled: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
215
|
+
guardrails_inline: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
216
|
+
stage: z.ZodEnum<{
|
|
217
|
+
input: "input";
|
|
218
|
+
output: "output";
|
|
219
|
+
"pre-tool": "pre-tool";
|
|
220
|
+
}>;
|
|
221
|
+
judge: z.ZodString;
|
|
222
|
+
tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
223
|
+
}, z.core.$strip>>>;
|
|
186
224
|
worker: z.ZodOptional<z.ZodObject<{
|
|
187
225
|
nix_packages: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
188
226
|
}, z.core.$strip>>;
|
|
@@ -288,6 +326,16 @@ export declare const lobuConfigSchema: z.ZodObject<{
|
|
|
288
326
|
strict: z.ZodOptional<z.ZodBoolean>;
|
|
289
327
|
}, z.core.$strip>>;
|
|
290
328
|
guardrails: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
329
|
+
guardrails_disabled: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
330
|
+
guardrails_inline: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
331
|
+
stage: z.ZodEnum<{
|
|
332
|
+
input: "input";
|
|
333
|
+
output: "output";
|
|
334
|
+
"pre-tool": "pre-tool";
|
|
335
|
+
}>;
|
|
336
|
+
judge: z.ZodString;
|
|
337
|
+
tools: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
338
|
+
}, z.core.$strip>>>;
|
|
291
339
|
worker: z.ZodOptional<z.ZodObject<{
|
|
292
340
|
nix_packages: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
293
341
|
}, z.core.$strip>>;
|
|
@@ -326,5 +374,6 @@ export type EgressEntry = z.infer<typeof egressSchema>;
|
|
|
326
374
|
export type ToolsEntry = z.infer<typeof toolsSchema>;
|
|
327
375
|
export type WorkerEntry = z.infer<typeof workerSchema>;
|
|
328
376
|
export type MemoryEntry = z.infer<typeof memorySchema>;
|
|
377
|
+
export type GuardrailInlineEntry = z.infer<typeof guardrailInlineSchema>;
|
|
329
378
|
export {};
|
|
330
379
|
//# sourceMappingURL=lobu-toml-schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lobu-toml-schema.d.ts","sourceRoot":"","sources":["../src/lobu-toml-schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,QAAA,MAAM,cAAc;;;;;iBAWhB,CAAC;AAIL,QAAA,MAAM,cAAc;;;;;iBA0BlB,CAAC;AAaH,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;iBAsBnB,CAAC;AAIH,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;iBAEhB,CAAC;AAYH,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;GA4Bd,CAAC;AAIN,QAAA,MAAM,YAAY;;;iBAKhB,CAAC;AAmBH,QAAA,MAAM,WAAW;;;;;iBAef,CAAC;AAIH,QAAA,MAAM,YAAY;;iBAEhB,CAAC;AAuBH,QAAA,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"lobu-toml-schema.d.ts","sourceRoot":"","sources":["../src/lobu-toml-schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,QAAA,MAAM,cAAc;;;;;iBAWhB,CAAC;AAIL,QAAA,MAAM,cAAc;;;;;iBA0BlB,CAAC;AAaH,QAAA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;iBAsBnB,CAAC;AAIH,QAAA,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;iBAEhB,CAAC;AAYH,QAAA,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;GA4Bd,CAAC;AAIN,QAAA,MAAM,YAAY;;;iBAKhB,CAAC;AAIH;;;;;;;;;;;;;;;;;;GAkBG;AACH,QAAA,MAAM,qBAAqB;;;;;;;;iBAazB,CAAC;AAmBH,QAAA,MAAM,WAAW;;;;;iBAef,CAAC;AAIH,QAAA,MAAM,YAAY;;iBAEhB,CAAC;AAuBH,QAAA,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAgCpB,CAAC;AAIH,QAAA,MAAM,YAAY;;;;;;;;;;;;;kBAcP,CAAC;AAIZ,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAG3B,CAAC;AAIH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC9D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC3D,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC3D,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAC7D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AACvD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACzD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AACvD,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AACrD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AACvD,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AACvD,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
|
package/dist/lobu-toml-schema.js
CHANGED
|
@@ -128,6 +128,40 @@ const egressSchema = zod_1.z.object({
|
|
|
128
128
|
/** Judge model identifier (defaults to a fast Haiku model). */
|
|
129
129
|
judge_model: zod_1.z.string().optional(),
|
|
130
130
|
});
|
|
131
|
+
// ── Guardrails (inline) ─────────────────────────────────────────────────────
|
|
132
|
+
/**
|
|
133
|
+
* Inline guardrail declared in `lobu.toml` as an array of `[[agents.<id>.guardrails_inline]]`
|
|
134
|
+
* tables. Sibling to the name-based `guardrails = ["secret-scan", ...]` list —
|
|
135
|
+
* use this when you want to attach an ad-hoc LLM-judge guardrail without
|
|
136
|
+
* registering a named guardrail at gateway boot.
|
|
137
|
+
*
|
|
138
|
+
* Example:
|
|
139
|
+
* [[agents.<id>.guardrails_inline]]
|
|
140
|
+
* stage = "output"
|
|
141
|
+
* judge = "Never mention competitors."
|
|
142
|
+
*
|
|
143
|
+
* [[agents.<id>.guardrails_inline]]
|
|
144
|
+
* stage = "pre-tool"
|
|
145
|
+
* tools = ["github.delete_repo"]
|
|
146
|
+
* judge = "Only allow when issue ref matches active sprint."
|
|
147
|
+
*
|
|
148
|
+
* `tools` is only meaningful for `pre-tool` and is silently ignored for
|
|
149
|
+
* other stages.
|
|
150
|
+
*/
|
|
151
|
+
const guardrailInlineSchema = zod_1.z.object({
|
|
152
|
+
stage: zod_1.z.enum(["input", "output", "pre-tool"]),
|
|
153
|
+
/**
|
|
154
|
+
* Inline LLM-judge policy text. Required for now — built-in references go
|
|
155
|
+
* in the sibling `guardrails = [...]` list. The judge runs through the
|
|
156
|
+
* shared TextJudge engine (Haiku + 5-min cache + circuit breaker).
|
|
157
|
+
*/
|
|
158
|
+
judge: zod_1.z.string().min(1),
|
|
159
|
+
/**
|
|
160
|
+
* Optional pre-tool narrowing. Only meaningful when `stage = "pre-tool"`.
|
|
161
|
+
* When omitted the guardrail runs on every tool call.
|
|
162
|
+
*/
|
|
163
|
+
tools: zod_1.z.array(zod_1.z.string()).optional(),
|
|
164
|
+
});
|
|
131
165
|
// ── Tools ───────────────────────────────────────────────────────────────────
|
|
132
166
|
/**
|
|
133
167
|
* Accepted `pre_approved` entry formats:
|
|
@@ -195,6 +229,20 @@ const agentEntrySchema = zod_1.z.object({
|
|
|
195
229
|
* registered in the gateway's GuardrailRegistry. See packages/core/src/guardrails.
|
|
196
230
|
*/
|
|
197
231
|
guardrails: zod_1.z.array(zod_1.z.string()).optional(),
|
|
232
|
+
/**
|
|
233
|
+
* Operator's exclude list: built-in / skill-provided guardrails that
|
|
234
|
+
* should be turned off for this agent even if a skill declared them.
|
|
235
|
+
* Names are matched against {@link Guardrail.name}, including the
|
|
236
|
+
* synthesized `inline:<stage>:<hash8>` names for inline judges from skills.
|
|
237
|
+
*/
|
|
238
|
+
guardrails_disabled: zod_1.z.array(zod_1.z.string()).optional(),
|
|
239
|
+
/**
|
|
240
|
+
* Inline guardrails declared directly on the agent (no registry lookup).
|
|
241
|
+
* Each entry materializes into an ad-hoc registered guardrail named
|
|
242
|
+
* `inline:<stage>:<hash8>` (hash of policy text) and is merged into the
|
|
243
|
+
* effective per-agent list at startup.
|
|
244
|
+
*/
|
|
245
|
+
guardrails_inline: zod_1.z.array(guardrailInlineSchema).optional(),
|
|
198
246
|
worker: workerSchema.optional(),
|
|
199
247
|
preview: previewSchema.optional(),
|
|
200
248
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lobu-toml-schema.js","sourceRoot":"","sources":["../src/lobu-toml-schema.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"lobu-toml-schema.js","sourceRoot":"","sources":["../src/lobu-toml-schema.ts"],"names":[],"mappings":"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"}
|
package/dist/modules.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export interface ModuleInterface
|
|
1
|
+
export interface ModuleInterface {
|
|
2
2
|
/** Module identifier */
|
|
3
3
|
name: string;
|
|
4
4
|
/** Check if module should be enabled based on environment */
|
|
@@ -8,38 +8,8 @@ export interface ModuleInterface<_TModuleData = unknown> {
|
|
|
8
8
|
/** Register HTTP endpoints with Express app */
|
|
9
9
|
registerEndpoints(app: any): void;
|
|
10
10
|
}
|
|
11
|
-
export interface WorkerContext {
|
|
12
|
-
workspaceDir: string;
|
|
13
|
-
userId: string;
|
|
14
|
-
conversationId: string;
|
|
15
|
-
}
|
|
16
|
-
export interface WorkerModule<TModuleData = unknown> extends ModuleInterface<TModuleData> {
|
|
17
|
-
/** Initialize workspace - called when worker starts session */
|
|
18
|
-
initWorkspace(config: any): Promise<void>;
|
|
19
|
-
/** Called at session start - can modify system prompt */
|
|
20
|
-
onSessionStart(context: ModuleSessionContext): Promise<ModuleSessionContext>;
|
|
21
|
-
/** Called at session end - can add action buttons */
|
|
22
|
-
onSessionEnd(context: ModuleSessionContext): Promise<ActionButton[]>;
|
|
23
|
-
/** Collect module-specific data before sending response. Return null if no data. */
|
|
24
|
-
onBeforeResponse(context: WorkerContext): Promise<TModuleData | null>;
|
|
25
|
-
}
|
|
26
|
-
export interface ModuleSessionContext {
|
|
27
|
-
userId: string;
|
|
28
|
-
conversationId: string;
|
|
29
|
-
systemPrompt: string;
|
|
30
|
-
workspace?: any;
|
|
31
|
-
}
|
|
32
|
-
export interface ActionButton {
|
|
33
|
-
text: string;
|
|
34
|
-
action_id: string;
|
|
35
|
-
style?: "primary" | "danger";
|
|
36
|
-
value?: string;
|
|
37
|
-
url?: string;
|
|
38
|
-
}
|
|
39
11
|
export interface IModuleRegistry {
|
|
40
12
|
register(module: ModuleInterface): void;
|
|
41
|
-
getWorkerModules(): WorkerModule[];
|
|
42
|
-
registerAvailableModules(modulePackages?: string[]): Promise<void>;
|
|
43
13
|
initAll(): Promise<void>;
|
|
44
14
|
registerEndpoints(app: any): void;
|
|
45
15
|
/** Return all registered modules as base ModuleInterface array. */
|
|
@@ -68,24 +38,8 @@ export interface IModuleRegistry {
|
|
|
68
38
|
export declare class ModuleRegistry implements IModuleRegistry {
|
|
69
39
|
private modules;
|
|
70
40
|
register(module: ModuleInterface): void;
|
|
71
|
-
/**
|
|
72
|
-
* Automatically discover and register available modules.
|
|
73
|
-
* Tries to import module packages and registers them if available.
|
|
74
|
-
*
|
|
75
|
-
* @param modulePackages - List of module package names to try loading.
|
|
76
|
-
* Users can provide custom modules to register.
|
|
77
|
-
*
|
|
78
|
-
* @example
|
|
79
|
-
* // Register custom modules
|
|
80
|
-
* await moduleRegistry.registerAvailableModules([
|
|
81
|
-
* '@mycompany/slack-module',
|
|
82
|
-
* '@mycompany/jira-module'
|
|
83
|
-
* ]);
|
|
84
|
-
*/
|
|
85
|
-
registerAvailableModules(modulePackages?: string[]): Promise<void>;
|
|
86
41
|
initAll(): Promise<void>;
|
|
87
42
|
registerEndpoints(app: any): void;
|
|
88
|
-
getWorkerModules(): WorkerModule[];
|
|
89
43
|
getModules(): ModuleInterface[];
|
|
90
44
|
}
|
|
91
45
|
/**
|
package/dist/modules.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modules.d.ts","sourceRoot":"","sources":["../src/modules.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,eAAe
|
|
1
|
+
{"version":3,"file":"modules.d.ts","sourceRoot":"","sources":["../src/modules.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,eAAe;IAC9B,wBAAwB;IACxB,IAAI,EAAE,MAAM,CAAC;IAEb,6DAA6D;IAC7D,SAAS,IAAI,OAAO,CAAC;IAErB,iDAAiD;IACjD,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB,+CAA+C;IAC/C,iBAAiB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;CACnC;AAMD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAAC;IACxC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,iBAAiB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAAC;IAClC,mEAAmE;IACnE,UAAU,IAAI,eAAe,EAAE,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,qBAAa,cAAe,YAAW,eAAe;IACpD,OAAO,CAAC,OAAO,CAA2C;IAE1D,QAAQ,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAMjC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ9B,iBAAiB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI;IAajC,UAAU,IAAI,eAAe,EAAE;CAGhC;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
|
package/dist/modules.js
CHANGED
|
@@ -1,37 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
3
|
exports.moduleRegistry = exports.ModuleRegistry = void 0;
|
|
37
4
|
const logger_1 = require("./logger");
|
|
@@ -65,44 +32,6 @@ class ModuleRegistry {
|
|
|
65
32
|
this.modules.set(module.name, module);
|
|
66
33
|
}
|
|
67
34
|
}
|
|
68
|
-
/**
|
|
69
|
-
* Automatically discover and register available modules.
|
|
70
|
-
* Tries to import module packages and registers them if available.
|
|
71
|
-
*
|
|
72
|
-
* @param modulePackages - List of module package names to try loading.
|
|
73
|
-
* Users can provide custom modules to register.
|
|
74
|
-
*
|
|
75
|
-
* @example
|
|
76
|
-
* // Register custom modules
|
|
77
|
-
* await moduleRegistry.registerAvailableModules([
|
|
78
|
-
* '@mycompany/slack-module',
|
|
79
|
-
* '@mycompany/jira-module'
|
|
80
|
-
* ]);
|
|
81
|
-
*/
|
|
82
|
-
async registerAvailableModules(modulePackages = []) {
|
|
83
|
-
for (const packageName of modulePackages) {
|
|
84
|
-
try {
|
|
85
|
-
// Dynamic import to avoid build-time dependencies
|
|
86
|
-
const moduleExports = await Promise.resolve(`${packageName}`).then(s => __importStar(require(s)));
|
|
87
|
-
// Try common export patterns
|
|
88
|
-
const ModuleClass = moduleExports.default ||
|
|
89
|
-
Object.values(moduleExports).find((exp) => typeof exp === "function" && exp.name.endsWith("Module"));
|
|
90
|
-
if (ModuleClass && typeof ModuleClass === "function") {
|
|
91
|
-
const moduleInstance = new ModuleClass();
|
|
92
|
-
if (!this.modules.has(moduleInstance.name)) {
|
|
93
|
-
this.register(moduleInstance);
|
|
94
|
-
logger.debug(`${packageName} registered`);
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
logger.debug(`${packageName}: No module class found in exports`);
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
catch {
|
|
102
|
-
logger.debug(`${packageName} not available`);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
35
|
async initAll() {
|
|
107
36
|
for (const module of this.modules.values()) {
|
|
108
37
|
logger.debug(`Initializing module: ${module.name}`);
|
|
@@ -120,9 +49,6 @@ class ModuleRegistry {
|
|
|
120
49
|
}
|
|
121
50
|
}
|
|
122
51
|
}
|
|
123
|
-
getWorkerModules() {
|
|
124
|
-
return Array.from(this.modules.values()).filter((m) => "onBeforeResponse" in m);
|
|
125
|
-
}
|
|
126
52
|
getModules() {
|
|
127
53
|
return Array.from(this.modules.values());
|
|
128
54
|
}
|
package/dist/modules.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modules.js","sourceRoot":"","sources":["../src/modules.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"modules.js","sourceRoot":"","sources":["../src/modules.ts"],"names":[],"mappings":";;;AAAA,qCAAwC;AAExC,MAAM,MAAM,GAAG,IAAA,qBAAY,EAAC,SAAS,CAAC,CAAC;AAgCvC;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAa,cAAc;IAA3B;QACU,YAAO,GAAiC,IAAI,GAAG,EAAE,CAAC;IAgC5D,CAAC;IA9BC,QAAQ,CAAC,MAAuB;QAC9B,IAAI,MAAM,CAAC,SAAS,EAAE,EAAE,CAAC;YACvB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO;QACX,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,MAAM,CAAC,KAAK,CAAC,wBAAwB,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACpD,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,MAAM,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,IAAI,cAAc,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,iBAAiB,CAAC,GAAQ;QACxB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,IAAI,CAAC;gBACH,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;YAChC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CACV,2CAA2C,MAAM,CAAC,IAAI,GAAG,EACzD,KAAK,CACN,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,UAAU;QACR,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;CACF;AAjCD,wCAiCC;AAED;;;GAGG;AACU,QAAA,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -182,7 +182,45 @@ export interface SkillConfig {
|
|
|
182
182
|
modelPreference?: string;
|
|
183
183
|
/** Thinking level budget for this skill */
|
|
184
184
|
thinkingLevel?: ThinkingLevel;
|
|
185
|
+
/**
|
|
186
|
+
* Guardrails declared by the skill.
|
|
187
|
+
*
|
|
188
|
+
* Skills may only declare `pre-tool` guardrails — the asymmetry is
|
|
189
|
+
* deliberate. `input` (user message → worker) and `output` (worker text →
|
|
190
|
+
* user) are agent-wide concerns: a skill can't decide for the operator
|
|
191
|
+
* which messages should reach which agent or which words an agent may
|
|
192
|
+
* speak. `pre-tool` is scoped to specific tool invocations, which is what
|
|
193
|
+
* a skill knows about — it can reasonably say "before this tool runs,
|
|
194
|
+
* apply this judge".
|
|
195
|
+
*
|
|
196
|
+
* Discriminated by `kind` so invalid combinations (neither / both) are
|
|
197
|
+
* compile-time TS errors instead of runtime warnings:
|
|
198
|
+
* - `{ kind: "builtin", name }` — reference a registered guardrail.
|
|
199
|
+
* The optional `tools` field is ignored for builtins (built-ins
|
|
200
|
+
* decide their own input filtering); use an inline judge if you
|
|
201
|
+
* want per-tool narrowing.
|
|
202
|
+
* - `{ kind: "judge", policy, tools? }` — ad-hoc LLM-judge policy;
|
|
203
|
+
* `tools` narrows the judge to specific tool names (matched against
|
|
204
|
+
* `toolName` in {@link PreToolGuardrailContext}); when absent, the
|
|
205
|
+
* guardrail runs on every pre-tool invocation.
|
|
206
|
+
*/
|
|
207
|
+
guardrails?: {
|
|
208
|
+
"pre-tool"?: Array<SkillPreToolGuardrail>;
|
|
209
|
+
};
|
|
185
210
|
}
|
|
211
|
+
/**
|
|
212
|
+
* Discriminated union of legal skill-declared pre-tool guardrail entries.
|
|
213
|
+
* Each entry must be either a built-in reference or an inline judge --
|
|
214
|
+
* setting both, or neither, is rejected by the type checker.
|
|
215
|
+
*/
|
|
216
|
+
export type SkillPreToolGuardrail = {
|
|
217
|
+
kind: "builtin";
|
|
218
|
+
name: string;
|
|
219
|
+
} | {
|
|
220
|
+
kind: "judge";
|
|
221
|
+
policy: string;
|
|
222
|
+
tools?: string[];
|
|
223
|
+
};
|
|
186
224
|
/**
|
|
187
225
|
* Skills configuration for agent settings.
|
|
188
226
|
* Contains list of configured skills that can be enabled/disabled.
|
|
@@ -424,7 +462,6 @@ export interface ThreadResponsePayload {
|
|
|
424
462
|
errorCode?: string;
|
|
425
463
|
timestamp: number;
|
|
426
464
|
originalMessageId?: string;
|
|
427
|
-
moduleData?: Record<string, unknown>;
|
|
428
465
|
botResponseId?: string;
|
|
429
466
|
ephemeral?: boolean;
|
|
430
467
|
platformMetadata?: Record<string, unknown>;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEnD;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,kBAAkB,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wEAAwE;AACxE,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAE9D;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE;QACP,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACxB,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,EAAE;QACT,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,kEAAkE;QAClE,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,sDAAsD;QACtD,eAAe,CAAC,EAAE,SAAS,CAAC;QAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,uEAAuE;AACvE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAEjE;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6EAA6E;IAC7E,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAE7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAGlB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,mBAAmB,CAAC,EAAE,mBAAmB,EAAE,CAAC;CAC7C;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,0FAA0F;IAC1F,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qFAAqF;IACrF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,KAAK,GAAG,iBAAiB,GAAG,OAAO,CAAC;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,4EAA4E;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,IAAI,EAAE,MAAM,CAAC;IACb,qDAAqD;IACrD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,8CAA8C;IAC9C,OAAO,EAAE,OAAO,CAAC;IACjB,gDAAgD;IAChD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wCAAwC;IACxC,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,kDAAkD;IAClD,aAAa,CAAC,EAAE;QACd,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;QAC1B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;QACzB,aAAa,CAAC,EAAE,eAAe,EAAE,CAAC;QAClC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACjC,CAAC;IACF,sCAAsC;IACtC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,2CAA2C;IAC3C,aAAa,CAAC,EAAE,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Decode a candidate ENCRYPTION_KEY string into 32 canonical bytes, or
|
|
3
|
+
* return null if it doesn't satisfy the canonical base64 / base64url /
|
|
4
|
+
* hex 32-byte format. Pure (no env, no cache, no throw) so callers like
|
|
5
|
+
* the install-operator bootstrap can fail-fast with a clear message
|
|
6
|
+
* before any side effect.
|
|
7
|
+
*/
|
|
8
|
+
export declare function decodeEncryptionKey(key: string): Buffer | null;
|
|
9
|
+
/**
|
|
10
|
+
* Canonical error message for a malformed ENCRYPTION_KEY. Centralised so
|
|
11
|
+
* the install-operator bootstrap and any other upstream validator emit
|
|
12
|
+
* the exact same actionable text the runtime encrypt/decrypt path would.
|
|
13
|
+
*/
|
|
14
|
+
export declare const ENCRYPTION_KEY_FORMAT_ERROR: string;
|
|
15
|
+
/**
|
|
16
|
+
* Validate `process.env.ENCRYPTION_KEY` (or an explicit override) without
|
|
17
|
+
* caching. Throws with an actionable message if the value is missing or
|
|
18
|
+
* not a canonical 32-byte encoding. Use at boot to fail fast instead of
|
|
19
|
+
* letting later encrypt/decrypt calls return 500s.
|
|
20
|
+
*/
|
|
21
|
+
export declare function assertEncryptionKey(value?: string): void;
|
|
1
22
|
/**
|
|
2
23
|
* Encrypt a string using AES-256-GCM
|
|
3
24
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../src/utils/encryption.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../src/utils/encryption.ts"],"names":[],"mappings":"AAeA;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAyC9D;AAED;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,QAEwC,CAAC;AAEjF;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAUxD;AAkBD;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAU5C;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAc5C;AAED,yFAAyF;AACzF,wBAAgB,iCAAiC,IAAI,IAAI,CAExD"}
|
package/dist/utils/encryption.js
CHANGED
|
@@ -33,6 +33,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.ENCRYPTION_KEY_FORMAT_ERROR = void 0;
|
|
37
|
+
exports.decodeEncryptionKey = decodeEncryptionKey;
|
|
38
|
+
exports.assertEncryptionKey = assertEncryptionKey;
|
|
36
39
|
exports.encrypt = encrypt;
|
|
37
40
|
exports.decrypt = decrypt;
|
|
38
41
|
exports.__resetEncryptionKeyCacheForTests = __resetEncryptionKeyCacheForTests;
|
|
@@ -48,13 +51,16 @@ const IV_LENGTH = 12; // 96-bit nonce for AES-GCM
|
|
|
48
51
|
// once and reuse the buffer instead of re-parsing the env var on every
|
|
49
52
|
// encrypt/decrypt call (these run on per-request / per-worker-RPC hot paths).
|
|
50
53
|
let cachedKey;
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
54
|
+
/**
|
|
55
|
+
* Decode a candidate ENCRYPTION_KEY string into 32 canonical bytes, or
|
|
56
|
+
* return null if it doesn't satisfy the canonical base64 / base64url /
|
|
57
|
+
* hex 32-byte format. Pure (no env, no cache, no throw) so callers like
|
|
58
|
+
* the install-operator bootstrap can fail-fast with a clear message
|
|
59
|
+
* before any side effect.
|
|
60
|
+
*/
|
|
61
|
+
function decodeEncryptionKey(key) {
|
|
62
|
+
if (!key)
|
|
63
|
+
return null;
|
|
58
64
|
// Try to decode as base64 first (most common format). `Buffer.from(x,
|
|
59
65
|
// "base64")` silently drops non-base64 chars rather than throwing, so a
|
|
60
66
|
// typo'd key can yield a short/garbled buffer. Require canonical base64 and
|
|
@@ -62,7 +68,6 @@ function getEncryptionKey() {
|
|
|
62
68
|
if (/^[A-Za-z0-9+/]+={0,2}$/.test(key) && key.length % 4 === 0) {
|
|
63
69
|
const base64Buffer = Buffer.from(key, "base64");
|
|
64
70
|
if (base64Buffer.length === 32 && base64Buffer.toString("base64") === key) {
|
|
65
|
-
cachedKey = base64Buffer;
|
|
66
71
|
return base64Buffer;
|
|
67
72
|
}
|
|
68
73
|
}
|
|
@@ -74,7 +79,6 @@ function getEncryptionKey() {
|
|
|
74
79
|
const urlsafeBuffer = Buffer.from(key, "base64url");
|
|
75
80
|
if (urlsafeBuffer.length === 32 &&
|
|
76
81
|
urlsafeBuffer.toString("base64url") === key) {
|
|
77
|
-
cachedKey = urlsafeBuffer;
|
|
78
82
|
return urlsafeBuffer;
|
|
79
83
|
}
|
|
80
84
|
}
|
|
@@ -84,12 +88,46 @@ function getEncryptionKey() {
|
|
|
84
88
|
const hexBuffer = Buffer.from(key, "hex");
|
|
85
89
|
if (hexBuffer.length === 32 &&
|
|
86
90
|
hexBuffer.toString("hex") === key.toLowerCase()) {
|
|
87
|
-
cachedKey = hexBuffer;
|
|
88
91
|
return hexBuffer;
|
|
89
92
|
}
|
|
90
93
|
}
|
|
91
|
-
|
|
92
|
-
|
|
94
|
+
return null;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Canonical error message for a malformed ENCRYPTION_KEY. Centralised so
|
|
98
|
+
* the install-operator bootstrap and any other upstream validator emit
|
|
99
|
+
* the exact same actionable text the runtime encrypt/decrypt path would.
|
|
100
|
+
*/
|
|
101
|
+
exports.ENCRYPTION_KEY_FORMAT_ERROR = "ENCRYPTION_KEY must be a canonical base64 or hex encoded 32-byte key. " +
|
|
102
|
+
"Generate a valid key with: openssl rand -base64 32 (or openssl rand -hex 32)";
|
|
103
|
+
/**
|
|
104
|
+
* Validate `process.env.ENCRYPTION_KEY` (or an explicit override) without
|
|
105
|
+
* caching. Throws with an actionable message if the value is missing or
|
|
106
|
+
* not a canonical 32-byte encoding. Use at boot to fail fast instead of
|
|
107
|
+
* letting later encrypt/decrypt calls return 500s.
|
|
108
|
+
*/
|
|
109
|
+
function assertEncryptionKey(value) {
|
|
110
|
+
const key = value ?? process.env.ENCRYPTION_KEY ?? "";
|
|
111
|
+
if (!key) {
|
|
112
|
+
throw new Error("ENCRYPTION_KEY environment variable is required for secure operation");
|
|
113
|
+
}
|
|
114
|
+
if (!decodeEncryptionKey(key)) {
|
|
115
|
+
throw new Error(exports.ENCRYPTION_KEY_FORMAT_ERROR);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
function getEncryptionKey() {
|
|
119
|
+
if (cachedKey)
|
|
120
|
+
return cachedKey;
|
|
121
|
+
const key = process.env.ENCRYPTION_KEY || "";
|
|
122
|
+
if (!key) {
|
|
123
|
+
throw new Error("ENCRYPTION_KEY environment variable is required for secure operation");
|
|
124
|
+
}
|
|
125
|
+
const decoded = decodeEncryptionKey(key);
|
|
126
|
+
if (!decoded) {
|
|
127
|
+
throw new Error(exports.ENCRYPTION_KEY_FORMAT_ERROR);
|
|
128
|
+
}
|
|
129
|
+
cachedKey = decoded;
|
|
130
|
+
return decoded;
|
|
93
131
|
}
|
|
94
132
|
/**
|
|
95
133
|
* Encrypt a string using AES-256-GCM
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../src/utils/encryption.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../src/utils/encryption.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,kDAyCC;AAiBD,kDAUC;AAqBD,0BAUC;AAKD,0BAcC;AAGD,8EAEC;AAjJD,oDAAsC;AAEtC,MAAM,SAAS,GAAG,EAAE,CAAC,CAAC,2BAA2B;AAEjD;;;;;GAKG;AACH,6EAA6E;AAC7E,uEAAuE;AACvE,8EAA8E;AAC9E,IAAI,SAA6B,CAAC;AAElC;;;;;;GAMG;AACH,SAAgB,mBAAmB,CAAC,GAAW;IAC7C,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IAEtB,sEAAsE;IACtE,wEAAwE;IACxE,4EAA4E;IAC5E,wDAAwD;IACxD,IAAI,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/D,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAChD,IAAI,YAAY,CAAC,MAAM,KAAK,EAAE,IAAI,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,GAAG,EAAE,CAAC;YAC1E,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,8EAA8E;IAC9E,yEAAyE;IACzE,gDAAgD;IAChD,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QACpD,IACE,aAAa,CAAC,MAAM,KAAK,EAAE;YAC3B,aAAa,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,GAAG,EAC3C,CAAC;YACD,OAAO,aAAa,CAAC;QACvB,CAAC;IACH,CAAC;IAED,qEAAqE;IACrE,iEAAiE;IACjE,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACvD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QAC1C,IACE,SAAS,CAAC,MAAM,KAAK,EAAE;YACvB,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,WAAW,EAAE,EAC/C,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACU,QAAA,2BAA2B,GACtC,wEAAwE;IACxE,8EAA8E,CAAC;AAEjF;;;;;GAKG;AACH,SAAgB,mBAAmB,CAAC,KAAc;IAChD,MAAM,GAAG,GAAG,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;IACtD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,mCAA2B,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB;IACvB,IAAI,SAAS;QAAE,OAAO,SAAS,CAAC;IAChC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;IAC7C,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CACb,sEAAsE,CACvE,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,mCAA2B,CAAC,CAAC;IAC/C,CAAC;IACD,SAAS,GAAG,OAAO,CAAC;IACpB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAgB,OAAO,CAAC,IAAY;IAClC,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;IACvE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;QAC9B,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC;QAC3B,MAAM,CAAC,KAAK,EAAE;KACf,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAChC,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AACrF,CAAC;AAED;;GAEG;AACH,SAAgB,OAAO,CAAC,IAAY;IAClC,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAC;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IACpE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,KAAK,CAAC,CAAC;IACzC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,KAAK,CAAC,CAAC;IAC1C,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,KAAK,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;IAC3E,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IACzB,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;QAC9B,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC;QAC9B,QAAQ,CAAC,KAAK,EAAE;KACjB,CAAC,CAAC;IACH,OAAO,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED,yFAAyF;AACzF,SAAgB,iCAAiC;IAC/C,SAAS,GAAG,SAAS,CAAC;AACxB,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared parser for OpenClaw `session.jsonl` files.
|
|
3
|
+
*
|
|
4
|
+
* Two HTTP surfaces read these files: the worker's `/session/messages` /
|
|
5
|
+
* `/session/stats` endpoints (rooted at the worker's own `WORKSPACE_DIR`)
|
|
6
|
+
* and the gateway's `/session/messages` / `/session/stats` REST endpoints
|
|
7
|
+
* (rooted at the gateway's `workspaces/<agentId>` tree, queried when the
|
|
8
|
+
* worker is offline). The gateway proxies to the worker when it's online
|
|
9
|
+
* and falls back to its own copy otherwise — so the two parsers must
|
|
10
|
+
* agree, and historically they had drifted (different fields kept on
|
|
11
|
+
* `SessionEntry`, different `JSON.parse` error handling, the same logic
|
|
12
|
+
* copy-pasted twice).
|
|
13
|
+
*
|
|
14
|
+
* Anything path-policy related (where to *look* for the file) stays at
|
|
15
|
+
* the call site — the worker scans one level under `WORKSPACE_DIR`; the
|
|
16
|
+
* gateway scans up to three levels under the per-agent workspace dir
|
|
17
|
+
* with a `SAFE_AGENT_ID` regex guarding the join. Those are intentionally
|
|
18
|
+
* different and must not be collapsed without an operator decision.
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* Raw entry shape as written to `session.jsonl` by the worker.
|
|
22
|
+
*
|
|
23
|
+
* `tokensBefore` / `firstKeptEntryId` (worker memory-flush bookkeeping)
|
|
24
|
+
* are not read by either parser today — left off this canonical shape on
|
|
25
|
+
* purpose; reintroduce when a consumer actually needs them.
|
|
26
|
+
*/
|
|
27
|
+
export interface SessionEntry {
|
|
28
|
+
type: string;
|
|
29
|
+
id: string;
|
|
30
|
+
parentId: string | null;
|
|
31
|
+
timestamp: string;
|
|
32
|
+
message?: {
|
|
33
|
+
role: string;
|
|
34
|
+
content: unknown;
|
|
35
|
+
usage?: {
|
|
36
|
+
inputTokens?: number;
|
|
37
|
+
outputTokens?: number;
|
|
38
|
+
};
|
|
39
|
+
};
|
|
40
|
+
summary?: string;
|
|
41
|
+
provider?: string;
|
|
42
|
+
modelId?: string;
|
|
43
|
+
customType?: string;
|
|
44
|
+
content?: unknown;
|
|
45
|
+
display?: boolean;
|
|
46
|
+
}
|
|
47
|
+
/** Display-friendly projection emitted to API consumers (`/session/messages`). */
|
|
48
|
+
export interface ParsedMessage {
|
|
49
|
+
id: string;
|
|
50
|
+
type: string;
|
|
51
|
+
role?: string;
|
|
52
|
+
content: unknown;
|
|
53
|
+
model?: string;
|
|
54
|
+
timestamp: string;
|
|
55
|
+
isVerbose?: boolean;
|
|
56
|
+
usage?: {
|
|
57
|
+
inputTokens?: number;
|
|
58
|
+
outputTokens?: number;
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Parse a session.jsonl blob into entries + the synthetic session id
|
|
63
|
+
* found on the leading `{type: "session", id}` line.
|
|
64
|
+
*
|
|
65
|
+
* - Splits on `\n` and skips blank lines (same as both pre-existing copies).
|
|
66
|
+
* - Uses {@link safeJsonParse} so malformed lines are skipped quietly with
|
|
67
|
+
* a debug log (debug-only because production sessions occasionally
|
|
68
|
+
* contain partial writes after crash/kill).
|
|
69
|
+
* - The leading `session` entry is extracted, not pushed into `entries`.
|
|
70
|
+
*/
|
|
71
|
+
export declare function parseSessionEntries(content: string): {
|
|
72
|
+
entries: SessionEntry[];
|
|
73
|
+
sessionId?: string;
|
|
74
|
+
};
|
|
75
|
+
/**
|
|
76
|
+
* Project a single {@link SessionEntry} into the {@link ParsedMessage}
|
|
77
|
+
* display shape, or `null` for entry kinds that don't surface as
|
|
78
|
+
* user-visible messages (everything other than `message`, `compaction`,
|
|
79
|
+
* `model_change`, `custom_message`).
|
|
80
|
+
*
|
|
81
|
+
* `isVerbose` marks entries the UI hides behind a "verbose" toggle —
|
|
82
|
+
* tool results, compaction/model-change markers, custom system events
|
|
83
|
+
* that aren't explicitly displayed.
|
|
84
|
+
*/
|
|
85
|
+
export declare function entryToMessage(entry: SessionEntry): ParsedMessage | null;
|
|
86
|
+
//# sourceMappingURL=session-file.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-file.d.ts","sourceRoot":"","sources":["../../src/utils/session-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE;YAAE,WAAW,CAAC,EAAE,MAAM,CAAC;YAAC,YAAY,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KACzD,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,kFAAkF;AAClF,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACzD;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG;IACpD,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAcA;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,YAAY,GAAG,aAAa,GAAG,IAAI,CA0CxE"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Shared parser for OpenClaw `session.jsonl` files.
|
|
4
|
+
*
|
|
5
|
+
* Two HTTP surfaces read these files: the worker's `/session/messages` /
|
|
6
|
+
* `/session/stats` endpoints (rooted at the worker's own `WORKSPACE_DIR`)
|
|
7
|
+
* and the gateway's `/session/messages` / `/session/stats` REST endpoints
|
|
8
|
+
* (rooted at the gateway's `workspaces/<agentId>` tree, queried when the
|
|
9
|
+
* worker is offline). The gateway proxies to the worker when it's online
|
|
10
|
+
* and falls back to its own copy otherwise — so the two parsers must
|
|
11
|
+
* agree, and historically they had drifted (different fields kept on
|
|
12
|
+
* `SessionEntry`, different `JSON.parse` error handling, the same logic
|
|
13
|
+
* copy-pasted twice).
|
|
14
|
+
*
|
|
15
|
+
* Anything path-policy related (where to *look* for the file) stays at
|
|
16
|
+
* the call site — the worker scans one level under `WORKSPACE_DIR`; the
|
|
17
|
+
* gateway scans up to three levels under the per-agent workspace dir
|
|
18
|
+
* with a `SAFE_AGENT_ID` regex guarding the join. Those are intentionally
|
|
19
|
+
* different and must not be collapsed without an operator decision.
|
|
20
|
+
*/
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
+
exports.parseSessionEntries = parseSessionEntries;
|
|
23
|
+
exports.entryToMessage = entryToMessage;
|
|
24
|
+
const json_1 = require("./json");
|
|
25
|
+
/**
|
|
26
|
+
* Parse a session.jsonl blob into entries + the synthetic session id
|
|
27
|
+
* found on the leading `{type: "session", id}` line.
|
|
28
|
+
*
|
|
29
|
+
* - Splits on `\n` and skips blank lines (same as both pre-existing copies).
|
|
30
|
+
* - Uses {@link safeJsonParse} so malformed lines are skipped quietly with
|
|
31
|
+
* a debug log (debug-only because production sessions occasionally
|
|
32
|
+
* contain partial writes after crash/kill).
|
|
33
|
+
* - The leading `session` entry is extracted, not pushed into `entries`.
|
|
34
|
+
*/
|
|
35
|
+
function parseSessionEntries(content) {
|
|
36
|
+
const lines = content.split("\n").filter((l) => l.trim());
|
|
37
|
+
const entries = [];
|
|
38
|
+
let sessionId;
|
|
39
|
+
for (const line of lines) {
|
|
40
|
+
const parsed = (0, json_1.safeJsonParse)(line);
|
|
41
|
+
if (!parsed)
|
|
42
|
+
continue;
|
|
43
|
+
if (parsed.type === "session") {
|
|
44
|
+
sessionId = parsed.id;
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
entries.push(parsed);
|
|
48
|
+
}
|
|
49
|
+
return { entries, sessionId };
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Project a single {@link SessionEntry} into the {@link ParsedMessage}
|
|
53
|
+
* display shape, or `null` for entry kinds that don't surface as
|
|
54
|
+
* user-visible messages (everything other than `message`, `compaction`,
|
|
55
|
+
* `model_change`, `custom_message`).
|
|
56
|
+
*
|
|
57
|
+
* `isVerbose` marks entries the UI hides behind a "verbose" toggle —
|
|
58
|
+
* tool results, compaction/model-change markers, custom system events
|
|
59
|
+
* that aren't explicitly displayed.
|
|
60
|
+
*/
|
|
61
|
+
function entryToMessage(entry) {
|
|
62
|
+
if (entry.type === "message" && entry.message) {
|
|
63
|
+
return {
|
|
64
|
+
id: entry.id,
|
|
65
|
+
type: "message",
|
|
66
|
+
role: entry.message.role,
|
|
67
|
+
content: entry.message.content,
|
|
68
|
+
timestamp: entry.timestamp,
|
|
69
|
+
isVerbose: entry.message.role === "toolResult",
|
|
70
|
+
usage: entry.message.usage,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
if (entry.type === "compaction") {
|
|
74
|
+
return {
|
|
75
|
+
id: entry.id,
|
|
76
|
+
type: "compaction",
|
|
77
|
+
content: entry.summary || "",
|
|
78
|
+
timestamp: entry.timestamp,
|
|
79
|
+
isVerbose: true,
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
if (entry.type === "model_change") {
|
|
83
|
+
return {
|
|
84
|
+
id: entry.id,
|
|
85
|
+
type: "model_change",
|
|
86
|
+
content: `${entry.provider}/${entry.modelId}`,
|
|
87
|
+
model: `${entry.provider}/${entry.modelId}`,
|
|
88
|
+
timestamp: entry.timestamp,
|
|
89
|
+
isVerbose: true,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
if (entry.type === "custom_message") {
|
|
93
|
+
return {
|
|
94
|
+
id: entry.id,
|
|
95
|
+
type: "custom_message",
|
|
96
|
+
role: "user",
|
|
97
|
+
content: entry.content,
|
|
98
|
+
timestamp: entry.timestamp,
|
|
99
|
+
isVerbose: !entry.display,
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
//# sourceMappingURL=session-file.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-file.js","sourceRoot":"","sources":["../../src/utils/session-file.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;AAmDH,kDAiBC;AAYD,wCA0CC;AAxHD,iCAAuC;AAuCvC;;;;;;;;;GASG;AACH,SAAgB,mBAAmB,CAAC,OAAe;IAIjD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,IAAI,SAA6B,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,IAAA,oBAAa,EAAgC,IAAI,CAAC,CAAC;QAClE,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,SAAS,GAAG,MAAM,CAAC,EAAE,CAAC;YACtB,SAAS;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvB,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC;AAChC,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,cAAc,CAAC,KAAmB;IAChD,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAC9C,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;YACxB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO;YAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,YAAY;YAC9C,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK;SAC3B,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAChC,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;YAC5B,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,IAAI;SAChB,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;QAClC,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,EAAE;YAC7C,KAAK,EAAE,GAAG,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,EAAE;YAC3C,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,IAAI;SAChB,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,gBAAgB,EAAE,CAAC;QACpC,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,SAAS,EAAE,CAAC,KAAK,CAAC,OAAO;SAC1B,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -17,11 +17,6 @@ export interface WorkerTransport {
|
|
|
17
17
|
* Used to correlate responses with the originating request
|
|
18
18
|
*/
|
|
19
19
|
setJobId(jobId: string): void;
|
|
20
|
-
/**
|
|
21
|
-
* Set module-specific data to be included in responses
|
|
22
|
-
* Allows modules to attach metadata to worker responses
|
|
23
|
-
*/
|
|
24
|
-
setModuleData(moduleData: Record<string, unknown>): void;
|
|
25
20
|
/**
|
|
26
21
|
* Send a streaming delta to the gateway
|
|
27
22
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/worker/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/worker/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAE9B;;;;;;OAMG;IACH,eAAe,CACb,KAAK,EAAE,MAAM,EACb,iBAAiB,CAAC,EAAE,OAAO,EAC3B,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjB;;;;;OAKG;IACH,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAElC;;;;OAIG;IACH,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7D;;;;;;OAMG;IACH,gBAAgB,CAAC,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvE;;;OAGG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7E;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IAEnB,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IAEpB,wCAAwC;IACxC,MAAM,EAAE,MAAM,CAAC;IAEf,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAElB,8CAA8C;IAC9C,cAAc,EAAE,MAAM,CAAC;IAEvB,oCAAoC;IACpC,iBAAiB,EAAE,MAAM,CAAC;IAE1B,sDAAsD;IACtD,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,qDAAqD;IACrD,MAAM,EAAE,MAAM,CAAC;IAEf,uDAAuD;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE3C,4DAA4D;IAC5D,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gateway ↔ worker wire contract.
|
|
3
|
+
*
|
|
4
|
+
* `MessagePayload` is what `MessageConsumer` (gateway) enqueues on the runs
|
|
5
|
+
* queue, what `EmbeddedDeploymentManager.dispatch*` writes to the worker SSE
|
|
6
|
+
* stream, and what the worker's `GatewayClient.handleThreadMessage` /
|
|
7
|
+
* `handleExecJob` consumes. Same shape on both sides — keep it here.
|
|
8
|
+
*
|
|
9
|
+
* Before this lived in core, the worker had its own `MessagePayload`
|
|
10
|
+
* declaration that was a structural subset of the gateway's (missing
|
|
11
|
+
* `organizationId`, `networkConfig`, `egressConfig`, `mcpConfig`, `nixConfig`,
|
|
12
|
+
* `preApprovedTools`). At runtime the worker's zod schema was patched with
|
|
13
|
+
* `.passthrough()` so the extra fields survived parsing, but the static type
|
|
14
|
+
* silently lied. Hoisting closes the gap.
|
|
15
|
+
*/
|
|
16
|
+
import type { AgentEgressConfig, AgentMcpConfig, AgentOptions, NetworkConfig, NixConfig } from "../types";
|
|
17
|
+
/**
|
|
18
|
+
* Job type for queue messages.
|
|
19
|
+
* - `message`: standard agent message execution.
|
|
20
|
+
* - `exec`: direct command execution in the sandbox.
|
|
21
|
+
*/
|
|
22
|
+
export type JobType = "message" | "exec";
|
|
23
|
+
/**
|
|
24
|
+
* Universal message payload for every gateway → worker hop.
|
|
25
|
+
* Used by: platform inbound → runs queue → MessageConsumer → worker.
|
|
26
|
+
*/
|
|
27
|
+
export interface MessagePayload {
|
|
28
|
+
userId: string;
|
|
29
|
+
conversationId: string;
|
|
30
|
+
messageId: string;
|
|
31
|
+
channelId: string;
|
|
32
|
+
/**
|
|
33
|
+
* Team/workspace ID. Required in the gateway-produced payload (always
|
|
34
|
+
* stamped by `buildMessagePayload`), but optional in the wire type
|
|
35
|
+
* because Slack carries the workspace ID in `platformMetadata` and the
|
|
36
|
+
* worker reads it defensively (`payload.teamId ?? platformMetadata.teamId`).
|
|
37
|
+
* The worker SSE schema parses it with `z.string().optional()`.
|
|
38
|
+
*/
|
|
39
|
+
teamId?: string;
|
|
40
|
+
/** Agent / session ID for tenant isolation. */
|
|
41
|
+
agentId: string;
|
|
42
|
+
/**
|
|
43
|
+
* Owning organization of the agent. Plumbed through so child queries
|
|
44
|
+
* (grants, user-agents, channel-bindings, secrets) can scope by org —
|
|
45
|
+
* agent IDs are per-org-unique, so `agent_id = ?` alone is ambiguous.
|
|
46
|
+
*/
|
|
47
|
+
organizationId?: string;
|
|
48
|
+
/** Bot identifier. */
|
|
49
|
+
botId: string;
|
|
50
|
+
/** Platform name (`slack`, `telegram`, ...). */
|
|
51
|
+
platform: string;
|
|
52
|
+
messageText: string;
|
|
53
|
+
platformMetadata: Record<string, unknown>;
|
|
54
|
+
agentOptions: AgentOptions;
|
|
55
|
+
networkConfig?: NetworkConfig;
|
|
56
|
+
/**
|
|
57
|
+
* The runs.id of the row the runs-queue claimed when this message was
|
|
58
|
+
* dispatched. Threaded all the way to the worker so the per-run
|
|
59
|
+
* agent_transcript_snapshot POST can attribute the snapshot to the
|
|
60
|
+
* correct run unambiguously — codex P1#1 on PR #865.
|
|
61
|
+
*/
|
|
62
|
+
runId?: number;
|
|
63
|
+
/**
|
|
64
|
+
* Per-run worker JWT bound to `runId` above. Minted by the runs-queue
|
|
65
|
+
* dispatcher (`MessageConsumer.handleMessage`) so the snapshot route can
|
|
66
|
+
* require `tokenData.runId === body.runId` and reject any attempt by a
|
|
67
|
+
* same-(org, agent, conv) deployment-lifetime token to write under a
|
|
68
|
+
* different run's slot — codex round 2 finding A on PR #865.
|
|
69
|
+
*/
|
|
70
|
+
runJobToken?: string;
|
|
71
|
+
/** Per-agent egress judge configuration. */
|
|
72
|
+
egressConfig?: AgentEgressConfig;
|
|
73
|
+
/** Per-agent MCP configuration (additive to global MCPs). */
|
|
74
|
+
mcpConfig?: AgentMcpConfig;
|
|
75
|
+
/** Nix environment configuration for the agent workspace. */
|
|
76
|
+
nixConfig?: NixConfig;
|
|
77
|
+
/**
|
|
78
|
+
* MCP tool grant patterns the operator has pre-approved.
|
|
79
|
+
* Synced to the grant store at deployment time to bypass the approval card.
|
|
80
|
+
*/
|
|
81
|
+
preApprovedTools?: string[];
|
|
82
|
+
/**
|
|
83
|
+
* Job ID from the gateway (set when the payload rode through the worker
|
|
84
|
+
* SSE stream). Optional — direct-enqueue paths leave it unset.
|
|
85
|
+
*/
|
|
86
|
+
jobId?: string;
|
|
87
|
+
/** Job type (default: `message`). */
|
|
88
|
+
jobType?: JobType;
|
|
89
|
+
/** Unique ID for the exec job (for response routing). */
|
|
90
|
+
execId?: string;
|
|
91
|
+
/** Command to execute. */
|
|
92
|
+
execCommand?: string;
|
|
93
|
+
/** Working directory for the command. */
|
|
94
|
+
execCwd?: string;
|
|
95
|
+
/** Additional environment variables. */
|
|
96
|
+
execEnv?: Record<string, string>;
|
|
97
|
+
/** Timeout in milliseconds. */
|
|
98
|
+
execTimeout?: number;
|
|
99
|
+
}
|
|
100
|
+
/** Queued message envelope used by the worker's in-process batcher. */
|
|
101
|
+
export interface QueuedMessage {
|
|
102
|
+
payload: MessagePayload;
|
|
103
|
+
timestamp: number;
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=wire.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wire.d.ts","sourceRoot":"","sources":["../../src/worker/wire.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,aAAa,EACb,SAAS,EACV,MAAM,UAAU,CAAC;AAElB;;;;GAIG;AACH,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAEzC;;;GAGG;AACH,MAAM,WAAW,cAAc;IAE7B,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,sBAAsB;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,QAAQ,EAAE,MAAM,CAAC;IAGjB,WAAW,EAAE,MAAM,CAAC;IAGpB,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAG1C,YAAY,EAAE,YAAY,CAAC;IAG3B,aAAa,CAAC,EAAE,aAAa,CAAC;IAE9B;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;;OAMG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,iBAAiB,CAAC;IAEjC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,cAAc,CAAC;IAE3B,6DAA6D;IAC7D,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAE5B;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,qCAAqC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAC;IAGlB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,uEAAuE;AACvE,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Gateway ↔ worker wire contract.
|
|
4
|
+
*
|
|
5
|
+
* `MessagePayload` is what `MessageConsumer` (gateway) enqueues on the runs
|
|
6
|
+
* queue, what `EmbeddedDeploymentManager.dispatch*` writes to the worker SSE
|
|
7
|
+
* stream, and what the worker's `GatewayClient.handleThreadMessage` /
|
|
8
|
+
* `handleExecJob` consumes. Same shape on both sides — keep it here.
|
|
9
|
+
*
|
|
10
|
+
* Before this lived in core, the worker had its own `MessagePayload`
|
|
11
|
+
* declaration that was a structural subset of the gateway's (missing
|
|
12
|
+
* `organizationId`, `networkConfig`, `egressConfig`, `mcpConfig`, `nixConfig`,
|
|
13
|
+
* `preApprovedTools`). At runtime the worker's zod schema was patched with
|
|
14
|
+
* `.passthrough()` so the extra fields survived parsing, but the static type
|
|
15
|
+
* silently lied. Hoisting closes the gap.
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
//# sourceMappingURL=wire.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wire.js","sourceRoot":"","sources":["../../src/worker/wire.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG"}
|