Files
pikasTech-HWLAB/cmd/hwlab-agent-mgr/main.mjs
T
2026-05-21 14:57:00 +00:00

59 lines
1.8 KiB
JavaScript

#!/usr/bin/env node
import { createAgentRunPlan, createSkillsManifest, finalizeAgentRun } from "../../internal/agent/index.mjs";
function parseArgs(argv) {
const args = {
agentSessionId: "agt_local",
projectId: "prj_local",
goal: "dry-run agent runtime skeleton",
prompt: "dry-run",
skillCommitId: ""
};
for (let i = 0; i < argv.length; i += 1) {
const arg = argv[i];
if (arg === "--agent-session-id") args.agentSessionId = argv[++i] || args.agentSessionId;
else if (arg === "--project-id") args.projectId = argv[++i] || args.projectId;
else if (arg === "--goal") args.goal = argv[++i] || args.goal;
else if (arg === "--prompt") args.prompt = argv[++i] || args.prompt;
else if (arg === "--skill-commit-id") args.skillCommitId = argv[++i] || args.skillCommitId;
else if (arg === "--help" || arg === "-h") args.help = true;
}
return args;
}
function printHelp() {
console.log("usage: node cmd/hwlab-agent-mgr/main.mjs [--agent-session-id ID] [--project-id ID] [--goal TEXT] [--prompt TEXT] [--skill-commit-id COMMIT]");
}
const args = parseArgs(process.argv.slice(2));
if (args.help) {
printHelp();
process.exit(0);
}
const plan = createAgentRunPlan({
agentSessionId: args.agentSessionId,
projectId: args.projectId,
goal: args.goal,
prompt: args.prompt,
skillCommitId: args.skillCommitId || null
});
const finished = finalizeAgentRun(plan);
const result = {
serviceId: "hwlab-agent-mgr",
dryRun: true,
agentSession: finished.agentSession,
workerSession: finished.workerSession,
workspaceVolume: finished.workspaceVolume,
traceEvent: finished.traceEvent,
evidenceRecord: finished.evidenceRecord,
cleanup: finished.cleanup,
skillsManifest: args.skillCommitId ? createSkillsManifest({ commitId: args.skillCommitId }) : null
};
console.log(JSON.stringify(result, null, 2));