lua-cli 3.10.5 → 3.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/agents.api.service.d.ts +21 -0
- package/dist/api/agents.api.service.d.ts.map +1 -0
- package/dist/api/agents.api.service.js +49 -0
- package/dist/api/agents.api.service.js.map +1 -0
- package/dist/api/device-trigger.api.service.d.ts +136 -0
- package/dist/api/device-trigger.api.service.d.ts.map +1 -0
- package/dist/api/device-trigger.api.service.js +120 -0
- package/dist/api/device-trigger.api.service.js.map +1 -0
- package/dist/api/lazy-instances.d.ts +8 -0
- package/dist/api/lazy-instances.d.ts.map +1 -1
- package/dist/api/lazy-instances.js +16 -0
- package/dist/api/lazy-instances.js.map +1 -1
- package/dist/api-exports.d.ts +57 -2
- package/dist/api-exports.d.ts.map +1 -1
- package/dist/api-exports.js +36 -2
- package/dist/api-exports.js.map +1 -1
- package/dist/cli/command-definitions.d.ts.map +1 -1
- package/dist/cli/command-definitions.js +14 -1
- package/dist/cli/command-definitions.js.map +1 -1
- package/dist/commands/governance.d.ts +7 -0
- package/dist/commands/governance.d.ts.map +1 -0
- package/dist/commands/governance.js +256 -0
- package/dist/commands/governance.js.map +1 -0
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +1 -0
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/push.d.ts.map +1 -1
- package/dist/commands/push.js +7 -3
- package/dist/commands/push.js.map +1 -1
- package/dist/commands/sync.d.ts.map +1 -1
- package/dist/commands/sync.js +67 -1
- package/dist/commands/sync.js.map +1 -1
- package/dist/compiler/agent-traverser.d.ts.map +1 -1
- package/dist/compiler/agent-traverser.js +1 -0
- package/dist/compiler/agent-traverser.js.map +1 -1
- package/dist/compiler/plugins/agent.plugin.d.ts +5 -0
- package/dist/compiler/plugins/agent.plugin.d.ts.map +1 -1
- package/dist/compiler/plugins/agent.plugin.js +13 -0
- package/dist/compiler/plugins/agent.plugin.js.map +1 -1
- package/dist/compiler/plugins/device-trigger.plugin.d.ts +38 -0
- package/dist/compiler/plugins/device-trigger.plugin.d.ts.map +1 -0
- package/dist/compiler/plugins/device-trigger.plugin.js +103 -0
- package/dist/compiler/plugins/device-trigger.plugin.js.map +1 -0
- package/dist/compiler/plugins/device.plugin.d.ts +2 -9
- package/dist/compiler/plugins/device.plugin.d.ts.map +1 -1
- package/dist/compiler/plugins/device.plugin.js +2 -204
- package/dist/compiler/plugins/device.plugin.js.map +1 -1
- package/dist/compiler/plugins/registry.d.ts.map +1 -1
- package/dist/compiler/plugins/registry.js +2 -0
- package/dist/compiler/plugins/registry.js.map +1 -1
- package/dist/compiler/types.d.ts +21 -35
- package/dist/compiler/types.d.ts.map +1 -1
- package/dist/compiler/types.js +1 -0
- package/dist/compiler/types.js.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces/agent.d.ts +3 -1
- package/dist/interfaces/agent.d.ts.map +1 -1
- package/dist/interfaces/device-triggers.d.ts +82 -0
- package/dist/interfaces/device-triggers.d.ts.map +1 -0
- package/dist/interfaces/device-triggers.js +6 -0
- package/dist/interfaces/device-triggers.js.map +1 -0
- package/dist/primitives/agent.handler.d.ts +7 -2
- package/dist/primitives/agent.handler.d.ts.map +1 -1
- package/dist/primitives/agent.handler.js +43 -6
- package/dist/primitives/agent.handler.js.map +1 -1
- package/dist/primitives/device-trigger.handler.d.ts +56 -0
- package/dist/primitives/device-trigger.handler.d.ts.map +1 -0
- package/dist/primitives/device-trigger.handler.js +100 -0
- package/dist/primitives/device-trigger.handler.js.map +1 -0
- package/dist/primitives/device.handler.d.ts.map +1 -1
- package/dist/primitives/device.handler.js +0 -2
- package/dist/primitives/device.handler.js.map +1 -1
- package/dist/primitives/index.d.ts +2 -0
- package/dist/primitives/index.d.ts.map +1 -1
- package/dist/primitives/index.js +4 -0
- package/dist/primitives/index.js.map +1 -1
- package/dist/types/skill.d.ts +65 -8
- package/dist/types/skill.d.ts.map +1 -1
- package/dist/types/skill.js +18 -0
- package/dist/types/skill.js.map +1 -1
- package/dist/types/yaml.types.d.ts +7 -0
- package/dist/types/yaml.types.d.ts.map +1 -1
- package/dist/utils/artifact-loader.d.ts +2 -1
- package/dist/utils/artifact-loader.d.ts.map +1 -1
- package/dist/utils/artifact-loader.js +3 -0
- package/dist/utils/artifact-loader.js.map +1 -1
- package/dist/utils/sandbox.d.ts.map +1 -1
- package/dist/utils/sandbox.js +10 -0
- package/dist/utils/sandbox.js.map +1 -1
- package/dist/utils/sync-display.d.ts +1 -0
- package/dist/utils/sync-display.d.ts.map +1 -1
- package/dist/utils/sync-display.js +8 -0
- package/dist/utils/sync-display.js.map +1 -1
- package/dist/utils/sync-fetch.d.ts +9 -2
- package/dist/utils/sync-fetch.d.ts.map +1 -1
- package/dist/utils/sync-fetch.js +21 -7
- package/dist/utils/sync-fetch.js.map +1 -1
- package/dist/utils/sync-helpers.d.ts +2 -2
- package/dist/utils/sync-helpers.d.ts.map +1 -1
- package/dist/utils/sync-helpers.js +2 -2
- package/dist/utils/sync-helpers.js.map +1 -1
- package/node_modules/@lua/shared-types/dist/index.d.mts +122 -1
- package/node_modules/@lua/shared-types/dist/index.d.ts +122 -1
- package/node_modules/@lua/shared-types/src/agent-config.types.ts +31 -0
- package/node_modules/@lua/shared-types/src/agent-invocation.types.ts +73 -0
- package/node_modules/@lua/shared-types/src/device.types.ts +18 -0
- package/node_modules/@lua/shared-types/src/index.ts +2 -0
- package/package.json +2 -1
- package/template/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -40,6 +40,7 @@ Categories:
|
|
|
40
40
|
☁️ Deployment Push and deploy to production
|
|
41
41
|
💬 Testing Chat and test your agent
|
|
42
42
|
⚙️ Configuration Manage environment and persona
|
|
43
|
+
📡 Devices Connect and manage IoT/external devices
|
|
43
44
|
📖 Utilities Quick access to admin and docs
|
|
44
45
|
|
|
45
46
|
Examples:
|
|
@@ -49,6 +50,8 @@ Examples:
|
|
|
49
50
|
$ lua test 🧪 Test tools interactively
|
|
50
51
|
$ lua push ☁️ Push to server (interactive)
|
|
51
52
|
$ lua push skill ☁️ Push skill directly
|
|
53
|
+
$ lua push device ☁️ Push device definition
|
|
54
|
+
$ lua push device-trigger ☁️ Push device trigger
|
|
52
55
|
$ lua push persona ☁️ Push persona directly
|
|
53
56
|
$ lua deploy 🚀 Deploy to production
|
|
54
57
|
$ lua chat 💬 Start interactive chat
|
|
@@ -61,6 +64,11 @@ Examples:
|
|
|
61
64
|
$ lua skills ⚙️ Manage skills (interactive)
|
|
62
65
|
$ lua skills staging ⚙️ View staging skills directly
|
|
63
66
|
$ lua skills production ⚙️ Manage production skills directly
|
|
67
|
+
$ lua devices 📡 Manage connected devices (interactive)
|
|
68
|
+
$ lua devices list 📡 List all devices and their status
|
|
69
|
+
$ lua devices status --device-name my-device Check device status
|
|
70
|
+
$ lua devices test --device-name my-device Test a device command
|
|
71
|
+
$ lua push device-trigger 📡 Push a device trigger to server
|
|
64
72
|
$ lua features 🎯 Manage agent features
|
|
65
73
|
$ lua admin 🔧 Open admin dashboard
|
|
66
74
|
$ lua evals 📊 Open evaluations dashboard
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAC/G,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAErC,gCAAgC;AAChC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACtC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AACzF,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC;AAExC,8BAA8B;AAC9B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,6BAA6B;AAC7B,OAAO;KACJ,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,sDAAsD,CAAC;KACnE,OAAO,CAAC,WAAW,CAAC;KACpB,MAAM,CAAC,MAAM,EAAE,wEAAwE,CAAC;KACxF,WAAW,CAAC,QAAQ,EAAE;;gBAET,WAAW;;CAE1B,CAAC;KACC,WAAW,CAAC,OAAO,EAAE
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAC/G,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAErC,gCAAgC;AAChC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AACtC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AACzF,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC;AAExC,8BAA8B;AAC9B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,6BAA6B;AAC7B,OAAO;KACJ,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,sDAAsD,CAAC;KACnE,OAAO,CAAC,WAAW,CAAC;KACpB,MAAM,CAAC,MAAM,EAAE,wEAAwE,CAAC;KACxF,WAAW,CAAC,QAAQ,EAAE;;gBAET,WAAW;;CAE1B,CAAC;KACC,WAAW,CAAC,OAAO,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8CvB,CAAC,CAAC;AAEH,0FAA0F;AAC1F,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,WAAW,EAAE,EAAE;IACxC,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;IAChC,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;QACZ,SAAS,CAAC,IAAI,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,4BAA4B;AAC5B,iBAAiB,CAAC,OAAO,CAAC,CAAC;AAC3B,kBAAkB,CAAC,OAAO,CAAC,CAAC;AAC5B,wBAAwB,CAAC,OAAO,CAAC,CAAC;AAElC,+BAA+B;AAC/B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Agent Interfaces
|
|
3
3
|
* Agent management, types, and creation
|
|
4
4
|
*/
|
|
5
|
-
import { BatchingConfig } from
|
|
5
|
+
import type { BatchingConfig, GovernanceConfig } from '@lua/shared-types';
|
|
6
6
|
/**
|
|
7
7
|
* Full agent entity with configuration.
|
|
8
8
|
* Represents a complete agent with all properties.
|
|
@@ -30,6 +30,8 @@ export interface UpdateAgentRequest {
|
|
|
30
30
|
featuresOverride?: any;
|
|
31
31
|
/** Per-agent batching config. Passing null clears it (agent reverts to platform defaults). */
|
|
32
32
|
batchingConfig?: BatchingConfig | null;
|
|
33
|
+
/** Governance SDK config. Passing null removes governance. The API-mode bearer token is resolved on the platform from GOVERNANCE_API_KEY, never sent here. */
|
|
34
|
+
governance?: GovernanceConfig | null;
|
|
33
35
|
}
|
|
34
36
|
/**
|
|
35
37
|
* An approved LLM model available for agent use.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/interfaces/agent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../../src/interfaces/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Device Trigger Interfaces
|
|
3
|
+
* Structures for device trigger management
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* DTO for creating a new device trigger
|
|
7
|
+
*/
|
|
8
|
+
export interface CreateDeviceTriggerDTO {
|
|
9
|
+
name: string;
|
|
10
|
+
description?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* DTO for pushing a device trigger version
|
|
14
|
+
*/
|
|
15
|
+
export interface PushDeviceTriggerVersionDTO {
|
|
16
|
+
name: string;
|
|
17
|
+
version: string;
|
|
18
|
+
description?: string;
|
|
19
|
+
deviceTriggerId: string;
|
|
20
|
+
payloadSchema?: any;
|
|
21
|
+
code?: string;
|
|
22
|
+
executeFunction?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* DTO for updating a device trigger version
|
|
26
|
+
*/
|
|
27
|
+
export interface UpdateDeviceTriggerVersionDTO {
|
|
28
|
+
version?: string;
|
|
29
|
+
description?: string;
|
|
30
|
+
payloadSchema?: any;
|
|
31
|
+
code?: string;
|
|
32
|
+
executeFunction?: string;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Device trigger version information
|
|
36
|
+
*/
|
|
37
|
+
export interface DeviceTriggerVersion {
|
|
38
|
+
id: string;
|
|
39
|
+
version: string;
|
|
40
|
+
description: string;
|
|
41
|
+
active: boolean;
|
|
42
|
+
payloadSchema?: any;
|
|
43
|
+
createdAt: string;
|
|
44
|
+
updatedAt: string;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Device trigger information
|
|
48
|
+
*/
|
|
49
|
+
export interface DeviceTrigger {
|
|
50
|
+
id: string;
|
|
51
|
+
name: string;
|
|
52
|
+
description: string;
|
|
53
|
+
active: boolean;
|
|
54
|
+
createdAt: string;
|
|
55
|
+
updatedAt: string;
|
|
56
|
+
versions: DeviceTriggerVersion[];
|
|
57
|
+
activeVersionId?: string;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Response from get all device triggers API endpoint
|
|
61
|
+
*/
|
|
62
|
+
export interface GetDeviceTriggersResponse {
|
|
63
|
+
deviceTriggers: DeviceTrigger[];
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Response from delete device trigger API endpoint
|
|
67
|
+
*/
|
|
68
|
+
export interface DeleteDeviceTriggerResponse {
|
|
69
|
+
message: string;
|
|
70
|
+
deleted: boolean;
|
|
71
|
+
deactivated: boolean;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Response from create device trigger API endpoint
|
|
75
|
+
*/
|
|
76
|
+
export interface CreateDeviceTriggerResponse {
|
|
77
|
+
id: string;
|
|
78
|
+
name: string;
|
|
79
|
+
description?: string;
|
|
80
|
+
agentId: string;
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=device-triggers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device-triggers.d.ts","sourceRoot":"","sources":["../../src/interfaces/device-triggers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,GAAG,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,oBAAoB,EAAE,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,cAAc,EAAE,aAAa,EAAE,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device-triggers.js","sourceRoot":"","sources":["../../src/interfaces/device-triggers.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -11,13 +11,14 @@
|
|
|
11
11
|
* - Drift: detect differences between local and server state
|
|
12
12
|
* - Unified push: push all agent config from manifest in one call
|
|
13
13
|
*/
|
|
14
|
-
import type { PersonaDrift, NameDrift, ModelDrift } from '../utils/sync-fetch.js';
|
|
14
|
+
import type { PersonaDrift, NameDrift, ModelDrift, GovernanceDrift } from '../utils/sync-fetch.js';
|
|
15
15
|
import type { CompilationManifest } from '../compiler/types.js';
|
|
16
|
-
import { BatchingConfig } from '
|
|
16
|
+
import type { BatchingConfig } from '@lua/shared-types';
|
|
17
17
|
export interface AgentDrift {
|
|
18
18
|
name: NameDrift | null;
|
|
19
19
|
persona: PersonaDrift | null;
|
|
20
20
|
model: ModelDrift | null;
|
|
21
|
+
governance: GovernanceDrift | null;
|
|
21
22
|
}
|
|
22
23
|
export interface AgentPushResult {
|
|
23
24
|
persona?: {
|
|
@@ -30,6 +31,9 @@ export interface AgentPushResult {
|
|
|
30
31
|
batching?: {
|
|
31
32
|
success: boolean;
|
|
32
33
|
};
|
|
34
|
+
governance?: {
|
|
35
|
+
success: boolean;
|
|
36
|
+
};
|
|
33
37
|
}
|
|
34
38
|
interface SyncContext {
|
|
35
39
|
apiKey: string;
|
|
@@ -48,6 +52,7 @@ export declare class AgentHandler {
|
|
|
48
52
|
}>;
|
|
49
53
|
pushModel(ctx: SyncContext, model?: string | null, modelResolver?: string | null): Promise<boolean>;
|
|
50
54
|
pushBatching(ctx: SyncContext, batchingConfig: BatchingConfig | null): Promise<boolean>;
|
|
55
|
+
pushGovernance(ctx: SyncContext, governance: any | null): Promise<boolean>;
|
|
51
56
|
pullName(serverName: string): boolean;
|
|
52
57
|
pullPersona(serverPersona: string): boolean;
|
|
53
58
|
pullModel(serverModel: string): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.handler.d.ts","sourceRoot":"","sources":["../../src/primitives/agent.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.handler.d.ts","sourceRoot":"","sources":["../../src/primitives/agent.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACnG,OAAO,KAAK,EAAE,mBAAmB,EAAiB,MAAM,sBAAsB,CAAC;AAM/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMxD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,UAAU,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,eAAe,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,KAAK,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAChC,UAAU,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;CACnC;AAED,UAAU,WAAW;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAWD,qBAAa,YAAY;IAMvB;;;OAGG;IACG,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,mBAAmB,GAC5B,OAAO,CAAC,eAAe,CAAC;IA4GrB,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAM1D,WAAW,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAS/F,SAAS,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAMnG,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAMvF,cAAc,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC;IAahF,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAIrC,WAAW,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;IAI3C,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAQvC;;;OAGG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAWtE;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO;CAGrC;AAED,eAAO,MAAM,YAAY,cAAqB,CAAC"}
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import { writeProgress, writeSuccess } from '../utils/cli.js';
|
|
15
15
|
import { setAgentName, setAgentPersona, setAgentModel } from '../compiler/index.js';
|
|
16
|
-
import { checkPersonaDrift, checkNameDrift, checkModelDrift } from '../utils/sync-fetch.js';
|
|
16
|
+
import { fetchServerAgent, checkPersonaDrift, checkNameDrift, checkModelDrift, checkGovernanceDrift } from '../utils/sync-fetch.js';
|
|
17
17
|
import { PrimitiveKind } from '../compiler/types.js';
|
|
18
18
|
import { getPrimitivesByKind, loadArtifact, compressForPush } from '../utils/artifact-loader.js';
|
|
19
19
|
import PersonaApi from '../api/persona.api.service.js';
|
|
@@ -22,6 +22,10 @@ import { BASE_URLS } from '../config/constants.js';
|
|
|
22
22
|
// =============================================================================
|
|
23
23
|
// AGENT HANDLER
|
|
24
24
|
// =============================================================================
|
|
25
|
+
function stripApiKey(governance) {
|
|
26
|
+
const { apiKey: _stripped, ...rest } = governance;
|
|
27
|
+
return rest;
|
|
28
|
+
}
|
|
25
29
|
export class AgentHandler {
|
|
26
30
|
// ===========================================================================
|
|
27
31
|
// UNIFIED PUSH (from manifest — used by "lua push all" and "lua push agent")
|
|
@@ -109,6 +113,29 @@ export class AgentHandler {
|
|
|
109
113
|
console.error(` ❌ Failed to push batching config: ${error.message}`);
|
|
110
114
|
result.batching = { success: false };
|
|
111
115
|
}
|
|
116
|
+
// Push governance config only when the manifest actually defines it.
|
|
117
|
+
// Agents that never configured governance don't trigger an unrelated
|
|
118
|
+
// server write on every push. To explicitly clear a previously-set
|
|
119
|
+
// config, use `lua governance remove`, which sends null via the same
|
|
120
|
+
// pushGovernance path.
|
|
121
|
+
const governance = agent?.governance;
|
|
122
|
+
if (governance) {
|
|
123
|
+
writeProgress('\n🛡️ Pushing governance configuration...');
|
|
124
|
+
try {
|
|
125
|
+
const success = await this.pushGovernance({ apiKey, agentId }, governance);
|
|
126
|
+
result.governance = { success };
|
|
127
|
+
if (success) {
|
|
128
|
+
writeSuccess(` ✅ Governance config pushed (${governance.mode} mode)`);
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
console.error(' ❌ Failed to push governance config');
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
catch (error) {
|
|
135
|
+
console.error(` ❌ Failed to push governance config: ${error.message}`);
|
|
136
|
+
result.governance = { success: false };
|
|
137
|
+
}
|
|
138
|
+
}
|
|
112
139
|
return result;
|
|
113
140
|
}
|
|
114
141
|
// ===========================================================================
|
|
@@ -137,6 +164,14 @@ export class AgentHandler {
|
|
|
137
164
|
const result = await agentApi.updateAgent(ctx.agentId, { batchingConfig });
|
|
138
165
|
return result.success;
|
|
139
166
|
}
|
|
167
|
+
async pushGovernance(ctx, governance) {
|
|
168
|
+
const agentApi = new AgentApi(BASE_URLS.API, ctx.apiKey);
|
|
169
|
+
// Defence-in-depth: strip any raw apiKey before hitting the wire, even
|
|
170
|
+
// if an older governance.ts still has one. Only apiKeyEnvVar is allowed.
|
|
171
|
+
const safeGovernance = governance ? stripApiKey(governance) : governance;
|
|
172
|
+
const result = await agentApi.updateAgent(ctx.agentId, { governance: safeGovernance });
|
|
173
|
+
return result.success;
|
|
174
|
+
}
|
|
140
175
|
// ===========================================================================
|
|
141
176
|
// PULL (server → local source code, used by sync command)
|
|
142
177
|
// ===========================================================================
|
|
@@ -157,18 +192,20 @@ export class AgentHandler {
|
|
|
157
192
|
* Runs all checks in parallel.
|
|
158
193
|
*/
|
|
159
194
|
async checkDrift(apiKey, agentId) {
|
|
160
|
-
const
|
|
161
|
-
|
|
195
|
+
const agent = await fetchServerAgent(apiKey, agentId);
|
|
196
|
+
const [name, persona, model, governance] = await Promise.all([
|
|
197
|
+
checkNameDrift(apiKey, agentId, agent),
|
|
162
198
|
checkPersonaDrift(apiKey, agentId),
|
|
163
|
-
checkModelDrift(apiKey, agentId),
|
|
199
|
+
checkModelDrift(apiKey, agentId, agent),
|
|
200
|
+
checkGovernanceDrift(apiKey, agentId, agent),
|
|
164
201
|
]);
|
|
165
|
-
return { name, persona, model };
|
|
202
|
+
return { name, persona, model, governance };
|
|
166
203
|
}
|
|
167
204
|
/**
|
|
168
205
|
* Returns true if any agent field has drifted.
|
|
169
206
|
*/
|
|
170
207
|
hasDrift(drift) {
|
|
171
|
-
return !!(drift.name || drift.persona || drift.model);
|
|
208
|
+
return !!(drift.name || drift.persona || drift.model || drift.governance);
|
|
172
209
|
}
|
|
173
210
|
}
|
|
174
211
|
export const agentHandler = new AgentHandler();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.handler.js","sourceRoot":"","sources":["../../src/primitives/agent.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.handler.js","sourceRoot":"","sources":["../../src/primitives/agent.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC9D,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAGpI,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACjG,OAAO,UAAU,MAAM,+BAA+B,CAAC;AACvD,OAAO,QAAQ,MAAM,6BAA6B,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AA0BnD,gFAAgF;AAChF,gBAAgB;AAChB,gFAAgF;AAEhF,SAAS,WAAW,CAAiC,UAAa;IAChE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,EAAE,GAAG,UAAU,CAAC;IAClD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,OAAO,YAAY;IAEvB,8EAA8E;IAC9E,6EAA6E;IAC7E,8EAA8E;IAE9E;;;OAGG;IACH,KAAK,CAAC,eAAe,CACnB,MAAc,EACd,OAAe,EACf,QAA6B;QAE7B,MAAM,MAAM,GAAoB,EAAE,CAAC;QAEnC,MAAM,KAAK,GAAG,mBAAmB,CAAgB,QAAQ,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnF,uCAAuC;QACvC,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,CAAC;QAC/B,IAAI,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;YACpB,aAAa,CAAC,yBAAyB,CAAC,CAAC;YACzC,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC3E,MAAM,CAAC,OAAO,GAAG,aAAa,CAAC;gBAC/B,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC1B,YAAY,CAAC,uBAAuB,aAAa,CAAC,OAAO,UAAU,CAAC,CAAC;gBACvE,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CAAC,+BAA+B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC9D,MAAM,CAAC,OAAO,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YACtC,CAAC;QACH,CAAC;QAED,2EAA2E;QAC3E,iEAAiE;QACjE,MAAM,KAAK,GAAG,KAAK,EAAE,KAAK,CAAC;QAC3B,MAAM,gBAAgB,GAAG,KAAK,EAAE,gBAAgB,CAAC;QAEjD,aAAa,CAAC,qCAAqC,CAAC,CAAC;QACrD,IAAI,CAAC;YACH,IAAI,WAAW,GAA8B,KAAK,CAAC;YACnD,IAAI,aAAwC,CAAC;YAE7C,IAAI,gBAAgB,IAAI,KAAK,EAAE,IAAI,EAAE,CAAC;gBACpC,MAAM,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;gBACzC,aAAa,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;YAChD,CAAC;iBAAM,IAAI,CAAC,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACvC,WAAW,GAAG,IAAI,CAAC;gBACnB,aAAa,GAAG,IAAI,CAAC;YACvB,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;YACtF,MAAM,CAAC,KAAK,GAAG,EAAE,OAAO,EAAE,CAAC;YAC3B,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,KAAK,IAAI,gBAAgB,EAAE,CAAC;oBAC9B,YAAY,CAAC,aAAa,gBAAgB,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,SAAS,CAAC,CAAC;gBACnF,CAAC;qBAAM,CAAC;oBACN,YAAY,CAAC,iCAAiC,CAAC,CAAC;gBAClD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,6BAA6B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5D,MAAM,CAAC,KAAK,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACpC,CAAC;QAED,wEAAwE;QACxE,wDAAwD;QACxD,MAAM,QAAQ,GAAG,KAAK,EAAE,QAAQ,IAAI,IAAI,CAAC;QAEzC,aAAa,CAAC,wCAAwC,CAAC,CAAC;QACxD,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;YACvE,MAAM,CAAC,QAAQ,GAAG,EAAE,OAAO,EAAE,CAAC;YAC9B,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,QAAQ,EAAE,CAAC;oBACb,YAAY,CAAC,4BAA4B,CAAC,CAAC;gBAC7C,CAAC;qBAAM,CAAC;oBACN,YAAY,CAAC,uDAAuD,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,uCAAuC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACtE,MAAM,CAAC,QAAQ,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QACvC,CAAC;QAED,qEAAqE;QACrE,qEAAqE;QACrE,mEAAmE;QACnE,qEAAqE;QACrE,uBAAuB;QACvB,MAAM,UAAU,GAAG,KAAK,EAAE,UAAU,CAAC;QACrC,IAAI,UAAU,EAAE,CAAC;YACf,aAAa,CAAC,4CAA4C,CAAC,CAAC;YAC5D,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;gBAC3E,MAAM,CAAC,UAAU,GAAG,EAAE,OAAO,EAAE,CAAC;gBAChC,IAAI,OAAO,EAAE,CAAC;oBACZ,YAAY,CAAC,iCAAiC,UAAU,CAAC,IAAI,QAAQ,CAAC,CAAC;gBACzE,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CAAC,yCAAyC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBACxE,MAAM,CAAC,UAAU,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;YACzC,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,8EAA8E;IAC9E,yCAAyC;IACzC,8EAA8E;IAE9E,KAAK,CAAC,QAAQ,CAAC,GAAgB,EAAE,IAAY;QAC3C,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACjE,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,GAAgB,EAAE,OAAe;QACjD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACvD,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO;SAC9B,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAAgB,EAAE,KAAqB,EAAE,aAA6B;QACpF,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;QACjF,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,GAAgB,EAAE,cAAqC;QACxE,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,GAAgB,EAAE,UAAsB;QAC3D,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QACzD,uEAAuE;QACvE,yEAAyE;QACzE,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QACzE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,CAAC,CAAC;QACvF,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,8EAA8E;IAC9E,0DAA0D;IAC1D,8EAA8E;IAE9E,QAAQ,CAAC,UAAkB;QACzB,OAAO,YAAY,CAAC,UAAU,CAAC,CAAC;IAClC,CAAC;IAED,WAAW,CAAC,aAAqB;QAC/B,OAAO,eAAe,CAAC,aAAa,CAAC,CAAC;IACxC,CAAC;IAED,SAAS,CAAC,WAAmB;QAC3B,OAAO,aAAa,CAAC,WAAW,CAAC,CAAC;IACpC,CAAC;IAED,8EAA8E;IAC9E,kBAAkB;IAClB,8EAA8E;IAE9E;;;OAGG;IACH,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,OAAe;QAC9C,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtD,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC3D,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;YACtC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC;YAClC,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;YACvC,oBAAoB,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;SAC7C,CAAC,CAAC;QACH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,KAAiB;QACxB,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;IAC5E,CAAC;CACF;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Device Trigger Handler
|
|
3
|
+
*
|
|
4
|
+
* Handles CLI operations for device trigger primitives.
|
|
5
|
+
*
|
|
6
|
+
* Device triggers:
|
|
7
|
+
* - Use 'active' field on entity
|
|
8
|
+
* - Use 'isActive' field on versions
|
|
9
|
+
*/
|
|
10
|
+
import { PrimitiveKind, ManifestPrimitive } from '../compiler/types.js';
|
|
11
|
+
import DeviceTriggerApi from '../api/device-trigger.api.service.js';
|
|
12
|
+
import type { PushDeviceTriggerVersionDTO } from '../interfaces/device-triggers.js';
|
|
13
|
+
import { BaseVersionedHandler } from './base.handler.js';
|
|
14
|
+
import type { YamlPrimitiveConfig, ServerSyncData } from './types.js';
|
|
15
|
+
import type { YamlConfigDeviceTrigger } from '../types/yaml.types.js';
|
|
16
|
+
/**
|
|
17
|
+
* Device trigger primitive handler
|
|
18
|
+
*/
|
|
19
|
+
export declare class DeviceTriggerHandler extends BaseVersionedHandler<YamlConfigDeviceTrigger, PushDeviceTriggerVersionDTO> {
|
|
20
|
+
readonly kind = PrimitiveKind.DEVICE_TRIGGER;
|
|
21
|
+
readonly displayName = "device trigger";
|
|
22
|
+
readonly displayNamePlural = "device triggers";
|
|
23
|
+
readonly deleteCommand = "lua device-triggers delete";
|
|
24
|
+
readonly yamlConfig: YamlPrimitiveConfig;
|
|
25
|
+
/**
|
|
26
|
+
* Override fetchServerState to treat auth/network errors as non-fatal.
|
|
27
|
+
*
|
|
28
|
+
* The Device Gateway is feature-gated on the server
|
|
29
|
+
* (DEVICE_GATEWAY_ENABLED). When the feature is off or the endpoint
|
|
30
|
+
* doesn't exist for a given agent, the server returns 401 or 404.
|
|
31
|
+
* Device triggers are an optional primitive. A missing or inaccessible
|
|
32
|
+
* endpoint should not block compiling other primitives.
|
|
33
|
+
*/
|
|
34
|
+
fetchServerState(apiKey: string, agentId: string): Promise<ServerSyncData>;
|
|
35
|
+
protected getApi(apiKey: string, agentId: string): DeviceTriggerApi;
|
|
36
|
+
protected fetchFromServer(api: DeviceTriggerApi): Promise<any[] | null>;
|
|
37
|
+
protected createOnServer(api: DeviceTriggerApi, primitive: ManifestPrimitive): Promise<string | null>;
|
|
38
|
+
/**
|
|
39
|
+
* Device triggers use 'active' field directly on the entity.
|
|
40
|
+
*/
|
|
41
|
+
isActive(serverItem: any): boolean;
|
|
42
|
+
pushToServer(apiKey: string, agentId: string, entityId: string, pushData: PushDeviceTriggerVersionDTO): Promise<{
|
|
43
|
+
success: boolean;
|
|
44
|
+
error: string | undefined;
|
|
45
|
+
}>;
|
|
46
|
+
publishVersion(apiKey: string, agentId: string, entityId: string, version: string): Promise<{
|
|
47
|
+
success: boolean;
|
|
48
|
+
error: string | undefined;
|
|
49
|
+
}>;
|
|
50
|
+
/**
|
|
51
|
+
* Override to include device trigger payload schema in push data.
|
|
52
|
+
*/
|
|
53
|
+
protected buildPushData(primitive: ManifestPrimitive, compressedCode: string): Record<string, unknown>;
|
|
54
|
+
}
|
|
55
|
+
export declare const deviceTriggerHandler: DeviceTriggerHandler;
|
|
56
|
+
//# sourceMappingURL=device-trigger.handler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device-trigger.handler.d.ts","sourceRoot":"","sources":["../../src/primitives/device-trigger.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAyB,MAAM,sBAAsB,CAAC;AAE/F,OAAO,gBAAgB,MAAM,sCAAsC,CAAC;AACpE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,oBAAoB,CAAC,uBAAuB,EAAE,2BAA2B,CAAC;IAClH,QAAQ,CAAC,IAAI,gCAAgC;IAC7C,QAAQ,CAAC,WAAW,oBAAoB;IACxC,QAAQ,CAAC,iBAAiB,qBAAqB;IAC/C,QAAQ,CAAC,aAAa,gCAAgC;IACtD,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAGtC;IAEF;;;;;;;;OAQG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAWhF,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB;cAInD,eAAe,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;cAQ7D,cAAc,CAAC,GAAG,EAAE,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAS3G;;OAEG;IACH,QAAQ,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO;IAI5B,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,2BAA2B;;;;IAMrG,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;;;;IAMvF;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAUvG;AAGD,eAAO,MAAM,oBAAoB,sBAA6B,CAAC"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Device Trigger Handler
|
|
3
|
+
*
|
|
4
|
+
* Handles CLI operations for device trigger primitives.
|
|
5
|
+
*
|
|
6
|
+
* Device triggers:
|
|
7
|
+
* - Use 'active' field on entity
|
|
8
|
+
* - Use 'isActive' field on versions
|
|
9
|
+
*/
|
|
10
|
+
import { PrimitiveKind } from '../compiler/types.js';
|
|
11
|
+
import { BASE_URLS } from '../config/constants.js';
|
|
12
|
+
import DeviceTriggerApi from '../api/device-trigger.api.service.js';
|
|
13
|
+
import { BaseVersionedHandler } from './base.handler.js';
|
|
14
|
+
/**
|
|
15
|
+
* Device trigger primitive handler
|
|
16
|
+
*/
|
|
17
|
+
export class DeviceTriggerHandler extends BaseVersionedHandler {
|
|
18
|
+
constructor() {
|
|
19
|
+
super(...arguments);
|
|
20
|
+
this.kind = PrimitiveKind.DEVICE_TRIGGER;
|
|
21
|
+
this.displayName = 'device trigger';
|
|
22
|
+
this.displayNamePlural = 'device triggers';
|
|
23
|
+
this.deleteCommand = 'lua device-triggers delete';
|
|
24
|
+
this.yamlConfig = {
|
|
25
|
+
yamlKey: 'deviceTriggers',
|
|
26
|
+
idField: 'deviceTriggerId',
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Override fetchServerState to treat auth/network errors as non-fatal.
|
|
31
|
+
*
|
|
32
|
+
* The Device Gateway is feature-gated on the server
|
|
33
|
+
* (DEVICE_GATEWAY_ENABLED). When the feature is off or the endpoint
|
|
34
|
+
* doesn't exist for a given agent, the server returns 401 or 404.
|
|
35
|
+
* Device triggers are an optional primitive. A missing or inaccessible
|
|
36
|
+
* endpoint should not block compiling other primitives.
|
|
37
|
+
*/
|
|
38
|
+
async fetchServerState(apiKey, agentId) {
|
|
39
|
+
try {
|
|
40
|
+
const api = this.getApi(apiKey, agentId);
|
|
41
|
+
const serverItems = await this.fetchFromServer(api);
|
|
42
|
+
return { serverItems };
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
// Silently degrade — device trigger sync is optional.
|
|
46
|
+
return { serverItems: null };
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
getApi(apiKey, agentId) {
|
|
50
|
+
return new DeviceTriggerApi(BASE_URLS.API, apiKey, agentId);
|
|
51
|
+
}
|
|
52
|
+
async fetchFromServer(api) {
|
|
53
|
+
const response = await api.getDeviceTriggers();
|
|
54
|
+
if (!response.success || !response.data?.deviceTriggers) {
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
57
|
+
return response.data.deviceTriggers;
|
|
58
|
+
}
|
|
59
|
+
async createOnServer(api, primitive) {
|
|
60
|
+
const response = await api.createDeviceTrigger({
|
|
61
|
+
name: primitive.name,
|
|
62
|
+
description: primitive.description || `A Lua device trigger for ${primitive.name}`,
|
|
63
|
+
});
|
|
64
|
+
if (!response.success || !response.data?.id)
|
|
65
|
+
return null;
|
|
66
|
+
return response.data.id;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Device triggers use 'active' field directly on the entity.
|
|
70
|
+
*/
|
|
71
|
+
isActive(serverItem) {
|
|
72
|
+
return serverItem.active !== false;
|
|
73
|
+
}
|
|
74
|
+
async pushToServer(apiKey, agentId, entityId, pushData) {
|
|
75
|
+
const api = this.getApi(apiKey, agentId);
|
|
76
|
+
const response = await api.pushDeviceTrigger(entityId, { ...pushData, deviceTriggerId: entityId });
|
|
77
|
+
return { success: response.success, error: response.error?.message };
|
|
78
|
+
}
|
|
79
|
+
async publishVersion(apiKey, agentId, entityId, version) {
|
|
80
|
+
const api = this.getApi(apiKey, agentId);
|
|
81
|
+
const response = await api.publishDeviceTriggerVersion(entityId, version);
|
|
82
|
+
return { success: response.success, error: response.error?.message };
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Override to include device trigger payload schema in push data.
|
|
86
|
+
*/
|
|
87
|
+
buildPushData(primitive, compressedCode) {
|
|
88
|
+
const deviceTrigger = primitive;
|
|
89
|
+
return {
|
|
90
|
+
name: deviceTrigger.name,
|
|
91
|
+
description: deviceTrigger.description,
|
|
92
|
+
code: compressedCode,
|
|
93
|
+
executeFunction: compressedCode,
|
|
94
|
+
payloadSchema: deviceTrigger.schemas?.payload || undefined,
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
// Export singleton instance
|
|
99
|
+
export const deviceTriggerHandler = new DeviceTriggerHandler();
|
|
100
|
+
//# sourceMappingURL=device-trigger.handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device-trigger.handler.js","sourceRoot":"","sources":["../../src/primitives/device-trigger.handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.handler.d.ts","sourceRoot":"","sources":["../../src/primitives/device.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAkB,MAAM,sBAAsB,CAAC;AAExF,OAAO,SAAS,MAAM,8BAA8B,CAAC;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D;;GAEG;AACH,qBAAa,aAAc,SAAQ,oBAAoB,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;IAC7F,QAAQ,CAAC,IAAI,wBAAwB;IACrC,QAAQ,CAAC,WAAW,YAAY;IAChC,QAAQ,CAAC,iBAAiB,aAAa;IACvC,QAAQ,CAAC,aAAa,wBAAwB;IAC9C,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAGtC;IAEF,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS;IAI5D;;;;;;;;;;;;OAYG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;cAWhE,eAAe,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;cAQtD,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAWpG,QAAQ,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO;IAI5B,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB;;;;IAM9F,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;;;;IAMvF;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"device.handler.d.ts","sourceRoot":"","sources":["../../src/primitives/device.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAkB,MAAM,sBAAsB,CAAC;AAExF,OAAO,SAAS,MAAM,8BAA8B,CAAC;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACtE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D;;GAEG;AACH,qBAAa,aAAc,SAAQ,oBAAoB,CAAC,gBAAgB,EAAE,oBAAoB,CAAC;IAC7F,QAAQ,CAAC,IAAI,wBAAwB;IACrC,QAAQ,CAAC,WAAW,YAAY;IAChC,QAAQ,CAAC,iBAAiB,aAAa;IACvC,QAAQ,CAAC,aAAa,wBAAwB;IAC9C,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAGtC;IAEF,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS;IAI5D;;;;;;;;;;;;OAYG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;cAWhE,eAAe,CAAC,GAAG,EAAE,SAAS,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;cAQtD,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAWpG,QAAQ,CAAC,UAAU,EAAE,GAAG,GAAG,OAAO;IAI5B,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,oBAAoB;;;;IAM9F,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;;;;IAMvF;;OAEG;IACH,SAAS,CAAC,aAAa,CAAC,SAAS,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAWvG;AAGD,eAAO,MAAM,aAAa,eAAsB,CAAC"}
|
|
@@ -93,8 +93,6 @@ export class DeviceHandler extends BaseVersionedHandler {
|
|
|
93
93
|
name: device.name,
|
|
94
94
|
description: device.description,
|
|
95
95
|
group: device.group,
|
|
96
|
-
commands: device.commands,
|
|
97
|
-
triggers: device.triggers,
|
|
98
96
|
code: compressedCode,
|
|
99
97
|
executeFunction: compressedCode,
|
|
100
98
|
artifactHash: device.hash,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"device.handler.js","sourceRoot":"","sources":["../../src/primitives/device.handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,aAAa,EAAqC,MAAM,sBAAsB,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,SAAS,MAAM,8BAA8B,CAAC;AAErD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAIzD;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,oBAA4D;IAA/F;;QACW,SAAI,GAAG,aAAa,CAAC,MAAM,CAAC;QAC5B,gBAAW,GAAG,QAAQ,CAAC;QACvB,sBAAiB,GAAG,SAAS,CAAC;QAC9B,kBAAa,GAAG,oBAAoB,CAAC;QACrC,eAAU,GAAwB;YACzC,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,UAAU;SACpB,CAAC;
|
|
1
|
+
{"version":3,"file":"device.handler.js","sourceRoot":"","sources":["../../src/primitives/device.handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ export { PreprocessorHandler } from './preprocessor.handler.js';
|
|
|
15
15
|
export { PostprocessorHandler } from './postprocessor.handler.js';
|
|
16
16
|
export { MCPServerHandler } from './mcp-server.handler.js';
|
|
17
17
|
export { DeviceHandler } from './device.handler.js';
|
|
18
|
+
export { DeviceTriggerHandler } from './device-trigger.handler.js';
|
|
18
19
|
export { skillHandler } from './skill.handler.js';
|
|
19
20
|
export { webhookHandler } from './webhook.handler.js';
|
|
20
21
|
export { jobHandler } from './job.handler.js';
|
|
@@ -22,6 +23,7 @@ export { preprocessorHandler } from './preprocessor.handler.js';
|
|
|
22
23
|
export { postprocessorHandler } from './postprocessor.handler.js';
|
|
23
24
|
export { mcpServerHandler } from './mcp-server.handler.js';
|
|
24
25
|
export { deviceHandler } from './device.handler.js';
|
|
26
|
+
export { deviceTriggerHandler } from './device-trigger.handler.js';
|
|
25
27
|
/**
|
|
26
28
|
* Map of primitive handlers by kind.
|
|
27
29
|
* Note: TOOL kind has no handler — tools are managed as part of skills.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAsB,KAAK,gBAAgB,EAAE,KAAK,yBAAyB,EAAmB,MAAM,YAAY,CAAC;AAGxH,OAAO,EAAgB,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAsB,KAAK,gBAAgB,EAAE,KAAK,yBAAyB,EAAmB,MAAM,YAAY,CAAC;AAGxH,OAAO,EAAgB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAUhE,OAAO,EAAE,kBAAkB,EAAE,KAAK,gBAAgB,EAAE,KAAK,yBAAyB,EAAE,KAAK,UAAU,EAAE,KAAK,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAGlJ,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGnE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,CAS9E,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,aAAa,GAAG,gBAAgB,GAAG,SAAS,CAE5E;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,YAAY,CAE9C;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,yBAAyB,EACe,CAAC;AAEzE;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,gBAAgB,EAA2D,CAAC"}
|
package/dist/primitives/index.js
CHANGED
|
@@ -14,6 +14,7 @@ import { preprocessorHandler } from './preprocessor.handler.js';
|
|
|
14
14
|
import { postprocessorHandler } from './postprocessor.handler.js';
|
|
15
15
|
import { mcpServerHandler } from './mcp-server.handler.js';
|
|
16
16
|
import { deviceHandler } from './device.handler.js';
|
|
17
|
+
import { deviceTriggerHandler } from './device-trigger.handler.js';
|
|
17
18
|
// Re-export types and helpers
|
|
18
19
|
export { isVersionedHandler } from './types.js';
|
|
19
20
|
// Re-export handler classes (for testing/extension)
|
|
@@ -24,6 +25,7 @@ export { PreprocessorHandler } from './preprocessor.handler.js';
|
|
|
24
25
|
export { PostprocessorHandler } from './postprocessor.handler.js';
|
|
25
26
|
export { MCPServerHandler } from './mcp-server.handler.js';
|
|
26
27
|
export { DeviceHandler } from './device.handler.js';
|
|
28
|
+
export { DeviceTriggerHandler } from './device-trigger.handler.js';
|
|
27
29
|
// Re-export singleton instances
|
|
28
30
|
export { skillHandler } from './skill.handler.js';
|
|
29
31
|
export { webhookHandler } from './webhook.handler.js';
|
|
@@ -32,6 +34,7 @@ export { preprocessorHandler } from './preprocessor.handler.js';
|
|
|
32
34
|
export { postprocessorHandler } from './postprocessor.handler.js';
|
|
33
35
|
export { mcpServerHandler } from './mcp-server.handler.js';
|
|
34
36
|
export { deviceHandler } from './device.handler.js';
|
|
37
|
+
export { deviceTriggerHandler } from './device-trigger.handler.js';
|
|
35
38
|
/**
|
|
36
39
|
* Map of primitive handlers by kind.
|
|
37
40
|
* Note: TOOL kind has no handler — tools are managed as part of skills.
|
|
@@ -44,6 +47,7 @@ export const primitiveHandlers = {
|
|
|
44
47
|
[PrimitiveKind.POSTPROCESSOR]: postprocessorHandler,
|
|
45
48
|
[PrimitiveKind.MCP_SERVER]: mcpServerHandler,
|
|
46
49
|
[PrimitiveKind.DEVICE]: deviceHandler,
|
|
50
|
+
[PrimitiveKind.DEVICE_TRIGGER]: deviceTriggerHandler,
|
|
47
51
|
};
|
|
48
52
|
/**
|
|
49
53
|
* Get a primitive handler by kind.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAA0E,MAAM,YAAY,CAAC;AAExH,sBAAsB;AACtB,OAAO,EAAE,YAAY,EAAgB,MAAM,oBAAoB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAkB,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAc,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAuB,MAAM,2BAA2B,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAwB,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAoB,MAAM,yBAAyB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAiB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"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"}
|