whitesmith 0.0.1 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (64) hide show
  1. package/dist/auto-work.d.ts +11 -0
  2. package/dist/auto-work.d.ts.map +1 -0
  3. package/dist/auto-work.js +22 -0
  4. package/dist/auto-work.js.map +1 -0
  5. package/dist/cli.d.ts.map +1 -1
  6. package/dist/cli.js +99 -0
  7. package/dist/cli.js.map +1 -1
  8. package/dist/comment.d.ts +29 -0
  9. package/dist/comment.d.ts.map +1 -0
  10. package/dist/comment.js +390 -0
  11. package/dist/comment.js.map +1 -0
  12. package/dist/git.d.ts +12 -0
  13. package/dist/git.d.ts.map +1 -1
  14. package/dist/git.js +57 -14
  15. package/dist/git.js.map +1 -1
  16. package/dist/harnesses/pi.d.ts +2 -0
  17. package/dist/harnesses/pi.d.ts.map +1 -1
  18. package/dist/harnesses/pi.js +92 -6
  19. package/dist/harnesses/pi.js.map +1 -1
  20. package/dist/install-ci.d.ts +7 -0
  21. package/dist/install-ci.d.ts.map +1 -0
  22. package/dist/install-ci.js +760 -0
  23. package/dist/install-ci.js.map +1 -0
  24. package/dist/orchestrator.d.ts +24 -4
  25. package/dist/orchestrator.d.ts.map +1 -1
  26. package/dist/orchestrator.js +252 -67
  27. package/dist/orchestrator.js.map +1 -1
  28. package/dist/prompts.d.ts.map +1 -1
  29. package/dist/prompts.js +1 -0
  30. package/dist/prompts.js.map +1 -1
  31. package/dist/providers/github-ci.d.ts +16 -0
  32. package/dist/providers/github-ci.d.ts.map +1 -0
  33. package/dist/providers/github-ci.js +733 -0
  34. package/dist/providers/github-ci.js.map +1 -0
  35. package/dist/providers/github.d.ts +21 -0
  36. package/dist/providers/github.d.ts.map +1 -1
  37. package/dist/providers/github.js +88 -3
  38. package/dist/providers/github.js.map +1 -1
  39. package/dist/providers/index.d.ts +1 -0
  40. package/dist/providers/index.d.ts.map +1 -1
  41. package/dist/providers/issue-provider.d.ts +26 -0
  42. package/dist/providers/issue-provider.d.ts.map +1 -1
  43. package/dist/task-manager.d.ts +4 -0
  44. package/dist/task-manager.d.ts.map +1 -1
  45. package/dist/task-manager.js +6 -0
  46. package/dist/task-manager.js.map +1 -1
  47. package/dist/types.d.ts +9 -0
  48. package/dist/types.d.ts.map +1 -1
  49. package/dist/types.js +2 -0
  50. package/dist/types.js.map +1 -1
  51. package/package.json +2 -1
  52. package/src/auto-work.ts +26 -0
  53. package/src/cli.ts +114 -0
  54. package/src/comment.ts +531 -0
  55. package/src/git.ts +58 -12
  56. package/src/harnesses/pi.ts +108 -6
  57. package/src/orchestrator.ts +287 -76
  58. package/src/prompts.ts +1 -0
  59. package/src/providers/github-ci.ts +840 -0
  60. package/src/providers/github.ts +118 -5
  61. package/src/providers/index.ts +1 -0
  62. package/src/providers/issue-provider.ts +25 -1
  63. package/src/task-manager.ts +7 -0
  64. package/src/types.ts +7 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github-ci.js","sourceRoot":"","sources":["../../src/providers/github-ci.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { IssueProvider } from './issue-provider.js';
2
2
  import type { Issue } from '../types.js';
3
+ import { type InstallCIOptions } from './github-ci.js';
3
4
  /**
4
5
  * GitHub Issues provider using the `gh` CLI.
5
6
  */
@@ -28,7 +29,27 @@ export declare class GitHubProvider implements IssueProvider {
28
29
  getPRForBranch(branch: string): Promise<{
29
30
  state: 'open' | 'merged' | 'closed';
30
31
  url: string;
32
+ number: number;
33
+ } | null>;
34
+ mergePR(number: number): Promise<void>;
35
+ listPRsByBranchPrefix(prefix: string): Promise<Array<{
36
+ branch: string;
37
+ number: number;
38
+ title: string;
39
+ state: string;
40
+ url: string;
41
+ }>>;
42
+ getPR(number: number): Promise<{
43
+ branch: string;
44
+ number: number;
45
+ title: string;
46
+ state: string;
47
+ url: string;
48
+ body: string;
31
49
  } | null>;
32
50
  ensureLabels(labels: string[]): Promise<void>;
51
+ installCI(options: InstallCIOptions): Promise<void>;
52
+ private detectRepo;
53
+ private ghIsAvailable;
33
54
  }
34
55
  //# sourceMappingURL=github.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/providers/github.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,aAAa,CAAC;AAIvC;;GAEG;AACH,qBAAa,cAAe,YAAW,aAAa;IACnD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,IAAI,CAAC,CAAS;gBAEV,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAK1C,OAAO,CAAC,QAAQ;YAIF,EAAE;IAiBV,UAAU,CAAC,OAAO,CAAC,EAAE;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAkChF,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAkBxC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzD,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAapD,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,QAAQ,CAAC,OAAO,EAAE;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACb,GAAG,OAAO,CAAC,MAAM,CAAC;IAab,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWpD,cAAc,CACnB,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI,CAAC;IAgB/D,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAWnD"}
1
+ {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/providers/github.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,aAAa,CAAC;AACvC,OAAO,EAAkB,KAAK,gBAAgB,EAAgB,MAAM,gBAAgB,CAAC;AAIrF;;GAEG;AACH,qBAAa,cAAe,YAAW,aAAa;IACnD,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,IAAI,CAAC,CAAS;gBAEV,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM;IAK1C,OAAO,CAAC,QAAQ;YAIF,EAAE;IAiBV,UAAU,CAAC,OAAO,CAAC,EAAE;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAkChF,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAkBxC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQzD,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAapD,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzC,QAAQ,CAAC,OAAO,EAAE;QACvB,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;KACb,GAAG,OAAO,CAAC,MAAM,CAAC;IAab,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWpD,cAAc,CACnB,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI,CAAC;IAgB/E,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,qBAAqB,CAC1B,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC;IA2BxF,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QACpC,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;KACb,GAAG,IAAI,CAAC;IAyBH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAc7C,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBzD,OAAO,CAAC,UAAU;IAclB,OAAO,CAAC,aAAa;CAQrB"}
@@ -1,5 +1,6 @@
1
- import { exec } from 'node:child_process';
1
+ import { exec, execSync } from 'node:child_process';
2
2
  import { promisify } from 'node:util';
3
+ import { installGitHubCI } from './github-ci.js';
3
4
  const execAsync = promisify(exec);
4
5
  /**
5
6
  * GitHub Issues provider using the `gh` CLI.
@@ -107,7 +108,7 @@ export class GitHubProvider {
107
108
  }
108
109
  async getPRForBranch(branch) {
109
110
  try {
110
- const raw = await this.gh(`pr list --head "${branch}" --state all --json state,url --limit 1`);
111
+ const raw = await this.gh(`pr list --head "${branch}" --state all --json state,url,number --limit 1`);
111
112
  if (!raw || raw === '[]')
112
113
  return null;
113
114
  const prs = JSON.parse(raw);
@@ -115,7 +116,49 @@ export class GitHubProvider {
115
116
  return null;
116
117
  const pr = prs[0];
117
118
  const state = pr.state.toLowerCase();
118
- return { state, url: pr.url };
119
+ return { state, url: pr.url, number: pr.number };
120
+ }
121
+ catch {
122
+ return null;
123
+ }
124
+ }
125
+ async mergePR(number) {
126
+ await this.gh(`pr merge ${number} --merge --delete-branch`);
127
+ }
128
+ async listPRsByBranchPrefix(prefix) {
129
+ try {
130
+ const raw = await this.gh(`pr list --state all --json headRefName,number,title,state,url --limit 100`);
131
+ if (!raw || raw === '[]')
132
+ return [];
133
+ const prs = JSON.parse(raw);
134
+ return prs
135
+ .filter((pr) => pr.headRefName.startsWith(prefix))
136
+ .map((pr) => ({
137
+ branch: pr.headRefName,
138
+ number: pr.number,
139
+ title: pr.title,
140
+ state: pr.state.toLowerCase(),
141
+ url: pr.url,
142
+ }));
143
+ }
144
+ catch {
145
+ return [];
146
+ }
147
+ }
148
+ async getPR(number) {
149
+ try {
150
+ const raw = await this.gh(`pr view ${number} --json headRefName,number,title,state,url,body`);
151
+ if (!raw)
152
+ return null;
153
+ const pr = JSON.parse(raw);
154
+ return {
155
+ branch: pr.headRefName,
156
+ number: pr.number,
157
+ title: pr.title,
158
+ state: pr.state.toLowerCase(),
159
+ url: pr.url,
160
+ body: pr.body || '',
161
+ };
119
162
  }
120
163
  catch {
121
164
  return null;
@@ -131,5 +174,47 @@ export class GitHubProvider {
131
174
  }
132
175
  }
133
176
  }
177
+ // ─── CI Installation ────────────────────────────────────────────────
178
+ async installCI(options) {
179
+ const repo = this.repo || this.detectRepo();
180
+ const ghAvailable = this.ghIsAvailable();
181
+ await installGitHubCI({
182
+ workDir: this.workDir,
183
+ repo,
184
+ ghAvailable,
185
+ setSecret: async (name, value) => {
186
+ const targetRepo = this.repo || repo;
187
+ if (!targetRepo)
188
+ throw new Error('No repo configured');
189
+ execSync(`gh secret set ${name} --repo "${targetRepo}"`, {
190
+ input: value,
191
+ stdio: ['pipe', 'pipe', 'pipe'],
192
+ });
193
+ },
194
+ }, options);
195
+ }
196
+ detectRepo() {
197
+ try {
198
+ const url = execSync('gh repo view --json nameWithOwner -q .nameWithOwner', {
199
+ cwd: this.workDir,
200
+ stdio: ['pipe', 'pipe', 'pipe'],
201
+ })
202
+ .toString()
203
+ .trim();
204
+ return url || undefined;
205
+ }
206
+ catch {
207
+ return undefined;
208
+ }
209
+ }
210
+ ghIsAvailable() {
211
+ try {
212
+ execSync('gh auth status', { stdio: ['pipe', 'pipe', 'pipe'] });
213
+ return true;
214
+ }
215
+ catch {
216
+ return false;
217
+ }
218
+ }
134
219
  }
135
220
  //# sourceMappingURL=github.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/providers/github.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github.js","sourceRoot":"","sources":["../../src/providers/github.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export type { IssueProvider } from './issue-provider.js';
2
2
  export { GitHubProvider } from './github.js';
3
+ export type { AuthMode, InstallCIOptions } from './github-ci.js';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAC,aAAa,EAAC,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC;AAC3C,YAAY,EAAC,QAAQ,EAAE,gBAAgB,EAAC,MAAM,gBAAgB,CAAC"}
@@ -50,10 +50,36 @@ export interface IssueProvider {
50
50
  getPRForBranch(branch: string): Promise<{
51
51
  state: 'open' | 'merged' | 'closed';
52
52
  url: string;
53
+ number: number;
53
54
  } | null>;
55
+ /**
56
+ * Merge a pull request by number
57
+ */
58
+ mergePR(number: number): Promise<void>;
54
59
  /**
55
60
  * Ensure required labels exist in the repo (create if missing)
56
61
  */
57
62
  ensureLabels(labels: string[]): Promise<void>;
63
+ /**
64
+ * List PRs whose head branch matches a prefix
65
+ */
66
+ listPRsByBranchPrefix(prefix: string): Promise<Array<{
67
+ branch: string;
68
+ number: number;
69
+ title: string;
70
+ state: string;
71
+ url: string;
72
+ }>>;
73
+ /**
74
+ * Get PR details by number (branch, state, body, etc.)
75
+ */
76
+ getPR(number: number): Promise<{
77
+ branch: string;
78
+ number: number;
79
+ title: string;
80
+ state: string;
81
+ url: string;
82
+ body: string;
83
+ } | null>;
58
84
  }
59
85
  //# sourceMappingURL=issue-provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"issue-provider.d.ts","sourceRoot":"","sources":["../../src/providers/issue-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,aAAa,CAAC;AAEvC;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC7B;;OAEG;IACH,UAAU,CAAC,OAAO,CAAC,EAAE;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEjF;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAEzC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvD;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1D;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErD;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9F;;OAEG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAErD;;OAEG;IACH,cAAc,CACb,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI,CAAC,CAAC;IAEtE;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9C"}
1
+ {"version":3,"file":"issue-provider.d.ts","sourceRoot":"","sources":["../../src/providers/issue-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,KAAK,EAAC,MAAM,aAAa,CAAC;AAEvC;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC7B;;OAEG;IACH,UAAU,CAAC,OAAO,CAAC,EAAE;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;KAAC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAEjF;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAEzC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvD;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1D;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErD;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9F;;OAEG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAErD;;OAEG;IACH,cAAc,CACb,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GAAG,IAAI,CAAC,CAAC;IAEtF;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvC;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE9C;;OAEG;IACH,qBAAqB,CACpB,MAAM,EAAE,MAAM,GACZ,OAAO,CAAC,KAAK,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC,CAAC;IAE/F;;OAEG;IACH,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;QAC9B,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;KACb,GAAG,IAAI,CAAC,CAAC;CACV"}
@@ -24,6 +24,10 @@ export declare class TaskManager {
24
24
  * List all pending tasks across all issues
25
25
  */
26
26
  listAllTasks(): Task[];
27
+ /**
28
+ * Check if a task file exists (by its repo-relative path)
29
+ */
30
+ taskFileExists(filePath: string): boolean;
27
31
  /**
28
32
  * Check if an issue has any remaining (pending) tasks
29
33
  */
@@ -1 +1 @@
1
- {"version":3,"file":"task-manager.d.ts","sourceRoot":"","sources":["../src/task-manager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,IAAI,EAAE,eAAe,EAAC,MAAM,YAAY,CAAC;AAItD;;;;;GAKG;AACH,qBAAa,WAAW;IACvB,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,MAAM;IAI3B;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAI7C;;OAEG;IACH,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,EAAE;IAYtC;;OAEG;IACH,YAAY,IAAI,IAAI,EAAE;IAoBtB;;OAEG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAI/C;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAc9B;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAehC;;OAEG;IACH,SAAS,CACR,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,eAAe,EAC5B,IAAI,EAAE,MAAM,GACV,MAAM;IAcT;;OAEG;IACH,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAiBtC;;;OAGG;IACH,wBAAwB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAU7C;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAexB"}
1
+ {"version":3,"file":"task-manager.d.ts","sourceRoot":"","sources":["../src/task-manager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAC,IAAI,EAAE,eAAe,EAAC,MAAM,YAAY,CAAC;AAItD;;;;;GAKG;AACH,qBAAa,WAAW;IACvB,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,MAAM;IAI3B;;OAEG;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAI7C;;OAEG;IACH,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,EAAE;IAYtC;;OAEG;IACH,YAAY,IAAI,IAAI,EAAE;IAoBtB;;OAEG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIzC;;OAEG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAI/C;;OAEG;IACH,kBAAkB,IAAI,MAAM,EAAE;IAc9B;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAehC;;OAEG;IACH,SAAS,CACR,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,eAAe,EAC5B,IAAI,EAAE,MAAM,GACV,MAAM;IAcT;;OAEG;IACH,UAAU,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAiBtC;;;OAGG;IACH,wBAAwB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAU7C;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAexB"}
@@ -59,6 +59,12 @@ export class TaskManager {
59
59
  }
60
60
  return tasks;
61
61
  }
62
+ /**
63
+ * Check if a task file exists (by its repo-relative path)
64
+ */
65
+ taskFileExists(filePath) {
66
+ return fs.existsSync(path.resolve(this.workDir, filePath));
67
+ }
62
68
  /**
63
69
  * Check if an issue has any remaining (pending) tasks
64
70
  */
@@ -1 +1 @@
1
- {"version":3,"file":"task-manager.js","sourceRoot":"","sources":["../src/task-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-manager.js","sourceRoot":"","sources":["../src/task-manager.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -53,6 +53,8 @@ export declare const LABELS: {
53
53
  readonly TASKS_ACCEPTED: "whitesmith:tasks-accepted";
54
54
  /** All tasks for this issue have been completed */
55
55
  readonly COMPLETED: "whitesmith:completed";
56
+ /** Auto-work mode: auto-approve task PRs */
57
+ readonly AUTO_WORK: "whitesmith:auto-work";
56
58
  };
57
59
  /**
58
60
  * Configuration for whitesmith
@@ -72,6 +74,10 @@ export interface DevPulseConfig {
72
74
  noPush: boolean;
73
75
  /** Skip sleep between iterations (for testing) */
74
76
  noSleep: boolean;
77
+ /** Print what would be done without executing it */
78
+ dryRun: boolean;
79
+ /** Enable auto-work mode (auto-approve task PRs) */
80
+ autoWork: boolean;
75
81
  /** Log file path */
76
82
  logFile?: string;
77
83
  /** GitHub repo in "owner/repo" format (auto-detected if not set) */
@@ -83,6 +89,9 @@ export interface DevPulseConfig {
83
89
  export type Action = {
84
90
  type: 'reconcile';
85
91
  issue: Issue;
92
+ } | {
93
+ type: 'auto-approve';
94
+ issue: Issue;
86
95
  } | {
87
96
  type: 'investigate';
88
97
  issue: Issue;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,KAAK;IACrB,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,gBAAgB;IAChB,GAAG,EAAE,MAAM,CAAC;CACZ;AAED;;;GAGG;AACH,MAAM,WAAW,IAAI;IACpB,oDAAoD;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,MAAM;IAClB,+CAA+C;;IAE/C,gDAAgD;;IAEhD,kDAAkD;;IAElD,mDAAmD;;CAE1C,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,MAAM,EAAE,OAAO,CAAC;IAChB,kDAAkD;IAClD,OAAO,EAAE,OAAO,CAAC;IACjB,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,MAAM,MAAM,GACf;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAC,GACjC;IAAC,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAC,GACnC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAC,GAC7C;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,KAAK;IACrB,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,gBAAgB;IAChB,GAAG,EAAE,MAAM,CAAC;CACZ;AAED;;;GAGG;AACH,MAAM,WAAW,IAAI;IACpB,oDAAoD;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,yDAAyD;IACzD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAC;IAChB,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,MAAM;IAClB,+CAA+C;;IAE/C,gDAAgD;;IAEhD,kDAAkD;;IAElD,mDAAmD;;IAEnD,4CAA4C;;CAEnC,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,uCAAuC;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,mCAAmC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,MAAM,EAAE,OAAO,CAAC;IAChB,kDAAkD;IAClD,OAAO,EAAE,OAAO,CAAC;IACjB,oDAAoD;IACpD,MAAM,EAAE,OAAO,CAAC;IAChB,oDAAoD;IACpD,QAAQ,EAAE,OAAO,CAAC;IAClB,oBAAoB;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,MAAM,MAAM,GACf;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAC,GACjC;IAAC,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAC,GACpC;IAAC,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAC,GACnC;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAC,GAC7C;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CAAC"}
package/dist/types.js CHANGED
@@ -10,5 +10,7 @@ export const LABELS = {
10
10
  TASKS_ACCEPTED: 'whitesmith:tasks-accepted',
11
11
  /** All tasks for this issue have been completed */
12
12
  COMPLETED: 'whitesmith:completed',
13
+ /** Auto-work mode: auto-approve task PRs */
14
+ AUTO_WORK: 'whitesmith:auto-work',
13
15
  };
14
16
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA8CA;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IACrB,+CAA+C;IAC/C,aAAa,EAAE,0BAA0B;IACzC,gDAAgD;IAChD,cAAc,EAAE,2BAA2B;IAC3C,kDAAkD;IAClD,cAAc,EAAE,2BAA2B;IAC3C,mDAAmD;IACnD,SAAS,EAAE,sBAAsB;CACxB,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AA8CA;;GAEG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG;IACrB,+CAA+C;IAC/C,aAAa,EAAE,0BAA0B;IACzC,gDAAgD;IAChD,cAAc,EAAE,2BAA2B;IAC3C,kDAAkD;IAClD,cAAc,EAAE,2BAA2B;IAC3C,mDAAmD;IACnD,SAAS,EAAE,sBAAsB;IACjC,4CAA4C;IAC5C,SAAS,EAAE,sBAAsB;CACxB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "whitesmith",
3
- "version": "0.0.1",
3
+ "version": "0.0.2",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -20,6 +20,7 @@
20
20
  ],
21
21
  "packageManager": "pnpm@10.28.1",
22
22
  "dependencies": {
23
+ "@inquirer/prompts": "^8.3.2",
23
24
  "commander": "^14.0.3",
24
25
  "simple-git": "^3.33.0",
25
26
  "yaml": "^2.7.1"
@@ -0,0 +1,26 @@
1
+ import type {DevPulseConfig, Issue} from './types.js';
2
+ import {LABELS} from './types.js';
3
+
4
+ /**
5
+ * Check whether auto-work mode is enabled for a given issue.
6
+ *
7
+ * Returns true if any of these conditions are met:
8
+ * 1. `config.autoWork` is `true` (global config / CLI flag)
9
+ * 2. The issue has the `whitesmith:auto-work` label
10
+ * 3. The issue body contains the string `whitesmith:auto-work`
11
+ */
12
+ export function isAutoWorkEnabled(config: DevPulseConfig, issue: Issue): boolean {
13
+ if (config.autoWork) {
14
+ return true;
15
+ }
16
+
17
+ if (issue.labels.includes(LABELS.AUTO_WORK)) {
18
+ return true;
19
+ }
20
+
21
+ if (issue.body.includes('whitesmith:auto-work')) {
22
+ return true;
23
+ }
24
+
25
+ return false;
26
+ }
package/src/cli.ts CHANGED
@@ -9,6 +9,8 @@ import {Orchestrator} from './orchestrator.js';
9
9
  import {GitHubProvider} from './providers/github.js';
10
10
  import {PiHarness} from './harnesses/pi.js';
11
11
  import {TaskManager} from './task-manager.js';
12
+ import {handlePRComment, handleIssueComment, isPullRequest} from './comment.js';
13
+ import type {AuthMode} from './providers/github-ci.js';
12
14
  import pkg from '../package.json' with {type: 'json'};
13
15
 
14
16
  const DEFAULT_AGENT_CMD = 'pi';
@@ -45,6 +47,8 @@ export function buildCli(): Command {
45
47
  .option('--log-file <path>', 'Log agent output to file')
46
48
  .option('--no-push', 'Skip pushing and PR creation')
47
49
  .option('--no-sleep', 'Skip sleep between iterations')
50
+ .option('--dry-run', 'Print what would be done without executing it')
51
+ .option('--auto-work', 'Enable auto-work mode (auto-approve task PRs)')
48
52
  .action(async (workDir: string, opts) => {
49
53
  const config: DevPulseConfig = {
50
54
  agentCmd: opts.agentCmd,
@@ -54,6 +58,8 @@ export function buildCli(): Command {
54
58
  workDir: path.resolve(workDir),
55
59
  noPush: opts.push === false,
56
60
  noSleep: opts.sleep === false,
61
+ dryRun: opts.dryRun ?? false,
62
+ autoWork: opts.autoWork ?? false,
57
63
  logFile: opts.logFile,
58
64
  repo: opts.repo,
59
65
  };
@@ -122,6 +128,82 @@ export function buildCli(): Command {
122
128
  }
123
129
  });
124
130
 
131
+ // --- comment ---
132
+ program
133
+ .command('comment')
134
+ .description('Handle a comment on an issue or PR (auto-detects which)')
135
+ .argument('[work_dir]', 'Working directory', '.')
136
+ .requiredOption('--number <n>', 'Issue or PR number')
137
+ .option('--body <text>', 'Comment body text (or use --body-file)')
138
+ .option('--body-file <path>', 'Read comment body from file instead of --body')
139
+ .option('--agent-cmd <cmd>', 'Agent harness command', DEFAULT_AGENT_CMD)
140
+ .requiredOption('--provider <name>', 'AI provider (e.g. anthropic, openai)')
141
+ .requiredOption('--model <id>', 'AI model ID (e.g. claude-opus-4-6)')
142
+ .option('--repo <owner/repo>', 'GitHub repo (auto-detected if omitted)')
143
+ .option('--log-file <path>', 'Log agent output to file')
144
+ .option(
145
+ '--post',
146
+ 'Post the response as a GitHub comment (issue-only, otherwise prints to stdout)',
147
+ )
148
+ .action(async (workDir: string, opts) => {
149
+ const resolvedDir = path.resolve(workDir);
150
+ if (!fs.existsSync(resolvedDir)) {
151
+ console.error(`ERROR: Directory '${resolvedDir}' does not exist`);
152
+ process.exit(1);
153
+ }
154
+
155
+ // Read body from file if --body-file is provided, otherwise use --body
156
+ let commentBody: string;
157
+ if (opts.bodyFile) {
158
+ const bodyFilePath = path.resolve(opts.bodyFile);
159
+ if (!fs.existsSync(bodyFilePath)) {
160
+ console.error(`ERROR: Body file '${bodyFilePath}' does not exist`);
161
+ process.exit(1);
162
+ }
163
+ commentBody = fs.readFileSync(bodyFilePath, 'utf-8');
164
+ } else if (opts.body) {
165
+ commentBody = opts.body;
166
+ } else {
167
+ console.error('ERROR: Either --body or --body-file is required');
168
+ process.exit(1);
169
+ }
170
+
171
+ process.chdir(resolvedDir);
172
+
173
+ const issues = new GitHubProvider(resolvedDir, opts.repo);
174
+ const agent = new PiHarness({
175
+ cmd: opts.agentCmd,
176
+ provider: opts.provider,
177
+ model: opts.model,
178
+ });
179
+
180
+ await agent.validate();
181
+
182
+ const number = parseInt(opts.number, 10);
183
+ const commentConfig = {
184
+ number,
185
+ commentBody,
186
+ workDir: resolvedDir,
187
+ repo: opts.repo,
188
+ logFile: opts.logFile,
189
+ post: opts.post === true,
190
+ };
191
+
192
+ try {
193
+ const isPR = await isPullRequest(issues, number);
194
+ if (isPR) {
195
+ console.log(`Detected PR #${number}`);
196
+ await handlePRComment(commentConfig, issues, agent);
197
+ } else {
198
+ console.log(`Detected issue #${number}`);
199
+ await handleIssueComment(commentConfig, issues, agent);
200
+ }
201
+ } catch (error) {
202
+ console.error('ERROR:', error instanceof Error ? error.message : error);
203
+ process.exit(1);
204
+ }
205
+ });
206
+
125
207
  // --- reconcile ---
126
208
  program
127
209
  .command('reconcile')
@@ -166,6 +248,38 @@ export function buildCli(): Command {
166
248
  console.log('Reconcile complete.');
167
249
  });
168
250
 
251
+ // --- install-ci ---
252
+ program
253
+ .command('install-ci')
254
+ .description('Set up GitHub Actions workflows for whitesmith CI')
255
+ .argument('[work_dir]', 'Working directory (target repository)', '.')
256
+ .option(
257
+ '--auth-json',
258
+ 'Use pi auth.json instead of models.json (requires PI_AUTH_JSON and GH_PAT secrets)',
259
+ )
260
+ .option('--repo <owner/repo>', 'GitHub repo (auto-detected if omitted)')
261
+ .option(
262
+ '--fake',
263
+ 'Write workflows to .fake/workflows/ instead of .github/workflows/ (for testing)',
264
+ )
265
+ .action(async (workDir: string, opts) => {
266
+ const resolvedDir = path.resolve(workDir);
267
+ if (!fs.existsSync(resolvedDir)) {
268
+ console.error(`ERROR: Directory '${resolvedDir}' does not exist`);
269
+ process.exit(1);
270
+ }
271
+
272
+ const authMode: AuthMode = opts.authJson ? 'auth-json' : 'models-json';
273
+
274
+ try {
275
+ const provider = new GitHubProvider(resolvedDir, opts.repo);
276
+ await provider.installCI({authMode, fake: opts.fake ?? false});
277
+ } catch (error) {
278
+ console.error('ERROR:', error instanceof Error ? error.message : error);
279
+ process.exit(1);
280
+ }
281
+ });
282
+
169
283
  return program;
170
284
  }
171
285