@interchained/portal-cli 0.1.9 → 0.1.11
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/agent-cmd.d.ts +9 -0
- package/dist/commands/agent-cmd.d.ts.map +1 -1
- package/dist/commands/agent-cmd.js +150 -69
- package/dist/commands/agent-cmd.js.map +1 -1
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +14 -5
- package/dist/commands/serve.js.map +1 -1
- package/dist/utils/agents.d.ts +20 -0
- package/dist/utils/agents.d.ts.map +1 -0
- package/dist/utils/agents.js +80 -0
- package/dist/utils/agents.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* portal agent list — list configured agents and their permissions
|
|
3
3
|
* portal agent run — run a specific agent task manually
|
|
4
|
+
*
|
|
5
|
+
* Agents are real defineAgent({ ... }) definitions loaded from agents/*.agent.ts.
|
|
6
|
+
* Their declared permissions are enforced:
|
|
7
|
+
* - canPatch: false → read-only; the agent analyzes and reports, never writes
|
|
8
|
+
* - canPatch: true → may produce patches
|
|
9
|
+
* - requiresApproval: true → patches stay pending for `portal patch`
|
|
10
|
+
* - requiresApproval: false→ clean patches are applied automatically
|
|
11
|
+
* When requiresApproval is unset it falls back to the contract's publishing policy,
|
|
12
|
+
* defaulting to "requires approval" unless publishing is explicitly "immediate".
|
|
4
13
|
*/
|
|
5
14
|
export declare function agentListCommand(): Promise<void>;
|
|
6
15
|
export declare function agentRunCommand(name: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-cmd.d.ts","sourceRoot":"","sources":["../../src/commands/agent-cmd.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"agent-cmd.d.ts","sourceRoot":"","sources":["../../src/commands/agent-cmd.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAiEH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CA0BtD;AAID,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyKjE"}
|
|
@@ -1,21 +1,58 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* portal agent list — list configured agents and their permissions
|
|
3
3
|
* portal agent run — run a specific agent task manually
|
|
4
|
+
*
|
|
5
|
+
* Agents are real defineAgent({ ... }) definitions loaded from agents/*.agent.ts.
|
|
6
|
+
* Their declared permissions are enforced:
|
|
7
|
+
* - canPatch: false → read-only; the agent analyzes and reports, never writes
|
|
8
|
+
* - canPatch: true → may produce patches
|
|
9
|
+
* - requiresApproval: true → patches stay pending for `portal patch`
|
|
10
|
+
* - requiresApproval: false→ clean patches are applied automatically
|
|
11
|
+
* When requiresApproval is unset it falls back to the contract's publishing policy,
|
|
12
|
+
* defaulting to "requires approval" unless publishing is explicitly "immediate".
|
|
4
13
|
*/
|
|
5
|
-
import { readFile, readdir
|
|
6
|
-
import { join
|
|
14
|
+
import { readFile, readdir } from "node:fs/promises";
|
|
15
|
+
import { join } from "node:path";
|
|
7
16
|
import pc from "picocolors";
|
|
8
17
|
import ora from "ora";
|
|
9
|
-
import { Runner, Sentinel, PatchStore, createPatch } from "@interchained/portal-agent";
|
|
18
|
+
import { Runner, Sentinel, PatchStore, createPatch, applyPatch, } from "@interchained/portal-agent";
|
|
10
19
|
import { banner, header, success, fail, info, step, blank } from "../utils/print.js";
|
|
11
20
|
import { loadContract } from "../utils/contract.js";
|
|
12
|
-
|
|
21
|
+
import { findAgentFiles, matchAgentFile, loadAgent } from "../utils/agents.js";
|
|
22
|
+
// ── helpers ─────────────────────────────────────────────────────────────────
|
|
23
|
+
/**
|
|
24
|
+
* Resolve whether an agent's patches require approval.
|
|
25
|
+
* Fail-safe: defaults to true unless the contract explicitly publishes immediately.
|
|
26
|
+
*/
|
|
27
|
+
function resolveRequiresApproval(def, contract) {
|
|
28
|
+
return def.requiresApproval ?? contract.policies?.publishing !== "immediate";
|
|
29
|
+
}
|
|
30
|
+
function permsLabel(def, contract) {
|
|
31
|
+
const canPatch = def.canPatch === true;
|
|
32
|
+
const parts = [
|
|
33
|
+
canPatch ? pc.yellow("can patch") : pc.dim("read-only"),
|
|
34
|
+
canPatch
|
|
35
|
+
? resolveRequiresApproval(def, contract)
|
|
36
|
+
? pc.cyan("requires approval")
|
|
37
|
+
: pc.dim("auto-apply")
|
|
38
|
+
: null,
|
|
39
|
+
def.model ? pc.dim(`model: ${def.model}`) : null,
|
|
40
|
+
].filter(Boolean);
|
|
41
|
+
return parts.join(" ");
|
|
42
|
+
}
|
|
43
|
+
/** Extract a JSON findings array from a model response that may include prose/fences. */
|
|
44
|
+
function parseFindings(raw) {
|
|
45
|
+
const match = raw.match(/\[[\s\S]*\]/);
|
|
46
|
+
if (!match)
|
|
47
|
+
return [];
|
|
13
48
|
try {
|
|
14
|
-
|
|
15
|
-
|
|
49
|
+
const arr = JSON.parse(match[0]);
|
|
50
|
+
if (!Array.isArray(arr))
|
|
51
|
+
return [];
|
|
52
|
+
return arr.filter((f) => typeof f === "object" && f !== null);
|
|
16
53
|
}
|
|
17
54
|
catch {
|
|
18
|
-
return
|
|
55
|
+
return [];
|
|
19
56
|
}
|
|
20
57
|
}
|
|
21
58
|
// ── portal agent list ─────────────────────────────────────────────────────────
|
|
@@ -23,34 +60,21 @@ export async function agentListCommand() {
|
|
|
23
60
|
banner();
|
|
24
61
|
const root = process.cwd();
|
|
25
62
|
const agentsDir = join(root, "agents");
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
info("
|
|
29
|
-
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
const entries = await readdir(agentsDir);
|
|
33
|
-
const agentFiles = entries.filter((f) => f.endsWith(".agent.ts") || f.endsWith(".agent.js"));
|
|
34
|
-
if (agentFiles.length === 0) {
|
|
35
|
-
info("agents/ directory is empty — no agents configured.");
|
|
63
|
+
const files = await findAgentFiles(agentsDir);
|
|
64
|
+
if (files.length === 0) {
|
|
65
|
+
info("No agents configured.");
|
|
66
|
+
info("Create agents/seo.agent.ts with defineAgent({ ... }) to get started.");
|
|
36
67
|
blank();
|
|
37
68
|
return;
|
|
38
69
|
}
|
|
70
|
+
const contract = await loadContract(root);
|
|
39
71
|
header("Configured Agents");
|
|
40
72
|
blank();
|
|
41
|
-
for (const file of
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
const canPatch = src.includes("canPatch: true");
|
|
47
|
-
const needsApproval = src.includes("requiresApproval: true");
|
|
48
|
-
const name = nameMatch?.[1] ?? basename(file, extname(file));
|
|
49
|
-
const task = taskMatch?.[1] ?? "No task description";
|
|
50
|
-
console.log(`${pc.bold(pc.cyan(name))} ${pc.dim("·")} ${pc.dim(file)}`);
|
|
51
|
-
console.log(` ${task}`);
|
|
52
|
-
console.log(` ${canPatch ? pc.yellow("can patch") : pc.dim("read-only")} ` +
|
|
53
|
-
`${needsApproval ? pc.cyan("requires approval") : pc.dim("auto-apply")}`);
|
|
73
|
+
for (const file of files) {
|
|
74
|
+
const def = await loadAgent(join(agentsDir, file));
|
|
75
|
+
console.log(`${pc.bold(pc.cyan(def.name))} ${pc.dim("·")} ${pc.dim(file)}`);
|
|
76
|
+
console.log(` ${def.task || pc.dim("No task description")}`);
|
|
77
|
+
console.log(` ${permsLabel(def, contract)}`);
|
|
54
78
|
blank();
|
|
55
79
|
}
|
|
56
80
|
}
|
|
@@ -60,48 +84,44 @@ export async function agentRunCommand(name) {
|
|
|
60
84
|
const root = process.cwd();
|
|
61
85
|
const agentsDir = join(root, "agents");
|
|
62
86
|
const contract = await loadContract(root);
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
const entries = await readdir(agentsDir);
|
|
67
|
-
agentFile =
|
|
68
|
-
entries.find((f) => f === `${name}.agent.ts` || f === `${name}.agent.js`) ?? null;
|
|
69
|
-
if (!agentFile) {
|
|
70
|
-
agentFile = entries.find((f) => f.includes(name)) ?? null;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
catch {
|
|
74
|
-
fail("agents/ directory not found. Create an agent first.");
|
|
87
|
+
const files = await findAgentFiles(agentsDir);
|
|
88
|
+
if (files.length === 0) {
|
|
89
|
+
fail("No agents configured. Create agents/<name>.agent.ts first.");
|
|
75
90
|
process.exit(1);
|
|
76
91
|
}
|
|
92
|
+
const agentFile = matchAgentFile(files, name);
|
|
77
93
|
if (!agentFile) {
|
|
78
94
|
fail(`Agent not found: "${name}"`);
|
|
79
|
-
info(
|
|
95
|
+
info("Run portal agent list to see available agents.");
|
|
80
96
|
process.exit(1);
|
|
81
97
|
}
|
|
82
|
-
const
|
|
83
|
-
const
|
|
84
|
-
const
|
|
85
|
-
const task =
|
|
86
|
-
|
|
98
|
+
const def = await loadAgent(join(agentsDir, agentFile));
|
|
99
|
+
const canPatch = def.canPatch === true;
|
|
100
|
+
const requiresApproval = resolveRequiresApproval(def, contract);
|
|
101
|
+
const task = def.task || def.name;
|
|
102
|
+
const mode = !canPatch
|
|
103
|
+
? "read-only (analyze & report)"
|
|
104
|
+
: requiresApproval
|
|
105
|
+
? "propose patches (requires approval)"
|
|
106
|
+
: "auto-apply clean patches";
|
|
107
|
+
header(`Running agent: ${pc.bold(def.name)}`);
|
|
87
108
|
console.log(pc.dim(` Task: ${task}`));
|
|
88
109
|
console.log(pc.dim(` App: ${contract.name}`));
|
|
110
|
+
console.log(pc.dim(` Mode: ${mode}`));
|
|
89
111
|
blank();
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
}
|
|
94
|
-
catch {
|
|
95
|
-
fail("AIASSIST_API_KEY not set.");
|
|
112
|
+
// Agents need a model key to do any work — fail early and clearly.
|
|
113
|
+
if (!process.env["AIASSIST_API_KEY"] && !process.env["VITE_AIAS_API_KEY"]) {
|
|
114
|
+
fail("AIASSIST_API_KEY not set — agents need it to run.");
|
|
96
115
|
process.exit(1);
|
|
97
116
|
}
|
|
98
|
-
const
|
|
117
|
+
const runner = new Runner(def.model ? { model: def.model } : {});
|
|
118
|
+
const sentinel = new Sentinel(def.sentinel ? { model: def.sentinel } : {});
|
|
99
119
|
const store = new PatchStore(root);
|
|
100
|
-
//
|
|
120
|
+
// Gather route files to run the task against.
|
|
101
121
|
const routesDir = join(root, "routes");
|
|
102
122
|
let routeFiles = [];
|
|
103
123
|
try {
|
|
104
|
-
const entries = await readdir(routesDir, { recursive: true });
|
|
124
|
+
const entries = (await readdir(routesDir, { recursive: true }));
|
|
105
125
|
routeFiles = entries
|
|
106
126
|
.filter((f) => f.endsWith(".page.tsx") || f.endsWith(".page.jsx"))
|
|
107
127
|
.map((f) => join(routesDir, f));
|
|
@@ -110,52 +130,113 @@ export async function agentRunCommand(name) {
|
|
|
110
130
|
fail("No routes/ directory found.");
|
|
111
131
|
process.exit(1);
|
|
112
132
|
}
|
|
133
|
+
if (routeFiles.length === 0) {
|
|
134
|
+
info("No route files found under routes/.");
|
|
135
|
+
blank();
|
|
136
|
+
return;
|
|
137
|
+
}
|
|
113
138
|
const contractSummary = `App: ${contract.name}\nGoals: ${contract.goals.join("; ")}`;
|
|
114
|
-
let
|
|
139
|
+
let proposed = 0;
|
|
140
|
+
let applied = 0;
|
|
141
|
+
let reviewed = 0;
|
|
142
|
+
let findings = 0;
|
|
143
|
+
let firstError = null;
|
|
115
144
|
for (const filePath of routeFiles) {
|
|
116
145
|
const content = await readFile(filePath, "utf-8");
|
|
117
146
|
const rel = filePath.replace(root + "/", "");
|
|
118
147
|
const spinner = ora(` Processing ${rel}…`).start();
|
|
119
148
|
try {
|
|
120
|
-
|
|
149
|
+
// ── Read-only agent: analyze and report, never write. ───────────────────
|
|
150
|
+
if (!canPatch) {
|
|
151
|
+
const raw = await runner.analyzeFile({
|
|
152
|
+
filePath: rel,
|
|
153
|
+
content,
|
|
154
|
+
checks: [task],
|
|
155
|
+
contract: contractSummary,
|
|
156
|
+
});
|
|
157
|
+
spinner.stop();
|
|
158
|
+
reviewed++;
|
|
159
|
+
const notable = parseFindings(raw).filter((f) => f.status !== "pass");
|
|
160
|
+
if (notable.length === 0) {
|
|
161
|
+
step(`${rel} ${pc.dim("·")} ${pc.green("ok")}`);
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
for (const f of notable) {
|
|
165
|
+
findings++;
|
|
166
|
+
const tag = f.status === "fail" ? pc.red("fail") : pc.yellow("warn");
|
|
167
|
+
step(`${rel} ${pc.dim("·")} ${tag} ${f.message ?? "issue found"}`);
|
|
168
|
+
if (f.suggestion)
|
|
169
|
+
console.log(pc.dim(` → ${f.suggestion}`));
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
continue;
|
|
173
|
+
}
|
|
174
|
+
// ── Patch-capable agent: generate, review, save / apply. ─────────────────
|
|
175
|
+
const next = await runner.generatePatch({
|
|
121
176
|
filePath: rel,
|
|
122
177
|
originalContent: content,
|
|
123
178
|
finding: task,
|
|
124
179
|
contract: contractSummary,
|
|
125
180
|
});
|
|
126
181
|
spinner.stop();
|
|
182
|
+
if (next.trim() === content.trim())
|
|
183
|
+
continue; // no meaningful change
|
|
127
184
|
const review = await sentinel.review({
|
|
128
185
|
contract,
|
|
129
186
|
filePath: rel,
|
|
130
187
|
original: content,
|
|
131
|
-
proposed,
|
|
188
|
+
proposed: next,
|
|
132
189
|
agentTask: task,
|
|
133
190
|
});
|
|
134
191
|
const patch = createPatch({
|
|
135
|
-
agent: name,
|
|
192
|
+
agent: def.name,
|
|
136
193
|
file: rel,
|
|
137
194
|
original: content,
|
|
138
|
-
proposed,
|
|
195
|
+
proposed: next,
|
|
139
196
|
reason: task,
|
|
140
|
-
requiresApproval
|
|
197
|
+
requiresApproval,
|
|
141
198
|
sentinelApproved: review.approved,
|
|
142
199
|
sentinelSummary: review.summary,
|
|
143
200
|
sentinelViolations: review.violations,
|
|
144
201
|
});
|
|
145
202
|
await store.save(patch);
|
|
146
|
-
|
|
147
|
-
|
|
203
|
+
proposed++;
|
|
204
|
+
// Auto-apply only when the agent permits it and the review is clean.
|
|
205
|
+
if (!requiresApproval && review.approved) {
|
|
206
|
+
await store.update(patch.id, { status: "approved" });
|
|
207
|
+
await applyPatch({ ...patch, status: "approved" }, root, store);
|
|
208
|
+
applied++;
|
|
209
|
+
step(`${rel} ${pc.dim("·")} ${pc.green("applied")} ${review.summary}`);
|
|
210
|
+
}
|
|
211
|
+
else {
|
|
212
|
+
step(`${rel} ${pc.dim("·")} ${pc.cyan("patch saved")} run portal patch to review`);
|
|
213
|
+
}
|
|
148
214
|
}
|
|
149
|
-
catch {
|
|
215
|
+
catch (err) {
|
|
150
216
|
spinner.stop();
|
|
217
|
+
if (!firstError)
|
|
218
|
+
firstError = err instanceof Error ? err.message : String(err);
|
|
151
219
|
}
|
|
152
220
|
}
|
|
153
221
|
blank();
|
|
154
|
-
if (
|
|
155
|
-
|
|
222
|
+
if (firstError)
|
|
223
|
+
fail(`Some files could not be processed: ${firstError}`);
|
|
224
|
+
if (!canPatch) {
|
|
225
|
+
if (findings > 0) {
|
|
226
|
+
info(`Read-only run complete — ${reviewed} file${reviewed !== 1 ? "s" : ""} reviewed, ${findings} finding${findings !== 1 ? "s" : ""} reported.`);
|
|
227
|
+
}
|
|
228
|
+
else {
|
|
229
|
+
success(`Read-only run complete — ${reviewed} file${reviewed !== 1 ? "s" : ""} reviewed, no issues found.`);
|
|
230
|
+
}
|
|
231
|
+
}
|
|
232
|
+
else if (proposed === 0) {
|
|
233
|
+
info("No changes proposed.");
|
|
234
|
+
}
|
|
235
|
+
else if (applied > 0) {
|
|
236
|
+
success(`${applied} applied, ${proposed - applied} pending — run portal patch to review the rest.`);
|
|
156
237
|
}
|
|
157
238
|
else {
|
|
158
|
-
|
|
239
|
+
success(`${proposed} patch${proposed !== 1 ? "es" : ""} queued — run portal patch to review and apply.`);
|
|
159
240
|
}
|
|
160
241
|
blank();
|
|
161
242
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-cmd.js","sourceRoot":"","sources":["../../src/commands/agent-cmd.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"agent-cmd.js","sourceRoot":"","sources":["../../src/commands/agent-cmd.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;
|
|
1
|
+
{"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AA0UH,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAsB,YAAY,CAAC,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwRzE"}
|
package/dist/commands/serve.js
CHANGED
|
@@ -198,13 +198,15 @@ function extractEarlyHints(html) {
|
|
|
198
198
|
(h.as === "font" ? "; crossorigin" : ""));
|
|
199
199
|
}
|
|
200
200
|
// ── Security headers ──────────────────────────────────────────────────────────
|
|
201
|
-
// Default CSP. Google Fonts
|
|
202
|
-
//
|
|
201
|
+
// Default CSP. Google Fonts + Cloudflare's analytics beacon are allowed out of
|
|
202
|
+
// the box: every Portal template ships with Google Fonts, and the most common
|
|
203
|
+
// deploy path is behind Cloudflare (which auto-injects beacon.min.js). A default
|
|
204
|
+
// that blocks our own fonts or the standard CDN's analytics is a footgun.
|
|
203
205
|
// Represented as directive → sources so `--csp-add` can merge into it.
|
|
204
206
|
function defaultCspDirectives() {
|
|
205
207
|
return new Map([
|
|
206
208
|
["default-src", ["'self'"]],
|
|
207
|
-
["script-src", ["'self'"]],
|
|
209
|
+
["script-src", ["'self'", "https://static.cloudflareinsights.com"]],
|
|
208
210
|
["style-src", ["'self'", "'unsafe-inline'", "https://fonts.googleapis.com"]],
|
|
209
211
|
["img-src", ["'self'", "data:", "blob:", "https:"]],
|
|
210
212
|
["font-src", ["'self'", "https://fonts.gstatic.com", "data:"]],
|
|
@@ -345,11 +347,18 @@ export async function serveCommand(opts = {}) {
|
|
|
345
347
|
const earlyHintLinks = useHints && indexAsset
|
|
346
348
|
? extractEarlyHints(indexAsset.raw.toString("utf-8"))
|
|
347
349
|
: [];
|
|
350
|
+
// Allow CSP tweaks via env — handy for VPS / process-manager deploys that
|
|
351
|
+
// can't easily change the launch command. PORTAL_CSP_ADD is comma/newline-
|
|
352
|
+
// separated fragments; PORTAL_CSP_POLICY replaces the whole policy.
|
|
353
|
+
const envCspAdd = (process.env["PORTAL_CSP_ADD"] ?? "")
|
|
354
|
+
.split(/[\n,]/)
|
|
355
|
+
.map((s) => s.trim())
|
|
356
|
+
.filter(Boolean);
|
|
348
357
|
const secHeaders = securityHeaders({
|
|
349
358
|
csp: useCsp,
|
|
350
359
|
hsts: useHsts,
|
|
351
|
-
cspPolicy: opts.cspPolicy,
|
|
352
|
-
cspAdd: opts.cspAdd,
|
|
360
|
+
cspPolicy: opts.cspPolicy ?? process.env["PORTAL_CSP_POLICY"],
|
|
361
|
+
cspAdd: [...(opts.cspAdd ?? []), ...envCspAdd],
|
|
353
362
|
});
|
|
354
363
|
// ── Compression report ──────────────────────────────────────────────────────
|
|
355
364
|
const brSaved = report.rawBytes - report.brBytes;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"serve.js","sourceRoot":"","sources":["../../src/commands/serve.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Load agent definitions from a Portal project's agents/ directory.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the contract loader's philosophy (see utils/contract.ts): we extract
|
|
5
|
+
* the `defineAgent({ ... })` object literal and evaluate just that object rather
|
|
6
|
+
* than executing the whole module. AgentDefinition is a flat object, so this is
|
|
7
|
+
* safe and predictable.
|
|
8
|
+
*/
|
|
9
|
+
import type { AgentDefinition } from "@interchained/portal-contract";
|
|
10
|
+
export declare function agentsDirExists(agentsDir: string): Promise<boolean>;
|
|
11
|
+
/** List the *.agent.ts / *.agent.js files in agents/. */
|
|
12
|
+
export declare function findAgentFiles(agentsDir: string): Promise<string[]>;
|
|
13
|
+
/**
|
|
14
|
+
* Resolve a user-supplied name to an agent file.
|
|
15
|
+
* Prefers an exact `<name>.agent.{ts,js}` match, then a substring match.
|
|
16
|
+
*/
|
|
17
|
+
export declare function matchAgentFile(files: string[], name: string): string | null;
|
|
18
|
+
/** Load and parse a single agent definition file. */
|
|
19
|
+
export declare function loadAgent(filePath: string): Promise<AgentDefinition>;
|
|
20
|
+
//# sourceMappingURL=agents.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/utils/agents.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAErE,wBAAsB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAEzE;AAED,yDAAyD;AACzD,wBAAsB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CASzE;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAM3E;AAED,qDAAqD;AACrD,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CA2B1E"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Load agent definitions from a Portal project's agents/ directory.
|
|
3
|
+
*
|
|
4
|
+
* Mirrors the contract loader's philosophy (see utils/contract.ts): we extract
|
|
5
|
+
* the `defineAgent({ ... })` object literal and evaluate just that object rather
|
|
6
|
+
* than executing the whole module. AgentDefinition is a flat object, so this is
|
|
7
|
+
* safe and predictable.
|
|
8
|
+
*/
|
|
9
|
+
import { readFile, readdir, access } from "node:fs/promises";
|
|
10
|
+
import { basename, extname } from "node:path";
|
|
11
|
+
export async function agentsDirExists(agentsDir) {
|
|
12
|
+
try {
|
|
13
|
+
await access(agentsDir);
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
/** List the *.agent.ts / *.agent.js files in agents/. */
|
|
21
|
+
export async function findAgentFiles(agentsDir) {
|
|
22
|
+
try {
|
|
23
|
+
const entries = await readdir(agentsDir);
|
|
24
|
+
return entries
|
|
25
|
+
.filter((f) => f.endsWith(".agent.ts") || f.endsWith(".agent.js"))
|
|
26
|
+
.sort();
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
return [];
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Resolve a user-supplied name to an agent file.
|
|
34
|
+
* Prefers an exact `<name>.agent.{ts,js}` match, then a substring match.
|
|
35
|
+
*/
|
|
36
|
+
export function matchAgentFile(files, name) {
|
|
37
|
+
return (files.find((f) => f === `${name}.agent.ts` || f === `${name}.agent.js`) ??
|
|
38
|
+
files.find((f) => f.includes(name)) ??
|
|
39
|
+
null);
|
|
40
|
+
}
|
|
41
|
+
/** Load and parse a single agent definition file. */
|
|
42
|
+
export async function loadAgent(filePath) {
|
|
43
|
+
const fallbackName = basename(filePath, extname(filePath)).replace(/\.agent$/, "");
|
|
44
|
+
let src;
|
|
45
|
+
try {
|
|
46
|
+
src = await readFile(filePath, "utf-8");
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
return { name: fallbackName, task: "" };
|
|
50
|
+
}
|
|
51
|
+
// Extraction patterns, most specific first.
|
|
52
|
+
const objSrc = src.match(/defineAgent\s*\(\s*(\{[\s\S]*?\})\s*\)/)?.[1] ??
|
|
53
|
+
src.match(/export\s+default\s+(\{[\s\S]*\})\s*;?\s*$/)?.[1] ??
|
|
54
|
+
src.match(/const\s+\w+\s*(?::\s*AgentDefinition)?\s*=\s*(\{[\s\S]*?\})\s*;?\s*$/m)?.[1];
|
|
55
|
+
if (!objSrc)
|
|
56
|
+
return { name: fallbackName, task: "" };
|
|
57
|
+
try {
|
|
58
|
+
const def = evalAgentObject(objSrc);
|
|
59
|
+
return {
|
|
60
|
+
...def,
|
|
61
|
+
name: typeof def.name === "string" && def.name.trim() ? def.name : fallbackName,
|
|
62
|
+
task: typeof def.task === "string" ? def.task : "",
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
return { name: fallbackName, task: "" };
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
function evalAgentObject(src) {
|
|
70
|
+
const cleaned = src
|
|
71
|
+
.replace(/\s+as\s+\w[\w.]*(\[\])?/g, "")
|
|
72
|
+
.replace(/\s+satisfies\s+\w[\w.]*/g, "");
|
|
73
|
+
const fn = new Function(`return (${cleaned})`);
|
|
74
|
+
const raw = fn();
|
|
75
|
+
if (typeof raw !== "object" || raw === null) {
|
|
76
|
+
throw new Error("agent file must export a defineAgent({ ... }) object");
|
|
77
|
+
}
|
|
78
|
+
return raw;
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=agents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/utils/agents.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED