@caddis/cli 0.4.14 → 0.4.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/bundles/antigravity-plugin/caddis_statusline.py +30 -3
- package/bundles/antigravity-plugin/plugin.json +1 -1
- package/bundles/antigravity-plugin/scripts/caddis_statusline.py +30 -3
- package/bundles/antigravity-plugin/skills/_registry.md +2 -0
- package/bundles/antigravity-plugin/skills/confluence-hla/SKILL.md +381 -0
- package/bundles/antigravity-plugin/skills/confluence-hla/scripts/convert_hla_to_confluence.py +1170 -0
- package/bundles/antigravity-plugin/skills/confluence-hla/scripts/discover_db_lineage.py +970 -0
- package/bundles/antigravity-plugin/skills/pr-merge/SKILL.md +155 -0
- package/bundles/codex/.codex/skills/docs/confluence-hla/SKILL.md +381 -0
- package/bundles/codex/.codex/skills/docs/confluence-hla/scripts/convert_hla_to_confluence.py +1170 -0
- package/bundles/codex/.codex/skills/docs/confluence-hla/scripts/discover_db_lineage.py +970 -0
- package/bundles/manifest.json +2 -2
- package/dist/claude-deepseek.js +50 -10
- package/dist/claude-glm.js +50 -10
- package/dist/claude-oss.js +50 -10
- package/dist/cli.js +173 -63
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -3874,13 +3874,97 @@ var require_picocolors = __commonJS({
|
|
|
3874
3874
|
}
|
|
3875
3875
|
});
|
|
3876
3876
|
|
|
3877
|
+
// src/util/theme.ts
|
|
3878
|
+
function hex(hexStr) {
|
|
3879
|
+
const clean = hexStr.replace("#", "");
|
|
3880
|
+
const r2 = parseInt(clean.substring(0, 2), 16);
|
|
3881
|
+
const g2 = parseInt(clean.substring(2, 4), 16);
|
|
3882
|
+
const b3 = parseInt(clean.substring(4, 6), 16);
|
|
3883
|
+
return (text) => import_picocolors.default.isColorSupported ? `\x1B[38;2;${r2};${g2};${b3}m${text}\x1B[39m` : text;
|
|
3884
|
+
}
|
|
3885
|
+
var import_picocolors, theme;
|
|
3886
|
+
var init_theme = __esm({
|
|
3887
|
+
"src/util/theme.ts"() {
|
|
3888
|
+
"use strict";
|
|
3889
|
+
import_picocolors = __toESM(require_picocolors(), 1);
|
|
3890
|
+
theme = {
|
|
3891
|
+
// Primary Brand
|
|
3892
|
+
mint: hex("#00FFA6"),
|
|
3893
|
+
// Radiant Cyber Mint (#00FFA6)
|
|
3894
|
+
// Contrasting Accents
|
|
3895
|
+
violet: hex("#A855F7"),
|
|
3896
|
+
// Electric Violet (high-contrast complement)
|
|
3897
|
+
magenta: hex("#FF007F"),
|
|
3898
|
+
// Neon Magenta (warm contrast)
|
|
3899
|
+
sky: hex("#00D2FF"),
|
|
3900
|
+
// Electric Sky Cyan (cool highlight)
|
|
3901
|
+
amber: hex("#FFB703"),
|
|
3902
|
+
// Neon Amber (warning / drift)
|
|
3903
|
+
coral: hex("#FF4A6E"),
|
|
3904
|
+
// Electric Coral (errors)
|
|
3905
|
+
// Formatter utilities
|
|
3906
|
+
dim: import_picocolors.default.dim,
|
|
3907
|
+
bold: import_picocolors.default.bold,
|
|
3908
|
+
isColorSupported: import_picocolors.default.isColorSupported
|
|
3909
|
+
};
|
|
3910
|
+
}
|
|
3911
|
+
});
|
|
3912
|
+
|
|
3913
|
+
// src/util/banner.ts
|
|
3914
|
+
function renderBanner(options = {}) {
|
|
3915
|
+
process.stdout.write("\n");
|
|
3916
|
+
for (let i = 0; i < 7; i++) {
|
|
3917
|
+
const m2 = import_picocolors2.default.bold(theme.mint(MARK[i]));
|
|
3918
|
+
const w2 = i < 2 ? import_picocolors2.default.bold(theme.mint(WORDMARK[i])) : i < 4 ? import_picocolors2.default.bold(theme.violet(WORDMARK[i])) : import_picocolors2.default.bold(theme.magenta(WORDMARK[i]));
|
|
3919
|
+
process.stdout.write(` ${m2} ${w2}
|
|
3920
|
+
`);
|
|
3921
|
+
}
|
|
3922
|
+
const sub = options.subtitle ?? "Agent-Agnostic Developer Harness \xB7 Multi-Model Coding Core";
|
|
3923
|
+
process.stdout.write(` ${import_picocolors2.default.dim(sub)}
|
|
3924
|
+
`);
|
|
3925
|
+
if (options.cliVersion || options.poolVersion) {
|
|
3926
|
+
const parts = [];
|
|
3927
|
+
if (options.cliVersion) parts.push(`cli ${theme.mint(options.cliVersion)}`);
|
|
3928
|
+
if (options.poolVersion) parts.push(`pool ${theme.violet(import_picocolors2.default.bold(options.poolVersion))}`);
|
|
3929
|
+
process.stdout.write(` ${import_picocolors2.default.dim(parts.join(" \xB7 "))}
|
|
3930
|
+
`);
|
|
3931
|
+
}
|
|
3932
|
+
process.stdout.write("\n");
|
|
3933
|
+
}
|
|
3934
|
+
var import_picocolors2, MARK, WORDMARK;
|
|
3935
|
+
var init_banner = __esm({
|
|
3936
|
+
"src/util/banner.ts"() {
|
|
3937
|
+
"use strict";
|
|
3938
|
+
import_picocolors2 = __toESM(require_picocolors(), 1);
|
|
3939
|
+
init_theme();
|
|
3940
|
+
MARK = [
|
|
3941
|
+
" \u2584\u2588\u2588\u2588\u2588\u2588\u2588\u2584 ",
|
|
3942
|
+
" \u2584\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2584 ",
|
|
3943
|
+
" \u2588\u2588\u2588\u2588\u2588\u2580 \u2580\u2588\u2588\u2588\u2588 ",
|
|
3944
|
+
" \u2588\u2588\u2588\u2588 ",
|
|
3945
|
+
" \u2588\u2588\u2588\u2588\u2588\u2584 \u2584\u2588\u2588\u2588\u2588 ",
|
|
3946
|
+
" \u2580\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2580 ",
|
|
3947
|
+
" \u2580\u2588\u2588\u2588\u2588\u2588\u2588\u2580 "
|
|
3948
|
+
];
|
|
3949
|
+
WORDMARK = [
|
|
3950
|
+
" \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2588\u2588\u2588\u2588\u2557 \u2588\u2588\u2557\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557",
|
|
3951
|
+
"\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2557\u2588\u2588\u2551\u2588\u2588\u2554\u2550\u2550\u2550\u2550\u255D",
|
|
3952
|
+
"\u2588\u2588\u2551 \u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2557",
|
|
3953
|
+
"\u2588\u2588\u2551 \u2588\u2588\u2554\u2550\u2550\u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2551\u255A\u2550\u2550\u2550\u2550\u2588\u2588\u2551",
|
|
3954
|
+
"\u255A\u2588\u2588\u2588\u2588\u2588\u2588\u2557\u2588\u2588\u2551 \u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2588\u2588\u2588\u2588\u2554\u255D\u2588\u2588\u2551\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2551",
|
|
3955
|
+
" \u255A\u2550\u2550\u2550\u2550\u2550\u255D\u255A\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u2550\u2550\u2550\u2550\u255D \u255A\u2550\u255D\u255A\u2550\u2550\u2550\u2550\u2550\u2550\u255D",
|
|
3956
|
+
" "
|
|
3957
|
+
];
|
|
3958
|
+
}
|
|
3959
|
+
});
|
|
3960
|
+
|
|
3877
3961
|
// src/util/log.ts
|
|
3878
3962
|
function mark(kind) {
|
|
3879
3963
|
return MARKS[kind];
|
|
3880
3964
|
}
|
|
3881
3965
|
function heading(text) {
|
|
3882
3966
|
process.stdout.write(`
|
|
3883
|
-
${
|
|
3967
|
+
${import_picocolors3.default.bold(theme.mint("\u25C6"))} ${import_picocolors3.default.bold(text)}
|
|
3884
3968
|
`);
|
|
3885
3969
|
}
|
|
3886
3970
|
function line(text = "") {
|
|
@@ -3891,32 +3975,42 @@ function item(kind, text) {
|
|
|
3891
3975
|
line(` ${mark(kind)} ${text}`);
|
|
3892
3976
|
}
|
|
3893
3977
|
function detail(text) {
|
|
3894
|
-
line(` ${
|
|
3978
|
+
line(` ${import_picocolors3.default.dim(text)}`);
|
|
3895
3979
|
}
|
|
3896
3980
|
function hint(text) {
|
|
3897
|
-
line(` ${
|
|
3981
|
+
line(` ${theme.sky("\u2192")} ${text}`);
|
|
3898
3982
|
}
|
|
3899
3983
|
function errorLine(text) {
|
|
3900
|
-
process.stderr.write(`${
|
|
3984
|
+
process.stderr.write(`${theme.coral("error")} ${text}
|
|
3901
3985
|
`);
|
|
3902
3986
|
}
|
|
3903
|
-
var
|
|
3987
|
+
var import_picocolors3, OK, WARN, FAIL, SKIP, MARKS, color;
|
|
3904
3988
|
var init_log = __esm({
|
|
3905
3989
|
"src/util/log.ts"() {
|
|
3906
3990
|
"use strict";
|
|
3907
|
-
|
|
3908
|
-
|
|
3909
|
-
|
|
3910
|
-
|
|
3911
|
-
|
|
3991
|
+
import_picocolors3 = __toESM(require_picocolors(), 1);
|
|
3992
|
+
init_theme();
|
|
3993
|
+
init_banner();
|
|
3994
|
+
init_theme();
|
|
3995
|
+
OK = theme.mint("OK");
|
|
3996
|
+
WARN = theme.amber("!!");
|
|
3997
|
+
FAIL = theme.coral("XX");
|
|
3998
|
+
SKIP = import_picocolors3.default.dim("--");
|
|
3912
3999
|
MARKS = {
|
|
3913
|
-
ok:
|
|
3914
|
-
warn:
|
|
3915
|
-
fail:
|
|
3916
|
-
skip:
|
|
3917
|
-
info:
|
|
4000
|
+
ok: theme.mint("\u2713"),
|
|
4001
|
+
warn: theme.amber("\u25B2"),
|
|
4002
|
+
fail: theme.coral("\u2717"),
|
|
4003
|
+
skip: import_picocolors3.default.dim("\xB7"),
|
|
4004
|
+
info: theme.sky("\u2022")
|
|
3918
4005
|
};
|
|
3919
|
-
color =
|
|
4006
|
+
color = Object.assign(import_picocolors3.default, {
|
|
4007
|
+
mint: theme.mint,
|
|
4008
|
+
violet: theme.violet,
|
|
4009
|
+
magenta: theme.magenta,
|
|
4010
|
+
sky: theme.sky,
|
|
4011
|
+
amber: theme.amber,
|
|
4012
|
+
coral: theme.coral
|
|
4013
|
+
});
|
|
3920
4014
|
}
|
|
3921
4015
|
});
|
|
3922
4016
|
|
|
@@ -4090,12 +4184,12 @@ function fD({ input: e2 = j, output: u2 = M, overwrite: t = true, hideCursor: F2
|
|
|
4090
4184
|
e2.off("keypress", i), F2 && u2.write(import_sisteransi.cursor.show), e2.isTTY && !AD && e2.setRawMode(false), s.terminal = false, s.close();
|
|
4091
4185
|
};
|
|
4092
4186
|
}
|
|
4093
|
-
var import_sisteransi,
|
|
4187
|
+
var import_sisteransi, import_picocolors4, uD, W, tD, eD, FD, sD, w, N, I, R, r, iD, CD, ED, d, oD, y, V, nD, G, _, z, K, aD, k, hD, lD, xD, B, AD, S, gD, vD, h, x, dD, A, TD, jD, U, MD;
|
|
4094
4188
|
var init_dist = __esm({
|
|
4095
4189
|
"node_modules/@clack/core/dist/index.mjs"() {
|
|
4096
4190
|
"use strict";
|
|
4097
4191
|
import_sisteransi = __toESM(require_src(), 1);
|
|
4098
|
-
|
|
4192
|
+
import_picocolors4 = __toESM(require_picocolors(), 1);
|
|
4099
4193
|
uD = DD();
|
|
4100
4194
|
W = { exports: {} };
|
|
4101
4195
|
(function(e2) {
|
|
@@ -4336,10 +4430,10 @@ var init_dist = __esm({
|
|
|
4336
4430
|
super(t), U(this, "valueWithCursor", ""), U(this, "_mask", "\u2022"), this._mask = u2 ?? "\u2022", this.on("finalize", () => {
|
|
4337
4431
|
this.valueWithCursor = this.masked;
|
|
4338
4432
|
}), this.on("value", () => {
|
|
4339
|
-
if (this.cursor >= this.value.length) this.valueWithCursor = `${this.masked}${
|
|
4433
|
+
if (this.cursor >= this.value.length) this.valueWithCursor = `${this.masked}${import_picocolors4.default.inverse(import_picocolors4.default.hidden("_"))}`;
|
|
4340
4434
|
else {
|
|
4341
4435
|
const F2 = this.masked.slice(0, this.cursor), s = this.masked.slice(this.cursor);
|
|
4342
|
-
this.valueWithCursor = `${F2}${
|
|
4436
|
+
this.valueWithCursor = `${F2}${import_picocolors4.default.inverse(s[0])}${s.slice(1)}`;
|
|
4343
4437
|
}
|
|
4344
4438
|
});
|
|
4345
4439
|
}
|
|
@@ -4359,13 +4453,13 @@ import y2 from "process";
|
|
|
4359
4453
|
function ce() {
|
|
4360
4454
|
return y2.platform !== "win32" ? y2.env.TERM !== "linux" : !!y2.env.CI || !!y2.env.WT_SESSION || !!y2.env.TERMINUS_SUBLIME || y2.env.ConEmuTask === "{cmd::Cmder}" || y2.env.TERM_PROGRAM === "Terminus-Sublime" || y2.env.TERM_PROGRAM === "vscode" || y2.env.TERM === "xterm-256color" || y2.env.TERM === "alacritty" || y2.env.TERMINAL_EMULATOR === "JetBrains-JediTerm";
|
|
4361
4455
|
}
|
|
4362
|
-
var
|
|
4456
|
+
var import_picocolors5, import_sisteransi2, V2, u, le, L2, W2, C, ue, o, d2, k2, P2, A2, T, F, $e, _2, me, de, pe, q, D, U2, K2, b2, ge, ye, xe, Ie, Se, J, Y2;
|
|
4363
4457
|
var init_dist2 = __esm({
|
|
4364
4458
|
"node_modules/@clack/prompts/dist/index.mjs"() {
|
|
4365
4459
|
"use strict";
|
|
4366
4460
|
init_dist();
|
|
4367
4461
|
init_dist();
|
|
4368
|
-
|
|
4462
|
+
import_picocolors5 = __toESM(require_picocolors(), 1);
|
|
4369
4463
|
import_sisteransi2 = __toESM(require_src(), 1);
|
|
4370
4464
|
V2 = ce();
|
|
4371
4465
|
u = (t, n) => V2 ? t : n;
|
|
@@ -4394,71 +4488,71 @@ var init_dist2 = __esm({
|
|
|
4394
4488
|
switch (t) {
|
|
4395
4489
|
case "initial":
|
|
4396
4490
|
case "active":
|
|
4397
|
-
return
|
|
4491
|
+
return import_picocolors5.default.cyan(le);
|
|
4398
4492
|
case "cancel":
|
|
4399
|
-
return
|
|
4493
|
+
return import_picocolors5.default.red(L2);
|
|
4400
4494
|
case "error":
|
|
4401
|
-
return
|
|
4495
|
+
return import_picocolors5.default.yellow(W2);
|
|
4402
4496
|
case "submit":
|
|
4403
|
-
return
|
|
4497
|
+
return import_picocolors5.default.green(C);
|
|
4404
4498
|
}
|
|
4405
4499
|
};
|
|
4406
4500
|
ge = (t) => new MD({ validate: t.validate, mask: t.mask ?? $e, render() {
|
|
4407
|
-
const n = `${
|
|
4501
|
+
const n = `${import_picocolors5.default.gray(o)}
|
|
4408
4502
|
${b2(this.state)} ${t.message}
|
|
4409
4503
|
`, r2 = this.valueWithCursor, i = this.masked;
|
|
4410
4504
|
switch (this.state) {
|
|
4411
4505
|
case "error":
|
|
4412
4506
|
return `${n.trim()}
|
|
4413
|
-
${
|
|
4414
|
-
${
|
|
4507
|
+
${import_picocolors5.default.yellow(o)} ${i}
|
|
4508
|
+
${import_picocolors5.default.yellow(d2)} ${import_picocolors5.default.yellow(this.error)}
|
|
4415
4509
|
`;
|
|
4416
4510
|
case "submit":
|
|
4417
|
-
return `${n}${
|
|
4511
|
+
return `${n}${import_picocolors5.default.gray(o)} ${import_picocolors5.default.dim(i)}`;
|
|
4418
4512
|
case "cancel":
|
|
4419
|
-
return `${n}${
|
|
4420
|
-
${
|
|
4513
|
+
return `${n}${import_picocolors5.default.gray(o)} ${import_picocolors5.default.strikethrough(import_picocolors5.default.dim(i ?? ""))}${i ? `
|
|
4514
|
+
${import_picocolors5.default.gray(o)}` : ""}`;
|
|
4421
4515
|
default:
|
|
4422
|
-
return `${n}${
|
|
4423
|
-
${
|
|
4516
|
+
return `${n}${import_picocolors5.default.cyan(o)} ${r2}
|
|
4517
|
+
${import_picocolors5.default.cyan(d2)}
|
|
4424
4518
|
`;
|
|
4425
4519
|
}
|
|
4426
4520
|
} }).prompt();
|
|
4427
4521
|
ye = (t) => {
|
|
4428
4522
|
const n = t.active ?? "Yes", r2 = t.inactive ?? "No";
|
|
4429
4523
|
return new dD({ active: n, inactive: r2, initialValue: t.initialValue ?? true, render() {
|
|
4430
|
-
const i = `${
|
|
4524
|
+
const i = `${import_picocolors5.default.gray(o)}
|
|
4431
4525
|
${b2(this.state)} ${t.message}
|
|
4432
4526
|
`, s = this.value ? n : r2;
|
|
4433
4527
|
switch (this.state) {
|
|
4434
4528
|
case "submit":
|
|
4435
|
-
return `${i}${
|
|
4529
|
+
return `${i}${import_picocolors5.default.gray(o)} ${import_picocolors5.default.dim(s)}`;
|
|
4436
4530
|
case "cancel":
|
|
4437
|
-
return `${i}${
|
|
4438
|
-
${
|
|
4531
|
+
return `${i}${import_picocolors5.default.gray(o)} ${import_picocolors5.default.strikethrough(import_picocolors5.default.dim(s))}
|
|
4532
|
+
${import_picocolors5.default.gray(o)}`;
|
|
4439
4533
|
default:
|
|
4440
|
-
return `${i}${
|
|
4441
|
-
${
|
|
4534
|
+
return `${i}${import_picocolors5.default.cyan(o)} ${this.value ? `${import_picocolors5.default.green(k2)} ${n}` : `${import_picocolors5.default.dim(P2)} ${import_picocolors5.default.dim(n)}`} ${import_picocolors5.default.dim("/")} ${this.value ? `${import_picocolors5.default.dim(P2)} ${import_picocolors5.default.dim(r2)}` : `${import_picocolors5.default.green(k2)} ${r2}`}
|
|
4535
|
+
${import_picocolors5.default.cyan(d2)}
|
|
4442
4536
|
`;
|
|
4443
4537
|
}
|
|
4444
4538
|
} }).prompt();
|
|
4445
4539
|
};
|
|
4446
4540
|
xe = (t = "") => {
|
|
4447
|
-
process.stdout.write(`${
|
|
4541
|
+
process.stdout.write(`${import_picocolors5.default.gray(d2)} ${import_picocolors5.default.red(t)}
|
|
4448
4542
|
|
|
4449
4543
|
`);
|
|
4450
4544
|
};
|
|
4451
4545
|
Ie = (t = "") => {
|
|
4452
|
-
process.stdout.write(`${
|
|
4546
|
+
process.stdout.write(`${import_picocolors5.default.gray(ue)} ${t}
|
|
4453
4547
|
`);
|
|
4454
4548
|
};
|
|
4455
4549
|
Se = (t = "") => {
|
|
4456
|
-
process.stdout.write(`${
|
|
4457
|
-
${
|
|
4550
|
+
process.stdout.write(`${import_picocolors5.default.gray(o)}
|
|
4551
|
+
${import_picocolors5.default.gray(d2)} ${t}
|
|
4458
4552
|
|
|
4459
4553
|
`);
|
|
4460
4554
|
};
|
|
4461
|
-
J = `${
|
|
4555
|
+
J = `${import_picocolors5.default.gray(o)} `;
|
|
4462
4556
|
Y2 = ({ indicator: t = "dots" } = {}) => {
|
|
4463
4557
|
const n = V2 ? ["\u25D2", "\u25D0", "\u25D3", "\u25D1"] : ["\u2022", "o", "O", "0"], r2 = V2 ? 80 : 120, i = process.env.CI === "true";
|
|
4464
4558
|
let s, c, a = false, l2 = "", $2, g2 = performance.now();
|
|
@@ -4480,13 +4574,13 @@ ${import_picocolors3.default.gray(d2)} ${t}
|
|
|
4480
4574
|
const h2 = (performance.now() - m2) / 1e3, w2 = Math.floor(h2 / 60), I2 = Math.floor(h2 % 60);
|
|
4481
4575
|
return w2 > 0 ? `[${w2}m ${I2}s]` : `[${I2}s]`;
|
|
4482
4576
|
}, H = (m2 = "") => {
|
|
4483
|
-
a = true, s = fD(), l2 = R2(m2), g2 = performance.now(), process.stdout.write(`${
|
|
4577
|
+
a = true, s = fD(), l2 = R2(m2), g2 = performance.now(), process.stdout.write(`${import_picocolors5.default.gray(o)}
|
|
4484
4578
|
`);
|
|
4485
4579
|
let h2 = 0, w2 = 0;
|
|
4486
4580
|
j2(), c = setInterval(() => {
|
|
4487
4581
|
if (i && l2 === $2) return;
|
|
4488
4582
|
B2(), $2 = l2;
|
|
4489
|
-
const I2 =
|
|
4583
|
+
const I2 = import_picocolors5.default.magenta(n[h2]);
|
|
4490
4584
|
if (i) process.stdout.write(`${I2} ${l2}...`);
|
|
4491
4585
|
else if (t === "timer") process.stdout.write(`${I2} ${l2} ${O2(g2)}`);
|
|
4492
4586
|
else {
|
|
@@ -4497,7 +4591,7 @@ ${import_picocolors3.default.gray(d2)} ${t}
|
|
|
4497
4591
|
}, r2);
|
|
4498
4592
|
}, N2 = (m2 = "", h2 = 0) => {
|
|
4499
4593
|
a = false, clearInterval(c), B2();
|
|
4500
|
-
const w2 = h2 === 0 ?
|
|
4594
|
+
const w2 = h2 === 0 ? import_picocolors5.default.green(C) : h2 === 1 ? import_picocolors5.default.red(L2) : import_picocolors5.default.red(W2);
|
|
4501
4595
|
l2 = R2(m2 ?? l2), t === "timer" ? process.stdout.write(`${w2} ${l2} ${O2(g2)}
|
|
4502
4596
|
`) : process.stdout.write(`${w2} ${l2}
|
|
4503
4597
|
`), E(), s();
|
|
@@ -4680,18 +4774,23 @@ __export(init_exports, {
|
|
|
4680
4774
|
async function init(options) {
|
|
4681
4775
|
const report = await gather(options.adapters);
|
|
4682
4776
|
const interactive = !options.yes && !options.dryRun && process.stdout.isTTY === true;
|
|
4683
|
-
|
|
4777
|
+
renderBanner({ cliVersion: report.cliVersion, poolVersion: report.poolVersion });
|
|
4778
|
+
Ie(`${color.bold("caddis installer")} ${color.dim(`\xB7 pool ${report.poolVersion}`)}`);
|
|
4779
|
+
heading("Detected Agents");
|
|
4684
4780
|
for (const entry of report.agents) {
|
|
4685
4781
|
if (!entry.detection.present) {
|
|
4686
|
-
item("skip", `${entry.adapter.name} \u2014 not found`);
|
|
4782
|
+
item("skip", `${entry.adapter.name} \u2014 ${color.dim("not found")}`);
|
|
4687
4783
|
continue;
|
|
4688
4784
|
}
|
|
4689
4785
|
if (!entry.adapter.supported) {
|
|
4690
|
-
item("info", `${entry.adapter.name} \u2014 detected, not yet supported (v0.2)`);
|
|
4786
|
+
item("info", `${entry.adapter.name} \u2014 ${color.dim("detected, not yet supported (v0.2)")}`);
|
|
4691
4787
|
continue;
|
|
4692
4788
|
}
|
|
4693
4789
|
const current = entry.drift === "current";
|
|
4694
|
-
item(
|
|
4790
|
+
item(
|
|
4791
|
+
current ? "ok" : "warn",
|
|
4792
|
+
`${entry.adapter.name} \u2014 ${current ? `caddis ${entry.status.version} ${color.dim("(current)")}` : entry.status.installed ? `caddis ${entry.status.version ?? "?"} \u2192 ${color.bold(report.poolVersion)}` : color.amber("caddis not installed")}`
|
|
4793
|
+
);
|
|
4695
4794
|
}
|
|
4696
4795
|
const targets = actionable(report, { includeCurrent: true });
|
|
4697
4796
|
if (targets.length === 0) {
|
|
@@ -4701,9 +4800,10 @@ async function init(options) {
|
|
|
4701
4800
|
return 0;
|
|
4702
4801
|
}
|
|
4703
4802
|
line("");
|
|
4704
|
-
|
|
4803
|
+
heading("Planned Installations");
|
|
4705
4804
|
for (const entry of targets) {
|
|
4706
|
-
line(` ${color.
|
|
4805
|
+
line(` ${color.mint("\u2022")} ${color.bold(entry.adapter.name)}`);
|
|
4806
|
+
line(` ${color.dim("\u2192")} ${entry.adapter.summary}`);
|
|
4707
4807
|
}
|
|
4708
4808
|
line("");
|
|
4709
4809
|
if (interactive) {
|
|
@@ -4723,7 +4823,13 @@ async function init(options) {
|
|
|
4723
4823
|
quiet: options.yes
|
|
4724
4824
|
});
|
|
4725
4825
|
const code = reportOutcome(outcome, options.dryRun);
|
|
4726
|
-
|
|
4826
|
+
if (code === 0 && !options.dryRun) {
|
|
4827
|
+
line("");
|
|
4828
|
+
line(` ${color.mint("\u2713")} ${color.bold("Caddis dev harness is ready.")} Open any configured agent above to start.`);
|
|
4829
|
+
line(` ${color.dim("Run")} ${color.sky("caddis doctor")} ${color.dim("at any time to verify agent health and updates.")}`);
|
|
4830
|
+
line("");
|
|
4831
|
+
}
|
|
4832
|
+
Se(code === 0 ? color.green("Setup complete.") : color.red("Finished with errors."));
|
|
4727
4833
|
return code;
|
|
4728
4834
|
}
|
|
4729
4835
|
var init_init = __esm({
|
|
@@ -5063,6 +5169,7 @@ async function doctor(options) {
|
|
|
5063
5169
|
line(JSON.stringify(toJson(report), null, 2));
|
|
5064
5170
|
return 0;
|
|
5065
5171
|
}
|
|
5172
|
+
renderBanner({ cliVersion: report.cliVersion, poolVersion: report.poolVersion });
|
|
5066
5173
|
renderEnvironment(report, findings);
|
|
5067
5174
|
renderAgents(report, findings);
|
|
5068
5175
|
renderSummary(report, findings);
|
|
@@ -5106,8 +5213,10 @@ function renderEnvironment(report, problems) {
|
|
|
5106
5213
|
}
|
|
5107
5214
|
function renderAgents(report, problems) {
|
|
5108
5215
|
heading("Agents");
|
|
5109
|
-
for (
|
|
5216
|
+
for (let i = 0; i < report.agents.length; i++) {
|
|
5217
|
+
const entry = report.agents[i];
|
|
5110
5218
|
const { adapter, detection, status: status5 } = entry;
|
|
5219
|
+
if (i > 0) line("");
|
|
5111
5220
|
item(markFor(entry.drift), `${color.bold(adapter.name)} \u2014 ${describe(entry, report.poolVersion)}`);
|
|
5112
5221
|
if (detection.path) detail(detection.path);
|
|
5113
5222
|
if (detection.agentVersion) detail(`agent version ${detection.agentVersion}`);
|
|
@@ -5141,13 +5250,13 @@ function renderSummary(report, findings) {
|
|
|
5141
5250
|
const notes = findings.filter((f) => f.kind === "note");
|
|
5142
5251
|
if (problems.length === 0) {
|
|
5143
5252
|
line(`
|
|
5144
|
-
${color.
|
|
5253
|
+
${color.mint("Everything caddis manages is current.")}`);
|
|
5145
5254
|
} else {
|
|
5146
5255
|
line(`
|
|
5147
|
-
${color.
|
|
5256
|
+
${color.amber(color.bold(`${problems.length} thing${problems.length === 1 ? "" : "s"} to fix:`))}`);
|
|
5148
5257
|
for (const problem of problems) {
|
|
5149
5258
|
line(` ${color.dim("\u2022")} ${problem.text}`);
|
|
5150
|
-
if (problem.fix) line(` ${color.
|
|
5259
|
+
if (problem.fix) line(` ${color.sky(problem.fix)}`);
|
|
5151
5260
|
}
|
|
5152
5261
|
}
|
|
5153
5262
|
if (notes.length > 0) {
|
|
@@ -5155,6 +5264,7 @@ function renderSummary(report, findings) {
|
|
|
5155
5264
|
${color.dim("For your information:")}`);
|
|
5156
5265
|
for (const note of notes) line(` ${color.dim(`\u2022 ${note.text}`)}`);
|
|
5157
5266
|
}
|
|
5267
|
+
line("");
|
|
5158
5268
|
}
|
|
5159
5269
|
function markFor(drift) {
|
|
5160
5270
|
switch (drift) {
|
|
@@ -5306,18 +5416,18 @@ function renderTable(headers, rows) {
|
|
|
5306
5416
|
(header, i) => Math.max(visibleWidth(header), ...rows.map((row) => visibleWidth(row[i] ?? "")))
|
|
5307
5417
|
);
|
|
5308
5418
|
const out = [];
|
|
5309
|
-
out.push(` ${headers.map((h2, i) => pad(
|
|
5310
|
-
out.push(` ${widths.map((w2) =>
|
|
5419
|
+
out.push(` ${headers.map((h2, i) => pad(import_picocolors6.default.bold(h2), widths[i] ?? 0)).join(" ")}`.trimEnd());
|
|
5420
|
+
out.push(` ${widths.map((w2) => import_picocolors6.default.dim("\u2500".repeat(w2))).join(" ")}`);
|
|
5311
5421
|
for (const row of rows) {
|
|
5312
5422
|
out.push(` ${row.map((cell, i) => pad(cell ?? "", widths[i] ?? 0)).join(" ")}`.trimEnd());
|
|
5313
5423
|
}
|
|
5314
5424
|
return out.join("\n");
|
|
5315
5425
|
}
|
|
5316
|
-
var
|
|
5426
|
+
var import_picocolors6, ANSI;
|
|
5317
5427
|
var init_table = __esm({
|
|
5318
5428
|
"src/util/table.ts"() {
|
|
5319
5429
|
"use strict";
|
|
5320
|
-
|
|
5430
|
+
import_picocolors6 = __toESM(require_picocolors(), 1);
|
|
5321
5431
|
ANSI = /\[[0-9;]*m/g;
|
|
5322
5432
|
}
|
|
5323
5433
|
});
|
package/package.json
CHANGED