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

59 lines
1.8 KiB
JavaScript

#!/usr/bin/env node
import { createAgentRunPlan, finalizeAgentRun } from "../../internal/agent/index.mjs";
function parseArgs(argv) {
const args = {
agentSessionId: process.env.HWLAB_AGENT_SESSION_ID || "agt_local",
projectId: process.env.HWLAB_PROJECT_ID || "prj_local",
prompt: "worker dry-run",
goal: "agent worker session skeleton",
skillCommitId: process.env.HWLAB_SKILL_COMMIT_ID || ""
};
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 === "--prompt") args.prompt = argv[++i] || args.prompt;
else if (arg === "--goal") args.goal = argv[++i] || args.goal;
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-worker/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 = finalizeAgentRun(
createAgentRunPlan({
agentSessionId: args.agentSessionId,
projectId: args.projectId,
goal: args.goal,
prompt: args.prompt,
skillCommitId: args.skillCommitId || null
})
);
const result = {
serviceId: "hwlab-agent-worker",
dryRun: true,
agentSession: plan.agentSession,
workerSession: plan.workerSession,
workspaceVolume: plan.workspaceVolume,
traceEvent: plan.traceEvent,
evidenceRecord: plan.evidenceRecord,
cleanup: plan.cleanup
};
console.log(JSON.stringify(result, null, 2));