@soleri/cli 9.6.0 → 9.7.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/commands/skills.js +14 -2
- package/dist/commands/skills.js.map +1 -1
- package/package.json +1 -1
- package/src/commands/skills.ts +20 -2
package/dist/commands/skills.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
import { join } from 'node:path';
|
|
8
8
|
import { existsSync, readFileSync, readdirSync } from 'node:fs';
|
|
9
9
|
import * as p from '@clack/prompts';
|
|
10
|
-
import { PackLockfile, inferPackType, resolvePack } from '@soleri/core';
|
|
10
|
+
import { PackLockfile, inferPackType, resolvePack, classifyTrust, checkSkillCompatibility, } from '@soleri/core';
|
|
11
11
|
import { detectAgent } from '../utils/agent-context.js';
|
|
12
12
|
const LOCKFILE_NAME = 'soleri.lock';
|
|
13
13
|
function getLockfilePath() {
|
|
@@ -26,7 +26,8 @@ export function registerSkills(program) {
|
|
|
26
26
|
skills
|
|
27
27
|
.command('list')
|
|
28
28
|
.description('List installed skill packs')
|
|
29
|
-
.
|
|
29
|
+
.option('--trust', 'Show trust level, source, and compatibility for each pack')
|
|
30
|
+
.action((opts) => {
|
|
30
31
|
const lockfile = new PackLockfile(getLockfilePath());
|
|
31
32
|
const entries = lockfile.list().filter((e) => e.type === 'skills' || e.type === 'bundle');
|
|
32
33
|
if (entries.length === 0) {
|
|
@@ -39,6 +40,17 @@ export function registerSkills(program) {
|
|
|
39
40
|
console.log(` ${entry.id}@${entry.version}${badge}`);
|
|
40
41
|
if (entry.skills.length > 0)
|
|
41
42
|
console.log(` skills: ${entry.skills.join(', ')}`);
|
|
43
|
+
if (opts.trust) {
|
|
44
|
+
const skillsDir = join(entry.directory, 'skills');
|
|
45
|
+
try {
|
|
46
|
+
const { trust } = classifyTrust(skillsDir);
|
|
47
|
+
const compat = checkSkillCompatibility(entry.soleriRange);
|
|
48
|
+
console.log(` trust: ${trust} source: ${entry.source} compat: ${compat}`);
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
console.log(` trust: unknown source: ${entry.source}`);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
42
54
|
}
|
|
43
55
|
});
|
|
44
56
|
// ─── install ───────────────────────────────────────────────
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/commands/skills.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEhE,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,
|
|
1
|
+
{"version":3,"file":"skills.js","sourceRoot":"","sources":["../../src/commands/skills.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/commands/skills.ts
CHANGED
|
@@ -9,7 +9,13 @@ import { join } from 'node:path';
|
|
|
9
9
|
import { existsSync, readFileSync, readdirSync } from 'node:fs';
|
|
10
10
|
import type { Command } from 'commander';
|
|
11
11
|
import * as p from '@clack/prompts';
|
|
12
|
-
import {
|
|
12
|
+
import {
|
|
13
|
+
PackLockfile,
|
|
14
|
+
inferPackType,
|
|
15
|
+
resolvePack,
|
|
16
|
+
classifyTrust,
|
|
17
|
+
checkSkillCompatibility,
|
|
18
|
+
} from '@soleri/core';
|
|
13
19
|
import type { LockEntry, PackSource } from '@soleri/core';
|
|
14
20
|
import { detectAgent } from '../utils/agent-context.js';
|
|
15
21
|
|
|
@@ -33,7 +39,8 @@ export function registerSkills(program: Command): void {
|
|
|
33
39
|
skills
|
|
34
40
|
.command('list')
|
|
35
41
|
.description('List installed skill packs')
|
|
36
|
-
.
|
|
42
|
+
.option('--trust', 'Show trust level, source, and compatibility for each pack')
|
|
43
|
+
.action((opts: { trust?: boolean }) => {
|
|
37
44
|
const lockfile = new PackLockfile(getLockfilePath());
|
|
38
45
|
const entries = lockfile.list().filter((e) => e.type === 'skills' || e.type === 'bundle');
|
|
39
46
|
|
|
@@ -48,6 +55,17 @@ export function registerSkills(program: Command): void {
|
|
|
48
55
|
entry.source === 'built-in' ? ' [built-in]' : entry.source === 'npm' ? ' [npm]' : '';
|
|
49
56
|
console.log(` ${entry.id}@${entry.version}${badge}`);
|
|
50
57
|
if (entry.skills.length > 0) console.log(` skills: ${entry.skills.join(', ')}`);
|
|
58
|
+
|
|
59
|
+
if (opts.trust) {
|
|
60
|
+
const skillsDir = join(entry.directory, 'skills');
|
|
61
|
+
try {
|
|
62
|
+
const { trust } = classifyTrust(skillsDir);
|
|
63
|
+
const compat = checkSkillCompatibility(entry.soleriRange);
|
|
64
|
+
console.log(` trust: ${trust} source: ${entry.source} compat: ${compat}`);
|
|
65
|
+
} catch {
|
|
66
|
+
console.log(` trust: unknown source: ${entry.source}`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
51
69
|
}
|
|
52
70
|
});
|
|
53
71
|
|