sandbox-agent/foundry/packages/backend/src/driver.ts
Nathan Flurry 0fbea6ce61 wip
2026-03-14 20:36:50 -07:00

33 lines
790 B
TypeScript

import { createPr, starRepository } from "./integrations/github/index.js";
export interface GithubDriver {
createPr(
repoFullName: string,
headBranch: string,
title: string,
body?: string,
options?: { githubToken?: string | null; baseBranch?: string | null },
): Promise<{ number: number; url: string }>;
starRepository(repoFullName: string, options?: { githubToken?: string | null }): Promise<void>;
}
export interface TmuxDriver {
setWindowStatus(branchName: string, status: string): number;
}
export interface BackendDriver {
github: GithubDriver;
tmux: TmuxDriver;
}
export function createDefaultDriver(): BackendDriver {
return {
github: {
createPr,
starRepository,
},
tmux: {
setWindowStatus: () => 0,
},
};
}