SPB Git

Repository Public

director-start.ts 990 B 17 lines typescript

1import "./_env";2import { sql } from "../src/lib/db";3import { startDirector } from "../src/lib/studio-ops";4import type { User } from "../src/lib/auth";56/** Operator CLI: start a Claude Code director run without the browser. `tsx scripts/director-start.ts --idea "…" [--lang fr] [--shots 5] [--budget 15]` */7const arg = (n: string) => { const i = process.argv.indexOf(`--${n}`); return i < 0 ? undefined : process.argv[i + 1]; };8async function main() {9  const [owner] = await sql<User[]>`SELECT id, email, name, role, must_change_password, totp_enabled FROM users WHERE role = 'owner' LIMIT 1`;10  if (!owner) throw new Error("No owner account");11  const r = await startDirector(owner, { idea: arg("idea") ?? "", language: arg("lang") ?? "en", shots: Number(arg("shots") ?? 5), budget: Number(arg("budget") ?? 15) });12  console.log(JSON.stringify(r));13  await sql.end();14  process.exit(0);15}16main().catch(async (e) => { console.error(e.message); await sql.end(); process.exit(1); });17
Files main
Menu

Theme