@onepointfour-packs/flaredeck-agent 0.2.38 → 0.2.40

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 (87) hide show
  1. package/dist/agent.d.ts +42 -3
  2. package/dist/agent.js +84 -6
  3. package/dist/agent.js.map +1 -1
  4. package/dist/automode.js +43 -3
  5. package/dist/automode.js.map +1 -1
  6. package/dist/branches.d.ts +12 -1
  7. package/dist/branches.js +13 -3
  8. package/dist/branches.js.map +1 -1
  9. package/dist/browser.d.ts +52 -0
  10. package/dist/browser.js +185 -17
  11. package/dist/browser.js.map +1 -1
  12. package/dist/config.d.ts +6 -0
  13. package/dist/config.js +36 -2
  14. package/dist/config.js.map +1 -1
  15. package/dist/credentials.d.ts +217 -0
  16. package/dist/credentials.js +332 -0
  17. package/dist/credentials.js.map +1 -0
  18. package/dist/engine-antigravity.js +2 -0
  19. package/dist/engine-antigravity.js.map +1 -1
  20. package/dist/engine-claude.js +14 -2
  21. package/dist/engine-claude.js.map +1 -1
  22. package/dist/engine.d.ts +19 -0
  23. package/dist/engine.js.map +1 -1
  24. package/dist/environment.d.ts +13 -1
  25. package/dist/environment.js +35 -2
  26. package/dist/environment.js.map +1 -1
  27. package/dist/envtools.d.ts +58 -0
  28. package/dist/envtools.js +151 -0
  29. package/dist/envtools.js.map +1 -0
  30. package/dist/flaredeck.d.ts +24 -0
  31. package/dist/flaredeck.js +20 -0
  32. package/dist/flaredeck.js.map +1 -1
  33. package/dist/github.d.ts +2 -0
  34. package/dist/github.js +4 -0
  35. package/dist/github.js.map +1 -1
  36. package/dist/githubauth.d.ts +11 -1
  37. package/dist/githubauth.js +82 -16
  38. package/dist/githubauth.js.map +1 -1
  39. package/dist/hydrate.d.ts +114 -0
  40. package/dist/hydrate.js +79 -0
  41. package/dist/hydrate.js.map +1 -0
  42. package/dist/limits.d.ts +184 -0
  43. package/dist/limits.js +251 -0
  44. package/dist/limits.js.map +1 -0
  45. package/dist/main.js +178 -96
  46. package/dist/main.js.map +1 -1
  47. package/dist/picker.js +50 -4
  48. package/dist/picker.js.map +1 -1
  49. package/dist/preflight.d.ts +43 -0
  50. package/dist/preflight.js +133 -19
  51. package/dist/preflight.js.map +1 -1
  52. package/dist/providers.d.ts +10 -0
  53. package/dist/providers.js +23 -0
  54. package/dist/providers.js.map +1 -1
  55. package/dist/runs.d.ts +11 -3
  56. package/dist/runs.js +41 -4
  57. package/dist/runs.js.map +1 -1
  58. package/dist/serve.js +1061 -114
  59. package/dist/serve.js.map +1 -1
  60. package/dist/session.d.ts +51 -0
  61. package/dist/session.js +145 -0
  62. package/dist/session.js.map +1 -0
  63. package/dist/settle.d.ts +18 -0
  64. package/dist/settle.js +39 -0
  65. package/dist/settle.js.map +1 -0
  66. package/dist/signin.d.ts +47 -0
  67. package/dist/signin.js +331 -0
  68. package/dist/signin.js.map +1 -0
  69. package/dist/stream.d.ts +6 -0
  70. package/dist/stream.js +44 -3
  71. package/dist/stream.js.map +1 -1
  72. package/dist/subscriptions.d.ts +115 -0
  73. package/dist/subscriptions.js +140 -0
  74. package/dist/subscriptions.js.map +1 -0
  75. package/dist/ui.d.ts +11 -0
  76. package/dist/ui.js +6 -1
  77. package/dist/ui.js.map +1 -1
  78. package/dist/usage.d.ts +105 -0
  79. package/dist/usage.js +348 -0
  80. package/dist/usage.js.map +1 -0
  81. package/dist/wall.d.ts +35 -0
  82. package/dist/wall.js +94 -0
  83. package/dist/wall.js.map +1 -0
  84. package/dist/worktree.d.ts +19 -0
  85. package/dist/worktree.js +179 -4
  86. package/dist/worktree.js.map +1 -1
  87. package/package.json +1 -1
package/dist/main.js CHANGED
@@ -23,7 +23,7 @@ import { serve } from './serve.js';
23
23
  import { Flaredeck } from './flaredeck.js';
24
24
  import { briefText, intake, intakeText } from './intake.js';
25
25
  import { createInterface } from 'node:readline/promises';
26
- import { loadProviders, saveProviders } from './providers.js';
26
+ import { loadLocalProviders, loadProviders, saveProviders } from './providers.js';
27
27
  import { removeSecret, secretNames, secretsPath, setSecret } from './secrets.js';
28
28
  import { loadJam, loginJam } from './jam.js';
29
29
  import { denyingDecider, readToolNames, terminalDecider } from './permissions.js';
@@ -183,7 +183,35 @@ async function cmdLogin(argv) {
183
183
  lines.push(line);
184
184
  return lines;
185
185
  };
186
+ /**
187
+ * ONE reader for the whole login.
188
+ *
189
+ * Every step used to open its own and close it in a `finally`, and closing a second readline
190
+ * on one stdin pauses stdin for whatever asks next — so login chose a branch, printed the next
191
+ * heading, and ended, with the next keystroke landing in the shell. Made on first use so a
192
+ * non-interactive login never touches stdin at all.
193
+ */
194
+ let reader = null;
195
+ const loginReader = () => (reader ??= createInterface({ input: process.stdin, output: process.stdout }));
196
+ const closeReader = () => { reader?.close(); reader = null; };
197
+ /**
198
+ * What stdin looks like at each step boundary.
199
+ *
200
+ * Login has died silently at the branch question more than once, each time with a different
201
+ * cause and never with an error — the stream is healthy and node simply stops waiting for it.
202
+ * `refd` is the one that matters: an unref'd stdin does not hold the event loop open, so a
203
+ * pending question is not enough to keep the process alive. Off unless asked for.
204
+ */
205
+ const stdinAt = (where) => {
206
+ if (!process.env['FLAREDECK_AGENT_DEBUG_STDIN'])
207
+ return;
208
+ const s = process.stdin;
209
+ process.stderr.write(`[stdin] ${where.padEnd(14)} tty=${s.isTTY} paused=${s.isPaused()} ended=${s.readableEnded} ` +
210
+ `destroyed=${s.destroyed} flowing=${s.readableFlowing} data=${s.listenerCount('data')} ` +
211
+ `line=${s.listenerCount('line')} raw=${s.isRaw} refd=${s._handle?.hasRef?.()}\n`);
212
+ };
186
213
  const STEPS = 7;
214
+ stdinAt('start');
187
215
  const step = (n, title, why) => {
188
216
  say(`\n── ${n} of ${STEPS} · ${title} ${'─'.repeat(Math.max(0, 62 - title.length))}`);
189
217
  wrap(why).forEach(say);
@@ -191,7 +219,13 @@ async function cmdLogin(argv) {
191
219
  };
192
220
  if (!config.oauth) {
193
221
  step(1, 'FlareDeck', 'Which agent this machine acts as. Everything it does on the board is done as that account.');
194
- config.oauth = await authorize(mcpOrigin(config), say);
222
+ // Lend it the login's reader. Without this `authorize` opens a second readline on the same
223
+ // stdin and closes it when the sign-in finishes, which pauses stdin for every question
224
+ // after it — so login signed in, printed the branches, and ENDED at the first prompt.
225
+ // It only bites when this step actually runs: an account already authorised skips it, which
226
+ // is why this survived every login until a new agent account was added.
227
+ config.oauth = await authorize(mcpOrigin(config), say, undefined, { rl: loginReader() });
228
+ stdinAt('after oauth');
195
229
  say('✓ FlareDeck authorised');
196
230
  }
197
231
  else {
@@ -207,8 +241,21 @@ async function cmdLogin(argv) {
207
241
  // it stranded an agent once by running all six steps. It must not start asking about boards.
208
242
  const onlyGithub = argv.includes('--github') || !!flag(argv, '--github-token');
209
243
  if (token && !onlyGithub) {
244
+ /**
245
+ * Stand the reader down before an Ink picker, and let the next question make a new one.
246
+ *
247
+ * A readline and an Ink app cannot share one stdin. Step 1 leaves the reader ACTIVE —
248
+ * `authorize` prompts for a pasted URL as its fallback and never stands that down — so
249
+ * its listener is still attached when Ink takes the stream. Ink gives stdin back paused,
250
+ * the stale reader never resumes it, and the next question is printed to a stream nobody
251
+ * is reading. No error: the promise simply never settles and node exits.
252
+ *
253
+ * Measured across the boundary: data=1 the whole way through, paused true afterwards.
254
+ */
255
+ closeReader();
210
256
  step(2, 'Boards', 'Which boards this agent wakes for. Everything else on this account stays invisible to it — no cards, no messages, no notifications. All of them is fine for a lead; a worker usually wants one.');
211
257
  const picked = await askBoards(() => callFlaredeckTool(config.mcpUrl, token, 'list-boards', {}), say, config.boards);
258
+ stdinAt('after boards');
212
259
  if (picked) {
213
260
  if (picked.length) {
214
261
  config.boards = picked;
@@ -246,10 +293,14 @@ async function cmdLogin(argv) {
246
293
  delete config.github;
247
294
  }
248
295
  }
249
- if (!config.github) {
250
- step(3, 'GitHub', 'So this machine can push branches and open pull requests. The agent never sees this token.');
296
+ /* Only when asked for. GitHub is connected once in FlareDeck (Integrations → GitHub) and every
297
+ agent uses that — a machine needs no login of its own. `login --github` / `--github-token`
298
+ remain for a machine that deliberately keeps a local one. */
299
+ if (!config.github && argv.includes('--github')) {
300
+ step(3, 'GitHub', 'A login for this machine only. Usually unnecessary: connect GitHub once in FlareDeck instead.');
251
301
  try {
252
302
  config.github = await authorizeGitHub(say);
303
+ stdinAt('after github');
253
304
  say('✓ GitHub authorised');
254
305
  }
255
306
  catch (e) {
@@ -269,7 +320,7 @@ async function cmdLogin(argv) {
269
320
  // save: each card names its repository, and each repo answers for its own base branch.
270
321
  const found = hasGit ? [] : await checkouts(config.repo);
271
322
  if (found.length > 1) {
272
- step(4, 'Repositories', `This folder holds ${found.length} repositories. Tick the ones this agent may work in — each card's Component says which one a card is for, and each repo answers for its own base branch, so there is no branch to choose here.`);
323
+ step(3, 'Repositories', `This folder holds ${found.length} repositories. Tick the ones this agent may work in — each card's Component says which one a card is for, and each repo answers for its own base branch, so there is no branch to choose here.`);
273
324
  const picked = await askRepos(config.repo, say, config.repos);
274
325
  if (picked) {
275
326
  if (picked.length)
@@ -279,22 +330,31 @@ async function cmdLogin(argv) {
279
330
  }
280
331
  }
281
332
  else if (found.length === 1) {
282
- step(4, 'Repositories', `One repository in this folder: ${found[0].name}.`);
333
+ step(3, 'Repositories', `One repository in this folder: ${found[0].name}.`);
283
334
  }
284
335
  else if (!hasGit) {
285
- step(4, 'Branch', 'No git repository here and none in this folder, so this agent will have no checkout — right for a lead, wrong for a worker.');
336
+ step(3, 'Branch', 'No git repository here and none in this folder, so this agent will have no checkout — right for a lead, wrong for a worker.');
286
337
  }
287
338
  else if (declared) {
288
- step(4, 'Branch', `This repo declares its base branch (${declared}), so there is nothing to choose.`);
339
+ step(3, 'Branch', `This repo declares its base branch (${declared}), so there is nothing to choose.`);
340
+ }
341
+ else if (flag(argv, '--branch')) {
342
+ // Said outright, so nothing has to be asked. Three logins died at the branch question
343
+ // today — twice for a reader that had been closed under it — and a prompt that can be
344
+ // skipped is one that cannot strand anybody.
345
+ config.baseBranch = flag(argv, '--branch');
346
+ step(3, 'Branch', `Given on the command line: ${config.baseBranch}.`);
289
347
  }
290
348
  else if (!config.baseBranch) {
291
- step(4, 'Branch', 'Where new work is cut from and merged back into. Cards in a production-fix environment use the board\'s fix branch instead.');
292
- const picked = await askBaseBranch(config.repo, say);
349
+ step(3, 'Branch', 'Where new work is cut from and merged back into. Cards in a production-fix environment use the board\'s fix branch instead.');
350
+ stdinAt('before branch');
351
+ const picked = await askBaseBranch(config.repo, say, loginReader());
352
+ stdinAt('after branch');
293
353
  if (picked)
294
354
  config.baseBranch = picked;
295
355
  }
296
356
  else {
297
- step(4, 'Branch', `Already chosen on this machine: ${config.baseBranch}.`);
357
+ step(3, 'Branch', `Already chosen on this machine: ${config.baseBranch}.`);
298
358
  }
299
359
  /**
300
360
  * The key behind the command guard. Asked here rather than left to `providers`, because the
@@ -305,29 +365,8 @@ async function cmdLogin(argv) {
305
365
  * Machine-wide, not saved in this agent's config — a key is a billing relationship, and a
306
366
  * config file copied to another box should carry no third-party credential.
307
367
  */
308
- const providers = loadProviders();
309
- if (!providers.openrouter?.apiKey) {
310
- step(5, 'Command guard', 'An OpenRouter key lets Jev judge risky shell commands — it refuses the irreversible ones and lets the rest run, for a fraction of a cent each. WITHOUT one the guard still runs, but every risky command stops and asks you in person. Get one at https://openrouter.ai/keys. Enter to skip.');
311
- if (process.stdin.isTTY) {
312
- const rl = createInterface({ input: process.stdin, output: process.stdout });
313
- try {
314
- const entered = (await rl.question('OpenRouter key (sk-or-…), or Enter to skip: ')).trim();
315
- if (entered) {
316
- saveProviders({ ...providers, openrouter: { apiKey: entered } });
317
- say('✓ Saved — the guard will judge commands instead of interrupting you');
318
- }
319
- else {
320
- say(' Skipped — and the agent will REFUSE TO START without it. Add one with: flaredeck-agent providers --openrouter sk-or-…');
321
- }
322
- }
323
- finally {
324
- rl.close();
325
- }
326
- }
327
- }
328
- else {
329
- step(5, 'Command guard', 'On, with an OpenRouter key already set on this machine.');
330
- }
368
+ // No OpenRouter question: the key lives in FlareDeck (Integrations → Secrets) and every machine
369
+ // gets it. `flaredeck-agent providers --openrouter …` still sets a machine-only one.
331
370
  const path = saveConfig(config);
332
371
  // Saved BEFORE the optional steps below. One of them crashed partway through and took the
333
372
  // whole login with it — the agent had signed into Claude, FlareDeck and GitHub, and ended
@@ -340,61 +379,9 @@ async function cmdLogin(argv) {
340
379
  // afterwards, asking again about Jam and about design tools that were connected weeks ago. On
341
380
  // a headless box that is worse than noise: the optional sign-ins wait on a browser that is not
342
381
  // there.
343
- const targeted = argv.includes('--github') || !!givenToken;
344
- if (process.stdin.isTTY && !targeted) {
345
- const { loadJam, loginJam } = await import('./jam.js');
346
- const { connectInteractive } = await import('./connect.js');
347
- const already = new Set((config.mcpServers ?? []).map((m) => m.name));
348
- const rl = createInterface({ input: process.stdin, output: process.stdout });
349
- try {
350
- const yes = async (q) => /^y/i.test((await rl.question(`${q} [y/N] `)).trim());
351
- step(6, 'Jam', 'Cards here often link a Jam recording. Without this an agent cannot start one at all — the recording is the card.');
352
- if (loadJam())
353
- say(' Already connected.');
354
- else if (await yes(' Connect Jam now?')) {
355
- try {
356
- await loginJam(say, rl);
357
- say('✓ Jam connected');
358
- }
359
- catch (e) {
360
- say(` Not connected (${e instanceof Error ? e.message.split('\n')[0] : String(e)}) — later: flaredeck-agent login --jam`);
361
- }
362
- }
363
- else
364
- say(' Skipped — later: flaredeck-agent login --jam');
365
- const { KNOWN_MCP } = await import('./connect.js');
366
- step(7, 'Other tools', 'Neither is required, and both sign in the same way FlareDeck just did.');
367
- for (const [name, port] of [['cnjure', 41791], ['sceneflo', 41792]]) {
368
- if (already.has(name)) {
369
- say(` ${name}: already connected.`);
370
- continue;
371
- }
372
- const known = KNOWN_MCP[name];
373
- // The address is known, so it is offered rather than asked for. A different one can still
374
- // be typed — a self-hosted instance, or a staging one.
375
- const answer = (await rl.question(` Connect ${name}? ${known?.what ?? ''} [y/N] `)).trim();
376
- if (!answer || /^n/i.test(answer))
377
- continue;
378
- // No URL is asked for: these have one address, and a machine that needs a different one
379
- // (self-hosted, staging) says so with `flaredeck-agent connect <name> <url>` afterwards.
380
- const url = known?.url;
381
- if (!url)
382
- continue;
383
- try {
384
- await connectInteractive(name, url, port, say, (q) => rl.question(q), rl);
385
- }
386
- catch (e) {
387
- // Optional means optional: one that will not connect is reported and stepped over, not
388
- // a reason the agent ends up with no login at all.
389
- say(` ${name} not connected (${e instanceof Error ? e.message.split('\n')[0] : String(e)}).`);
390
- say(` Later, on its own: flaredeck-agent connect ${name}`);
391
- }
392
- }
393
- }
394
- finally {
395
- rl.close();
396
- }
397
- }
382
+ // No Jam or tool sign-ins either: MCP servers (Jam, Conjure, Sceneflo…) are connected once in
383
+ // FlareDeck (Integrations → MCP servers) and every agent gets them each session.
384
+ closeReader();
398
385
  const who = identityOf(config) ?? 'unknown';
399
386
  say('\n── Done ' + '─'.repeat(63));
400
387
  say(` Agent ${who}`);
@@ -405,11 +392,30 @@ async function cmdLogin(argv) {
405
392
  say(` Branch ${declared ?? config.baseBranch ?? (hasGit ? 'not set' : inScope.length ? "each repo's own" : 'n/a')}`);
406
393
  // Worth stating either way: "every board" is the thing a person is usually surprised by.
407
394
  say(` Boards ${config.boards?.length ? config.boards.map((b) => b.name).join(', ') : 'every board on this account'}`);
408
- say(` Guard ${loadProviders().openrouter?.apiKey ? 'Jev judges risky commands' : 'on, but every risky command will ask you (no OpenRouter key)'}`);
409
395
  say(` Approvals via FlareDeck, as ${who}`);
410
396
  say(` Saved ${path}`);
411
- const { extrasSummary } = await import('./extras.js');
412
- say(extrasSummary());
397
+ /* Everything else comes from the workspace. Said here, so a gap is seen at setup — not on the
398
+ first card that needs it. */
399
+ try {
400
+ const { mcpConfigFetcher } = await import('./hydrate.js');
401
+ const tenant = tenantOf(config);
402
+ const auth = () => freshAccessToken(mcpOrigin(config), config.oauth, (next) => { config.oauth = next; saveConfig(config); });
403
+ const ws = tenant && config.oauth ? await mcpConfigFetcher(config.mcpUrl, tenant, auth)() : null;
404
+ if (ws?.ok) {
405
+ const missing = 'not set — add it on FlareDeck → Integrations';
406
+ say('\n From FlareDeck (nothing else to set up on this machine):');
407
+ say(` GitHub ${ws.github ? `@${ws.github.login ?? 'connected'}` : config.github ? 'this machine\'s own login' : missing}`);
408
+ say(` Guard ${ws.providers?.openrouter || loadLocalProviders().openrouter?.apiKey ? 'Jev judges risky commands (OpenRouter)' : `${missing} → Secrets → OpenRouter API key`}`);
409
+ say(` Gemini ${ws.providers?.gemini || loadLocalProviders().gemini?.apiKey ? 'set' : 'not set (optional)'}`);
410
+ say(` MCP ${ws.servers.length ? ws.servers.map((m) => m.name).join(', ') : 'none yet'}`);
411
+ if (ws.missingRequired?.length)
412
+ say(` ⚠ Required but not connected: ${ws.missingRequired.map((m) => m.name).join(', ')}`);
413
+ }
414
+ else {
415
+ say('\n Could not ask FlareDeck what it provides — the agent will on start.');
416
+ }
417
+ }
418
+ catch { /* the summary is information, never a reason the login fails */ }
413
419
  say('');
414
420
  say('Start it with: flaredeck-agent Check it with: flaredeck-agent whoami');
415
421
  // A login is over once it has printed this. Something from the sign-ins — a socket a browser
@@ -761,10 +767,38 @@ async function cmdServe(argv) {
761
767
  // happens before any work is claimed rather than in the middle of it.
762
768
  // Nor should it start if it cannot publish what it writes. Same reasoning as the judge above,
763
769
  // and the same moment: before a card is claimed rather than twenty minutes into one.
770
+ /* What the WORKSPACE provides, asked once before the checks below: a machine that only logged in
771
+ to FlareDeck has no github.json and no providers.json, and must not be refused for lacking
772
+ what FlareDeck holds for it. Null when FlareDeck cannot be asked — then the machine's own
773
+ answers decide, as before. */
774
+ const workspace = await (async () => {
775
+ if (!config.oauth)
776
+ return null;
777
+ try {
778
+ const { mcpConfigFetcher } = await import('./hydrate.js');
779
+ const tenant = tenantOf(config);
780
+ if (!tenant)
781
+ return null;
782
+ const auth = () => freshAccessToken(mcpOrigin(config), config.oauth, (next) => { config.oauth = next; saveConfig(config); });
783
+ const got = await mcpConfigFetcher(config.mcpUrl, tenant, auth)();
784
+ return got.ok ? got : null;
785
+ }
786
+ catch {
787
+ return null;
788
+ }
789
+ })();
790
+ if (workspace) {
791
+ const { setProvidersFromFlaredeck } = await import('./providers.js');
792
+ setProvidersFromFlaredeck(workspace.providers);
793
+ }
764
794
  {
765
795
  const { canPublish } = await import('./githubauth.js');
766
- const why = await canPublish(config.github);
767
- if (why)
796
+ // FlareDeck's GitHub connection counts — checked, never written into config (and so to disk).
797
+ const why = workspace?.github ? await canPublish({ accessToken: workspace.github.token }) : await canPublish(config.github);
798
+ // No login at all is a setup step somebody at this keyboard skipped: say so and stop. A login
799
+ // GitHub now refuses is different — the agent starts PAUSED, hands its cards back and tells its
800
+ // lead, rather than exiting in a pane nobody is watching. See serve.ts `walls`.
801
+ if (why && !config.github?.accessToken && !workspace?.github)
768
802
  die(why);
769
803
  }
770
804
  if (!loadProviders().openrouter?.apiKey && process.env['FLAREDECK_AGENT_NO_JEV'] !== '1') {
@@ -772,7 +806,8 @@ async function cmdServe(argv) {
772
806
  'Every command that looks risky would be sent to a person for approval, and an agent running\n' +
773
807
  'unattended has no person: each one waits ten minutes and is then refused. The agent is told\n' +
774
808
  'only "not approved", so it cannot tell a dangerous command from a misconfigured machine.\n\n' +
775
- 'Set one and start again:\n\n' +
809
+ 'Set one and start again — once for every machine, in FlareDeck (Integrations → Secrets →\n' +
810
+ 'OpenRouter API key), or just for this one:\n\n' +
776
811
  ' flaredeck-agent providers --openrouter sk-or-…\n\n' +
777
812
  'It costs a fraction of a cent per judgement. If you genuinely want every risky command to\n' +
778
813
  'stop and ask, run with FLAREDECK_AGENT_NO_JEV=1 and somebody at the keyboard.');
@@ -830,7 +865,7 @@ async function cmdServe(argv) {
830
865
  async function main() {
831
866
  const [, , first, ...rest] = process.argv;
832
867
  // No arguments, or straight into flags: serve. A bare `flaredeck-agent` is the normal case.
833
- const known = ['login', 'logout', 'whoami', 'start', 'serve', 'run', 'approvals', 'providers', 'secret', 'intake', 'help'];
868
+ const known = ['login', 'logout', 'whoami', 'start', 'serve', 'run', 'approvals', 'providers', 'secret', 'intake', 'signin', 'help'];
834
869
  // Other MCP servers this machine's agents may use: Cnjure for a card's design, Sceneflo for
835
870
  // driving a browser through a story. Separate from `login`, because these are per machine and
836
871
  // most machines want none of them.
@@ -902,6 +937,51 @@ async function main() {
902
937
  '4. Tell me, in a few lines: who you are, how many cards are waiting, and which you would ' +
903
938
  'pick up first and why.', argv);
904
939
  }
940
+ /**
941
+ * Sign in once, by hand, for an agent that cannot.
942
+ *
943
+ * An agent that meets a sign-in wall stops and asks rather than guessing at credentials. This
944
+ * is the answer to that ask: a real browser opens here, a link is printed, and the person
945
+ * completes the login themselves in their own browser. Nothing is automated and no password
946
+ * passes through the harness — which is the point, since identity providers refuse browsers
947
+ * they can tell are scripted, and a password should not go near a model.
948
+ */
949
+ if (command === 'signin') {
950
+ const config = loadConfig() ?? die('Not set up here — run: flaredeck-agent login');
951
+ const url = flag(argv, '--url');
952
+ const part = flag(argv, '--part') ?? 'ui';
953
+ if (!url)
954
+ die('Which address? flaredeck-agent signin --url http://localhost:4200 [--part ui]');
955
+ const { chromium } = await import('playwright-core');
956
+ const { ensureBrowser, rememberSignInNow, HEADLESS_FULL } = await import('./browser.js');
957
+ say('Fetching the browser if this machine has not got it yet...');
958
+ if (!(await ensureBrowser((t) => say(` ${t}`))))
959
+ die('No browser on this machine and it could not be fetched.');
960
+ const { signInSession } = await import('./signin.js');
961
+ const r = await signInSession({
962
+ url: url,
963
+ launch: () => chromium.launch(HEADLESS_FULL),
964
+ onReady: (viewer) => {
965
+ say(`\n Open this and sign in: ${viewer}`);
966
+ say(' It is a real browser — click and type in the picture, then press Save & finish.\n');
967
+ },
968
+ onNote: (t) => say(` ${t}`),
969
+ });
970
+ if (!r.ok || !r.session) {
971
+ say(`\n✗ ${r.why ?? 'nothing was saved'}`);
972
+ process.exit(1);
973
+ }
974
+ // Awaited: with no copy kept on this machine, a failed write means the sign-in is gone, and
975
+ // exiting 0 would send someone away believing it had worked.
976
+ const saved = await rememberSignInNow(config.repo, part, r.session, (t) => say(` ${t}`));
977
+ if (!saved.ok) {
978
+ say(`\n✗ Signed in, but it could not be saved to FlareDeck: ${saved.message ?? 'no reason given'}`);
979
+ say(' Nothing is kept on this machine, so this sign-in is lost. Try again when FlareDeck is reachable.');
980
+ process.exit(1);
981
+ }
982
+ say(`\n✓ Signed in and kept for ${saved.id}. Every card on this project opens straight into the app.`);
983
+ process.exit(0);
984
+ }
905
985
  if (command === 'serve')
906
986
  return cmdServe(argv);
907
987
  if (command === 'run') {
@@ -929,6 +1009,8 @@ async function main() {
929
1009
  say(' connect <name> <url> [--token <t>] Give this machine another MCP server (Cnjure, Sceneflo…)');
930
1010
  say(' connect --list | --remove <name> What it is connected to, or drop one');
931
1011
  say(' whoami Show which Claude auth and which FlareDeck account is in use');
1012
+ say(' signin --url <address> Sign in once by hand, for an agent that asked — kept for every later card');
1013
+ say(' login --branch <name> Set the base branch without being asked for it');
932
1014
  say(' start [--card <code>] Find out who you are and what work is waiting');
933
1015
  say(' run "<task>" [options] Run one task');
934
1016
  say(' --card <code> Ask for approval on this card; anyone on the board can answer');
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}