odai-dsh-agent 0.2.15 → 0.2.16
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/README.md +20 -6
- package/build/bin/odai-dsh-agent.mjs +88 -7
- package/build/bin/odai-dsh-agent.mjs.map +1 -1
- package/build/src/control-center-installer.d.mts +32 -0
- package/build/src/control-center-installer.d.mts.map +1 -0
- package/build/src/control-center-installer.mjs +112 -0
- package/build/src/control-center-installer.mjs.map +1 -0
- package/build/src/control-center-prompt.d.mts +4 -0
- package/build/src/control-center-prompt.d.mts.map +1 -0
- package/build/src/control-center-prompt.mjs +15 -0
- package/build/src/control-center-prompt.mjs.map +1 -0
- package/build/src/installer.d.mts +2 -0
- package/build/src/installer.d.mts.map +1 -1
- package/build/src/installer.mjs +9 -0
- package/build/src/installer.mjs.map +1 -1
- package/client/client.js +517 -0
- package/control-center.cordis.patch.yml +3 -0
- package/package.json +23 -4
- package/preset/odai/runtime/control-center-host.d.mts +10 -0
- package/preset/odai/runtime/control-center-host.d.mts.map +1 -0
- package/preset/odai/runtime/control-center-host.mjs +15 -0
- package/preset/odai/runtime/control-center-host.mjs.map +1 -0
- package/preset/odai/runtime/control-center-runtime.d.mts +26 -0
- package/preset/odai/runtime/control-center-runtime.d.mts.map +1 -0
- package/preset/odai/runtime/control-center-runtime.mjs +118 -0
- package/preset/odai/runtime/control-center-runtime.mjs.map +1 -0
- package/preset/odai/runtime/index.d.mts.map +1 -1
- package/preset/odai/runtime/index.mjs +9 -0
- package/preset/odai/runtime/index.mjs.map +1 -1
- package/preset/odai/runtime/routing-config.d.mts +10 -0
- package/preset/odai/runtime/routing-config.d.mts.map +1 -1
- package/preset/odai/runtime/routing-config.mjs +83 -72
- package/preset/odai/runtime/routing-config.mjs.map +1 -1
- package/preset/odai/runtime/runtime-types.d.mts +1 -0
- package/preset/odai/runtime/runtime-types.d.mts.map +1 -1
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# odai dsh agent
|
|
2
2
|
|
|
3
|
-
`odai-dsh-agent` installs a selectable, session-scoped Odai Agent preset for DeepSeek Harness (`dsh`). It is independent from the profile-wide `odai-dsh-plugin`:
|
|
3
|
+
`odai-dsh-agent` installs a selectable, session-scoped Odai Agent preset for DeepSeek Harness (`dsh`). It is independent from the profile-wide `odai-dsh-plugin`: the preset install does not activate global governance. In an interactive terminal, the command separately offers to add the same package's Control Center to the Web profile and performs that profile change only after confirmation.
|
|
4
4
|
|
|
5
5
|
The installed preset is self-contained:
|
|
6
6
|
|
|
@@ -31,7 +31,7 @@ With DSH already installed, run the single Agent package command below. The pack
|
|
|
31
31
|
npx odai-dsh-agent install
|
|
32
32
|
```
|
|
33
33
|
|
|
34
|
-
The installer checks `dsh -V`; the `0.2.
|
|
34
|
+
The installer checks `dsh -V`; the `0.2.16` candidate accepts exactly `0.1.1-rc.2` and `0.1.2-alpha.2` and rejects every other developer-preview release. It records the detected version in the managed manifest and renders the Standard composition for that exact release. In an interactive terminal it then asks `同时把 Odai 控制中心安装到 DSH profile “web”?[Y/n]`; Enter or `y` installs it, while `n` leaves the profile unchanged. Non-interactive and `--json` installs never infer consent: automation can use `--with-control-center` or `--without-control-center` explicitly, with `--profile <name>` selecting a profile other than `web`.
|
|
35
35
|
|
|
36
36
|
`DSH_HOME` is honored. An explicit location can be supplied without changing the environment:
|
|
37
37
|
|
|
@@ -47,6 +47,20 @@ The installer copies through a mode-tightened staging directory and atomically p
|
|
|
47
47
|
|
|
48
48
|
DSH classifies this as a `trust: user` preset. User presets have the same privileges as shell access, so install only reviewed package versions; the installer repeats this trust notice in both plain and JSON output.
|
|
49
49
|
|
|
50
|
+
## Control Center
|
|
51
|
+
|
|
52
|
+
The optional profile entry ships inside `odai-dsh-agent`; it is not a third package. It adds one Chinese Control Center launcher to DSH Web with a real current-turn responsibility graph, session evidence timeline, structured event inspector, and routing controls for the four optional responsibilities. The controller remains host-managed and read-only. Routing writes use the same validated, locked, atomic routing action as the conversation tool and apply on the next user turn. Configured models alone are never displayed as execution evidence.
|
|
53
|
+
|
|
54
|
+
The main `install` prompt is the recommended entry. These lifecycle commands remain available for inspection, recovery, and automation:
|
|
55
|
+
|
|
56
|
+
```sh
|
|
57
|
+
npx odai-dsh-agent control-center install [--profile web]
|
|
58
|
+
npx odai-dsh-agent control-center status [--profile web]
|
|
59
|
+
npx odai-dsh-agent control-center uninstall [--profile web]
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
A Control Center profile change requires one normal DSH Web process restart. Removing it does not remove the Agent preset, routing configuration, or session evidence.
|
|
63
|
+
|
|
50
64
|
## Responsibility models
|
|
51
65
|
|
|
52
66
|
The Agent ships no researcher, planner, reviewer, or frontend model mapping. It stays quiet when an unconfigured responsibility is not needed. If a real task gap needs one, Odai says which responsibility is missing, confirms that no route ran, and asks for the provider, model, and optional reasoning effort in natural language. For example:
|
|
@@ -120,13 +134,13 @@ npx odai-dsh-agent uninstall
|
|
|
120
134
|
|
|
121
135
|
## Plugin versus Agent
|
|
122
136
|
|
|
123
|
-
|
|
137
|
+
Choose either package or install both when their scopes are useful:
|
|
124
138
|
|
|
125
139
|
- `odai-dsh-plugin`: profile-wide governance for every preset in that profile.
|
|
126
|
-
- `odai-dsh-agent`: selectable Odai governance for
|
|
127
|
-
- both: supported
|
|
140
|
+
- `odai-dsh-agent`: selectable Odai governance for sessions using this preset.
|
|
141
|
+
- both: supported even when users arrive at the combination independently; Plugin provides the single Control Center surface while the Agent preset remains selectable.
|
|
128
142
|
|
|
129
|
-
When both are
|
|
143
|
+
When both are present, a process-shared per-agent/per-turn skill snapshot keeps prompt governance and role contracts identical, the compatibility-safe evidence store deduplicates tool and route records, host RPC registration is reference-counted, and denials remain monotonic. Removing either package leaves the other package and shared routing/evidence stores usable. Neither package installs or changes the provider-neutral `odai-cli`.
|
|
130
144
|
|
|
131
145
|
## Development
|
|
132
146
|
|
|
@@ -1,16 +1,24 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
+
import { promptForControlCenterInstall } from "../src/control-center-prompt.mjs";
|
|
3
|
+
import { inspectAgentControlCenter, installAgentControlCenter, uninstallAgentControlCenter, } from "../src/control-center-installer.mjs";
|
|
2
4
|
import { readDshVersion } from "../src/dsh-version.mjs";
|
|
3
5
|
import { inspectAgentInstallation, installAgentPreset, SUPPORTED_DSH_VERSIONS, uninstallAgentPreset, } from "../src/installer.mjs";
|
|
4
6
|
const HELP = `Usage: odai-dsh-agent <command> [options]
|
|
5
7
|
|
|
6
8
|
Commands:
|
|
7
|
-
install
|
|
8
|
-
status
|
|
9
|
-
uninstall
|
|
9
|
+
install Install or update the managed Odai preset
|
|
10
|
+
status Inspect the managed Odai preset
|
|
11
|
+
uninstall Remove the preset when its managed files are unchanged
|
|
12
|
+
control-center install Add the Agent package's Control Center to a DSH profile
|
|
13
|
+
control-center status Inspect the Agent Control Center profile state
|
|
14
|
+
control-center uninstall Remove only the Agent Control Center profile state
|
|
10
15
|
|
|
11
16
|
Options:
|
|
12
17
|
--dsh-home <path> Override DSH_HOME
|
|
13
|
-
--
|
|
18
|
+
--profile <name> Control Center profile (default: web)
|
|
19
|
+
--with-control-center Install Control Center without prompting
|
|
20
|
+
--without-control-center Skip the interactive Control Center prompt
|
|
21
|
+
--json Print JSON; never prompts
|
|
14
22
|
--yes Confirm DSH is stopped; active-process verification still applies
|
|
15
23
|
-h, --help Show this help
|
|
16
24
|
`;
|
|
@@ -21,11 +29,27 @@ try {
|
|
|
21
29
|
}
|
|
22
30
|
else if (args.command === "install") {
|
|
23
31
|
const dshVersion = assertDshVersion();
|
|
24
|
-
|
|
32
|
+
const preset = await installAgentPreset({
|
|
25
33
|
dshHome: args.dshHome,
|
|
26
34
|
dshVersion,
|
|
27
35
|
confirmDshStopped: args.yes,
|
|
28
|
-
})
|
|
36
|
+
});
|
|
37
|
+
if (args.json) {
|
|
38
|
+
const controlCenter = args.controlCenter === true
|
|
39
|
+
? await installAgentControlCenter({ dshHome: args.dshHome, profile: args.profile })
|
|
40
|
+
: undefined;
|
|
41
|
+
process.stdout.write(`${JSON.stringify({
|
|
42
|
+
...preset,
|
|
43
|
+
...(controlCenter ? { controlCenter } : {}),
|
|
44
|
+
}, null, 2)}\n`);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
print(preset, false);
|
|
48
|
+
const installControlCenter = await shouldInstallControlCenter(args);
|
|
49
|
+
if (installControlCenter) {
|
|
50
|
+
print(await installAgentControlCenter({ dshHome: args.dshHome, profile: args.profile }), false);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
29
53
|
}
|
|
30
54
|
else if (args.command === "status") {
|
|
31
55
|
const result = await inspectAgentInstallation({ dshHome: args.dshHome });
|
|
@@ -39,6 +63,18 @@ try {
|
|
|
39
63
|
confirmDshStopped: args.yes,
|
|
40
64
|
}), args.json);
|
|
41
65
|
}
|
|
66
|
+
else if (args.command === "control-center" && args.controlCenterCommand === "install") {
|
|
67
|
+
print(await installAgentControlCenter({ dshHome: args.dshHome, profile: args.profile }), args.json);
|
|
68
|
+
}
|
|
69
|
+
else if (args.command === "control-center" && args.controlCenterCommand === "status") {
|
|
70
|
+
const result = await inspectAgentControlCenter({ dshHome: args.dshHome, profile: args.profile });
|
|
71
|
+
print(result, args.json);
|
|
72
|
+
if (result.status === "drifted")
|
|
73
|
+
process.exitCode = 2;
|
|
74
|
+
}
|
|
75
|
+
else if (args.command === "control-center" && args.controlCenterCommand === "uninstall") {
|
|
76
|
+
print(await uninstallAgentControlCenter({ dshHome: args.dshHome, profile: args.profile }), args.json);
|
|
77
|
+
}
|
|
42
78
|
else {
|
|
43
79
|
throw new Error("a command is required\n\n" + HELP);
|
|
44
80
|
}
|
|
@@ -47,6 +83,27 @@ catch (error) {
|
|
|
47
83
|
process.stderr.write(`odai-dsh-agent: ${error instanceof Error ? error.message : String(error)}\n`);
|
|
48
84
|
process.exitCode = 1;
|
|
49
85
|
}
|
|
86
|
+
async function shouldInstallControlCenter(args) {
|
|
87
|
+
if (args.controlCenter !== undefined)
|
|
88
|
+
return args.controlCenter;
|
|
89
|
+
if (args.json || !process.stdin.isTTY || !process.stdout.isTTY)
|
|
90
|
+
return false;
|
|
91
|
+
const current = await inspectAgentControlCenter({ dshHome: args.dshHome, profile: args.profile });
|
|
92
|
+
if (current.status === "installed") {
|
|
93
|
+
process.stdout.write(`Control Center 已安装:${current.target}\n`);
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
if (current.status === "drifted") {
|
|
97
|
+
process.stdout.write(`Control Center profile 状态存在漂移,已跳过:${current.target}\n`);
|
|
98
|
+
for (const issue of current.issues)
|
|
99
|
+
process.stdout.write(`- ${issue}\n`);
|
|
100
|
+
return false;
|
|
101
|
+
}
|
|
102
|
+
const accepted = await promptForControlCenterInstall(process.stdin, process.stdout, args.profile ?? "web");
|
|
103
|
+
if (!accepted)
|
|
104
|
+
process.stdout.write("已跳过 Control Center;稍后可运行 odai-dsh-agent control-center install。\n");
|
|
105
|
+
return accepted;
|
|
106
|
+
}
|
|
50
107
|
function assertDshVersion() {
|
|
51
108
|
const dsh = process.env.DSH_BIN ?? "dsh";
|
|
52
109
|
let actual;
|
|
@@ -71,16 +128,40 @@ function parseArgs(argv) {
|
|
|
71
128
|
parsed.json = true;
|
|
72
129
|
else if (arg === "--yes")
|
|
73
130
|
parsed.yes = true;
|
|
131
|
+
else if (arg === "--with-control-center") {
|
|
132
|
+
if (parsed.controlCenter === false)
|
|
133
|
+
throw new Error("--with-control-center conflicts with --without-control-center");
|
|
134
|
+
parsed.controlCenter = true;
|
|
135
|
+
}
|
|
136
|
+
else if (arg === "--without-control-center") {
|
|
137
|
+
if (parsed.controlCenter === true)
|
|
138
|
+
throw new Error("--without-control-center conflicts with --with-control-center");
|
|
139
|
+
parsed.controlCenter = false;
|
|
140
|
+
}
|
|
74
141
|
else if (arg === "--dsh-home")
|
|
75
142
|
parsed.dshHome = argv[++index];
|
|
76
|
-
else if (
|
|
143
|
+
else if (arg === "--profile")
|
|
144
|
+
parsed.profile = argv[++index];
|
|
145
|
+
else if (!parsed.command && (arg === "install" || arg === "status" || arg === "uninstall" || arg === "control-center"))
|
|
77
146
|
parsed.command = arg;
|
|
147
|
+
else if (parsed.command === "control-center" && !parsed.controlCenterCommand
|
|
148
|
+
&& (arg === "install" || arg === "status" || arg === "uninstall"))
|
|
149
|
+
parsed.controlCenterCommand = arg;
|
|
78
150
|
else
|
|
79
151
|
throw new Error(`unknown argument: ${arg}`);
|
|
80
152
|
}
|
|
81
153
|
if (parsed.dshHome !== undefined && parsed.dshHome.trim() === "") {
|
|
82
154
|
throw new Error("--dsh-home requires a non-empty path");
|
|
83
155
|
}
|
|
156
|
+
if (parsed.profile !== undefined && parsed.profile.trim() === "") {
|
|
157
|
+
throw new Error("--profile requires a non-empty name");
|
|
158
|
+
}
|
|
159
|
+
if (parsed.command === "control-center" && !parsed.controlCenterCommand && !parsed.help) {
|
|
160
|
+
throw new Error("control-center requires install, status, or uninstall");
|
|
161
|
+
}
|
|
162
|
+
if (parsed.controlCenter !== undefined && parsed.command !== "install" && !parsed.help) {
|
|
163
|
+
throw new Error("--with-control-center and --without-control-center are valid only with install");
|
|
164
|
+
}
|
|
84
165
|
return parsed;
|
|
85
166
|
}
|
|
86
167
|
function print(result, json) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"odai-dsh-agent.mjs","sourceRoot":"","sources":["../../bin/odai-dsh-agent.mts"],"names":[],"mappings":";AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,EACtB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"odai-dsh-agent.mjs","sourceRoot":"","sources":["../../bin/odai-dsh-agent.mts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { ExecFileSyncOptionsWithStringEncoding } from "node:child_process";
|
|
2
|
+
type CommandExecutor = (command: string, args: string[], options: ExecFileSyncOptionsWithStringEncoding) => string;
|
|
3
|
+
export interface AgentControlCenterOptions {
|
|
4
|
+
dshHome?: string;
|
|
5
|
+
profile?: string;
|
|
6
|
+
packageSpec?: string;
|
|
7
|
+
dshBin?: string;
|
|
8
|
+
platform?: NodeJS.Platform;
|
|
9
|
+
execute?: CommandExecutor;
|
|
10
|
+
}
|
|
11
|
+
export interface AgentControlCenterInspection {
|
|
12
|
+
status: "absent" | "installed" | "drifted";
|
|
13
|
+
issues: string[];
|
|
14
|
+
dshHome: string;
|
|
15
|
+
profile: string;
|
|
16
|
+
target: string;
|
|
17
|
+
dependency?: string;
|
|
18
|
+
}
|
|
19
|
+
export declare function inspectAgentControlCenter(options?: AgentControlCenterOptions): Promise<AgentControlCenterInspection>;
|
|
20
|
+
export declare function installAgentControlCenter(options?: AgentControlCenterOptions): Promise<Readonly<{
|
|
21
|
+
operation: "installed" | "unchanged";
|
|
22
|
+
target: string;
|
|
23
|
+
profile: string;
|
|
24
|
+
dependency: string;
|
|
25
|
+
}>>;
|
|
26
|
+
export declare function uninstallAgentControlCenter(options?: AgentControlCenterOptions): Promise<Readonly<{
|
|
27
|
+
operation: "uninstalled" | "absent";
|
|
28
|
+
target: string;
|
|
29
|
+
profile: string;
|
|
30
|
+
}>>;
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=control-center-installer.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"control-center-installer.d.mts","sourceRoot":"","sources":["../../src/control-center-installer.mts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,oBAAoB,CAAC;AAiBhF,KAAK,eAAe,GAAG,CACrB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,qCAAqC,KAC3C,MAAM,CAAC;AAEZ,MAAM,WAAW,yBAAyB;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC;IAC3B,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAED,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;IAC3C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AA0CD,wBAAsB,yBAAyB,CAC7C,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,4BAA4B,CAAC,CAoBvC;AAmBD,wBAAsB,yBAAyB,CAC7C,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,QAAQ,CAAC;IAAE,SAAS,EAAE,WAAW,GAAG,WAAW,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAelH;AAED,wBAAsB,2BAA2B,CAC/C,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,QAAQ,CAAC;IAAE,SAAS,EAAE,aAAa,GAAG,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAY7F"}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import { execFileSync } from "node:child_process";
|
|
2
|
+
import { readFile } from "node:fs/promises";
|
|
3
|
+
import { dirname, resolve, sep } from "node:path";
|
|
4
|
+
import { fileURLToPath } from "node:url";
|
|
5
|
+
import { resolveDshHome } from "./installer.mjs";
|
|
6
|
+
const moduleDirectory = dirname(fileURLToPath(import.meta.url));
|
|
7
|
+
const packageRoot = resolve(moduleDirectory, moduleDirectory.endsWith(`${sep}build${sep}src`) ? "../.." : "..");
|
|
8
|
+
const parsedMetadata = JSON.parse(await readFile(resolve(packageRoot, "package.json"), "utf8"));
|
|
9
|
+
if (!isRecord(parsedMetadata) || typeof parsedMetadata.name !== "string" || typeof parsedMetadata.version !== "string") {
|
|
10
|
+
throw new Error("odai-dsh-agent package metadata is invalid for Control Center management");
|
|
11
|
+
}
|
|
12
|
+
const packageMetadata = { name: parsedMetadata.name, version: parsedMetadata.version };
|
|
13
|
+
function isRecord(value) {
|
|
14
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
15
|
+
}
|
|
16
|
+
function assertProfile(value) {
|
|
17
|
+
if (!/^[A-Za-z0-9][A-Za-z0-9._-]*$/u.test(value)) {
|
|
18
|
+
throw new TypeError("profile must contain only letters, digits, dots, underscores, or hyphens");
|
|
19
|
+
}
|
|
20
|
+
return value;
|
|
21
|
+
}
|
|
22
|
+
async function profileMetadata(path) {
|
|
23
|
+
let source;
|
|
24
|
+
try {
|
|
25
|
+
source = await readFile(path, "utf8");
|
|
26
|
+
}
|
|
27
|
+
catch (error) {
|
|
28
|
+
if (isRecord(error) && error.code === "ENOENT")
|
|
29
|
+
return undefined;
|
|
30
|
+
throw error;
|
|
31
|
+
}
|
|
32
|
+
const parsed = JSON.parse(source);
|
|
33
|
+
if (!isRecord(parsed))
|
|
34
|
+
throw new TypeError(`DSH profile package metadata ${path} must be an object`);
|
|
35
|
+
const dependencies = isRecord(parsed.dependencies)
|
|
36
|
+
? Object.fromEntries(Object.entries(parsed.dependencies).filter((entry) => typeof entry[1] === "string"))
|
|
37
|
+
: undefined;
|
|
38
|
+
const dsh = isRecord(parsed.dsh) && isRecord(parsed.dsh.profile)
|
|
39
|
+
? { profile: { bundles: Array.isArray(parsed.dsh.profile.bundles)
|
|
40
|
+
? parsed.dsh.profile.bundles.filter((entry) => typeof entry === "string")
|
|
41
|
+
: undefined } }
|
|
42
|
+
: undefined;
|
|
43
|
+
return { dependencies, dsh };
|
|
44
|
+
}
|
|
45
|
+
export async function inspectAgentControlCenter(options = {}) {
|
|
46
|
+
const dshHome = resolveDshHome(options.dshHome);
|
|
47
|
+
const profile = assertProfile(options.profile ?? "web");
|
|
48
|
+
const target = resolve(dshHome, "profiles", profile);
|
|
49
|
+
const metadata = await profileMetadata(resolve(target, "package.json"));
|
|
50
|
+
if (!metadata)
|
|
51
|
+
return { status: "absent", issues: [], dshHome, profile, target };
|
|
52
|
+
const dependency = metadata.dependencies?.[packageMetadata.name];
|
|
53
|
+
const bundled = metadata.dsh?.profile?.bundles?.includes(packageMetadata.name) === true;
|
|
54
|
+
if (!dependency && !bundled)
|
|
55
|
+
return { status: "absent", issues: [], dshHome, profile, target };
|
|
56
|
+
const issues = [];
|
|
57
|
+
if (!dependency)
|
|
58
|
+
issues.push(`missing ${packageMetadata.name} profile dependency`);
|
|
59
|
+
if (!bundled)
|
|
60
|
+
issues.push(`missing ${packageMetadata.name} profile bundle entry`);
|
|
61
|
+
return {
|
|
62
|
+
status: issues.length === 0 ? "installed" : "drifted",
|
|
63
|
+
issues,
|
|
64
|
+
dshHome,
|
|
65
|
+
profile,
|
|
66
|
+
target,
|
|
67
|
+
...(dependency ? { dependency } : {}),
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
function runPluginCommand(action, operand, options) {
|
|
71
|
+
const dsh = options.dshBin ?? process.env.DSH_BIN ?? "dsh";
|
|
72
|
+
const platform = options.platform ?? process.platform;
|
|
73
|
+
const command = platform === "win32" && dsh === "dsh" ? "dsh.cmd" : dsh;
|
|
74
|
+
const execute = options.execute ?? execFileSync;
|
|
75
|
+
const processOptions = {
|
|
76
|
+
encoding: "utf8",
|
|
77
|
+
env: { ...process.env, DSH_HOME: resolveDshHome(options.dshHome) },
|
|
78
|
+
...(platform === "win32" ? { shell: true } : {}),
|
|
79
|
+
};
|
|
80
|
+
execute(command, ["plugin", "--profile", assertProfile(options.profile ?? "web"), action, operand], processOptions);
|
|
81
|
+
}
|
|
82
|
+
export async function installAgentControlCenter(options = {}) {
|
|
83
|
+
const current = await inspectAgentControlCenter(options);
|
|
84
|
+
if (current.status === "drifted") {
|
|
85
|
+
throw new Error(`refusing to replace drifted Control Center profile state at ${current.target}: ${current.issues.join("; ")}`);
|
|
86
|
+
}
|
|
87
|
+
if (current.status === "installed") {
|
|
88
|
+
return Object.freeze({ operation: "unchanged", target: current.target, profile: current.profile, dependency: current.dependency ?? "" });
|
|
89
|
+
}
|
|
90
|
+
const packageSpec = options.packageSpec ?? `${packageMetadata.name}@${packageMetadata.version}`;
|
|
91
|
+
runPluginCommand("add", packageSpec, options);
|
|
92
|
+
const installed = await inspectAgentControlCenter(options);
|
|
93
|
+
if (installed.status !== "installed" || !installed.dependency) {
|
|
94
|
+
throw new Error(`DSH plugin manager did not install the Agent Control Center completely: ${installed.issues.join("; ") || installed.status}`);
|
|
95
|
+
}
|
|
96
|
+
return Object.freeze({ operation: "installed", target: installed.target, profile: installed.profile, dependency: installed.dependency });
|
|
97
|
+
}
|
|
98
|
+
export async function uninstallAgentControlCenter(options = {}) {
|
|
99
|
+
const current = await inspectAgentControlCenter(options);
|
|
100
|
+
if (current.status === "absent")
|
|
101
|
+
return Object.freeze({ operation: "absent", target: current.target, profile: current.profile });
|
|
102
|
+
if (current.status === "drifted") {
|
|
103
|
+
throw new Error(`refusing to remove drifted Control Center profile state at ${current.target}: ${current.issues.join("; ")}`);
|
|
104
|
+
}
|
|
105
|
+
runPluginCommand("remove", packageMetadata.name, options);
|
|
106
|
+
const removed = await inspectAgentControlCenter(options);
|
|
107
|
+
if (removed.status !== "absent") {
|
|
108
|
+
throw new Error(`DSH plugin manager did not remove the Agent Control Center completely: ${removed.issues.join("; ") || removed.status}`);
|
|
109
|
+
}
|
|
110
|
+
return Object.freeze({ operation: "uninstalled", target: removed.target, profile: removed.profile });
|
|
111
|
+
}
|
|
112
|
+
//# sourceMappingURL=control-center-installer.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"control-center-installer.mjs","sourceRoot":"","sources":["../../src/control-center-installer.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAoCjD,MAAM,eAAe,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAChE,MAAM,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,eAAe,CAAC,QAAQ,CAAC,GAAG,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AAChH,MAAM,cAAc,GAAY,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AACzG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,OAAO,cAAc,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,cAAc,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;IACvH,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;AAC9F,CAAC;AACD,MAAM,eAAe,GAAoB,EAAE,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,OAAO,EAAE,CAAC;AAExG,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,IAAI,CAAC,+BAA+B,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,SAAS,CAAC,0EAA0E,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAAY;IACzC,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QACjE,MAAM,KAAK,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,MAAM,IAAI,SAAS,CAAC,gCAAgC,IAAI,oBAAoB,CAAC,CAAC;IACrG,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC;QAChD,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAA6B,EAAE,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC;QACpI,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;QAC9D,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC;oBAC7D,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;oBAC1F,CAAC,CAAC,SAAS,EAAE,EAAE;QACnB,CAAC,CAAC,SAAS,CAAC;IACd,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,OAAO,GAA8B,EAAE;IAEvC,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC;IACxE,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IACjF,MAAM,UAAU,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACjE,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;IACxF,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC/F,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,CAAC,UAAU;QAAE,MAAM,CAAC,IAAI,CAAC,WAAW,eAAe,CAAC,IAAI,qBAAqB,CAAC,CAAC;IACnF,IAAI,CAAC,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,WAAW,eAAe,CAAC,IAAI,uBAAuB,CAAC,CAAC;IAClF,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;QACrD,MAAM;QACN,OAAO;QACP,OAAO;QACP,MAAM;QACN,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CACvB,MAAwB,EACxB,OAAe,EACf,OAAkC;IAElC,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,KAAK,CAAC;IAC3D,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACtD,MAAM,OAAO,GAAG,QAAQ,KAAK,OAAO,IAAI,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;IACxE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,YAAY,CAAC;IAChD,MAAM,cAAc,GAA0C;QAC5D,QAAQ,EAAE,MAAM;QAChB,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAClE,GAAG,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjD,CAAC;IACF,OAAO,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,WAAW,EAAE,aAAa,CAAC,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC;AACtH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,OAAO,GAA8B,EAAE;IAEvC,MAAM,OAAO,GAAG,MAAM,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,+DAA+D,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjI,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;QACnC,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC,CAAC;IAC3I,CAAC;IACD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,GAAG,eAAe,CAAC,IAAI,IAAI,eAAe,CAAC,OAAO,EAAE,CAAC;IAChG,gBAAgB,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,MAAM,yBAAyB,CAAC,OAAO,CAAC,CAAC;IAC3D,IAAI,SAAS,CAAC,MAAM,KAAK,WAAW,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC9D,MAAM,IAAI,KAAK,CAAC,2EAA2E,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IAChJ,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC;AAC3I,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,OAAO,GAA8B,EAAE;IAEvC,MAAM,OAAO,GAAG,MAAM,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACjI,IAAI,OAAO,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,8DAA8D,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChI,CAAC;IACD,gBAAgB,CAAC,QAAQ,EAAE,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,MAAM,yBAAyB,CAAC,OAAO,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,0EAA0E,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3I,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AACvG,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Readable, Writable } from "node:stream";
|
|
2
|
+
export declare function acceptsControlCenterInstall(answer: string): boolean;
|
|
3
|
+
export declare function promptForControlCenterInstall(input?: Readable, output?: Writable, profile?: string): Promise<boolean>;
|
|
4
|
+
//# sourceMappingURL=control-center-prompt.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"control-center-prompt.d.mts","sourceRoot":"","sources":["../../src/control-center-prompt.mts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEtD,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAEnE;AAED,wBAAsB,6BAA6B,CACjD,KAAK,GAAE,QAAwB,EAC/B,MAAM,GAAE,QAAyB,EACjC,OAAO,SAAQ,GACd,OAAO,CAAC,OAAO,CAAC,CAQlB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { createInterface } from "node:readline/promises";
|
|
2
|
+
export function acceptsControlCenterInstall(answer) {
|
|
3
|
+
return /^(?:|y|yes)$/iu.test(answer.trim());
|
|
4
|
+
}
|
|
5
|
+
export async function promptForControlCenterInstall(input = process.stdin, output = process.stdout, profile = "web") {
|
|
6
|
+
const readline = createInterface({ input, output });
|
|
7
|
+
try {
|
|
8
|
+
const answer = await readline.question(`同时把 Odai 控制中心安装到 DSH profile “${profile}”?[Y/n] `);
|
|
9
|
+
return acceptsControlCenterInstall(answer);
|
|
10
|
+
}
|
|
11
|
+
finally {
|
|
12
|
+
readline.close();
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=control-center-prompt.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"control-center-prompt.mjs","sourceRoot":"","sources":["../../src/control-center-prompt.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,MAAM,UAAU,2BAA2B,CAAC,MAAc;IACxD,OAAO,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,KAAK,GAAa,OAAO,CAAC,KAAK,EAC/B,MAAM,GAAa,OAAO,CAAC,MAAM,EACjC,OAAO,GAAG,KAAK;IAEf,MAAM,QAAQ,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IACpD,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,iCAAiC,OAAO,UAAU,CAAC,CAAC;QAC3F,OAAO,2BAA2B,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;YAAS,CAAC;QACT,QAAQ,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;AACH,CAAC"}
|
|
@@ -9,6 +9,8 @@ export interface AgentInstallerOptions {
|
|
|
9
9
|
}
|
|
10
10
|
export declare const DEFAULT_PRESET_ID = "odai";
|
|
11
11
|
export declare const MANIFEST_FILE = ".odai-agent.json";
|
|
12
|
+
export declare const inject: string[];
|
|
13
|
+
export declare function apply(ctx: unknown, rawConfig?: unknown): Promise<void>;
|
|
12
14
|
export declare const SUPPORTED_DSH_VERSIONS: readonly string[];
|
|
13
15
|
export declare const SUPPORTED_DSH_VERSION = "0.1.2-alpha.2";
|
|
14
16
|
export declare function renderAgentCompositionForDsh(composition: string, dshVersion?: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.d.mts","sourceRoot":"","sources":["../../src/installer.mts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,wCAAwC,CAAC;AAQhD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;CACzD;AAgCD,eAAO,MAAM,iBAAiB,SAAS,CAAC;AACxC,eAAO,MAAM,aAAa,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"installer.d.mts","sourceRoot":"","sources":["../../src/installer.mts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,wCAAwC,CAAC;AAQhD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;CACzD;AAgCD,eAAO,MAAM,iBAAiB,SAAS,CAAC;AACxC,eAAO,MAAM,aAAa,qBAAqB,CAAC;AAKhD,eAAO,MAAM,MAAM,UAAwB,CAAC;AAE5C,wBAAsB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,SAAS,GAAE,OAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAOhF;AAmBD,eAAO,MAAM,sBAAsB,mBAElC,CAAC;AAWF,eAAO,MAAM,qBAAqB,kBAAqB,CAAC;AAqBxD,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,SAAwB,GAAG,MAAM,CAiC5G;AAED,wBAAgB,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAShG;AAED,wBAAsB,wBAAwB,CAAC,OAAO,GAAE,qBAA0B;YAtIxE,QAAQ,GAAG,WAAW,GAAG,SAAS;YAClC,MAAM,EAAE;cACN,MAAM;iBACH,MAAM;;;;IAyIpB;AAED,wBAAsB,kBAAkB,CAAC,OAAO,GAAE,qBAA0B;;;;;;;;;;IAsF3E;AAED,wBAAsB,oBAAoB,CAAC,OAAO,GAAE,qBAA0B;;;;;;;;;IAyB7E"}
|
package/build/src/installer.mjs
CHANGED
|
@@ -17,6 +17,15 @@ export const DEFAULT_PRESET_ID = "odai";
|
|
|
17
17
|
export const MANIFEST_FILE = ".odai-agent.json";
|
|
18
18
|
const moduleDirectory = dirname(fileURLToPath(import.meta.url));
|
|
19
19
|
const packageRoot = resolve(moduleDirectory, moduleDirectory.endsWith(`${sep}build${sep}src`) ? "../.." : "..");
|
|
20
|
+
export const inject = ["connection", "llm"];
|
|
21
|
+
export async function apply(ctx, rawConfig = {}) {
|
|
22
|
+
const moduleUrl = pathToFileURL(resolve(packageRoot, "preset/odai/runtime/control-center-host.mjs")).href;
|
|
23
|
+
const host = await import(moduleUrl);
|
|
24
|
+
if (!isRecord(host) || typeof host.apply !== "function") {
|
|
25
|
+
throw new Error("odai-dsh-agent Control Center host artifact is invalid");
|
|
26
|
+
}
|
|
27
|
+
await host.apply(ctx, rawConfig);
|
|
28
|
+
}
|
|
20
29
|
const defaultSourceRoot = resolve(packageRoot, "preset/odai");
|
|
21
30
|
const parsedPackageMetadata = JSON.parse(await readFile(resolve(packageRoot, "package.json"), "utf8"));
|
|
22
31
|
if (!isRecord(parsedPackageMetadata) || typeof parsedPackageMetadata.name !== "string"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"installer.mjs","sourceRoot":"","sources":["../../src/installer.mts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"installer.mjs","sourceRoot":"","sources":["../../src/installer.mts"],"names":[],"mappings":"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"}
|