@made-by-moonlight/athene-cli 0.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +22 -0
- package/dist/assets/plugin-registry.json +67 -0
- package/dist/assets/scripts/athene-doctor.ps1 +352 -0
- package/dist/assets/scripts/athene-doctor.sh +552 -0
- package/dist/assets/scripts/athene-update.ps1 +224 -0
- package/dist/assets/scripts/athene-update.sh +252 -0
- package/dist/commands/completion.d.ts +3 -0
- package/dist/commands/completion.d.ts.map +1 -0
- package/dist/commands/completion.js +26 -0
- package/dist/commands/completion.js.map +1 -0
- package/dist/commands/config.d.ts +11 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +89 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/dashboard.d.ts +3 -0
- package/dist/commands/dashboard.d.ts.map +1 -0
- package/dist/commands/dashboard.js +103 -0
- package/dist/commands/dashboard.js.map +1 -0
- package/dist/commands/doctor.d.ts +3 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +329 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/events.d.ts +3 -0
- package/dist/commands/events.d.ts.map +1 -0
- package/dist/commands/events.js +172 -0
- package/dist/commands/events.js.map +1 -0
- package/dist/commands/migrate-storage.d.ts +3 -0
- package/dist/commands/migrate-storage.d.ts.map +1 -0
- package/dist/commands/migrate-storage.js +78 -0
- package/dist/commands/migrate-storage.js.map +1 -0
- package/dist/commands/notify.d.ts +3 -0
- package/dist/commands/notify.d.ts.map +1 -0
- package/dist/commands/notify.js +143 -0
- package/dist/commands/notify.js.map +1 -0
- package/dist/commands/open.d.ts +3 -0
- package/dist/commands/open.d.ts.map +1 -0
- package/dist/commands/open.js +167 -0
- package/dist/commands/open.js.map +1 -0
- package/dist/commands/plugin.d.ts +3 -0
- package/dist/commands/plugin.d.ts.map +1 -0
- package/dist/commands/plugin.js +462 -0
- package/dist/commands/plugin.js.map +1 -0
- package/dist/commands/project.d.ts +3 -0
- package/dist/commands/project.d.ts.map +1 -0
- package/dist/commands/project.js +143 -0
- package/dist/commands/project.js.map +1 -0
- package/dist/commands/report.d.ts +19 -0
- package/dist/commands/report.d.ts.map +1 -0
- package/dist/commands/report.js +114 -0
- package/dist/commands/report.js.map +1 -0
- package/dist/commands/review-check.d.ts +3 -0
- package/dist/commands/review-check.d.ts.map +1 -0
- package/dist/commands/review-check.js +122 -0
- package/dist/commands/review-check.js.map +1 -0
- package/dist/commands/review.d.ts +3 -0
- package/dist/commands/review.d.ts.map +1 -0
- package/dist/commands/review.js +215 -0
- package/dist/commands/review.js.map +1 -0
- package/dist/commands/send.d.ts +3 -0
- package/dist/commands/send.d.ts.map +1 -0
- package/dist/commands/send.js +187 -0
- package/dist/commands/send.js.map +1 -0
- package/dist/commands/session.d.ts +3 -0
- package/dist/commands/session.d.ts.map +1 -0
- package/dist/commands/session.js +439 -0
- package/dist/commands/session.js.map +1 -0
- package/dist/commands/setup.d.ts +5 -0
- package/dist/commands/setup.d.ts.map +1 -0
- package/dist/commands/setup.js +297 -0
- package/dist/commands/setup.js.map +1 -0
- package/dist/commands/spawn.d.ts +4 -0
- package/dist/commands/spawn.d.ts.map +1 -0
- package/dist/commands/spawn.js +436 -0
- package/dist/commands/spawn.js.map +1 -0
- package/dist/commands/start.d.ts +21 -0
- package/dist/commands/start.d.ts.map +1 -0
- package/dist/commands/start.js +1836 -0
- package/dist/commands/start.js.map +1 -0
- package/dist/commands/status.d.ts +3 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +556 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/update.d.ts +15 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +652 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/commands/verify.d.ts +3 -0
- package/dist/commands/verify.d.ts.map +1 -0
- package/dist/commands/verify.js +131 -0
- package/dist/commands/verify.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +24 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/bun-tmp-janitor.d.ts +18 -0
- package/dist/lib/bun-tmp-janitor.d.ts.map +1 -0
- package/dist/lib/bun-tmp-janitor.js +127 -0
- package/dist/lib/bun-tmp-janitor.js.map +1 -0
- package/dist/lib/caller-context.d.ts +13 -0
- package/dist/lib/caller-context.d.ts.map +1 -0
- package/dist/lib/caller-context.js +20 -0
- package/dist/lib/caller-context.js.map +1 -0
- package/dist/lib/cli-errors.d.ts +8 -0
- package/dist/lib/cli-errors.d.ts.map +1 -0
- package/dist/lib/cli-errors.js +20 -0
- package/dist/lib/cli-errors.js.map +1 -0
- package/dist/lib/completion.d.ts +13 -0
- package/dist/lib/completion.d.ts.map +1 -0
- package/dist/lib/completion.js +428 -0
- package/dist/lib/completion.js.map +1 -0
- package/dist/lib/composio-setup.d.ts +65 -0
- package/dist/lib/composio-setup.d.ts.map +1 -0
- package/dist/lib/composio-setup.js +3255 -0
- package/dist/lib/composio-setup.js.map +1 -0
- package/dist/lib/config-instruction.d.ts +2 -0
- package/dist/lib/config-instruction.d.ts.map +1 -0
- package/dist/lib/config-instruction.js +193 -0
- package/dist/lib/config-instruction.js.map +1 -0
- package/dist/lib/constants.d.ts +3 -0
- package/dist/lib/constants.d.ts.map +1 -0
- package/dist/lib/constants.js +3 -0
- package/dist/lib/constants.js.map +1 -0
- package/dist/lib/create-session-manager.d.ts +26 -0
- package/dist/lib/create-session-manager.d.ts.map +1 -0
- package/dist/lib/create-session-manager.js +55 -0
- package/dist/lib/create-session-manager.js.map +1 -0
- package/dist/lib/credential-resolver.d.ts +37 -0
- package/dist/lib/credential-resolver.d.ts.map +1 -0
- package/dist/lib/credential-resolver.js +105 -0
- package/dist/lib/credential-resolver.js.map +1 -0
- package/dist/lib/daemon.d.ts +69 -0
- package/dist/lib/daemon.d.ts.map +1 -0
- package/dist/lib/daemon.js +77 -0
- package/dist/lib/daemon.js.map +1 -0
- package/dist/lib/dashboard-rebuild.d.ts +53 -0
- package/dist/lib/dashboard-rebuild.d.ts.map +1 -0
- package/dist/lib/dashboard-rebuild.js +188 -0
- package/dist/lib/dashboard-rebuild.js.map +1 -0
- package/dist/lib/dashboard-setup.d.ts +14 -0
- package/dist/lib/dashboard-setup.d.ts.map +1 -0
- package/dist/lib/dashboard-setup.js +192 -0
- package/dist/lib/dashboard-setup.js.map +1 -0
- package/dist/lib/dashboard-url.d.ts +19 -0
- package/dist/lib/dashboard-url.d.ts.map +1 -0
- package/dist/lib/dashboard-url.js +25 -0
- package/dist/lib/dashboard-url.js.map +1 -0
- package/dist/lib/desktop-setup.d.ts +21 -0
- package/dist/lib/desktop-setup.d.ts.map +1 -0
- package/dist/lib/desktop-setup.js +556 -0
- package/dist/lib/desktop-setup.js.map +1 -0
- package/dist/lib/detect-agent.d.ts +24 -0
- package/dist/lib/detect-agent.d.ts.map +1 -0
- package/dist/lib/detect-agent.js +69 -0
- package/dist/lib/detect-agent.js.map +1 -0
- package/dist/lib/detect-env.d.ts +14 -0
- package/dist/lib/detect-env.d.ts.map +1 -0
- package/dist/lib/detect-env.js +46 -0
- package/dist/lib/detect-env.js.map +1 -0
- package/dist/lib/discord-setup.d.ts +20 -0
- package/dist/lib/discord-setup.d.ts.map +1 -0
- package/dist/lib/discord-setup.js +584 -0
- package/dist/lib/discord-setup.js.map +1 -0
- package/dist/lib/format.d.ts +11 -0
- package/dist/lib/format.d.ts.map +1 -0
- package/dist/lib/format.js +116 -0
- package/dist/lib/format.js.map +1 -0
- package/dist/lib/git-utils.d.ts +14 -0
- package/dist/lib/git-utils.d.ts.map +1 -0
- package/dist/lib/git-utils.js +45 -0
- package/dist/lib/git-utils.js.map +1 -0
- package/dist/lib/install-helpers.d.ts +24 -0
- package/dist/lib/install-helpers.d.ts.map +1 -0
- package/dist/lib/install-helpers.js +76 -0
- package/dist/lib/install-helpers.js.map +1 -0
- package/dist/lib/lifecycle-service.d.ts +11 -0
- package/dist/lib/lifecycle-service.d.ts.map +1 -0
- package/dist/lib/lifecycle-service.js +65 -0
- package/dist/lib/lifecycle-service.js.map +1 -0
- package/dist/lib/notifier-routing.d.ts +35 -0
- package/dist/lib/notifier-routing.d.ts.map +1 -0
- package/dist/lib/notifier-routing.js +133 -0
- package/dist/lib/notifier-routing.js.map +1 -0
- package/dist/lib/notify-test.d.ts +72 -0
- package/dist/lib/notify-test.d.ts.map +1 -0
- package/dist/lib/notify-test.js +674 -0
- package/dist/lib/notify-test.js.map +1 -0
- package/dist/lib/openclaw-probe.d.ts +38 -0
- package/dist/lib/openclaw-probe.d.ts.map +1 -0
- package/dist/lib/openclaw-probe.js +146 -0
- package/dist/lib/openclaw-probe.js.map +1 -0
- package/dist/lib/openclaw-setup.d.ts +19 -0
- package/dist/lib/openclaw-setup.d.ts.map +1 -0
- package/dist/lib/openclaw-setup.js +684 -0
- package/dist/lib/openclaw-setup.js.map +1 -0
- package/dist/lib/path-equality.d.ts +29 -0
- package/dist/lib/path-equality.d.ts.map +1 -0
- package/dist/lib/path-equality.js +52 -0
- package/dist/lib/path-equality.js.map +1 -0
- package/dist/lib/plugin-marketplace.d.ts +24 -0
- package/dist/lib/plugin-marketplace.d.ts.map +1 -0
- package/dist/lib/plugin-marketplace.js +175 -0
- package/dist/lib/plugin-marketplace.js.map +1 -0
- package/dist/lib/plugin-scaffold.d.ts +14 -0
- package/dist/lib/plugin-scaffold.d.ts.map +1 -0
- package/dist/lib/plugin-scaffold.js +174 -0
- package/dist/lib/plugin-scaffold.js.map +1 -0
- package/dist/lib/plugin-store.d.ts +9 -0
- package/dist/lib/plugin-store.d.ts.map +1 -0
- package/dist/lib/plugin-store.js +121 -0
- package/dist/lib/plugin-store.js.map +1 -0
- package/dist/lib/plugins.d.ts +17 -0
- package/dist/lib/plugins.d.ts.map +1 -0
- package/dist/lib/plugins.js +65 -0
- package/dist/lib/plugins.js.map +1 -0
- package/dist/lib/portfolio-display.d.ts +10 -0
- package/dist/lib/portfolio-display.d.ts.map +1 -0
- package/dist/lib/portfolio-display.js +17 -0
- package/dist/lib/portfolio-display.js.map +1 -0
- package/dist/lib/preflight.d.ts +27 -0
- package/dist/lib/preflight.d.ts.map +1 -0
- package/dist/lib/preflight.js +77 -0
- package/dist/lib/preflight.js.map +1 -0
- package/dist/lib/prevent-sleep.d.ts +34 -0
- package/dist/lib/prevent-sleep.d.ts.map +1 -0
- package/dist/lib/prevent-sleep.js +65 -0
- package/dist/lib/prevent-sleep.js.map +1 -0
- package/dist/lib/project-detection.d.ts +11 -0
- package/dist/lib/project-detection.d.ts.map +1 -0
- package/dist/lib/project-detection.js +206 -0
- package/dist/lib/project-detection.js.map +1 -0
- package/dist/lib/project-resolution.d.ts +10 -0
- package/dist/lib/project-resolution.d.ts.map +1 -0
- package/dist/lib/project-resolution.js +17 -0
- package/dist/lib/project-resolution.js.map +1 -0
- package/dist/lib/project-supervisor.d.ts +28 -0
- package/dist/lib/project-supervisor.d.ts.map +1 -0
- package/dist/lib/project-supervisor.js +167 -0
- package/dist/lib/project-supervisor.js.map +1 -0
- package/dist/lib/prompts.d.ts +7 -0
- package/dist/lib/prompts.d.ts.map +1 -0
- package/dist/lib/prompts.js +37 -0
- package/dist/lib/prompts.js.map +1 -0
- package/dist/lib/repo-utils.d.ts +16 -0
- package/dist/lib/repo-utils.d.ts.map +1 -0
- package/dist/lib/repo-utils.js +26 -0
- package/dist/lib/repo-utils.js.map +1 -0
- package/dist/lib/resolve-project.d.ts +113 -0
- package/dist/lib/resolve-project.d.ts.map +1 -0
- package/dist/lib/resolve-project.js +433 -0
- package/dist/lib/resolve-project.js.map +1 -0
- package/dist/lib/routes.d.ts +2 -0
- package/dist/lib/routes.d.ts.map +1 -0
- package/dist/lib/routes.js +5 -0
- package/dist/lib/routes.js.map +1 -0
- package/dist/lib/running-state.d.ts +76 -0
- package/dist/lib/running-state.d.ts.map +1 -0
- package/dist/lib/running-state.js +338 -0
- package/dist/lib/running-state.js.map +1 -0
- package/dist/lib/script-runner.d.ts +10 -0
- package/dist/lib/script-runner.d.ts.map +1 -0
- package/dist/lib/script-runner.js +189 -0
- package/dist/lib/script-runner.js.map +1 -0
- package/dist/lib/session-utils.d.ts +14 -0
- package/dist/lib/session-utils.d.ts.map +1 -0
- package/dist/lib/session-utils.js +58 -0
- package/dist/lib/session-utils.js.map +1 -0
- package/dist/lib/shell.d.ts +17 -0
- package/dist/lib/shell.d.ts.map +1 -0
- package/dist/lib/shell.js +90 -0
- package/dist/lib/shell.js.map +1 -0
- package/dist/lib/shutdown.d.ts +30 -0
- package/dist/lib/shutdown.d.ts.map +1 -0
- package/dist/lib/shutdown.js +177 -0
- package/dist/lib/shutdown.js.map +1 -0
- package/dist/lib/slack-setup.d.ts +17 -0
- package/dist/lib/slack-setup.d.ts.map +1 -0
- package/dist/lib/slack-setup.js +485 -0
- package/dist/lib/slack-setup.js.map +1 -0
- package/dist/lib/startup-preflight.d.ts +36 -0
- package/dist/lib/startup-preflight.d.ts.map +1 -0
- package/dist/lib/startup-preflight.js +273 -0
- package/dist/lib/startup-preflight.js.map +1 -0
- package/dist/lib/update-channel-onboarding.d.ts +52 -0
- package/dist/lib/update-channel-onboarding.d.ts.map +1 -0
- package/dist/lib/update-channel-onboarding.js +107 -0
- package/dist/lib/update-channel-onboarding.js.map +1 -0
- package/dist/lib/update-check.d.ts +161 -0
- package/dist/lib/update-check.d.ts.map +1 -0
- package/dist/lib/update-check.js +504 -0
- package/dist/lib/update-check.js.map +1 -0
- package/dist/lib/web-dir.d.ts +47 -0
- package/dist/lib/web-dir.d.ts.map +1 -0
- package/dist/lib/web-dir.js +179 -0
- package/dist/lib/web-dir.js.map +1 -0
- package/dist/lib/webhook-setup.d.ts +16 -0
- package/dist/lib/webhook-setup.d.ts.map +1 -0
- package/dist/lib/webhook-setup.js +383 -0
- package/dist/lib/webhook-setup.js.map +1 -0
- package/dist/options/version.d.ts +2 -0
- package/dist/options/version.d.ts.map +1 -0
- package/dist/options/version.js +7 -0
- package/dist/options/version.js.map +1 -0
- package/dist/program.d.ts +3 -0
- package/dist/program.d.ts.map +1 -0
- package/dist/program.js +63 -0
- package/dist/program.js.map +1 -0
- package/package.json +80 -0
- package/templates/rules/base.md +4 -0
- package/templates/rules/go.md +8 -0
- package/templates/rules/javascript.md +4 -0
- package/templates/rules/nextjs.md +7 -0
- package/templates/rules/pnpm-workspaces.md +4 -0
- package/templates/rules/python.md +8 -0
- package/templates/rules/react.md +8 -0
- package/templates/rules/typescript.md +6 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/commands/verify.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0EzC,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA2GrD"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import chalk from "chalk";
|
|
2
|
+
import { loadConfig, } from "@made-by-moonlight/athene-core";
|
|
3
|
+
import { importPluginModuleFromSource } from "../lib/plugin-store.js";
|
|
4
|
+
/**
|
|
5
|
+
* Resolve the target project from config.
|
|
6
|
+
* If --project is given, use that. If there is exactly one project, use it.
|
|
7
|
+
* Otherwise, error out asking the user to specify --project.
|
|
8
|
+
*/
|
|
9
|
+
function resolveProject(config, projectOpt) {
|
|
10
|
+
if (projectOpt) {
|
|
11
|
+
const project = config.projects[projectOpt];
|
|
12
|
+
if (!project) {
|
|
13
|
+
console.error(chalk.red(`Unknown project: ${projectOpt}`));
|
|
14
|
+
process.exit(1);
|
|
15
|
+
}
|
|
16
|
+
return { projectId: projectOpt, project };
|
|
17
|
+
}
|
|
18
|
+
const ids = Object.keys(config.projects);
|
|
19
|
+
if (ids.length === 0) {
|
|
20
|
+
console.error(chalk.red("No projects configured. Run `athene start` first."));
|
|
21
|
+
process.exit(1);
|
|
22
|
+
}
|
|
23
|
+
if (ids.length > 1) {
|
|
24
|
+
console.error(chalk.red(`Multiple projects found. Specify one with --project: ${ids.join(", ")}`));
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
27
|
+
return { projectId: ids[0], project: config.projects[ids[0]] };
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Get a Tracker instance from the plugin registry for the given project.
|
|
31
|
+
*/
|
|
32
|
+
async function getTracker(config, project) {
|
|
33
|
+
if (!project.tracker) {
|
|
34
|
+
console.error(chalk.red("No tracker configured for this project."));
|
|
35
|
+
process.exit(1);
|
|
36
|
+
}
|
|
37
|
+
// getSessionManager internally creates the registry; we need the registry
|
|
38
|
+
// directly, so we replicate the same pattern from create-session-manager.
|
|
39
|
+
const { createPluginRegistry } = await import("@made-by-moonlight/athene-core");
|
|
40
|
+
const registry = createPluginRegistry();
|
|
41
|
+
await registry.loadFromConfig(config, importPluginModuleFromSource);
|
|
42
|
+
if (!project.tracker.plugin) {
|
|
43
|
+
console.error(chalk.red("Project tracker plugin not configured."));
|
|
44
|
+
process.exit(1);
|
|
45
|
+
}
|
|
46
|
+
const tracker = registry.get("tracker", project.tracker.plugin);
|
|
47
|
+
if (!tracker) {
|
|
48
|
+
console.error(chalk.red(`Tracker plugin "${project.tracker.plugin}" not found.`));
|
|
49
|
+
process.exit(1);
|
|
50
|
+
}
|
|
51
|
+
return { tracker, registry };
|
|
52
|
+
}
|
|
53
|
+
export function registerVerify(program) {
|
|
54
|
+
program
|
|
55
|
+
.command("verify")
|
|
56
|
+
.description("Mark an issue as verified (or failed) after checking the fix on staging")
|
|
57
|
+
.argument("[issue]", "Issue number or identifier to verify")
|
|
58
|
+
.option("-p, --project <id>", "Project ID (required if multiple projects)")
|
|
59
|
+
.option("--fail", "Mark verification as failed instead of passing")
|
|
60
|
+
.option("-c, --comment <msg>", "Custom comment to add")
|
|
61
|
+
.option("-l, --list", "List all issues with merged-unverified label")
|
|
62
|
+
.action(async (issue, opts) => {
|
|
63
|
+
let config;
|
|
64
|
+
try {
|
|
65
|
+
config = loadConfig();
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
console.error(chalk.red("No config found. Run `athene start` first."));
|
|
69
|
+
process.exit(1);
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
const { projectId, project } = resolveProject(config, opts.project);
|
|
73
|
+
const { tracker } = await getTracker(config, project);
|
|
74
|
+
// --list mode: show all merged-unverified issues
|
|
75
|
+
if (opts.list) {
|
|
76
|
+
if (!tracker.listIssues) {
|
|
77
|
+
console.error(chalk.red("Tracker does not support listing issues."));
|
|
78
|
+
process.exit(1);
|
|
79
|
+
}
|
|
80
|
+
const issues = await tracker.listIssues({ state: "open", labels: ["merged-unverified"] }, project);
|
|
81
|
+
if (issues.length === 0) {
|
|
82
|
+
console.log(chalk.dim("No merged-unverified issues found."));
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
console.log(chalk.bold(`Merged-unverified issues in ${project.name || projectId}:\n`));
|
|
86
|
+
for (const i of issues) {
|
|
87
|
+
const labels = i.labels.length > 0 ? chalk.dim(` [${i.labels.join(", ")}]`) : "";
|
|
88
|
+
console.log(` ${chalk.cyan(i.id)} ${i.title}${labels}`);
|
|
89
|
+
if (i.url) {
|
|
90
|
+
console.log(` ${chalk.dim(i.url)}`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
console.log(chalk.dim(`\n ${issues.length} issue${issues.length !== 1 ? "s" : ""} awaiting verification`));
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
// Verify/fail mode: requires an issue argument
|
|
97
|
+
if (!issue) {
|
|
98
|
+
console.error(chalk.red("Issue number is required. Usage: athene verify <issue>"));
|
|
99
|
+
process.exit(1);
|
|
100
|
+
}
|
|
101
|
+
if (!tracker.updateIssue) {
|
|
102
|
+
console.error(chalk.red("Tracker does not support updating issues."));
|
|
103
|
+
process.exit(1);
|
|
104
|
+
}
|
|
105
|
+
if (opts.fail) {
|
|
106
|
+
// Verification failed
|
|
107
|
+
const comment = opts.comment ?? "Verification failed — problem persists on staging.";
|
|
108
|
+
await tracker.updateIssue(issue, {
|
|
109
|
+
state: "open",
|
|
110
|
+
labels: ["verification-failed"],
|
|
111
|
+
removeLabels: ["merged-unverified"],
|
|
112
|
+
comment,
|
|
113
|
+
}, project);
|
|
114
|
+
console.log(chalk.red(`Issue ${issue} marked as verification-failed (kept open).`));
|
|
115
|
+
console.log(chalk.dim(` Comment: ${comment}`));
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
// Verification passed
|
|
119
|
+
const comment = opts.comment ?? "Verified — fix confirmed on staging.";
|
|
120
|
+
await tracker.updateIssue(issue, {
|
|
121
|
+
state: "closed",
|
|
122
|
+
labels: ["verified"],
|
|
123
|
+
removeLabels: ["merged-unverified"],
|
|
124
|
+
comment,
|
|
125
|
+
}, project);
|
|
126
|
+
console.log(chalk.green(`Issue ${issue} verified and closed.`));
|
|
127
|
+
console.log(chalk.dim(` Comment: ${comment}`));
|
|
128
|
+
}
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
//# sourceMappingURL=verify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verify.js","sourceRoot":"","sources":["../../src/commands/verify.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { maybeShowUpdateNotice, scheduleBackgroundRefresh } from "./lib/update-check.js";
|
|
3
|
+
// Synchronous cache read — no network call on startup.
|
|
4
|
+
maybeShowUpdateNotice();
|
|
5
|
+
import { ConfigNotFoundError } from "@made-by-moonlight/athene-core";
|
|
6
|
+
import { createProgram } from "./program.js";
|
|
7
|
+
createProgram()
|
|
8
|
+
.parseAsync()
|
|
9
|
+
.catch((err) => {
|
|
10
|
+
if (err instanceof ConfigNotFoundError) {
|
|
11
|
+
console.error(`Error: ${err.message}`);
|
|
12
|
+
process.exit(1);
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
throw err;
|
|
16
|
+
})
|
|
17
|
+
.then(() => {
|
|
18
|
+
// Background cache refresh after command completes. Runs in a detached
|
|
19
|
+
// setTimeout so the process can exit without waiting for the fetch.
|
|
20
|
+
// Placed after parseAsync to avoid holding the event loop open during
|
|
21
|
+
// short-lived commands when the registry is slow/offline.
|
|
22
|
+
scheduleBackgroundRefresh();
|
|
23
|
+
});
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAEzF,uDAAuD;AACvD,qBAAqB,EAAE,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,aAAa,EAAE;KACZ,UAAU,EAAE;KACZ,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACb,IAAI,GAAG,YAAY,mBAAmB,EAAE,CAAC;QACvC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IACD,MAAM,GAAG,CAAC;AACZ,CAAC,CAAC;KACD,IAAI,CAAC,GAAG,EAAE;IACT,uEAAuE;IACvE,oEAAoE;IACpE,sEAAsE;IACtE,0DAA0D;IAC1D,yBAAyB,EAAE,CAAC;AAC9B,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface BunTmpJanitorOptions {
|
|
2
|
+
intervalMs?: number;
|
|
3
|
+
ageMs?: number;
|
|
4
|
+
onSweep?: (result: {
|
|
5
|
+
removed: number;
|
|
6
|
+
freedBytes: number;
|
|
7
|
+
errors: number;
|
|
8
|
+
}) => void;
|
|
9
|
+
}
|
|
10
|
+
export declare function startBunTmpJanitor(options?: BunTmpJanitorOptions): boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Stop the janitor and await any sweep currently in flight. The shutdown
|
|
13
|
+
* handler in `start.ts` awaits this so the process never exits while
|
|
14
|
+
* `unlink` calls are still mid-flight against the filesystem.
|
|
15
|
+
*/
|
|
16
|
+
export declare function stopBunTmpJanitor(): Promise<void>;
|
|
17
|
+
export declare function isBunTmpJanitorRunning(): boolean;
|
|
18
|
+
//# sourceMappingURL=bun-tmp-janitor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bun-tmp-janitor.d.ts","sourceRoot":"","sources":["../../src/lib/bun-tmp-janitor.ts"],"names":[],"mappings":"AA8BA,MAAM,WAAW,oBAAoB;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CACrF;AAqDD,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAkC9E;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAYvD;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAEhD"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { readdir, stat, unlink } from "node:fs/promises";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { getOpenCodeTmpDir } from "@made-by-moonlight/athene-core";
|
|
4
|
+
// Bun-bundled binaries (opencode, etc.) extract embedded shared libraries to
|
|
5
|
+
// `TMPDIR` on startup and never unlink them on exit — this is a known upstream
|
|
6
|
+
// Bun bug that leaks ~4.3 MB per process invocation. Files look like
|
|
7
|
+
// `.{16hex}-{8hex}.{so|dylib}` (e.g. `.fcb8efb7fbaad77d-00000000.so`).
|
|
8
|
+
//
|
|
9
|
+
// We point every `opencode` child we spawn at an AO-owned subdirectory via
|
|
10
|
+
// `TMPDIR` (see `getOpenCodeChildEnv` in `@made-by-moonlight/athene-core`). The janitor
|
|
11
|
+
// then sweeps **only that directory**, which keeps the blast radius bounded:
|
|
12
|
+
// no other user's or other application's Bun artifacts can ever be touched
|
|
13
|
+
// even if AO runs as root on a shared host.
|
|
14
|
+
//
|
|
15
|
+
// Deleting these files is safe even while a live process has them mmap'd: on
|
|
16
|
+
// POSIX systems, `unlink` removes the directory entry but the kernel keeps
|
|
17
|
+
// the inode alive until the last mapping is torn down, at which point the
|
|
18
|
+
// space is reclaimed. For already-exited processes the unlink frees disk
|
|
19
|
+
// immediately. Windows does not allow unlinking mapped files, and opencode
|
|
20
|
+
// does not ship a Windows binary, so the janitor is a no-op there.
|
|
21
|
+
//
|
|
22
|
+
// This janitor runs once per `athene start` process and sweeps matching files
|
|
23
|
+
// older than `ageMs` at every interval.
|
|
24
|
+
const BUN_TMP_LIB_PATTERN = /^\.[0-9a-f]{8,}-[0-9a-f]{6,}\.(so|dylib)$/i;
|
|
25
|
+
const DEFAULT_INTERVAL_MS = 60_000;
|
|
26
|
+
const DEFAULT_AGE_MS = 60_000;
|
|
27
|
+
let timer = null;
|
|
28
|
+
let inFlightTick = null;
|
|
29
|
+
async function sweepOnce(dir, ageMs) {
|
|
30
|
+
let removed = 0;
|
|
31
|
+
let freedBytes = 0;
|
|
32
|
+
let errors = 0;
|
|
33
|
+
let entries;
|
|
34
|
+
try {
|
|
35
|
+
entries = await readdir(dir);
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
// Directory may not exist yet (no opencode child has run). That is not
|
|
39
|
+
// an error condition — there is nothing to sweep.
|
|
40
|
+
return { removed, freedBytes, errors: 0 };
|
|
41
|
+
}
|
|
42
|
+
// Filter synchronously *before* spawning per-entry stat/unlink work. On a
|
|
43
|
+
// host with thousands of /tmp entries this avoids allocating one promise
|
|
44
|
+
// per file we are about to discard. (Belt-and-suspenders: TMPDIR isolation
|
|
45
|
+
// already bounds the directory contents to AO's own children.)
|
|
46
|
+
const matches = entries.filter((name) => BUN_TMP_LIB_PATTERN.test(name));
|
|
47
|
+
if (matches.length === 0) {
|
|
48
|
+
return { removed, freedBytes, errors: 0 };
|
|
49
|
+
}
|
|
50
|
+
const cutoff = Date.now() - ageMs;
|
|
51
|
+
await Promise.all(matches.map(async (name) => {
|
|
52
|
+
const path = join(dir, name);
|
|
53
|
+
try {
|
|
54
|
+
const st = await stat(path);
|
|
55
|
+
if (!st.isFile() || st.mtimeMs > cutoff)
|
|
56
|
+
return;
|
|
57
|
+
await unlink(path);
|
|
58
|
+
removed += 1;
|
|
59
|
+
freedBytes += st.size;
|
|
60
|
+
}
|
|
61
|
+
catch {
|
|
62
|
+
// File may have been deleted by another sweeper, or stat raced
|
|
63
|
+
// with an unlink, or we lack permission. Best-effort — don't throw.
|
|
64
|
+
errors += 1;
|
|
65
|
+
}
|
|
66
|
+
}));
|
|
67
|
+
return { removed, freedBytes, errors };
|
|
68
|
+
}
|
|
69
|
+
export function startBunTmpJanitor(options = {}) {
|
|
70
|
+
// Windows: opencode ships no win32 binary and unlinking mapped files is
|
|
71
|
+
// disallowed by the kernel, so the janitor would be both unnecessary and
|
|
72
|
+
// potentially error-prone. Skip.
|
|
73
|
+
if (process.platform === "win32")
|
|
74
|
+
return false;
|
|
75
|
+
if (timer)
|
|
76
|
+
return false;
|
|
77
|
+
const intervalMs = options.intervalMs ?? DEFAULT_INTERVAL_MS;
|
|
78
|
+
const ageMs = options.ageMs ?? DEFAULT_AGE_MS;
|
|
79
|
+
const { onSweep } = options;
|
|
80
|
+
const dir = getOpenCodeTmpDir();
|
|
81
|
+
const tick = async () => {
|
|
82
|
+
// Single-flight: if a previous tick is still running, skip this one.
|
|
83
|
+
if (inFlightTick)
|
|
84
|
+
return;
|
|
85
|
+
const promise = (async () => {
|
|
86
|
+
try {
|
|
87
|
+
const result = await sweepOnce(dir, ageMs);
|
|
88
|
+
if (onSweep && (result.removed > 0 || result.errors > 0)) {
|
|
89
|
+
onSweep(result);
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
finally {
|
|
93
|
+
inFlightTick = null;
|
|
94
|
+
}
|
|
95
|
+
})();
|
|
96
|
+
inFlightTick = promise;
|
|
97
|
+
await promise;
|
|
98
|
+
};
|
|
99
|
+
// Run an immediate sweep to clear any backlog, then on an interval.
|
|
100
|
+
void tick();
|
|
101
|
+
timer = setInterval(() => void tick(), intervalMs);
|
|
102
|
+
timer.unref();
|
|
103
|
+
return true;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Stop the janitor and await any sweep currently in flight. The shutdown
|
|
107
|
+
* handler in `start.ts` awaits this so the process never exits while
|
|
108
|
+
* `unlink` calls are still mid-flight against the filesystem.
|
|
109
|
+
*/
|
|
110
|
+
export async function stopBunTmpJanitor() {
|
|
111
|
+
if (timer) {
|
|
112
|
+
clearInterval(timer);
|
|
113
|
+
timer = null;
|
|
114
|
+
}
|
|
115
|
+
if (inFlightTick) {
|
|
116
|
+
try {
|
|
117
|
+
await inFlightTick;
|
|
118
|
+
}
|
|
119
|
+
catch {
|
|
120
|
+
// Best-effort — don't block shutdown on an in-flight sweep error.
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
export function isBunTmpJanitorRunning() {
|
|
125
|
+
return timer !== null;
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=bun-tmp-janitor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bun-tmp-janitor.js","sourceRoot":"","sources":["../../src/lib/bun-tmp-janitor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export type CallerType = "human" | "orchestrator" | "agent";
|
|
2
|
+
/**
|
|
3
|
+
* Detect who is calling the CLI.
|
|
4
|
+
* - If AO_CALLER_TYPE is set, trust it.
|
|
5
|
+
* - Otherwise, if stdout is a TTY, it's a human.
|
|
6
|
+
* - Non-TTY defaults to "agent".
|
|
7
|
+
*/
|
|
8
|
+
export declare function getCallerType(): CallerType;
|
|
9
|
+
/**
|
|
10
|
+
* Returns true if the caller is a human (interactive terminal).
|
|
11
|
+
*/
|
|
12
|
+
export declare function isHumanCaller(): boolean;
|
|
13
|
+
//# sourceMappingURL=caller-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"caller-context.d.ts","sourceRoot":"","sources":["../../src/lib/caller-context.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,cAAc,GAAG,OAAO,CAAC;AAE5D;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,UAAU,CAM1C;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,OAAO,CAEvC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Detect who is calling the CLI.
|
|
3
|
+
* - If AO_CALLER_TYPE is set, trust it.
|
|
4
|
+
* - Otherwise, if stdout is a TTY, it's a human.
|
|
5
|
+
* - Non-TTY defaults to "agent".
|
|
6
|
+
*/
|
|
7
|
+
export function getCallerType() {
|
|
8
|
+
const env = process.env["AO_CALLER_TYPE"];
|
|
9
|
+
if (env === "orchestrator" || env === "agent" || env === "human") {
|
|
10
|
+
return env;
|
|
11
|
+
}
|
|
12
|
+
return process.stdout.isTTY ? "human" : "agent";
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Returns true if the caller is a human (interactive terminal).
|
|
16
|
+
*/
|
|
17
|
+
export function isHumanCaller() {
|
|
18
|
+
return getCallerType() === "human";
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=caller-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"caller-context.js","sourceRoot":"","sources":["../../src/lib/caller-context.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,UAAU,aAAa;IAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC1C,IAAI,GAAG,KAAK,cAAc,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACjE,OAAO,GAAG,CAAC;IACb,CAAC;IACD,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,aAAa,EAAE,KAAK,OAAO,CAAC;AACrC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-errors.d.ts","sourceRoot":"","sources":["../../src/lib/cli-errors.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAOD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,GAAG,KAAK,CAqBpF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
function formatHints(hints) {
|
|
2
|
+
if (!hints || hints.length === 0)
|
|
3
|
+
return "";
|
|
4
|
+
return `\nInstall hint${hints.length === 1 ? "" : "s"}:\n ${hints.join("\n ")}`;
|
|
5
|
+
}
|
|
6
|
+
export function formatCommandError(err, options) {
|
|
7
|
+
const command = [options.cmd, ...(options.args ?? [])].join(" ").trim();
|
|
8
|
+
const action = options.action ?? "run the command";
|
|
9
|
+
const code = err && typeof err === "object" && "code" in err ? String(err.code) : undefined;
|
|
10
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
11
|
+
if (code === "ENOENT") {
|
|
12
|
+
return new Error(`${options.cmd} is not installed or not on PATH, so AO could not ${action}.${formatHints(options.installHints)}`);
|
|
13
|
+
}
|
|
14
|
+
if (code === "EACCES") {
|
|
15
|
+
return new Error(`${options.cmd} exists but AO could not execute it due to a permission error while trying to ${action}. ` +
|
|
16
|
+
`Check that the binary is executable and accessible to this user.${formatHints(options.installHints)}`);
|
|
17
|
+
}
|
|
18
|
+
return new Error(`Failed to ${action}: ${command}${message ? `\n${message}` : ""}`);
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=cli-errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-errors.js","sourceRoot":"","sources":["../../src/lib/cli-errors.ts"],"names":[],"mappings":"AAOA,SAAS,WAAW,CAAC,KAA2B;IAC9C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC5C,OAAO,iBAAiB,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,QAAQ,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAY,EAAE,OAA4B;IAC3E,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACxE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,iBAAiB,CAAC;IACnD,MAAM,IAAI,GACR,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAE,GAA0B,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzG,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAEjE,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,KAAK,CACd,GAAG,OAAO,CAAC,GAAG,qDAAqD,MAAM,IAAI,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CACjH,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,OAAO,IAAI,KAAK,CACd,GAAG,OAAO,CAAC,GAAG,iFAAiF,MAAM,IAAI;YACvG,mEAAmE,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CACzG,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,KAAK,CAAC,aAAa,MAAM,KAAK,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACtF,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Command } from "commander";
|
|
2
|
+
export interface CompletionSuggestion {
|
|
3
|
+
value: string;
|
|
4
|
+
description?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface CompletionDataOptions {
|
|
7
|
+
includeOrchestrators?: boolean;
|
|
8
|
+
includeTerminated?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare function getCompletionSuggestions(kind: string, options?: CompletionDataOptions): Promise<CompletionSuggestion[]>;
|
|
11
|
+
export declare function formatCompletionSuggestions(items: readonly CompletionSuggestion[]): string;
|
|
12
|
+
export declare function generateZshCompletion(program: Command): string;
|
|
13
|
+
//# sourceMappingURL=completion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../src/lib/completion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,OAAO,EAAU,MAAM,WAAW,CAAC;AAa3D,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAoYD,wBAAsB,wBAAwB,CAC5C,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAYjC;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,SAAS,oBAAoB,EAAE,GAAG,MAAM,CAQ1F;AAiBD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAwE9D"}
|