@agentpowers/cli 0.5.1 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/banner.d.ts +2 -0
- package/dist/banner.js +33 -0
- package/dist/banner.js.map +1 -0
- package/dist/cli.js +14 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/detail.js +66 -33
- package/dist/commands/detail.js.map +1 -1
- package/dist/commands/install.js +26 -27
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/login.js +10 -7
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/logout.js +2 -1
- package/dist/commands/logout.js.map +1 -1
- package/dist/commands/profile.js +25 -16
- package/dist/commands/profile.js.map +1 -1
- package/dist/commands/prune.d.ts +4 -0
- package/dist/commands/prune.js +60 -0
- package/dist/commands/prune.js.map +1 -0
- package/dist/commands/publish.js +28 -19
- package/dist/commands/publish.js.map +1 -1
- package/dist/commands/republish.js +26 -18
- package/dist/commands/republish.js.map +1 -1
- package/dist/commands/scan.js +38 -28
- package/dist/commands/scan.js.map +1 -1
- package/dist/commands/search.js +5 -4
- package/dist/commands/search.js.map +1 -1
- package/dist/commands/setup.js +14 -12
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/status.js +31 -33
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/uninstall.js +8 -4
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/commands/unpublish.js +16 -11
- package/dist/commands/unpublish.js.map +1 -1
- package/dist/commands/update.js +89 -49
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/verify.js +5 -5
- package/dist/commands/verify.js.map +1 -1
- package/dist/commands/whoami.js +11 -6
- package/dist/commands/whoami.js.map +1 -1
- package/dist/formatters.d.ts +26 -1
- package/dist/formatters.js +207 -37
- package/dist/formatters.js.map +1 -1
- package/package.json +2 -1
package/dist/formatters.js
CHANGED
|
@@ -1,10 +1,34 @@
|
|
|
1
|
-
/** Terminal output formatters for CLI display. */
|
|
1
|
+
/** Terminal output formatters for CLI display — Rich-style colored output. */
|
|
2
|
+
import chalk from "chalk";
|
|
3
|
+
// Brand teal matching Python CLI (#5fbab8)
|
|
4
|
+
const teal = chalk.hex("#5fbab8");
|
|
5
|
+
export { teal };
|
|
6
|
+
// ── Price ────────────────────────────────────────────────────────────
|
|
2
7
|
export function formatPrice(priceCents) {
|
|
3
8
|
if (priceCents === 0)
|
|
4
9
|
return "Free";
|
|
5
10
|
return `$${(priceCents / 100).toFixed(2)}`;
|
|
6
11
|
}
|
|
12
|
+
// ── Security status ──────────────────────────────────────────────────
|
|
13
|
+
/** Format security status with color (for terminal display). */
|
|
7
14
|
export function formatSecurityStatus(status) {
|
|
15
|
+
switch (status.toUpperCase()) {
|
|
16
|
+
case "PASS":
|
|
17
|
+
return chalk.green("pass");
|
|
18
|
+
case "WARN":
|
|
19
|
+
return chalk.yellow("warn");
|
|
20
|
+
case "BLOCK":
|
|
21
|
+
return chalk.red("block");
|
|
22
|
+
case "NOT_APPLICABLE":
|
|
23
|
+
return chalk.dim("N/A");
|
|
24
|
+
case "SKIP":
|
|
25
|
+
return chalk.dim("skipped");
|
|
26
|
+
default:
|
|
27
|
+
return status;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
/** Format security status without color (for plain text / tests). */
|
|
31
|
+
export function formatSecurityStatusPlain(status) {
|
|
8
32
|
switch (status.toUpperCase()) {
|
|
9
33
|
case "PASS":
|
|
10
34
|
return "Passed";
|
|
@@ -20,29 +44,172 @@ export function formatSecurityStatus(status) {
|
|
|
20
44
|
return status;
|
|
21
45
|
}
|
|
22
46
|
}
|
|
23
|
-
|
|
47
|
+
// ── Severity ─────────────────────────────────────────────────────────
|
|
48
|
+
export function formatSeverity(severity) {
|
|
49
|
+
const s = severity.toUpperCase();
|
|
50
|
+
if (s === "HIGH")
|
|
51
|
+
return chalk.bold.red(s);
|
|
52
|
+
if (s === "MEDIUM")
|
|
53
|
+
return chalk.bold.yellow(s);
|
|
54
|
+
if (s === "LOW")
|
|
55
|
+
return chalk.dim.yellow(s);
|
|
56
|
+
return chalk.dim(s);
|
|
57
|
+
}
|
|
58
|
+
// ── Installed status ─────────────────────────────────────────────────
|
|
59
|
+
export function formatInstalled(state) {
|
|
60
|
+
if (state === "edited")
|
|
61
|
+
return chalk.yellow("Edited");
|
|
62
|
+
if (state !== null)
|
|
63
|
+
return chalk.greenBright("Yes");
|
|
64
|
+
return "No";
|
|
65
|
+
}
|
|
66
|
+
/** Strip ANSI escape codes and other terminal control sequences. */
|
|
67
|
+
// Matches SGR, OSC, CSI, and other escape sequences
|
|
68
|
+
// eslint-disable-next-line no-control-regex
|
|
69
|
+
const ANSI_RE = /[\x1b\x9b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><~]/g;
|
|
70
|
+
// eslint-disable-next-line no-control-regex
|
|
71
|
+
const CONTROL_RE = /[\x00-\x08\x0b\x0c\x0e-\x1a]/g;
|
|
72
|
+
export function stripAnsi(str) {
|
|
73
|
+
return str.replace(ANSI_RE, "").replace(CONTROL_RE, "");
|
|
74
|
+
}
|
|
75
|
+
/** Sanitize a string for safe terminal display (removes newlines, control chars). */
|
|
76
|
+
export function sanitizeForTerminal(str) {
|
|
77
|
+
return str.replace(/[\r\n]/g, " ").replace(CONTROL_RE, "").slice(0, 500);
|
|
78
|
+
}
|
|
79
|
+
function visibleLength(str) {
|
|
80
|
+
return stripAnsi(str).length;
|
|
81
|
+
}
|
|
82
|
+
function padCell(str, width, align = "left") {
|
|
83
|
+
const visible = visibleLength(str);
|
|
84
|
+
const padding = Math.max(0, width - visible);
|
|
85
|
+
if (align === "right")
|
|
86
|
+
return " ".repeat(padding) + str;
|
|
87
|
+
return str + " ".repeat(padding);
|
|
88
|
+
}
|
|
89
|
+
export function renderTable(columns, rows, title) {
|
|
90
|
+
// Compute column widths: max of header and all cell visible lengths
|
|
91
|
+
const widths = columns.map((col, i) => {
|
|
92
|
+
const headerLen = col.header.length;
|
|
93
|
+
const maxCell = rows.reduce((max, row) => {
|
|
94
|
+
const cellLen = visibleLength(row[i] || "");
|
|
95
|
+
return Math.max(max, cellLen);
|
|
96
|
+
}, 0);
|
|
97
|
+
return col.width ?? Math.max(headerLen, maxCell);
|
|
98
|
+
});
|
|
99
|
+
const lines = [];
|
|
100
|
+
// Title
|
|
101
|
+
if (title) {
|
|
102
|
+
lines.push(chalk.bold(title));
|
|
103
|
+
}
|
|
104
|
+
// Header row
|
|
105
|
+
const headerLine = columns
|
|
106
|
+
.map((col, i) => padCell(chalk.bold(col.header), widths[i]))
|
|
107
|
+
.join(" ");
|
|
108
|
+
lines.push(` ${headerLine}`);
|
|
109
|
+
// Separator
|
|
110
|
+
const sepLine = widths.map((w) => "─".repeat(w)).join("──");
|
|
111
|
+
lines.push(` ${sepLine}`);
|
|
112
|
+
// Data rows
|
|
113
|
+
for (const row of rows) {
|
|
114
|
+
const cells = columns.map((col, i) => {
|
|
115
|
+
let val = row[i] || "";
|
|
116
|
+
if (col.style)
|
|
117
|
+
val = col.style(val);
|
|
118
|
+
return padCell(val, widths[i], col.align);
|
|
119
|
+
});
|
|
120
|
+
lines.push(` ${cells.join(" ")}`);
|
|
121
|
+
}
|
|
122
|
+
return lines.join("\n");
|
|
123
|
+
}
|
|
124
|
+
// ── Panel (box) ──────────────────────────────────────────────────────
|
|
125
|
+
export function renderPanel(content, title, borderColor = "cyan") {
|
|
126
|
+
const colorFn = borderColor === "cyan" ? chalk.cyan :
|
|
127
|
+
borderColor === "green" ? chalk.green :
|
|
128
|
+
borderColor === "yellow" ? chalk.yellow :
|
|
129
|
+
chalk.red;
|
|
130
|
+
const contentLines = content.split("\n");
|
|
131
|
+
const maxLen = Math.max(...contentLines.map((l) => visibleLength(l)), title ? visibleLength(title) + 4 : 0, 40);
|
|
132
|
+
const width = maxLen + 4; // 2 padding each side
|
|
133
|
+
const lines = [];
|
|
134
|
+
// Top border
|
|
135
|
+
if (title) {
|
|
136
|
+
const titleStr = ` ${title} `;
|
|
137
|
+
const remaining = width - 2 - visibleLength(titleStr);
|
|
138
|
+
const left = Math.max(1, Math.floor(remaining / 2));
|
|
139
|
+
const right = Math.max(1, remaining - left);
|
|
140
|
+
lines.push(colorFn(`╭${"─".repeat(left)}${titleStr}${"─".repeat(right)}╮`));
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
lines.push(colorFn(`╭${"─".repeat(width - 2)}╮`));
|
|
144
|
+
}
|
|
145
|
+
// Content with padding
|
|
146
|
+
lines.push(colorFn("│") + " ".repeat(width - 2) + colorFn("│"));
|
|
147
|
+
for (const line of contentLines) {
|
|
148
|
+
const pad = width - 4 - visibleLength(line);
|
|
149
|
+
lines.push(colorFn("│") + ` ${line}${" ".repeat(Math.max(0, pad))} ` + colorFn("│"));
|
|
150
|
+
}
|
|
151
|
+
lines.push(colorFn("│") + " ".repeat(width - 2) + colorFn("│"));
|
|
152
|
+
// Bottom border
|
|
153
|
+
lines.push(colorFn(`╰${"─".repeat(width - 2)}╯`));
|
|
154
|
+
return lines.join("\n");
|
|
155
|
+
}
|
|
156
|
+
// ── Spinner simulation ───────────────────────────────────────────────
|
|
157
|
+
/** Write a status message to stderr (same line, overwritten). */
|
|
158
|
+
export function writeStatus(message) {
|
|
159
|
+
if (process.stderr.isTTY) {
|
|
160
|
+
process.stderr.write(`\r${chalk.dim(message)}${" ".repeat(20)}\r`);
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
export function clearStatus() {
|
|
164
|
+
if (process.stderr.isTTY) {
|
|
165
|
+
process.stderr.write("\r" + " ".repeat(80) + "\r");
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
// ── Error formatting ─────────────────────────────────────────────────
|
|
169
|
+
export function formatError(message) {
|
|
170
|
+
return `${chalk.red("Error:")} ${message}`;
|
|
171
|
+
}
|
|
172
|
+
export function formatSuccess(message) {
|
|
173
|
+
return chalk.green(message);
|
|
174
|
+
}
|
|
175
|
+
export function formatWarning(message) {
|
|
176
|
+
return chalk.yellow(message);
|
|
177
|
+
}
|
|
178
|
+
export function formatDim(message) {
|
|
179
|
+
return chalk.dim(message);
|
|
180
|
+
}
|
|
181
|
+
// ── Search results ───────────────────────────────────────────────────
|
|
182
|
+
function formatNativeSearchRow(item) {
|
|
24
183
|
const author = item.author
|
|
25
|
-
? item.author.display_name || item.author.github_username || "Unknown"
|
|
184
|
+
? sanitizeForTerminal(item.author.display_name || item.author.github_username || "Unknown")
|
|
26
185
|
: "Unknown";
|
|
27
|
-
const
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
"",
|
|
186
|
+
const dl = item.download_count ?? 0;
|
|
187
|
+
return [
|
|
188
|
+
sanitizeForTerminal(item.slug),
|
|
189
|
+
`${sanitizeForTerminal(item.title)} (${dl}, ${author})`,
|
|
190
|
+
"agentpowers",
|
|
191
|
+
item.type || "skill",
|
|
192
|
+
formatPrice(item.price_cents),
|
|
193
|
+
formatSecurityStatus(item.security_status),
|
|
32
194
|
];
|
|
33
|
-
return lines.join("\n");
|
|
34
195
|
}
|
|
35
|
-
function
|
|
36
|
-
const
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
196
|
+
function formatExternalSearchRow(item, source) {
|
|
197
|
+
const installs = item.source_installs ?? 0;
|
|
198
|
+
const rating = item.source_rating ?? 0;
|
|
199
|
+
return [
|
|
200
|
+
sanitizeForTerminal(item.slug),
|
|
201
|
+
`${sanitizeForTerminal(item.title)} (${installs}, ${rating})`,
|
|
202
|
+
sanitizeForTerminal(item.source || source),
|
|
203
|
+
"skill",
|
|
204
|
+
formatPrice(item.price_cents),
|
|
205
|
+
item.ap_security_status
|
|
206
|
+
? formatSecurityStatus(item.ap_security_status)
|
|
207
|
+
: chalk.dim("not scanned"),
|
|
44
208
|
];
|
|
45
|
-
|
|
209
|
+
}
|
|
210
|
+
/** Sort key: paid items first. */
|
|
211
|
+
function sortKey(row) {
|
|
212
|
+
return row[4] === "Free" ? 1 : 0;
|
|
46
213
|
}
|
|
47
214
|
export function formatSearchResults(data) {
|
|
48
215
|
const native = data.agentpowers;
|
|
@@ -52,29 +219,32 @@ export function formatSearchResults(data) {
|
|
|
52
219
|
if (totalResults === 0) {
|
|
53
220
|
return "No results found.";
|
|
54
221
|
}
|
|
55
|
-
const
|
|
56
|
-
|
|
57
|
-
// Native
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
for (const item of native.items) {
|
|
61
|
-
lines.push(formatNativeItem(item, globalIndex++));
|
|
62
|
-
}
|
|
63
|
-
sections.push(lines.join("\n"));
|
|
222
|
+
const nativeRows = [];
|
|
223
|
+
const externalRows = [];
|
|
224
|
+
// Native rows (displayed first)
|
|
225
|
+
for (const item of native.items) {
|
|
226
|
+
nativeRows.push(formatNativeSearchRow(item));
|
|
64
227
|
}
|
|
65
|
-
// External
|
|
228
|
+
// External rows (displayed after native)
|
|
66
229
|
for (const source of externalSources) {
|
|
67
230
|
const section = data[source];
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
const lines = [`${label} (${section.total} result${section.total === 1 ? "" : "s"})`, ""];
|
|
71
|
-
for (const item of section.items) {
|
|
72
|
-
lines.push(formatExternalItem(item, globalIndex++));
|
|
73
|
-
}
|
|
74
|
-
sections.push(lines.join("\n"));
|
|
231
|
+
for (const item of section.items) {
|
|
232
|
+
externalRows.push(formatExternalSearchRow(item, source));
|
|
75
233
|
}
|
|
76
234
|
}
|
|
235
|
+
// Sort within each group: paid first
|
|
236
|
+
nativeRows.sort((a, b) => sortKey(a) - sortKey(b));
|
|
237
|
+
externalRows.sort((a, b) => sortKey(a) - sortKey(b));
|
|
238
|
+
const rows = [...nativeRows, ...externalRows];
|
|
239
|
+
const columns = [
|
|
240
|
+
{ header: "Slug", style: (v) => chalk.cyan(v) },
|
|
241
|
+
{ header: "Title (Installs, Stars)" },
|
|
242
|
+
{ header: "Source", style: (v) => chalk.yellow(v) },
|
|
243
|
+
{ header: "Type" },
|
|
244
|
+
{ header: "Price", align: "right" },
|
|
245
|
+
{ header: "Security" },
|
|
246
|
+
];
|
|
77
247
|
const header = `Found ${totalResults} result${totalResults === 1 ? "" : "s"}:\n`;
|
|
78
|
-
return header +
|
|
248
|
+
return header + renderTable(columns, rows);
|
|
79
249
|
}
|
|
80
250
|
//# sourceMappingURL=formatters.js.map
|
package/dist/formatters.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"formatters.js","sourceRoot":"","sources":["../src/formatters.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"formatters.js","sourceRoot":"","sources":["../src/formatters.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentpowers/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "CLI for the AgentPowers marketplace — search, install, and manage Claude Code skills.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -45,6 +45,7 @@
|
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
47
|
"@agentpowers/core": "^0.1.0",
|
|
48
|
+
"chalk": "^5.6.2",
|
|
48
49
|
"commander": "^13.0.0"
|
|
49
50
|
},
|
|
50
51
|
"devDependencies": {
|