@qilin-agent/cli 3.1.5 → 3.1.7
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/lib/bin.js +10 -8
- package/lib/{dump-config-_HRfhhWz.js → dump-config-Dh7zdBXZ.js} +1 -1
- package/lib/{plugin-BQ1sn-63.js → plugin-77QK8DqG.js} +1 -35
- package/lib/{profile-boot-DSy6PUHQ.js → profile-boot-Jk8GJcE8.js} +3 -3
- package/lib/profile-boot.js +1 -1
- package/lib/types/args.d.ts +1 -1
- package/lib/types/bin.d.ts +7 -1
- package/package.json +133 -129
package/lib/bin.js
CHANGED
|
@@ -108,7 +108,7 @@ function resolveBoot(program, profile, options, args) {
|
|
|
108
108
|
* @param version - version string printed by `--version`.
|
|
109
109
|
* @returns the resolved invocation.
|
|
110
110
|
*/
|
|
111
|
-
function parseQilinArgs(argv, version) {
|
|
111
|
+
function parseQilinArgs(argv, version, manageDesktopProfile = false) {
|
|
112
112
|
const first = argv[0];
|
|
113
113
|
let resolved;
|
|
114
114
|
const program = new Command();
|
|
@@ -116,7 +116,7 @@ function parseQilinArgs(argv, version) {
|
|
|
116
116
|
if (options.profile === void 0 && args.some((argument) => argument === "-h" || argument === "--help")) program.help();
|
|
117
117
|
const profile = options.profile ?? PRODUCT_PROFILE;
|
|
118
118
|
if (profile === "") program.error("error: --profile needs a name");
|
|
119
|
-
rejectReservedDesktopProfile(program, profile);
|
|
119
|
+
if (!manageDesktopProfile) rejectReservedDesktopProfile(program, profile);
|
|
120
120
|
resolved = resolveBoot(program, profile, options, args);
|
|
121
121
|
});
|
|
122
122
|
if (first === "plugin") {
|
|
@@ -124,7 +124,7 @@ function parseQilinArgs(argv, version) {
|
|
|
124
124
|
plugin.option("--profile <name>", "the profile whose plugins to manage (defaults to the product profile; initialized on first use)", selectProfile).allowUnknownOption().argument("[args...]", "one of: list, doctor <name|path>, version-exemptions, allow-version <package@version> --qilin-version <exact> --accept-risk, revoke-version <package@version> --qilin-version <exact>; otherwise pnpm arguments forwarded verbatim (add <pkg>, remove <pkg>, why <pkg>, ...)").action((args, options) => {
|
|
125
125
|
const profile = options.profile ?? PRODUCT_PROFILE;
|
|
126
126
|
if (profile === "") program.error("error: --profile needs a name");
|
|
127
|
-
rejectReservedDesktopProfile(plugin, profile);
|
|
127
|
+
if (!manageDesktopProfile) rejectReservedDesktopProfile(plugin, profile);
|
|
128
128
|
if (args.length === 0) program.error("error: plugin needs a subcommand (list, doctor <name|path>, version-exemptions, allow-version <package@version>, revoke-version <package@version>) or pnpm arguments to forward (e.g. add <package>)");
|
|
129
129
|
if (args[0] === "list" && args.length > 1) program.error("error: plugin list takes no further arguments");
|
|
130
130
|
if (args[0] === "doctor" && args.length !== 2) program.error("error: plugin doctor takes exactly one installed package name or package directory");
|
|
@@ -286,9 +286,10 @@ installSchedulerYield();
|
|
|
286
286
|
* Run the public qilin command-line interface.
|
|
287
287
|
* @returns a promise that settles when the selected command mode finishes.
|
|
288
288
|
*/
|
|
289
|
-
async function runCli() {
|
|
289
|
+
async function runCli(options = {}) {
|
|
290
290
|
const version = getQilinRuntimeVersion();
|
|
291
|
-
const
|
|
291
|
+
const { manageDesktopProfile, ...profileOptions } = options;
|
|
292
|
+
const invocation = parseQilinArgs(process.argv.slice(2), version, manageDesktopProfile);
|
|
292
293
|
switch (invocation.mode) {
|
|
293
294
|
case "profile": {
|
|
294
295
|
const { ENTRY_PROFILES, isWebEntry, runWebEntry } = await import("./web-entry-C--0C6wG.js");
|
|
@@ -313,7 +314,8 @@ async function runCli() {
|
|
|
313
314
|
profile: invocation.profile,
|
|
314
315
|
fromDefaultProfile: invocation.fromDefaultProfile,
|
|
315
316
|
patchFiles: invocation.patches,
|
|
316
|
-
args: invocation.args
|
|
317
|
+
args: invocation.args,
|
|
318
|
+
...profileOptions
|
|
317
319
|
});
|
|
318
320
|
} catch (error) {
|
|
319
321
|
if (!(error instanceof StartupError)) throw error;
|
|
@@ -327,7 +329,7 @@ async function runCli() {
|
|
|
327
329
|
break;
|
|
328
330
|
}
|
|
329
331
|
case "plugin": {
|
|
330
|
-
const { runPlugin } = await import("./plugin-
|
|
332
|
+
const { runPlugin } = await import("./plugin-77QK8DqG.js");
|
|
331
333
|
process.exit(await runPlugin(invocation.profile, invocation.args));
|
|
332
334
|
break;
|
|
333
335
|
}
|
|
@@ -337,7 +339,7 @@ async function runCli() {
|
|
|
337
339
|
break;
|
|
338
340
|
}
|
|
339
341
|
case "dump-config": {
|
|
340
|
-
const { runDumpConfig } = await import("./dump-config-
|
|
342
|
+
const { runDumpConfig } = await import("./dump-config-Dh7zdBXZ.js");
|
|
341
343
|
runDumpConfig(invocation.profile, invocation.defaultOnly, invocation.patches, invocation.fromDefaultProfile);
|
|
342
344
|
break;
|
|
343
345
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as prepareProfile, n as PROFILE_ROOT_FILENAME, r as homePatchPath } from "./profile-boot-
|
|
1
|
+
import { a as prepareProfile, n as PROFILE_ROOT_FILENAME, r as homePatchPath } from "./profile-boot-Jk8GJcE8.js";
|
|
2
2
|
import { loadOptionalPatches, loadOverlayPatches, renderConfigDump } from "@qilin-agent/app-boot";
|
|
3
3
|
import { join, resolve } from "node:path";
|
|
4
4
|
import { existsSync } from "node:fs";
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { t as INSTALL_ANCHOR } from "./profile-boot-
|
|
1
|
+
import { t as INSTALL_ANCHOR } from "./profile-boot-Jk8GJcE8.js";
|
|
2
2
|
import { DEFAULT_PROFILE_BUNDLES, EngineNameCollisionError, PROFILE_TEMPLATES, doctorPluginPackage, initProfile, readProfileCompatibility, readProfileManifest, readProfilePluginRows, reconcileProfileBundles, resolveBundleDir, resolveProfileDir, setProfileVersionExemption } from "@qilin-agent/app-boot";
|
|
3
3
|
import { mkdir } from "node:fs/promises";
|
|
4
4
|
import { join, resolve } from "node:path";
|
|
5
5
|
import { existsSync } from "node:fs";
|
|
6
6
|
import { spawnSync } from "node:child_process";
|
|
7
7
|
import { withFileLock } from "@qilin-agent/atomic-write";
|
|
8
|
-
import { refusedInstallSpecs } from "@qilin-agent/plugin-manager/operations";
|
|
9
8
|
//#region lib/types/plugin.js
|
|
10
9
|
/**
|
|
11
10
|
* `qilin plugin [--profile <name>] <args...>` — profile plugin management.
|
|
@@ -30,8 +29,6 @@ import { refusedInstallSpecs } from "@qilin-agent/plugin-manager/operations";
|
|
|
30
29
|
const NAME = "qilin";
|
|
31
30
|
/** Bound on waiting for the profile write lock an exemption command shares with the manager. */
|
|
32
31
|
const LOCK_WAIT_MS = 12e4;
|
|
33
|
-
/** Bound on the pre-install registry lookup that reads a named package's peers. */
|
|
34
|
-
const LOOKUP_TIMEOUT_MS = 12e4;
|
|
35
32
|
/**
|
|
36
33
|
* Print one profile's plugin layers in activation order.
|
|
37
34
|
* @param profile - the profile name, used to recognize its shipped template layers.
|
|
@@ -154,35 +151,6 @@ function anchorPathSpec(argument, cwd) {
|
|
|
154
151
|
return `${match.groups.prefix ?? ""}${resolve(cwd, match.groups.path)}`;
|
|
155
152
|
}
|
|
156
153
|
/**
|
|
157
|
-
* Refuse an install command that names a package the running runtime version
|
|
158
|
-
* rejects, before pnpm writes anything.
|
|
159
|
-
*
|
|
160
|
-
* The check reads the named manifests without installing them, so a rejected
|
|
161
|
-
* package never lands on disk and the version already in use keeps working. The
|
|
162
|
-
* post-install and startup checks still judge what a path or registry lookup
|
|
163
|
-
* cannot: a git or tarball spec, and a bundle component whose peers need the
|
|
164
|
-
* installed tree.
|
|
165
|
-
* @param profile - the profile name the operation runs against.
|
|
166
|
-
* @param dir - the profile directory.
|
|
167
|
-
* @param args - pnpm arguments, before relative path anchoring.
|
|
168
|
-
* @returns the process exit code when the command was refused, otherwise undefined.
|
|
169
|
-
*/
|
|
170
|
-
async function refuseIncompatibleInstall(profile, dir, args) {
|
|
171
|
-
const refused = await refusedInstallSpecs({
|
|
172
|
-
profile,
|
|
173
|
-
dir,
|
|
174
|
-
installAnchor: INSTALL_ANCHOR,
|
|
175
|
-
cwd: process.cwd()
|
|
176
|
-
}, args, {
|
|
177
|
-
execution: "cli",
|
|
178
|
-
lookupTimeoutMs: LOOKUP_TIMEOUT_MS
|
|
179
|
-
});
|
|
180
|
-
if (refused.warnings.length === 0) return void 0;
|
|
181
|
-
process.stderr.write(`\n${NAME}: installation rejected: ${refused.warnings.join("\n")}\n${NAME}: nothing was installed.\n`);
|
|
182
|
-
for (const { name, version, runtimeVersion } of refused.incompatible) process.stderr.write(`${NAME}: to accept the risk, run: ${NAME} plugin --profile ${profile} allow-version ${name}@${version} --qilin-version ${runtimeVersion} --accept-risk\n`);
|
|
183
|
-
return 1;
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
154
|
* Run one `qilin plugin` invocation: report or list, grant or revoke one
|
|
187
155
|
* exact-version exemption, or forward to pnpm and reconcile.
|
|
188
156
|
* @param profile - the profile name.
|
|
@@ -200,8 +168,6 @@ async function runPlugin(profile, args) {
|
|
|
200
168
|
}
|
|
201
169
|
const exemption = await exemptionCommand(profile, args);
|
|
202
170
|
if (exemption !== void 0) return exemption;
|
|
203
|
-
const refused = await refuseIncompatibleInstall(profile, dir, args);
|
|
204
|
-
if (refused !== void 0) return refused;
|
|
205
171
|
if (!existsSync(join(dir, "package.json"))) {
|
|
206
172
|
const template = PROFILE_TEMPLATES[profile];
|
|
207
173
|
initProfile(dir, template?.bundles ?? DEFAULT_PROFILE_BUNDLES);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PROFILE_PATCH_FILENAME, PROFILE_TEMPLATES, PluginPackages, QILIN_LAUNCH_PROFILE_KEY, boot,
|
|
1
|
+
import { PROFILE_PATCH_FILENAME, PROFILE_TEMPLATES, PluginPackages, QILIN_LAUNCH_PROFILE_KEY, boot, createRuntimeResolution, healIsolatedProfileModuleFallback, healProfilesModuleFallback, initProfile, installFailLoud, loadOverlayPatches, loadProfile, loadProfileDirectory, readProfilePatches, resolveProfileDir } from "@qilin-agent/app-boot";
|
|
2
2
|
import { resolveQilinHome } from "@qilin-agent/home-paths";
|
|
3
3
|
import { dirname, join, resolve } from "node:path";
|
|
4
4
|
import { existsSync, mkdirSync, rmSync, writeFileSync } from "node:fs";
|
|
@@ -212,7 +212,7 @@ async function composeProfile(name, patchFiles, resolutionMode, fromDefaultProfi
|
|
|
212
212
|
if (resolvedProfile !== void 0 && resolutionMode !== "runtime") healIsolatedProfileModuleFallback(resolvedProfile);
|
|
213
213
|
return {
|
|
214
214
|
profile,
|
|
215
|
-
resolution: resolutionMode === "runtime" || resolvedProfile !== void 0 ? await
|
|
215
|
+
resolution: resolutionMode === "runtime" || resolvedProfile !== void 0 ? await createRuntimeResolution(resolutionOptions) : await healProfilesModuleFallback(resolutionOptions),
|
|
216
216
|
overlays: patchFiles.flatMap((file) => loadOverlayPatches(NAME, resolve(file)))
|
|
217
217
|
};
|
|
218
218
|
}
|
|
@@ -285,7 +285,7 @@ async function runProfile(options) {
|
|
|
285
285
|
await hostCtx.plugin(PluginPackages, resolutionMode === "link" ? {} : {
|
|
286
286
|
generation: composed.resolution,
|
|
287
287
|
behavior: resolutionMode === "dual" ? "verify" : "enforce",
|
|
288
|
-
recompute: async () =>
|
|
288
|
+
recompute: async () => createRuntimeResolution({
|
|
289
289
|
installAnchor: profileContext.installAnchor,
|
|
290
290
|
profile: options.resolvedProfile === void 0 ? loadProfile(NAME, options.profile, profileContext.installAnchor) : loadProfileDirectory(NAME, options.resolvedProfile.profile.dir, profileContext.installAnchor)
|
|
291
291
|
})
|
package/lib/profile-boot.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as prepareProfile, i as initializeProfileFromDefault, n as PROFILE_ROOT_FILENAME, o as runProfile, r as homePatchPath, t as INSTALL_ANCHOR } from "./profile-boot-
|
|
1
|
+
import { a as prepareProfile, i as initializeProfileFromDefault, n as PROFILE_ROOT_FILENAME, o as runProfile, r as homePatchPath, t as INSTALL_ANCHOR } from "./profile-boot-Jk8GJcE8.js";
|
|
2
2
|
export { INSTALL_ANCHOR, PROFILE_ROOT_FILENAME, homePatchPath, initializeProfileFromDefault, prepareProfile, runProfile };
|
package/lib/types/args.d.ts
CHANGED
|
@@ -60,6 +60,6 @@ export type QilinInvocation = ProfileInvocation | DumpConfigInvocation | PluginI
|
|
|
60
60
|
* @param version - version string printed by `--version`.
|
|
61
61
|
* @returns the resolved invocation.
|
|
62
62
|
*/
|
|
63
|
-
export declare function parseQilinArgs(argv: readonly string[], version: string): QilinInvocation;
|
|
63
|
+
export declare function parseQilinArgs(argv: readonly string[], version: string, manageDesktopProfile?: boolean): QilinInvocation;
|
|
64
64
|
export {};
|
|
65
65
|
//# sourceMappingURL=args.d.ts.map
|
package/lib/types/bin.d.ts
CHANGED
|
@@ -3,9 +3,15 @@
|
|
|
3
3
|
* Command-line entry for qilin.
|
|
4
4
|
* @module @qilin-agent/cli/bin
|
|
5
5
|
*/
|
|
6
|
+
import type { RunProfileOptions } from './profile-boot.ts';
|
|
7
|
+
/** Installation-owned dependencies supplied by a packaged CLI launcher. */
|
|
8
|
+
export type RunCliOptions = Pick<RunProfileOptions, 'packageManager'> & {
|
|
9
|
+
/** Permit plugin commands for the Desktop's installed profile; reserved for its installed carrier. */
|
|
10
|
+
manageDesktopProfile?: boolean;
|
|
11
|
+
};
|
|
6
12
|
/**
|
|
7
13
|
* Run the public qilin command-line interface.
|
|
8
14
|
* @returns a promise that settles when the selected command mode finishes.
|
|
9
15
|
*/
|
|
10
|
-
export declare function runCli(): Promise<void>;
|
|
16
|
+
export declare function runCli(options?: RunCliOptions): Promise<void>;
|
|
11
17
|
//# sourceMappingURL=bin.d.ts.map
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@qilin-agent/cli",
|
|
3
3
|
"description": "qilin CLI: profile launch, plugin management, and configuration inspection",
|
|
4
|
-
"version": "3.1.
|
|
4
|
+
"version": "3.1.7",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
7
7
|
},
|
|
@@ -33,90 +33,91 @@
|
|
|
33
33
|
"license": "MIT",
|
|
34
34
|
"dependencies": {
|
|
35
35
|
"commander": "^15.0.0",
|
|
36
|
-
"js-yaml": "^4.2
|
|
36
|
+
"js-yaml": "^4.3.2",
|
|
37
37
|
"node-addon-require-builtin": "^0.1.9",
|
|
38
|
-
"@qilin-agent/accounts-local": "3.1.
|
|
39
|
-
"@qilin-agent/agent-
|
|
40
|
-
"@qilin-agent/
|
|
41
|
-
"@qilin-agent/
|
|
42
|
-
"@qilin-agent/
|
|
43
|
-
"@qilin-agent/
|
|
44
|
-
"@qilin-agent/base": "3.1.
|
|
45
|
-
"@qilin-agent/client-ui-agent-preset": "3.1.
|
|
46
|
-
"@qilin-agent/client-ui-kylin": "3.1.
|
|
47
|
-
"@qilin-agent/
|
|
48
|
-
"@qilin-agent/command-
|
|
49
|
-
"@qilin-agent/
|
|
50
|
-
"@qilin-agent/compaction-
|
|
51
|
-
"@qilin-agent/
|
|
52
|
-
"@qilin-agent/experimental-auto-review": "3.1.
|
|
53
|
-
"@qilin-agent/experimental-
|
|
54
|
-
"@qilin-agent/
|
|
55
|
-
"@qilin-agent/experimental-cot-translation-bundle": "3.1.
|
|
56
|
-
"@qilin-agent/experimental-
|
|
57
|
-
"@qilin-agent/experimental-
|
|
58
|
-
"@qilin-agent/experimental-
|
|
59
|
-
"@qilin-agent/experimental-session-titles-bundle": "3.1.
|
|
60
|
-
"@qilin-agent/experimental-
|
|
61
|
-
"@qilin-agent/experimental-
|
|
62
|
-
"@qilin-agent/
|
|
63
|
-
"@qilin-agent/
|
|
64
|
-
"@qilin-agent/
|
|
65
|
-
"@qilin-agent/
|
|
66
|
-
"@qilin-agent/
|
|
67
|
-
"@qilin-agent/
|
|
68
|
-
"@qilin-agent/
|
|
69
|
-
"@qilin-agent/
|
|
70
|
-
"@qilin-agent/
|
|
71
|
-
"@qilin-agent/kylin": "~4.0.
|
|
72
|
-
"@qilin-agent/
|
|
73
|
-
"@qilin-agent/kylin-plugin-include": "~1.0.
|
|
74
|
-
"@qilin-agent/
|
|
75
|
-
"@qilin-agent/
|
|
76
|
-
"@qilin-agent/
|
|
77
|
-
"@qilin-agent/mcp-
|
|
78
|
-
"@qilin-agent/persona": "3.1.
|
|
79
|
-
"@qilin-agent/
|
|
80
|
-
"@qilin-agent/
|
|
81
|
-
"@qilin-agent/
|
|
82
|
-
"@qilin-agent/
|
|
83
|
-
"@qilin-agent/
|
|
84
|
-
"@qilin-agent/
|
|
85
|
-
"@qilin-agent/
|
|
86
|
-
"@qilin-agent/sdk-app": "3.1.
|
|
87
|
-
"@qilin-agent/
|
|
88
|
-
"@qilin-agent/
|
|
89
|
-
"@qilin-agent/
|
|
90
|
-
"@qilin-agent/session-reference": "3.1.
|
|
91
|
-
"@qilin-agent/skill
|
|
92
|
-
"@qilin-agent/terminal": "3.1.
|
|
93
|
-
"@qilin-agent/
|
|
94
|
-
"@qilin-agent/
|
|
95
|
-
"@qilin-agent/token-meter": "3.1.
|
|
96
|
-
"@qilin-agent/
|
|
97
|
-
"@qilin-agent/
|
|
98
|
-
"@qilin-agent/
|
|
99
|
-
"@qilin-agent/tool-
|
|
100
|
-
"@qilin-agent/tool-
|
|
101
|
-
"@qilin-agent/tool-
|
|
102
|
-
"@qilin-agent/tool-
|
|
103
|
-
"@qilin-agent/
|
|
104
|
-
"@qilin-agent/
|
|
105
|
-
"@qilin-agent/tool-
|
|
106
|
-
"@qilin-agent/tool-
|
|
107
|
-
"@qilin-agent/tool-
|
|
108
|
-
"@qilin-agent/tool-
|
|
109
|
-
"@qilin-agent/tool-schedule": "3.1.
|
|
110
|
-
"@qilin-agent/tool-
|
|
111
|
-
"@qilin-agent/tool-skill": "3.1.
|
|
112
|
-
"@qilin-agent/tool-
|
|
113
|
-
"@qilin-agent/tool-subagent": "3.1.
|
|
114
|
-
"@qilin-agent/tool-
|
|
115
|
-
"@qilin-agent/tool-web": "3.1.
|
|
116
|
-
"@qilin-agent/tool-workflow": "3.1.
|
|
117
|
-
"@qilin-agent/
|
|
118
|
-
"@qilin-agent/web-
|
|
119
|
-
"@qilin-agent/
|
|
38
|
+
"@qilin-agent/accounts-local": "3.1.7",
|
|
39
|
+
"@qilin-agent/agent-tool-presentation": "3.1.7",
|
|
40
|
+
"@qilin-agent/acp-app": "3.1.7",
|
|
41
|
+
"@qilin-agent/atomic-write": "3.1.7",
|
|
42
|
+
"@qilin-agent/agent-instructions": "3.1.7",
|
|
43
|
+
"@qilin-agent/app-boot": "3.1.7",
|
|
44
|
+
"@qilin-agent/base": "3.1.7",
|
|
45
|
+
"@qilin-agent/client-ui-agent-preset": "3.1.7",
|
|
46
|
+
"@qilin-agent/client-ui-kylin": "3.1.7",
|
|
47
|
+
"@qilin-agent/cmdline": "3.1.7",
|
|
48
|
+
"@qilin-agent/command-compact": "3.1.7",
|
|
49
|
+
"@qilin-agent/command-goal": "3.1.7",
|
|
50
|
+
"@qilin-agent/compaction-tool-result-pruner": "3.1.7",
|
|
51
|
+
"@qilin-agent/experimental-agent-team-profile": "3.1.7",
|
|
52
|
+
"@qilin-agent/experimental-auto-review": "3.1.7",
|
|
53
|
+
"@qilin-agent/experimental-badge-skill-bundle": "3.1.7",
|
|
54
|
+
"@qilin-agent/compaction-basic": "3.1.7",
|
|
55
|
+
"@qilin-agent/experimental-cot-translation-bundle": "3.1.7",
|
|
56
|
+
"@qilin-agent/experimental-inspector-profile": "3.1.7",
|
|
57
|
+
"@qilin-agent/experimental-ralph-bundle": "3.1.7",
|
|
58
|
+
"@qilin-agent/experimental-schedule-bundle": "3.1.7",
|
|
59
|
+
"@qilin-agent/experimental-session-titles-bundle": "3.1.7",
|
|
60
|
+
"@qilin-agent/experimental-session-search": "3.1.7",
|
|
61
|
+
"@qilin-agent/experimental-tool-worktree": "3.1.7",
|
|
62
|
+
"@qilin-agent/experimental-terminal-bundle": "3.1.7",
|
|
63
|
+
"@qilin-agent/experimental-voice-input-bundle": "3.1.7",
|
|
64
|
+
"@qilin-agent/goal": "3.1.7",
|
|
65
|
+
"@qilin-agent/fs-local": "3.1.7",
|
|
66
|
+
"@qilin-agent/goal-round-driver": "3.1.7",
|
|
67
|
+
"@qilin-agent/headless": "3.1.7",
|
|
68
|
+
"@qilin-agent/hmr": "3.1.7",
|
|
69
|
+
"@qilin-agent/jobs-local": "3.1.7",
|
|
70
|
+
"@qilin-agent/http-proxy": "3.1.7",
|
|
71
|
+
"@qilin-agent/kylin": "~4.0.5",
|
|
72
|
+
"@qilin-agent/home-paths": "3.1.7",
|
|
73
|
+
"@qilin-agent/kylin-plugin-include": "~1.0.10",
|
|
74
|
+
"@qilin-agent/kylin-plugin-timer": "~1.1.7",
|
|
75
|
+
"@qilin-agent/kylin-plugin-loader": "~1.0.6",
|
|
76
|
+
"@qilin-agent/launch-environment": "3.1.7",
|
|
77
|
+
"@qilin-agent/mcp-client": "3.1.7",
|
|
78
|
+
"@qilin-agent/persona": "3.1.7",
|
|
79
|
+
"@qilin-agent/kylin-client-runner": "3.1.7",
|
|
80
|
+
"@qilin-agent/plan-mode": "3.1.7",
|
|
81
|
+
"@qilin-agent/mcp-resources": "3.1.7",
|
|
82
|
+
"@qilin-agent/plugin-manager": "3.1.7",
|
|
83
|
+
"@qilin-agent/pwsh-local": "3.1.7",
|
|
84
|
+
"@qilin-agent/schedule": "3.1.7",
|
|
85
|
+
"@qilin-agent/pwsh-sandbox": "3.1.7",
|
|
86
|
+
"@qilin-agent/sdk-app": "3.1.7",
|
|
87
|
+
"@qilin-agent/schemastery": "~3.18.5",
|
|
88
|
+
"@qilin-agent/session-projection": "3.1.7",
|
|
89
|
+
"@qilin-agent/sdk-minimal": "3.1.7",
|
|
90
|
+
"@qilin-agent/session-reference": "3.1.7",
|
|
91
|
+
"@qilin-agent/skill": "3.1.7",
|
|
92
|
+
"@qilin-agent/terminal-bash": "3.1.7",
|
|
93
|
+
"@qilin-agent/time-context": "3.1.7",
|
|
94
|
+
"@qilin-agent/terminal": "3.1.7",
|
|
95
|
+
"@qilin-agent/token-meter": "3.1.7",
|
|
96
|
+
"@qilin-agent/tool-bash": "3.1.7",
|
|
97
|
+
"@qilin-agent/tmux-context": "3.1.7",
|
|
98
|
+
"@qilin-agent/skill-filesystem": "3.1.7",
|
|
99
|
+
"@qilin-agent/tool-fs": "3.1.7",
|
|
100
|
+
"@qilin-agent/tool-ask-user": "3.1.7",
|
|
101
|
+
"@qilin-agent/tool-bash-persistent": "3.1.7",
|
|
102
|
+
"@qilin-agent/tool-goal": "3.1.7",
|
|
103
|
+
"@qilin-agent/tool-fs-search": "3.1.7",
|
|
104
|
+
"@qilin-agent/sidebar-opens": "3.1.7",
|
|
105
|
+
"@qilin-agent/tool-present": "3.1.7",
|
|
106
|
+
"@qilin-agent/tool-jobs": "3.1.7",
|
|
107
|
+
"@qilin-agent/tool-kylin": "3.1.7",
|
|
108
|
+
"@qilin-agent/tool-pwsh": "3.1.7",
|
|
109
|
+
"@qilin-agent/tool-schedule": "3.1.7",
|
|
110
|
+
"@qilin-agent/tool-pwsh-persistent": "3.1.7",
|
|
111
|
+
"@qilin-agent/tool-skill": "3.1.7",
|
|
112
|
+
"@qilin-agent/tool-str-replace-editor": "3.1.7",
|
|
113
|
+
"@qilin-agent/tool-subagent": "3.1.7",
|
|
114
|
+
"@qilin-agent/tool-subagent-control": "3.1.7",
|
|
115
|
+
"@qilin-agent/tool-web": "3.1.7",
|
|
116
|
+
"@qilin-agent/tool-workflow": "3.1.7",
|
|
117
|
+
"@qilin-agent/tool-todo": "3.1.7",
|
|
118
|
+
"@qilin-agent/web-app": "3.1.7",
|
|
119
|
+
"@qilin-agent/web-brand": "3.1.7",
|
|
120
|
+
"@qilin-agent/workflow-ptc": "3.1.7"
|
|
120
121
|
},
|
|
121
122
|
"devDependencies": {
|
|
122
123
|
"@agentclientprotocol/sdk": "1.4.0",
|
|
@@ -125,57 +126,60 @@
|
|
|
125
126
|
"execa": "^10.0.0",
|
|
126
127
|
"selfsigned": "^4.0.1",
|
|
127
128
|
"ws": "8.21.0",
|
|
128
|
-
"@qilin-agent/acp": "3.1.
|
|
129
|
-
"@qilin-agent/agent": "3.1.
|
|
130
|
-
"@qilin-agent/
|
|
131
|
-
"@qilin-agent/
|
|
132
|
-
"@qilin-agent/
|
|
133
|
-
"@qilin-agent/agent
|
|
134
|
-
"@qilin-agent/credentials-local": "3.1.
|
|
135
|
-
"@qilin-agent/
|
|
136
|
-
"@qilin-agent/
|
|
137
|
-
"@qilin-agent/experimental-hooks-
|
|
138
|
-
"@qilin-agent/experimental-
|
|
139
|
-
"@qilin-agent/experimental-
|
|
140
|
-
"@qilin-agent/experimental-
|
|
141
|
-
"@qilin-agent/experimental-
|
|
142
|
-
"@qilin-agent/
|
|
143
|
-
"@qilin-agent/
|
|
144
|
-
"@qilin-agent/host-
|
|
145
|
-
"@qilin-agent/
|
|
146
|
-
"@qilin-agent/llm": "3.1.
|
|
147
|
-
"@qilin-agent/
|
|
148
|
-
"@qilin-agent/llm-deepseek
|
|
149
|
-
"@qilin-agent/
|
|
150
|
-
"@qilin-agent/llm-mock-server": "3.1.
|
|
151
|
-
"@qilin-agent/llm-
|
|
152
|
-
"@qilin-agent/
|
|
153
|
-
"@qilin-agent/
|
|
154
|
-
"@qilin-agent/
|
|
155
|
-
"@qilin-agent/sandbox-
|
|
156
|
-
"@qilin-agent/
|
|
157
|
-
"@qilin-agent/
|
|
158
|
-
"@qilin-agent/session-
|
|
159
|
-
"@qilin-agent/session-
|
|
160
|
-
"@qilin-agent/session-
|
|
161
|
-
"@qilin-agent/settings": "3.1.
|
|
162
|
-
"@qilin-agent/
|
|
163
|
-
"@qilin-agent/
|
|
164
|
-
"@qilin-agent/subagent": "3.1.
|
|
165
|
-
"@qilin-agent/
|
|
166
|
-
"@qilin-agent/
|
|
167
|
-
"@qilin-agent/subagent-
|
|
168
|
-
"@qilin-agent/
|
|
169
|
-
"@qilin-agent/
|
|
170
|
-
"@qilin-agent/
|
|
171
|
-
"@qilin-agent/
|
|
172
|
-
"@qilin-agent/user-approval": "3.1.5"
|
|
129
|
+
"@qilin-agent/acp": "3.1.7",
|
|
130
|
+
"@qilin-agent/agent-loop-testkit": "3.1.7",
|
|
131
|
+
"@qilin-agent/bash-local": "3.1.7",
|
|
132
|
+
"@qilin-agent/agent-loop": "3.1.7",
|
|
133
|
+
"@qilin-agent/attachment-local": "3.1.7",
|
|
134
|
+
"@qilin-agent/agent": "3.1.7",
|
|
135
|
+
"@qilin-agent/credentials-local": "3.1.7",
|
|
136
|
+
"@qilin-agent/deepseek-llm-api-extensions": "3.1.7",
|
|
137
|
+
"@qilin-agent/experimental-agent-team": "3.1.7",
|
|
138
|
+
"@qilin-agent/experimental-hooks-claude-code": "3.1.7",
|
|
139
|
+
"@qilin-agent/experimental-hooks-codex": "3.1.7",
|
|
140
|
+
"@qilin-agent/experimental-ptc-runtime-python": "3.1.7",
|
|
141
|
+
"@qilin-agent/experimental-webhook": "3.1.7",
|
|
142
|
+
"@qilin-agent/experimental-tool-agent-team": "3.1.7",
|
|
143
|
+
"@qilin-agent/fs-observation-policy": "3.1.7",
|
|
144
|
+
"@qilin-agent/fs-sandbox": "3.1.7",
|
|
145
|
+
"@qilin-agent/host-frontend-static": "3.1.7",
|
|
146
|
+
"@qilin-agent/experimental-webhook-github": "3.1.7",
|
|
147
|
+
"@qilin-agent/llm": "3.1.7",
|
|
148
|
+
"@qilin-agent/host-webserver": "3.1.7",
|
|
149
|
+
"@qilin-agent/llm-deepseek": "3.1.7",
|
|
150
|
+
"@qilin-agent/llm-deepseek-api-key": "3.1.7",
|
|
151
|
+
"@qilin-agent/llm-mock-server": "3.1.7",
|
|
152
|
+
"@qilin-agent/llm-replay": "3.1.7",
|
|
153
|
+
"@qilin-agent/loader-smoke": "3.1.7",
|
|
154
|
+
"@qilin-agent/plugin-package-inventory-deepseek": "3.1.7",
|
|
155
|
+
"@qilin-agent/llm-pi-ai": "3.1.7",
|
|
156
|
+
"@qilin-agent/sandbox-policy": "3.1.7",
|
|
157
|
+
"@qilin-agent/session": "3.1.7",
|
|
158
|
+
"@qilin-agent/sandbox-local": "3.1.7",
|
|
159
|
+
"@qilin-agent/session-checkpoint-policy": "3.1.7",
|
|
160
|
+
"@qilin-agent/session-log-deepseek": "3.1.7",
|
|
161
|
+
"@qilin-agent/session-persistence-jsonl": "3.1.7",
|
|
162
|
+
"@qilin-agent/settings": "3.1.7",
|
|
163
|
+
"@qilin-agent/shell-env": "3.1.7",
|
|
164
|
+
"@qilin-agent/session-query": "3.1.7",
|
|
165
|
+
"@qilin-agent/subagent": "3.1.7",
|
|
166
|
+
"@qilin-agent/subagent-spawn-in-process": "3.1.7",
|
|
167
|
+
"@qilin-agent/subprocess": "3.1.7",
|
|
168
|
+
"@qilin-agent/subagent-fork-in-process": "3.1.7",
|
|
169
|
+
"@qilin-agent/tools": "3.1.7",
|
|
170
|
+
"@qilin-agent/user-approval": "3.1.7",
|
|
171
|
+
"@qilin-agent/subprocess-local": "3.1.7",
|
|
172
|
+
"@qilin-agent/system-prompt": "3.1.7"
|
|
173
173
|
},
|
|
174
174
|
"exports": {
|
|
175
175
|
"./profile-boot": {
|
|
176
176
|
"types": "./lib/types/profile-boot.d.ts",
|
|
177
177
|
"default": "./lib/profile-boot.js"
|
|
178
178
|
},
|
|
179
|
+
"./bin": {
|
|
180
|
+
"types": "./lib/types/bin.d.ts",
|
|
181
|
+
"default": "./lib/bin.js"
|
|
182
|
+
},
|
|
179
183
|
"./lib/*": "./lib/*",
|
|
180
184
|
"./package.json": "./package.json"
|
|
181
185
|
}
|