Skip to content

Commit 71f4c6b

Browse files
Ross StoryCopilot
andcommitted
Add Copilot to first-run onboarding
Includes GitHub Copilot CLI in the first-run agent picker and adds a regression test so the Copilot setup path remains discoverable. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 46b0e86 commit 71f4c6b

2 files changed

Lines changed: 21 additions & 2 deletions

File tree

src/cli/onboarding.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ const __dirname = dirname(fileURLToPath(import.meta.url));
3636
// where they overlap; the rest fall back to the generic `◇`.
3737
const NATIVE_AGENTS: { value: string; label: string; glyph: string }[] = [
3838
{ value: "claude-code", label: "Claude Code", glyph: "⟁" },
39+
{ value: "copilot-cli", label: "GitHub Copilot CLI", glyph: "◈" },
3940
{ value: "codex", label: "Codex", glyph: "◎" },
4041
{ value: "openhuman", label: "OpenHuman", glyph: "◇" },
4142
{ value: "openclaw", label: "OpenClaw", glyph: "◇" },
@@ -67,7 +68,7 @@ const PROVIDERS: { value: string; label: string; envKey: string | null }[] = [
6768
{ value: "skip", label: "Skip — BM25-only mode (no LLM key)", envKey: null },
6869
];
6970

70-
function buildAgentOptions(): { value: string; label: string; hint?: string }[] {
71+
export function buildAgentOptions(): { value: string; label: string; hint?: string }[] {
7172
return [
7273
...NATIVE_AGENTS.map((a) => ({
7374
value: a.value,
@@ -166,7 +167,7 @@ export async function runOnboarding(): Promise<OnboardingResult> {
166167
[
167168
"━ how this works ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",
168169
"All selected agents share the same memory at :3111.",
169-
"A memory saved by Claude Code is visible to Codex + Cursor instantly.",
170+
"A memory saved by Claude Code is visible to Copilot + Codex + Cursor instantly.",
170171
"━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━",
171172
].join("\n"),
172173
);

test/onboarding.test.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import { describe, expect, it } from "vitest";
2+
3+
import { buildAgentOptions } from "../src/cli/onboarding.js";
4+
5+
describe("first-run onboarding", () => {
6+
it("offers GitHub Copilot CLI as a native setup target", () => {
7+
const options = buildAgentOptions();
8+
expect(options).toEqual(
9+
expect.arrayContaining([
10+
expect.objectContaining({
11+
value: "copilot-cli",
12+
label: expect.stringContaining("GitHub Copilot CLI"),
13+
hint: "native plugin",
14+
}),
15+
]),
16+
);
17+
});
18+
});

0 commit comments

Comments
 (0)