Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 52 additions & 28 deletions packages/cli/src/__tests__/agent-setup-cov.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -148,12 +148,6 @@ describe("createCloudAgents", () => {
expect(runner.uploadFile).toHaveBeenCalled();
});

it("openclaw agent envVars include OPENROUTER_API_KEY", () => {
const envVars = result.agents.openclaw.envVars("sk-or-v1-test");
expect(envVars.some((v: string) => v.includes("OPENROUTER_API_KEY"))).toBe(true);
expect(envVars.some((v: string) => v.includes("ANTHROPIC_BASE_URL"))).toBe(true);
});

it("openclaw agent has tunnel config", () => {
const openclaw = result.agents.openclaw;
expect(openclaw.tunnel).toBeDefined();
Expand All @@ -162,22 +156,6 @@ describe("createCloudAgents", () => {
expect(url).toContain("localhost:8080");
});

it("zeroclaw agent envVars include ZEROCLAW_PROVIDER", () => {
const envVars = result.agents.zeroclaw.envVars("sk-or-v1-test");
expect(envVars.some((v: string) => v.includes("ZEROCLAW_PROVIDER=openrouter"))).toBe(true);
});

it("zeroclaw agent configure calls runServer", async () => {
await result.agents.zeroclaw.configure?.("sk-or-v1-test", undefined, new Set());
expect(runner.runServer).toHaveBeenCalled();
});

it("hermes agent envVars include OPENAI_BASE_URL", () => {
const envVars = result.agents.hermes.envVars("sk-or-v1-test");
expect(envVars.some((v: string) => v.includes("OPENAI_BASE_URL"))).toBe(true);
expect(envVars.some((v: string) => v.includes("HERMES_YOLO_MODE"))).toBe(true);
});

it("hermes agent configure removes YOLO mode when not enabled", async () => {
// Pass empty set (yolo-mode not in enabled steps)
await result.agents.hermes.configure?.("sk-test", undefined, new Set());
Expand All @@ -199,14 +177,60 @@ describe("createCloudAgents", () => {
expect(runner.runServer).not.toHaveBeenCalled();
});

it("kilocode agent envVars include KILO_PROVIDER_TYPE", () => {
const envVars = result.agents.kilocode.envVars("sk-or-v1-test");
expect(envVars.some((v: string) => v.includes("KILO_PROVIDER_TYPE=openrouter"))).toBe(true);
it("agent envVars include provider-specific env vars", () => {
const cases: Array<
[
string,
string[],
]
> = [
[
"openclaw",
[
"OPENROUTER_API_KEY",
"ANTHROPIC_BASE_URL",
],
],
[
"zeroclaw",
[
"ZEROCLAW_PROVIDER=openrouter",
],
],
[
"hermes",
[
"OPENAI_BASE_URL",
"HERMES_YOLO_MODE",
],
],
[
"kilocode",
[
"KILO_PROVIDER_TYPE=openrouter",
],
],
[
"opencode",
[
"OPENROUTER_API_KEY",
],
],
];
for (const [agent, expectedVars] of cases) {
const envVars = result.agents[agent].envVars("sk-or-v1-test");
for (const expected of expectedVars) {
expect(
envVars.some((v: string) => v.includes(expected)),
`${agent} envVars should include ${expected}`,
).toBe(true);
}
}
});

it("opencode agent envVars include OPENROUTER_API_KEY", () => {
const envVars = result.agents.opencode.envVars("sk-or-v1-test");
expect(envVars.some((v: string) => v.includes("OPENROUTER_API_KEY"))).toBe(true);
it("zeroclaw agent configure calls runServer", async () => {
await result.agents.zeroclaw.configure?.("sk-or-v1-test", undefined, new Set());
expect(runner.runServer).toHaveBeenCalled();
});

it("all agents have launchCmd returning non-empty string", () => {
Expand Down
Loading