@remnic/cli 9.4.2 → 9.5.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/index.js +48 -5
- package/package.json +28 -28
package/dist/index.js
CHANGED
|
@@ -114,7 +114,9 @@ import {
|
|
|
114
114
|
expandTildePath,
|
|
115
115
|
forkCapsule,
|
|
116
116
|
readForkLineage,
|
|
117
|
-
runWearablesCliCommand
|
|
117
|
+
runWearablesCliCommand,
|
|
118
|
+
OPERATION_NAMES,
|
|
119
|
+
validateCapabilitiesForMint
|
|
118
120
|
} from "@remnic/core";
|
|
119
121
|
import {
|
|
120
122
|
AUTH_TAG_LENGTH,
|
|
@@ -11003,16 +11005,57 @@ function daemonRestart() {
|
|
|
11003
11005
|
daemonStop();
|
|
11004
11006
|
setTimeout(() => daemonStart(), 1e3);
|
|
11005
11007
|
}
|
|
11006
|
-
function cmdTokenGenerate(
|
|
11008
|
+
function cmdTokenGenerate(rest) {
|
|
11009
|
+
const opsRaw = resolveFlagStrict(rest, "--ops");
|
|
11010
|
+
const namespacesRaw = resolveFlagStrict(rest, "--namespaces");
|
|
11011
|
+
let connector;
|
|
11012
|
+
for (let i = 0; i < rest.length; i++) {
|
|
11013
|
+
const tok = rest[i];
|
|
11014
|
+
if (tok === "--ops" || tok === "--namespaces") {
|
|
11015
|
+
i++;
|
|
11016
|
+
continue;
|
|
11017
|
+
}
|
|
11018
|
+
if (!tok.startsWith("-")) {
|
|
11019
|
+
connector = tok;
|
|
11020
|
+
break;
|
|
11021
|
+
}
|
|
11022
|
+
}
|
|
11007
11023
|
if (!connector) {
|
|
11008
|
-
console.error("Usage: remnic token generate <connector-id>");
|
|
11024
|
+
console.error("Usage: remnic token generate <connector-id> [--ops <comma-list>] [--namespaces <comma-list>]");
|
|
11009
11025
|
console.error(" e.g.: remnic token generate claude-code");
|
|
11026
|
+
console.error(" remnic token generate monitor --ops status,health --namespaces default");
|
|
11027
|
+
process.exit(1);
|
|
11028
|
+
}
|
|
11029
|
+
const rawCaps = {};
|
|
11030
|
+
if (opsRaw !== void 0) {
|
|
11031
|
+
rawCaps.ops = opsRaw.split(",").map((s) => s.trim()).filter((s) => s.length > 0);
|
|
11032
|
+
}
|
|
11033
|
+
if (namespacesRaw !== void 0) {
|
|
11034
|
+
rawCaps.namespaces = namespacesRaw.split(",").map((s) => s.trim()).filter((s) => s.length > 0);
|
|
11035
|
+
}
|
|
11036
|
+
let capabilities;
|
|
11037
|
+
try {
|
|
11038
|
+
capabilities = validateCapabilitiesForMint(
|
|
11039
|
+
Object.keys(rawCaps).length > 0 ? rawCaps : void 0,
|
|
11040
|
+
OPERATION_NAMES
|
|
11041
|
+
);
|
|
11042
|
+
} catch (error) {
|
|
11043
|
+
console.error(
|
|
11044
|
+
`Invalid token capabilities: ${error instanceof Error ? error.message : String(error)}`
|
|
11045
|
+
);
|
|
11046
|
+
console.error(" Run with --ops <comma-list> and/or --namespaces <comma-list> using valid values.");
|
|
11010
11047
|
process.exit(1);
|
|
11011
11048
|
}
|
|
11012
|
-
const entry = generateToken(connector);
|
|
11049
|
+
const entry = generateToken(connector, void 0, capabilities);
|
|
11013
11050
|
console.log(`Generated token for ${connector}:`);
|
|
11014
11051
|
console.log(` Token: ${entry.token}`);
|
|
11015
11052
|
console.log(` Created: ${entry.createdAt}`);
|
|
11053
|
+
if (capabilities.ops !== void 0) {
|
|
11054
|
+
console.log(` Ops: ${capabilities.ops.length > 0 ? capabilities.ops.join(", ") : "(deny all)"}`);
|
|
11055
|
+
}
|
|
11056
|
+
if (capabilities.namespaces !== void 0) {
|
|
11057
|
+
console.log(` Ns: ${capabilities.namespaces.length > 0 ? capabilities.namespaces.join(", ") : "(deny all)"}`);
|
|
11058
|
+
}
|
|
11016
11059
|
console.log(`
|
|
11017
11060
|
Use this token as the Bearer token when connecting from ${connector}.`);
|
|
11018
11061
|
}
|
|
@@ -11973,7 +12016,7 @@ async function main(argv = process.argv.slice(2)) {
|
|
|
11973
12016
|
const json = rest.includes("--json");
|
|
11974
12017
|
switch (action) {
|
|
11975
12018
|
case "generate":
|
|
11976
|
-
cmdTokenGenerate(rest
|
|
12019
|
+
cmdTokenGenerate(rest.slice(1));
|
|
11977
12020
|
break;
|
|
11978
12021
|
case "list":
|
|
11979
12022
|
cmdTokenList(json);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@remnic/cli",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.5.0",
|
|
4
4
|
"description": "CLI for Remnic memory — init, query, doctor, daemon management",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -26,23 +26,23 @@
|
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
28
|
"yaml": "^2.4.2",
|
|
29
|
-
"@remnic/server": "^9.
|
|
30
|
-
"@remnic/plugin-pi": "^9.
|
|
31
|
-
"@remnic/core": "^9.
|
|
29
|
+
"@remnic/server": "^9.5.0",
|
|
30
|
+
"@remnic/plugin-pi": "^9.5.0",
|
|
31
|
+
"@remnic/core": "^9.5.0"
|
|
32
32
|
},
|
|
33
33
|
"peerDependencies": {
|
|
34
|
-
"@remnic/bench": "^9.
|
|
35
|
-
"@remnic/export-weclone": "^9.
|
|
36
|
-
"@remnic/import-weclone": "^9.
|
|
37
|
-
"@remnic/import-chatgpt": "^9.
|
|
38
|
-
"@remnic/import-claude": "^9.
|
|
39
|
-
"@remnic/import-gemini": "^9.
|
|
40
|
-
"@remnic/import-lossless-claw": "^9.
|
|
41
|
-
"@remnic/import-mem0": "^9.
|
|
42
|
-
"@remnic/import-supermemory": "^9.
|
|
43
|
-
"@remnic/connector-limitless": "^9.
|
|
44
|
-
"@remnic/connector-bee": "^9.
|
|
45
|
-
"@remnic/connector-omi": "^9.
|
|
34
|
+
"@remnic/bench": "^9.5.0",
|
|
35
|
+
"@remnic/export-weclone": "^9.5.0",
|
|
36
|
+
"@remnic/import-weclone": "^9.5.0",
|
|
37
|
+
"@remnic/import-chatgpt": "^9.5.0",
|
|
38
|
+
"@remnic/import-claude": "^9.5.0",
|
|
39
|
+
"@remnic/import-gemini": "^9.5.0",
|
|
40
|
+
"@remnic/import-lossless-claw": "^9.5.0",
|
|
41
|
+
"@remnic/import-mem0": "^9.5.0",
|
|
42
|
+
"@remnic/import-supermemory": "^9.5.0",
|
|
43
|
+
"@remnic/connector-limitless": "^9.5.0",
|
|
44
|
+
"@remnic/connector-bee": "^9.5.0",
|
|
45
|
+
"@remnic/connector-omi": "^9.5.0"
|
|
46
46
|
},
|
|
47
47
|
"peerDependenciesMeta": {
|
|
48
48
|
"@remnic/bench": {
|
|
@@ -85,18 +85,18 @@
|
|
|
85
85
|
"devDependencies": {
|
|
86
86
|
"tsup": "^8.5.1",
|
|
87
87
|
"typescript": "^5.9.3",
|
|
88
|
-
"@remnic/
|
|
89
|
-
"@remnic/
|
|
90
|
-
"@remnic/import-weclone": "9.
|
|
91
|
-
"@remnic/import-
|
|
92
|
-
"@remnic/import-
|
|
93
|
-
"@remnic/import-
|
|
94
|
-
"@remnic/import-
|
|
95
|
-
"@remnic/import-mem0": "9.
|
|
96
|
-
"@remnic/
|
|
97
|
-
"@remnic/
|
|
98
|
-
"@remnic/connector-
|
|
99
|
-
"@remnic/connector-
|
|
88
|
+
"@remnic/bench": "9.5.0",
|
|
89
|
+
"@remnic/export-weclone": "9.5.0",
|
|
90
|
+
"@remnic/import-weclone": "9.5.0",
|
|
91
|
+
"@remnic/import-claude": "9.5.0",
|
|
92
|
+
"@remnic/import-chatgpt": "9.5.0",
|
|
93
|
+
"@remnic/import-lossless-claw": "9.5.0",
|
|
94
|
+
"@remnic/import-gemini": "9.5.0",
|
|
95
|
+
"@remnic/import-mem0": "9.5.0",
|
|
96
|
+
"@remnic/import-supermemory": "9.5.0",
|
|
97
|
+
"@remnic/connector-limitless": "9.5.0",
|
|
98
|
+
"@remnic/connector-bee": "9.5.0",
|
|
99
|
+
"@remnic/connector-omi": "9.5.0"
|
|
100
100
|
},
|
|
101
101
|
"license": "MIT",
|
|
102
102
|
"repository": {
|