@rotifer/mcp-server 0.8.2 → 0.8.6
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/README.md +171 -36
- package/dist/auth.d.ts +7 -3
- package/dist/auth.js +19 -11
- package/dist/auth.js.map +1 -1
- package/dist/cloud.d.ts +64 -57
- package/dist/cloud.js +182 -95
- package/dist/cloud.js.map +1 -1
- package/dist/http.d.ts +3 -0
- package/dist/http.js +60 -0
- package/dist/http.js.map +1 -0
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -1
- package/dist/local.d.ts +57 -19
- package/dist/local.js +113 -46
- package/dist/local.js.map +1 -1
- package/dist/login.js +6 -5
- package/dist/login.js.map +1 -1
- package/dist/open-browser.d.ts +5 -2
- package/dist/open-browser.js +6 -5
- package/dist/open-browser.js.map +1 -1
- package/dist/server.js +299 -46
- package/dist/server.js.map +1 -1
- package/dist/tools.d.ts +12 -11
- package/dist/tools.js +53 -36
- package/dist/tools.js.map +1 -1
- package/dist/validate-gene-name.d.ts +6 -0
- package/dist/validate-gene-name.js +25 -0
- package/dist/validate-gene-name.js.map +1 -0
- package/dist/version.d.ts +8 -0
- package/dist/version.js +101 -0
- package/dist/version.js.map +1 -0
- package/dist/wire-types.d.ts +130 -0
- package/dist/wire-types.js +7 -0
- package/dist/wire-types.js.map +1 -0
- package/package.json +10 -2
package/dist/index.js
CHANGED
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
3
3
|
import { createServer } from "./server.js";
|
|
4
|
+
import { getVersionInfo, getPackageVersion } from "./version.js";
|
|
5
|
+
async function notifyVersionOnStderr() {
|
|
6
|
+
if (process.env.CI || process.env.NO_UPDATE_NOTIFIER || process.env.ROTIFER_NO_UPDATE_CHECK)
|
|
7
|
+
return;
|
|
8
|
+
try {
|
|
9
|
+
const info = await getVersionInfo();
|
|
10
|
+
if (info.updateAvailable && info.latest) {
|
|
11
|
+
process.stderr.write(`[rotifer-mcp-server] Update available: ${info.current} → ${info.latest}. ` +
|
|
12
|
+
`Run: npm i -g @rotifer/mcp-server@latest\n`);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
catch { /* non-critical */ }
|
|
16
|
+
}
|
|
4
17
|
async function main() {
|
|
5
18
|
const subcommand = process.argv[2];
|
|
6
19
|
if (subcommand === "login") {
|
|
@@ -18,6 +31,19 @@ async function main() {
|
|
|
18
31
|
runLogout();
|
|
19
32
|
return;
|
|
20
33
|
}
|
|
34
|
+
if (subcommand === "serve") {
|
|
35
|
+
const { startHttpServer } = await import("./http.js");
|
|
36
|
+
const portIdx = process.argv.indexOf("--port");
|
|
37
|
+
const port = portIdx !== -1 ? parseInt(process.argv[portIdx + 1], 10) : undefined;
|
|
38
|
+
notifyVersionOnStderr();
|
|
39
|
+
await startHttpServer({ port });
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
if (subcommand === "--version" || subcommand === "-v") {
|
|
43
|
+
console.log(getPackageVersion());
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
notifyVersionOnStderr();
|
|
21
47
|
const server = createServer();
|
|
22
48
|
const transport = new StdioServerTransport();
|
|
23
49
|
await server.connect(transport);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/local.d.ts
CHANGED
|
@@ -6,22 +6,22 @@ export interface LocalGene {
|
|
|
6
6
|
version: string | null;
|
|
7
7
|
author: string | null;
|
|
8
8
|
description: string | null;
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
hasWasm: boolean;
|
|
10
|
+
hasSource: boolean;
|
|
11
11
|
cloud?: {
|
|
12
12
|
id: string;
|
|
13
13
|
owner: string;
|
|
14
14
|
version: string;
|
|
15
15
|
};
|
|
16
16
|
compiled?: {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
irHash: string;
|
|
18
|
+
compiledAt: string;
|
|
19
|
+
wasmSize: number | null;
|
|
20
20
|
};
|
|
21
21
|
}
|
|
22
22
|
export interface ListLocalGenesResult {
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
projectRoot: string;
|
|
24
|
+
genesDir: string;
|
|
25
25
|
genes: LocalGene[];
|
|
26
26
|
total: number;
|
|
27
27
|
}
|
|
@@ -37,12 +37,12 @@ export interface LocalAgent {
|
|
|
37
37
|
genome: string[];
|
|
38
38
|
composition: Record<string, unknown>;
|
|
39
39
|
strategy: string;
|
|
40
|
-
|
|
40
|
+
createdAt: string;
|
|
41
41
|
reputation: number;
|
|
42
42
|
}
|
|
43
43
|
export interface ListLocalAgentsResult {
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
projectRoot: string;
|
|
45
|
+
agentsDir: string;
|
|
46
46
|
agents: LocalAgent[];
|
|
47
47
|
total: number;
|
|
48
48
|
}
|
|
@@ -57,54 +57,92 @@ export interface CreateAgentResult {
|
|
|
57
57
|
genome: string[];
|
|
58
58
|
composition: Record<string, unknown>;
|
|
59
59
|
strategy: string;
|
|
60
|
-
|
|
60
|
+
createdAt: string;
|
|
61
61
|
}
|
|
62
62
|
export declare function createLocalAgent(options: {
|
|
63
63
|
project_root?: string;
|
|
64
|
-
|
|
65
|
-
|
|
64
|
+
agent_name: string;
|
|
65
|
+
gene_ids?: string[];
|
|
66
66
|
composition?: string;
|
|
67
|
+
domain?: string;
|
|
68
|
+
strategy?: string;
|
|
69
|
+
par_merge?: string;
|
|
67
70
|
}): CreateAgentResult;
|
|
68
71
|
export interface ShellResult {
|
|
69
72
|
success: boolean;
|
|
70
|
-
|
|
73
|
+
exitCode: number;
|
|
71
74
|
stdout: string;
|
|
72
75
|
stderr: string;
|
|
73
76
|
}
|
|
74
77
|
export declare function agentRun(options: {
|
|
75
|
-
|
|
78
|
+
agent_name: string;
|
|
76
79
|
project_root?: string;
|
|
77
80
|
input?: string;
|
|
81
|
+
verbose?: boolean;
|
|
82
|
+
no_sandbox?: boolean;
|
|
78
83
|
}): ShellResult;
|
|
79
84
|
export declare function compileGene(options: {
|
|
80
85
|
gene_name: string;
|
|
81
86
|
project_root?: string;
|
|
87
|
+
check?: boolean;
|
|
88
|
+
wasm_path?: string;
|
|
89
|
+
lang?: string;
|
|
82
90
|
}): ShellResult;
|
|
83
91
|
export declare function runGene(options: {
|
|
84
92
|
gene_name: string;
|
|
85
93
|
project_root?: string;
|
|
86
94
|
input?: string;
|
|
95
|
+
verbose?: boolean;
|
|
96
|
+
no_sandbox?: boolean;
|
|
97
|
+
trust_unsigned?: boolean;
|
|
87
98
|
}): ShellResult;
|
|
88
99
|
export declare function initGene(options: {
|
|
89
|
-
|
|
100
|
+
gene_name: string;
|
|
90
101
|
project_root?: string;
|
|
91
102
|
fidelity?: string;
|
|
103
|
+
domain?: string;
|
|
104
|
+
no_genesis?: boolean;
|
|
92
105
|
}): ShellResult;
|
|
93
106
|
export declare function scanGenes(options: {
|
|
94
107
|
path?: string;
|
|
95
108
|
project_root?: string;
|
|
109
|
+
skills?: boolean;
|
|
110
|
+
skills_path?: string;
|
|
96
111
|
}): ShellResult;
|
|
97
112
|
export declare function wrapGene(options: {
|
|
98
|
-
|
|
113
|
+
gene_name: string;
|
|
99
114
|
project_root?: string;
|
|
115
|
+
domain?: string;
|
|
116
|
+
fidelity?: string;
|
|
117
|
+
from_skill?: string;
|
|
118
|
+
from_clawhub?: string;
|
|
100
119
|
}): ShellResult;
|
|
101
120
|
export declare function testGene(options: {
|
|
102
|
-
|
|
121
|
+
gene_name: string;
|
|
103
122
|
project_root?: string;
|
|
123
|
+
verbose?: boolean;
|
|
124
|
+
compliance?: boolean;
|
|
104
125
|
}): ShellResult;
|
|
105
126
|
export declare function publishGene(options: {
|
|
106
|
-
|
|
127
|
+
gene_name?: string;
|
|
107
128
|
project_root?: string;
|
|
108
129
|
all?: boolean;
|
|
109
130
|
skip_arena?: boolean;
|
|
131
|
+
description?: string;
|
|
132
|
+
changelog?: string;
|
|
133
|
+
skip_security?: boolean;
|
|
110
134
|
}): ShellResult;
|
|
135
|
+
export declare function vgScan(options: {
|
|
136
|
+
path?: string;
|
|
137
|
+
project_root?: string;
|
|
138
|
+
gene_id?: string;
|
|
139
|
+
all?: boolean;
|
|
140
|
+
}): {
|
|
141
|
+
grade: string;
|
|
142
|
+
skill_id: string;
|
|
143
|
+
findings: unknown[];
|
|
144
|
+
stats: {
|
|
145
|
+
files_scanned: number;
|
|
146
|
+
lines_of_code: number;
|
|
147
|
+
};
|
|
148
|
+
};
|
package/dist/local.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import { readFileSync, readdirSync, existsSync, statSync } from "node:fs";
|
|
1
|
+
import { readFileSync, readdirSync, existsSync, statSync, writeFileSync, mkdirSync } from "node:fs";
|
|
2
2
|
import { join } from "node:path";
|
|
3
|
+
import { randomUUID } from "node:crypto";
|
|
4
|
+
import { spawnSync } from "node:child_process";
|
|
3
5
|
function readJson(path) {
|
|
4
6
|
try {
|
|
5
7
|
return JSON.parse(readFileSync(path, "utf-8"));
|
|
@@ -21,7 +23,7 @@ export function listLocalGenes(options) {
|
|
|
21
23
|
const root = resolveProjectRoot(options.project_root);
|
|
22
24
|
const genesDir = resolveGenesDir(root);
|
|
23
25
|
if (!existsSync(genesDir)) {
|
|
24
|
-
return {
|
|
26
|
+
return { projectRoot: root, genesDir, genes: [], total: 0 };
|
|
25
27
|
}
|
|
26
28
|
let entries;
|
|
27
29
|
try {
|
|
@@ -31,7 +33,7 @@ export function listLocalGenes(options) {
|
|
|
31
33
|
});
|
|
32
34
|
}
|
|
33
35
|
catch {
|
|
34
|
-
return {
|
|
36
|
+
return { projectRoot: root, genesDir, genes: [], total: 0 };
|
|
35
37
|
}
|
|
36
38
|
let genes = entries.map((name) => {
|
|
37
39
|
const geneDir = join(genesDir, name);
|
|
@@ -46,16 +48,16 @@ export function listLocalGenes(options) {
|
|
|
46
48
|
version: phenotype?.version || cloud?.version || null,
|
|
47
49
|
author: phenotype?.author || cloud?.owner || null,
|
|
48
50
|
description: phenotype?.description || null,
|
|
49
|
-
|
|
50
|
-
|
|
51
|
+
hasWasm: existsSync(join(geneDir, "gene.ir.wasm")),
|
|
52
|
+
hasSource: existsSync(join(geneDir, "index.ts")),
|
|
51
53
|
...(cloud && {
|
|
52
54
|
cloud: { id: cloud.cloud_id, owner: cloud.owner, version: cloud.version },
|
|
53
55
|
}),
|
|
54
56
|
...(compiled && {
|
|
55
57
|
compiled: {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
58
|
+
irHash: compiled.irHash,
|
|
59
|
+
compiledAt: compiled.compiledAt,
|
|
60
|
+
wasmSize: compiled.wasmSize ?? compiled.totalSize ?? null,
|
|
59
61
|
},
|
|
60
62
|
}),
|
|
61
63
|
};
|
|
@@ -67,20 +69,20 @@ export function listLocalGenes(options) {
|
|
|
67
69
|
genes = genes.filter((g) => g.fidelity === options.fidelity);
|
|
68
70
|
}
|
|
69
71
|
genes.sort((a, b) => a.domain.localeCompare(b.domain) || a.name.localeCompare(b.name));
|
|
70
|
-
return {
|
|
72
|
+
return { projectRoot: root, genesDir, genes, total: genes.length };
|
|
71
73
|
}
|
|
72
74
|
export function listLocalAgents(options) {
|
|
73
75
|
const root = resolveProjectRoot(options.project_root);
|
|
74
76
|
const agentsDir = join(root, ".rotifer", "agents");
|
|
75
77
|
if (!existsSync(agentsDir)) {
|
|
76
|
-
return {
|
|
78
|
+
return { projectRoot: root, agentsDir, agents: [], total: 0 };
|
|
77
79
|
}
|
|
78
80
|
let files;
|
|
79
81
|
try {
|
|
80
82
|
files = readdirSync(agentsDir).filter((f) => f.endsWith(".json"));
|
|
81
83
|
}
|
|
82
84
|
catch {
|
|
83
|
-
return {
|
|
85
|
+
return { projectRoot: root, agentsDir, agents: [], total: 0 };
|
|
84
86
|
}
|
|
85
87
|
let agents = files
|
|
86
88
|
.map((f) => {
|
|
@@ -94,7 +96,7 @@ export function listLocalAgents(options) {
|
|
|
94
96
|
genome: Array.isArray(raw.genome) ? raw.genome : [],
|
|
95
97
|
composition: raw.composition || { type: "Single" },
|
|
96
98
|
strategy: raw.strategy || "manual",
|
|
97
|
-
|
|
99
|
+
createdAt: raw.createdAt || raw.created_at || "",
|
|
98
100
|
reputation: raw.reputation ?? 0,
|
|
99
101
|
};
|
|
100
102
|
})
|
|
@@ -102,42 +104,52 @@ export function listLocalAgents(options) {
|
|
|
102
104
|
if (options.state) {
|
|
103
105
|
agents = agents.filter((a) => a.state.toLowerCase() === options.state.toLowerCase());
|
|
104
106
|
}
|
|
105
|
-
agents.sort((a, b) => (b.
|
|
106
|
-
return {
|
|
107
|
+
agents.sort((a, b) => (b.createdAt || "").localeCompare(a.createdAt || ""));
|
|
108
|
+
return { projectRoot: root, agentsDir, agents, total: agents.length };
|
|
107
109
|
}
|
|
108
110
|
export function createLocalAgent(options) {
|
|
109
|
-
const { randomUUID } = require("node:crypto");
|
|
110
|
-
const { writeFileSync, mkdirSync } = require("node:fs");
|
|
111
111
|
const root = resolveProjectRoot(options.project_root);
|
|
112
112
|
const genesDir = resolveGenesDir(root);
|
|
113
113
|
const agentsDir = join(root, ".rotifer", "agents");
|
|
114
114
|
mkdirSync(agentsDir, { recursive: true });
|
|
115
|
-
|
|
115
|
+
const genes = options.gene_ids || [];
|
|
116
|
+
if (genes.length === 0) {
|
|
117
|
+
throw new Error("'gene_ids' is required with at least one gene name. Wrap genes first with 'rotifer wrap <gene-name>'.");
|
|
118
|
+
}
|
|
119
|
+
for (const geneName of genes) {
|
|
116
120
|
const phenoPath = join(genesDir, geneName, "phenotype.json");
|
|
117
121
|
if (!existsSync(phenoPath)) {
|
|
118
122
|
throw new Error(`Gene '${geneName}' not found at ${phenoPath}. Run 'rotifer wrap ${geneName}' first.`);
|
|
119
123
|
}
|
|
120
124
|
}
|
|
121
125
|
const agentId = randomUUID();
|
|
122
|
-
const compositionType =
|
|
126
|
+
const compositionType = genes.length >= 2
|
|
123
127
|
? (options.composition || "Seq")
|
|
124
|
-
: "Single";
|
|
128
|
+
: (genes.length === 1 ? "Single" : (options.composition || "Seq"));
|
|
129
|
+
const mergeStrategy = options.par_merge || "first";
|
|
125
130
|
let composition = { type: compositionType };
|
|
126
131
|
if (compositionType === "Par") {
|
|
127
|
-
composition = { type: "Par", branches:
|
|
132
|
+
composition = { type: "Par", branches: genes, merge: mergeStrategy };
|
|
133
|
+
}
|
|
134
|
+
else if (compositionType === "Try" && genes.length >= 2) {
|
|
135
|
+
composition = { type: "Try", primary: genes[0], fallback: genes[1] };
|
|
136
|
+
}
|
|
137
|
+
else if (compositionType === "Cond" && genes.length >= 2) {
|
|
138
|
+
composition = { type: "Cond", thenBranch: genes[0], elseBranch: genes[1] };
|
|
128
139
|
}
|
|
129
|
-
else if (compositionType === "
|
|
130
|
-
composition = { type: "
|
|
140
|
+
else if (compositionType === "TryPool") {
|
|
141
|
+
composition = { type: "TryPool", pool: genes };
|
|
131
142
|
}
|
|
132
143
|
const agent = {
|
|
133
144
|
id: agentId,
|
|
134
|
-
name: options.
|
|
145
|
+
name: options.agent_name,
|
|
135
146
|
state: "Active",
|
|
136
|
-
genome:
|
|
147
|
+
genome: genes,
|
|
137
148
|
composition,
|
|
138
|
-
strategy: "manual",
|
|
149
|
+
strategy: options.strategy || "manual",
|
|
139
150
|
createdAt: new Date().toISOString(),
|
|
140
151
|
reputation: 0.0,
|
|
152
|
+
...(options.domain && { domain: options.domain }),
|
|
141
153
|
};
|
|
142
154
|
writeFileSync(join(agentsDir, agentId + ".json"), JSON.stringify(agent, null, 2) + "\n");
|
|
143
155
|
return {
|
|
@@ -147,11 +159,10 @@ export function createLocalAgent(options) {
|
|
|
147
159
|
genome: agent.genome,
|
|
148
160
|
composition: agent.composition,
|
|
149
161
|
strategy: agent.strategy,
|
|
150
|
-
|
|
162
|
+
createdAt: agent.createdAt,
|
|
151
163
|
};
|
|
152
164
|
}
|
|
153
165
|
function shellExec(cmd, args, cwd) {
|
|
154
|
-
const { spawnSync } = require("node:child_process");
|
|
155
166
|
const result = spawnSync(cmd, args, {
|
|
156
167
|
cwd: cwd || process.cwd(),
|
|
157
168
|
timeout: 120_000,
|
|
@@ -160,7 +171,7 @@ function shellExec(cmd, args, cwd) {
|
|
|
160
171
|
});
|
|
161
172
|
return {
|
|
162
173
|
success: result.status === 0,
|
|
163
|
-
|
|
174
|
+
exitCode: result.status ?? 1,
|
|
164
175
|
stdout: (result.stdout || "").trim(),
|
|
165
176
|
stderr: (result.stderr || "").trim(),
|
|
166
177
|
};
|
|
@@ -180,51 +191,83 @@ function rotiferCmd(args, cwd) {
|
|
|
180
191
|
}
|
|
181
192
|
export function agentRun(options) {
|
|
182
193
|
const root = resolveProjectRoot(options.project_root);
|
|
183
|
-
const args = ["agent", "run", options.
|
|
194
|
+
const args = ["agent", "run", options.agent_name];
|
|
184
195
|
if (options.input) {
|
|
185
196
|
args.push("--input", options.input);
|
|
186
197
|
}
|
|
198
|
+
if (options.verbose)
|
|
199
|
+
args.push("--isVerbose");
|
|
200
|
+
if (options.no_sandbox)
|
|
201
|
+
args.push("--no-sandbox");
|
|
187
202
|
return rotiferCmd(args, root);
|
|
188
203
|
}
|
|
189
204
|
export function compileGene(options) {
|
|
190
205
|
const root = resolveProjectRoot(options.project_root);
|
|
191
|
-
|
|
206
|
+
const args = ["compile", options.gene_name];
|
|
207
|
+
if (options.check)
|
|
208
|
+
args.push("--check");
|
|
209
|
+
if (options.wasm_path)
|
|
210
|
+
args.push("--wasm", options.wasm_path);
|
|
211
|
+
if (options.lang)
|
|
212
|
+
args.push("--lang", options.lang);
|
|
213
|
+
return rotiferCmd(args, root);
|
|
192
214
|
}
|
|
193
215
|
export function runGene(options) {
|
|
194
216
|
const root = resolveProjectRoot(options.project_root);
|
|
195
217
|
const args = ["run", options.gene_name];
|
|
196
|
-
if (options.input)
|
|
218
|
+
if (options.input)
|
|
197
219
|
args.push("--input", options.input);
|
|
198
|
-
|
|
220
|
+
if (options.verbose)
|
|
221
|
+
args.push("--verbose");
|
|
222
|
+
if (options.no_sandbox)
|
|
223
|
+
args.push("--no-sandbox");
|
|
224
|
+
if (options.trust_unsigned)
|
|
225
|
+
args.push("--trust-unsigned");
|
|
199
226
|
return rotiferCmd(args, root);
|
|
200
227
|
}
|
|
201
228
|
// ── Creation-side operations ──
|
|
202
229
|
export function initGene(options) {
|
|
203
230
|
const root = resolveProjectRoot(options.project_root);
|
|
204
|
-
const args = ["init", options.
|
|
205
|
-
if (options.fidelity)
|
|
231
|
+
const args = ["init", options.gene_name];
|
|
232
|
+
if (options.fidelity)
|
|
206
233
|
args.push("--fidelity", options.fidelity);
|
|
207
|
-
|
|
234
|
+
if (options.domain)
|
|
235
|
+
args.push("--domain", options.domain);
|
|
236
|
+
if (options.no_genesis)
|
|
237
|
+
args.push("--no-genesis");
|
|
208
238
|
return rotiferCmd(args, root);
|
|
209
239
|
}
|
|
210
240
|
export function scanGenes(options) {
|
|
211
241
|
const root = resolveProjectRoot(options.project_root);
|
|
212
242
|
const args = ["scan"];
|
|
213
|
-
if (options.path)
|
|
243
|
+
if (options.path)
|
|
214
244
|
args.push(options.path);
|
|
215
|
-
|
|
245
|
+
if (options.skills)
|
|
246
|
+
args.push("--skills");
|
|
247
|
+
if (options.skills_path)
|
|
248
|
+
args.push("--skills-path", options.skills_path);
|
|
216
249
|
return rotiferCmd(args, root);
|
|
217
250
|
}
|
|
218
251
|
export function wrapGene(options) {
|
|
219
252
|
const root = resolveProjectRoot(options.project_root);
|
|
220
|
-
|
|
253
|
+
const args = ["wrap", options.gene_name];
|
|
254
|
+
if (options.domain)
|
|
255
|
+
args.push("--domain", options.domain);
|
|
256
|
+
if (options.fidelity)
|
|
257
|
+
args.push("--fidelity", options.fidelity);
|
|
258
|
+
if (options.from_skill)
|
|
259
|
+
args.push("--from-skill", options.from_skill);
|
|
260
|
+
if (options.from_clawhub)
|
|
261
|
+
args.push("--from-clawhub", options.from_clawhub);
|
|
262
|
+
return rotiferCmd(args, root);
|
|
221
263
|
}
|
|
222
264
|
export function testGene(options) {
|
|
223
265
|
const root = resolveProjectRoot(options.project_root);
|
|
224
|
-
const args = ["test"];
|
|
225
|
-
if (options.
|
|
226
|
-
args.push(
|
|
227
|
-
|
|
266
|
+
const args = ["test", options.gene_name];
|
|
267
|
+
if (options.verbose)
|
|
268
|
+
args.push("--verbose");
|
|
269
|
+
if (options.compliance)
|
|
270
|
+
args.push("--compliance");
|
|
228
271
|
return rotiferCmd(args, root);
|
|
229
272
|
}
|
|
230
273
|
export function publishGene(options) {
|
|
@@ -233,12 +276,36 @@ export function publishGene(options) {
|
|
|
233
276
|
if (options.all) {
|
|
234
277
|
args.push("--all");
|
|
235
278
|
}
|
|
236
|
-
else if (options.
|
|
237
|
-
args.push(options.
|
|
279
|
+
else if (options.gene_name) {
|
|
280
|
+
args.push(options.gene_name);
|
|
238
281
|
}
|
|
239
|
-
if (options.skip_arena)
|
|
282
|
+
if (options.skip_arena)
|
|
240
283
|
args.push("--skip-arena");
|
|
241
|
-
|
|
284
|
+
if (options.description)
|
|
285
|
+
args.push("--description", options.description);
|
|
286
|
+
if (options.changelog)
|
|
287
|
+
args.push("--changelog", options.changelog);
|
|
288
|
+
if (options.skip_security)
|
|
289
|
+
args.push("--skip-security");
|
|
242
290
|
return rotiferCmd(args, root);
|
|
243
291
|
}
|
|
292
|
+
export function vgScan(options) {
|
|
293
|
+
const root = resolveProjectRoot(options.project_root);
|
|
294
|
+
const scanPath = options.path || ".";
|
|
295
|
+
const args = ["vg", scanPath, "--json"];
|
|
296
|
+
if (options.gene_id)
|
|
297
|
+
args.push("--id", options.gene_id);
|
|
298
|
+
if (options.all)
|
|
299
|
+
args.push("--all");
|
|
300
|
+
const result = rotiferCmd(args, root);
|
|
301
|
+
if (!result.success) {
|
|
302
|
+
throw new Error(result.stderr || "V(g) scan failed");
|
|
303
|
+
}
|
|
304
|
+
try {
|
|
305
|
+
return JSON.parse(result.stdout);
|
|
306
|
+
}
|
|
307
|
+
catch {
|
|
308
|
+
throw new Error("Failed to parse V(g) scan output: " + result.stdout.slice(0, 200));
|
|
309
|
+
}
|
|
310
|
+
}
|
|
244
311
|
//# sourceMappingURL=local.js.map
|
package/dist/local.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local.js","sourceRoot":"","sources":["../src/local.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"local.js","sourceRoot":"","sources":["../src/local.ts"],"names":[],"mappings":"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"}
|
package/dist/login.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { loadCloudConfig } from "./cloud.js";
|
|
2
2
|
import { openBrowser } from "./open-browser.js";
|
|
3
|
-
import { loadCredentials, saveCredentials, clearCredentials, generateCodeVerifier, generateCodeChallenge,
|
|
3
|
+
import { loadCredentials, saveCredentials, clearCredentials, generateCodeVerifier, generateCodeChallenge, startOAuthCallbackServer, } from "./auth.js";
|
|
4
4
|
const SUPPORTED_PROVIDERS = ["github", "gitlab"];
|
|
5
5
|
export async function runLogin(options) {
|
|
6
6
|
console.log("Rotifer Cloud Login\n");
|
|
@@ -14,21 +14,22 @@ export async function runLogin(options) {
|
|
|
14
14
|
if (!SUPPORTED_PROVIDERS.includes(provider)) {
|
|
15
15
|
console.error(`Unsupported provider: '${provider}'. Supported: ${SUPPORTED_PROVIDERS.join(", ")}`);
|
|
16
16
|
process.exit(1);
|
|
17
|
+
return;
|
|
17
18
|
}
|
|
18
19
|
const config = loadCloudConfig();
|
|
19
20
|
const endpoint = options.endpoint || config.endpoint;
|
|
20
|
-
console.log(`Opening browser for ${provider} authorization...`);
|
|
21
|
-
const callbackPort = 9876;
|
|
22
21
|
const codeVerifier = generateCodeVerifier();
|
|
23
22
|
const codeChallenge = generateCodeChallenge(codeVerifier);
|
|
23
|
+
const { port: callbackPort, waitForCallback } = await startOAuthCallbackServer();
|
|
24
|
+
console.log(`Opening browser for ${provider} authorization...`);
|
|
24
25
|
const authUrl = `${endpoint}/auth/v1/authorize?provider=${provider}` +
|
|
25
26
|
`&redirect_to=http://localhost:${callbackPort}/callback` +
|
|
26
27
|
`&code_challenge=${codeChallenge}` +
|
|
27
28
|
`&code_challenge_method=S256`;
|
|
28
29
|
openBrowser(authUrl);
|
|
29
|
-
console.log(
|
|
30
|
+
console.log(`Waiting for authorization on port ${callbackPort} (timeout: 120s)...`);
|
|
30
31
|
try {
|
|
31
|
-
const callbackResult = await
|
|
32
|
+
const callbackResult = await waitForCallback;
|
|
32
33
|
let accessToken;
|
|
33
34
|
let refreshToken;
|
|
34
35
|
if (callbackResult.startsWith("implicit:")) {
|
package/dist/login.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EACL,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../src/login.ts"],"names":[],"mappings":"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"}
|
package/dist/open-browser.d.ts
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Resolve the binary and arguments to open a URL in the default browser.
|
|
3
3
|
* Exported separately for testability.
|
|
4
4
|
*/
|
|
5
|
-
export declare function buildOpenCommand(url: string, platform: string):
|
|
5
|
+
export declare function buildOpenCommand(url: string, platform: string): {
|
|
6
|
+
bin: string;
|
|
7
|
+
args: string[];
|
|
8
|
+
};
|
|
6
9
|
/**
|
|
7
10
|
* Open a URL in the user's default browser, cross-platform.
|
|
8
11
|
*/
|
package/dist/open-browser.js
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { execFile } from "node:child_process";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* Resolve the binary and arguments to open a URL in the default browser.
|
|
4
4
|
* Exported separately for testability.
|
|
5
5
|
*/
|
|
6
6
|
export function buildOpenCommand(url, platform) {
|
|
7
7
|
if (platform === "win32") {
|
|
8
|
-
return
|
|
8
|
+
return { bin: "cmd", args: ["/c", "start", "", url] };
|
|
9
9
|
}
|
|
10
10
|
const bin = platform === "darwin" ? "open" : "xdg-open";
|
|
11
|
-
return
|
|
11
|
+
return { bin, args: [url] };
|
|
12
12
|
}
|
|
13
13
|
/**
|
|
14
14
|
* Open a URL in the user's default browser, cross-platform.
|
|
15
15
|
*/
|
|
16
16
|
export function openBrowser(url) {
|
|
17
|
-
|
|
17
|
+
const { bin, args } = buildOpenCommand(url, process.platform);
|
|
18
|
+
execFile(bin, args);
|
|
18
19
|
}
|
|
19
20
|
//# sourceMappingURL=open-browser.js.map
|