@onepointfour-packs/flaredeck-agent 0.2.37 → 0.2.39

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 (102) 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/boards.d.ts +72 -0
  7. package/dist/boards.js +136 -0
  8. package/dist/boards.js.map +1 -0
  9. package/dist/branches.d.ts +12 -1
  10. package/dist/branches.js +13 -3
  11. package/dist/branches.js.map +1 -1
  12. package/dist/browser.d.ts +59 -0
  13. package/dist/browser.js +260 -26
  14. package/dist/browser.js.map +1 -1
  15. package/dist/config.d.ts +22 -0
  16. package/dist/config.js +37 -2
  17. package/dist/config.js.map +1 -1
  18. package/dist/credentials.d.ts +217 -0
  19. package/dist/credentials.js +332 -0
  20. package/dist/credentials.js.map +1 -0
  21. package/dist/engine-antigravity.js +2 -0
  22. package/dist/engine-antigravity.js.map +1 -1
  23. package/dist/engine-claude.js +14 -2
  24. package/dist/engine-claude.js.map +1 -1
  25. package/dist/engine.d.ts +19 -0
  26. package/dist/engine.js.map +1 -1
  27. package/dist/environment.d.ts +15 -3
  28. package/dist/environment.js +79 -9
  29. package/dist/environment.js.map +1 -1
  30. package/dist/envtools.d.ts +58 -0
  31. package/dist/envtools.js +151 -0
  32. package/dist/envtools.js.map +1 -0
  33. package/dist/flaredeck-proxy.d.ts +11 -1
  34. package/dist/flaredeck-proxy.js +27 -1
  35. package/dist/flaredeck-proxy.js.map +1 -1
  36. package/dist/flaredeck.d.ts +24 -0
  37. package/dist/flaredeck.js +20 -0
  38. package/dist/flaredeck.js.map +1 -1
  39. package/dist/github.d.ts +2 -0
  40. package/dist/github.js +4 -0
  41. package/dist/github.js.map +1 -1
  42. package/dist/githubauth.d.ts +11 -1
  43. package/dist/githubauth.js +82 -16
  44. package/dist/githubauth.js.map +1 -1
  45. package/dist/hydrate.d.ts +76 -0
  46. package/dist/hydrate.js +77 -0
  47. package/dist/hydrate.js.map +1 -0
  48. package/dist/limits.d.ts +184 -0
  49. package/dist/limits.js +251 -0
  50. package/dist/limits.js.map +1 -0
  51. package/dist/main.js +177 -33
  52. package/dist/main.js.map +1 -1
  53. package/dist/picker.d.ts +10 -0
  54. package/dist/picker.js +150 -0
  55. package/dist/picker.js.map +1 -0
  56. package/dist/preflight.d.ts +43 -0
  57. package/dist/preflight.js +133 -19
  58. package/dist/preflight.js.map +1 -1
  59. package/dist/repopicker.js +8 -96
  60. package/dist/repopicker.js.map +1 -1
  61. package/dist/runs.d.ts +19 -4
  62. package/dist/runs.js +74 -9
  63. package/dist/runs.js.map +1 -1
  64. package/dist/serve.d.ts +6 -0
  65. package/dist/serve.js +1152 -138
  66. package/dist/serve.js.map +1 -1
  67. package/dist/session.d.ts +51 -0
  68. package/dist/session.js +145 -0
  69. package/dist/session.js.map +1 -0
  70. package/dist/settle.d.ts +18 -0
  71. package/dist/settle.js +39 -0
  72. package/dist/settle.js.map +1 -0
  73. package/dist/signin.d.ts +47 -0
  74. package/dist/signin.js +331 -0
  75. package/dist/signin.js.map +1 -0
  76. package/dist/stream.d.ts +8 -0
  77. package/dist/stream.js +44 -3
  78. package/dist/stream.js.map +1 -1
  79. package/dist/subscriptions.d.ts +115 -0
  80. package/dist/subscriptions.js +140 -0
  81. package/dist/subscriptions.js.map +1 -0
  82. package/dist/team.js +7 -1
  83. package/dist/team.js.map +1 -1
  84. package/dist/tmux.d.ts +1 -0
  85. package/dist/tmux.js +47 -0
  86. package/dist/tmux.js.map +1 -0
  87. package/dist/ui.d.ts +13 -0
  88. package/dist/ui.js +7 -2
  89. package/dist/ui.js.map +1 -1
  90. package/dist/usage.d.ts +105 -0
  91. package/dist/usage.js +348 -0
  92. package/dist/usage.js.map +1 -0
  93. package/dist/wall.d.ts +35 -0
  94. package/dist/wall.js +94 -0
  95. package/dist/wall.js.map +1 -0
  96. package/dist/workspace.d.ts +15 -1
  97. package/dist/workspace.js +25 -1
  98. package/dist/workspace.js.map +1 -1
  99. package/dist/worktree.d.ts +19 -0
  100. package/dist/worktree.js +179 -4
  101. package/dist/worktree.js.map +1 -1
  102. package/package.json +1 -1
@@ -0,0 +1,151 @@
1
+ /**
2
+ * Starting the project, as something the agent can DO rather than something that happened to it.
3
+ *
4
+ * The harness decided this once, before the turn, from a classifier — and for a question typed
5
+ * in the pane it never asked the classifier at all, so the answer defaulted to "no" however
6
+ * plainly the card said otherwise. An agent that needed the project running then had to notice
7
+ * that for itself, find the script, and start it detached from the shell, which it can do but
8
+ * which costs it the discovery every time and goes wrong in ways nobody sees.
9
+ *
10
+ * So it is a tool. The agent asks for the project, and either gets it — addresses, credentials,
11
+ * the lot, with the browser immediately able to use them — or gets the error AND what to do
12
+ * about it. A start script that does not work is the single most common reason a card stalls,
13
+ * and it is nearly always fixable by the agent that found it: the failure says so, and says to
14
+ * commit the fix and tell the lead, because the next agent on this project should not meet it.
15
+ */
16
+ import { startEnvironment } from './environment.js';
17
+ import { sdkServer } from './localmcp.js';
18
+ import { tool } from '@anthropic-ai/claude-agent-sdk';
19
+ import { z } from 'zod';
20
+ export const ENV_TOOL_NAMES = ['mcp__env__start_environment', 'mcp__env__request_sign_in'];
21
+ /** The addresses and anything else the project published, as the agent should read it. */
22
+ function describe(started) {
23
+ const parts = Object.entries(started.endpoints);
24
+ const creds = Object.entries(started.contract?.credentials ?? {})
25
+ .map(([who, v]) => typeof v === 'string' ? ` · ${who}: ${v}` : ` · ${who}: ${v.username ?? ''} / ${v.password ?? ''}`)
26
+ .join('\n');
27
+ const notes = (started.contract?.notes ?? '');
28
+ return [
29
+ parts.length ? `It is up:\n${parts.map(([k, v]) => ` · ${k}: ${v}`).join('\n')}` : 'It ran, but printed no addresses.',
30
+ parts.length ? `\nopen_page takes those NAMES — "${parts[0]?.[0]}" — not a port.` : '',
31
+ creds ? `\nSign-ins this project published:\n${creds}` : '',
32
+ Array.isArray(notes) ? `\nWhat it says to know:\n${notes.map((n) => ` · ${n}`).join('\n')}` : notes ? `\n${String(notes)}` : '',
33
+ ].filter(Boolean).join('\n');
34
+ }
35
+ export function environmentTools(deps) {
36
+ const say = (text, isError = false) => ({
37
+ content: [{ type: 'text', text }],
38
+ ...(isError ? { isError: true } : {}),
39
+ });
40
+ const server = sdkServer({
41
+ name: 'env',
42
+ version: '1.0.0',
43
+ tools: [
44
+ tool('start_environment', 'Bring this project up — its server, database and anything else it needs — so you can ' +
45
+ 'open it in a browser or call it. Safe to call twice: it says what is already running. ' +
46
+ 'If it fails you get the error and what you can do about it.', {}, async () => {
47
+ const already = deps.running();
48
+ if (already?.ran && Object.keys(already.endpoints).length) {
49
+ return say(`Already running.\n\n${describe(already)}`);
50
+ }
51
+ const started = await startEnvironment(deps.cwd(), deps.onNote, deps.script());
52
+ if (started.ran && started.ok && Object.keys(started.endpoints).length) {
53
+ deps.onStarted(started);
54
+ return say(describe(started));
55
+ }
56
+ /**
57
+ * The useful half. A start script that does not work stops the card, and the agent
58
+ * that hit it is the one best placed to fix it — it has the error, the checkout and
59
+ * the machine. What it must NOT do is work around it: starting the project by hand in
60
+ * a way nobody records leaves the next agent to find the same wall.
61
+ */
62
+ const detail = (started.detail || '').trim().split('\n').slice(-12).join('\n').slice(0, 1200);
63
+ if (!started.ran) {
64
+ return say(`This project has no start script, so there is nothing to run yet.\n\n` +
65
+ `Writing one is yours to do and worth doing once. It brings the project up on a ` +
66
+ `FREE port — several worktrees run at the same time — prints a \`name=url\` line ` +
67
+ `for each part it started, and exits rather than staying in the foreground.\n\n` +
68
+ `Commit it with your change: every card on this project after yours then gets a ` +
69
+ `running project and a browser without asking anyone. Tell your lead you added it.`, true);
70
+ }
71
+ return say(`It did not come up.\n\n${detail || '(it printed nothing)'}\n\n` +
72
+ `You can fix this. Installing what it needs, writing files in your checkout, using ` +
73
+ `/tmp, and starting and stopping local services are all yours to do — the machine is ` +
74
+ `scratch. What is not: other people's checkouts, anything that leaves this machine, ` +
75
+ `and credentials you were not given.\n\n` +
76
+ `When you have it working, change the START SCRIPT so it works next time, commit it, ` +
77
+ `and tell your lead. Do not bring the project up by hand and carry on — that fixes ` +
78
+ `your card and leaves the next one to meet the same wall.`, true);
79
+ }),
80
+ /**
81
+ * The other half of a wall the agent cannot pass.
82
+ *
83
+ * `open_page` already DETECTS a sign-in wall and says what kind it is — but all it could
84
+ * then tell the agent was to ask somebody, in prose, with nothing to call. So the agent
85
+ * wrote a comment, flagged the card and stopped, which was the only thing available to it
86
+ * and looks for all the world like a model that would not try. Meanwhile the capture, the
87
+ * storing and the replay all existed and worked; the one missing link was the asking.
88
+ *
89
+ * What a person does is sign in ONCE, in a real browser they can see, for a project — not
90
+ * for a card. After that the session is kept against the project and every later card opens
91
+ * straight into the app, so the cost of this is paid once however many cards follow.
92
+ */
93
+ tool('request_sign_in', 'Ask a person to sign in to this project, when you have hit a sign-in wall you cannot ' +
94
+ 'pass — Google, Microsoft, a one-time emailed link. They sign in once in a real ' +
95
+ 'browser; the session is then kept against this project, so this card and every card ' +
96
+ 'after it opens straight into the app. Never guess credentials, and do not wait for ' +
97
+ 'this: say what you were going to check and stop. You are brought back automatically ' +
98
+ 'when the session lands.', {
99
+ part: z
100
+ .string()
101
+ .optional()
102
+ .describe('Which part to sign in to, named the way open_page names it ("ui", "app"). Defaults to the part serving the app.'),
103
+ why: z
104
+ .string()
105
+ .describe('What you were going to check once you are through. A person reads this, so make it a sentence, not a label.'),
106
+ }, async (args) => {
107
+ const { part, why } = args;
108
+ if (!deps.requestSignIn) {
109
+ return say(`There is nobody to ask from here — this is not running against a card, so a ` +
110
+ `sign-in cannot be requested. Report the wall instead.`, true);
111
+ }
112
+ /* The addresses come from what is actually running, or from what the board declared —
113
+ never from a guess. A remembered port reaches another worktree's app and answers
114
+ perfectly, which is the one failure here that looks like success.
115
+
116
+ The precedence is `open_page`'s, exactly: a part this card STARTED wins a name
117
+ collision, because that is this card's own code and the deployed site is not. If the
118
+ two disagreed, a person would sign in to one place while the agent browsed another —
119
+ and it would look like the capture had simply failed. */
120
+ const endpoints = deps.running()?.endpoints ?? {};
121
+ const declared = deps.sites?.() ?? {};
122
+ const all = { ...declared, ...endpoints };
123
+ const names = Object.keys(all);
124
+ /* A NAMED part that is not running is a refusal, not a nudge towards the first one.
125
+ Falling back silently would send a person to sign in to a different application than
126
+ the agent asked about — and with several worktrees up at once, quite possibly to
127
+ somebody else's. Only an unnamed part defaults. */
128
+ const chosen = part ? (all[part] ? part : undefined) : (all['ui'] ? 'ui' : names[0]);
129
+ const url = chosen ? all[chosen] : undefined;
130
+ if (!url || !chosen) {
131
+ return say(names.length
132
+ ? `This project is running ${names.map((n) => `"${n}"`).join(', ')}, and "${part}" is not one of them. Name one of those.`
133
+ : `Nothing is running and the board declared no site, so there is no address to sign in to. Call start_environment first.`, true);
134
+ }
135
+ const asked = await deps.requestSignIn({ part: chosen, url, why });
136
+ if (!asked.asked) {
137
+ return say(`Nobody could be asked: ${asked.why ?? 'no reason given'}.\n\n` +
138
+ `Report the wall on the card and stop. Do not try to sign in yourself.`, true);
139
+ }
140
+ return say(`A person has been asked to sign in to "${chosen}" (${url})` +
141
+ `${asked.where ? `, and sent to ${asked.where}` : ''}.\n\n` +
142
+ `Stop here. Say on the card what you were going to check, and that it is waiting on ` +
143
+ `a sign-in — do not keep trying the page, and do not look for another way in. When ` +
144
+ `the session is saved you are brought back automatically, and open_page will then ` +
145
+ `open the app signed in. Every card on this project after yours gets that for free.`);
146
+ }),
147
+ ],
148
+ });
149
+ return { server, toolNames: ENV_TOOL_NAMES };
150
+ }
151
+ //# sourceMappingURL=envtools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"envtools.js","sourceRoot":"","sources":["../src/envtools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,gBAAgB,EAAgB,MAAM,kBAAkB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AACtD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,6BAA6B,EAAE,2BAA2B,CAAC,CAAC;AAqC3F,0FAA0F;AAC1F,SAAS,QAAQ,CAAC,OAAgB;IAChC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,IAAI,EAAE,CAAC;SAC9D,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,QAAQ,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;SACvH,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAY,CAAC;IACzD,OAAO;QACL,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,mCAAmC;QACvH,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,oCAAoC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE;QACtF,KAAK,CAAC,CAAC,CAAC,uCAAuC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE;QAC3D,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,4BAA4B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;KACjI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAAa;IAC5C,MAAM,GAAG,GAAG,CAAC,IAAY,EAAE,OAAO,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC;QAC9C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC;QAC1C,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACtC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,SAAS,CAAC;QACvB,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,OAAO;QAChB,KAAK,EAAE;YACL,IAAI,CACF,mBAAmB,EACnB,uFAAuF;gBACrF,wFAAwF;gBACxF,6DAA6D,EAC/D,EAAE,EACF,KAAK,IAAI,EAAE;gBACT,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;gBAC/B,IAAI,OAAO,EAAE,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC;oBAC1D,OAAO,GAAG,CAAC,uBAAuB,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;gBACzD,CAAC;gBAED,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBAE/E,IAAI,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC;oBACvE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;oBACxB,OAAO,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;gBAChC,CAAC;gBAED;;;;;mBAKG;gBACH,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC9F,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;oBACjB,OAAO,GAAG,CACR,uEAAuE;wBACvE,iFAAiF;wBACjF,kFAAkF;wBAClF,gFAAgF;wBAChF,iFAAiF;wBACjF,mFAAmF,EACnF,IAAI,CACL,CAAC;gBACJ,CAAC;gBACD,OAAO,GAAG,CACR,0BAA0B,MAAM,IAAI,sBAAsB,MAAM;oBAChE,oFAAoF;oBACpF,sFAAsF;oBACtF,qFAAqF;oBACrF,yCAAyC;oBACzC,sFAAsF;oBACtF,oFAAoF;oBACpF,0DAA0D,EAC1D,IAAI,CACL,CAAC;YACJ,CAAC,CACF;YACD;;;;;;;;;;;;eAYG;YACH,IAAI,CACF,iBAAiB,EACjB,uFAAuF;gBACrF,iFAAiF;gBACjF,sFAAsF;gBACtF,qFAAqF;gBACrF,sFAAsF;gBACtF,yBAAyB,EAC3B;gBACE,IAAI,EAAE,CAAC;qBACJ,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,iHAAiH,CAAC;gBAC9H,GAAG,EAAE,CAAC;qBACH,MAAM,EAAE;qBACR,QAAQ,CAAC,6GAA6G,CAAC;aAC3H,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;gBACb,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,IAAsC,CAAC;gBAE7D,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;oBACxB,OAAO,GAAG,CACR,8EAA8E;wBAC9E,uDAAuD,EACvD,IAAI,CACL,CAAC;gBACJ,CAAC;gBAED;;;;;;;2EAO2D;gBAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,IAAI,EAAE,CAAC;gBAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC;gBACtC,MAAM,GAAG,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,SAAS,EAAE,CAAC;gBAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC/B;;;qEAGqD;gBACrD,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACrF,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAE7C,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;oBACpB,OAAO,GAAG,CACR,KAAK,CAAC,MAAM;wBACV,CAAC,CAAC,2BAA2B,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,0CAA0C;wBAC1H,CAAC,CAAC,wHAAwH,EAC5H,IAAI,CACL,CAAC;gBACJ,CAAC;gBAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;gBAEnE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;oBACjB,OAAO,GAAG,CACR,0BAA0B,KAAK,CAAC,GAAG,IAAI,iBAAiB,OAAO;wBAC/D,uEAAuE,EACvE,IAAI,CACL,CAAC;gBACJ,CAAC;gBAED,OAAO,GAAG,CACR,0CAA0C,MAAM,MAAM,GAAG,GAAG;oBAC5D,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO;oBAC3D,qFAAqF;oBACrF,oFAAoF;oBACpF,mFAAmF;oBACnF,oFAAoF,CACrF,CAAC;YACJ,CAAC,CACF;SACF;KACF,CAAC,CAAC;IAEH,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;AAC/C,CAAC"}
@@ -105,7 +105,17 @@ saved?: () => Promise<{
105
105
  branch: string;
106
106
  commits: number;
107
107
  pushed: boolean;
108
- } | null>): {
108
+ } | null>,
109
+ /**
110
+ * The boards this agent works, by key. Empty means every board, as before.
111
+ *
112
+ * Filtering the event stream was only half of it: an agent's own sweep does not arrive as an
113
+ * event, it ASKS — and `get-outstanding` answers for the whole account. A board-scoped agent
114
+ * therefore started a card from another team's board one minute after being scoped, because
115
+ * nothing had narrowed the question it asks on startup. So the scope is applied here, to the
116
+ * call, rather than written into a brief and hoped for.
117
+ */
118
+ boards?: readonly string[]): {
109
119
  server: unknown;
110
120
  toolNames: string[];
111
121
  };
@@ -1,5 +1,6 @@
1
1
  import { createSdkMcpServer, tool } from '@anthropic-ai/claude-agent-sdk';
2
2
  import { z } from 'zod';
3
+ import { boardArg } from './boards.js';
3
4
  const TIMEOUT_MS = 25_000;
4
5
  async function rpc(mcpUrl, token, method, params) {
5
6
  const res = await fetch(mcpUrl, {
@@ -220,6 +221,11 @@ export function CLAIMS_DONE(name, args) {
220
221
  }
221
222
  return false;
222
223
  }
224
+ /**
225
+ * Tools that answer for the whole ACCOUNT unless told otherwise, and so have to be narrowed to
226
+ * the boards this agent works. Everything else is addressed at a card or a board already.
227
+ */
228
+ const ACCOUNT_WIDE = new Set(['get-outstanding', 'get-portfolio']);
223
229
  /** The in-process server: FlareDeck's tools, forwarded with a fresh token each time. */
224
230
  export function flaredeckProxy(serverName, mcpUrl, token, discovered, warn = () => { },
225
231
  /**
@@ -232,7 +238,17 @@ onCard = () => { },
232
238
  /** Which tools this agent gets. Everything, for a lead. */
233
239
  keep = () => true,
234
240
  /** What is in this card's branch right now, for the footer on anything it says. */
235
- saved = async () => null) {
241
+ saved = async () => null,
242
+ /**
243
+ * The boards this agent works, by key. Empty means every board, as before.
244
+ *
245
+ * Filtering the event stream was only half of it: an agent's own sweep does not arrive as an
246
+ * event, it ASKS — and `get-outstanding` answers for the whole account. A board-scoped agent
247
+ * therefore started a card from another team's board one minute after being scoped, because
248
+ * nothing had narrowed the question it asks on startup. So the scope is applied here, to the
249
+ * call, rather than written into a brief and hoped for.
250
+ */
251
+ boards = []) {
236
252
  const notes = [];
237
253
  // One list, used for both. It was filtered for the SERVER and not for the names, so the count
238
254
  // still said 43 and the other engine was told about tools it had not been given.
@@ -241,6 +257,16 @@ saved = async () => null) {
241
257
  const shape = zodFor(t.inputSchema, notes, t.name).shape ?? {};
242
258
  return tool(t.name, t.description ?? '', shape, async (args) => {
243
259
  const sending = (args ?? {});
260
+ // An account-wide listing, narrowed to this agent's boards. Only when it did not name a
261
+ // board itself: asking about one of its own boards is its business, and a board outside
262
+ // the scope simply returns nothing, which is the honest answer.
263
+ if (boards.length && ACCOUNT_WIDE.has(t.name) && sending['board'] === undefined) {
264
+ // One rule for the shape of this argument, shared with the harness's own calls — see
265
+ // boardArg. The harness asks some of these questions itself, and the first version of
266
+ // this fix narrowed only the model's calls, which left the harness still picking up
267
+ // another team's cards.
268
+ sending['board'] = boardArg(boards);
269
+ }
244
270
  // A card is only finished when the work is in the branch and the branch is published. An
245
271
  // agent reported five pieces of work as done, one minute in, with an empty branch; nothing
246
272
  // but a person looking caught it. Now the tool that would say so refuses first.
@@ -1 +1 @@
1
- {"version":3,"file":"flaredeck-proxy.js","sourceRoot":"","sources":["../src/flaredeck-proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flaredeck-proxy.js","sourceRoot":"","sources":["../src/flaredeck-proxy.ts"],"names":[],"mappings":"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"}
@@ -92,6 +92,30 @@ export declare class Flaredeck {
92
92
  comments(card: string): Promise<Comment[]>;
93
93
  /** The whole card as the REST API returns it — fields, description as markdown, the thread. */
94
94
  card(idOrCode: string): Promise<any>;
95
+ /** Whether FlareDeck has this agent paused, and why. See flaredeck-mcp/src/mcp/pause.ts. */
96
+ pauseState(): Promise<{
97
+ check: string;
98
+ reason: string;
99
+ since: string;
100
+ ready?: boolean;
101
+ } | null>;
102
+ /** Pause this agent: its cards go back to its lead, the lead is told once, assign-card refuses it. */
103
+ pause(check: string, reason: string): Promise<{
104
+ already: boolean;
105
+ handedBack: string[];
106
+ lead: string | null;
107
+ }>;
108
+ /**
109
+ * Resume this agent itself. The server allows it only for walls that clear on their own (disk);
110
+ * anything else comes back `resumed: false` and stays the lead's decision. A server without the
111
+ * route answers 404, which the caller reads the same way.
112
+ */
113
+ resumeSelf(): Promise<{
114
+ resumed: boolean;
115
+ why?: string;
116
+ }>;
117
+ /** The wall is gone — tell the lead once. Resuming stays the lead's decision. */
118
+ ready(): Promise<void>;
95
119
  /** Every board with its lanes (key, name, type, order), as the REST API lists them. */
96
120
  boards(): Promise<Array<{
97
121
  id: string;
package/dist/flaredeck.js CHANGED
@@ -83,6 +83,26 @@ export class Flaredeck {
83
83
  async card(idOrCode) {
84
84
  return this.call(`/cards/${encodeURIComponent(idOrCode)}`);
85
85
  }
86
+ /** Whether FlareDeck has this agent paused, and why. See flaredeck-mcp/src/mcp/pause.ts. */
87
+ async pauseState() {
88
+ return (await this.call('/agents/me')).paused ?? null;
89
+ }
90
+ /** Pause this agent: its cards go back to its lead, the lead is told once, assign-card refuses it. */
91
+ async pause(check, reason) {
92
+ return this.call('/agents/me/pause', { method: 'POST', body: JSON.stringify({ check, reason }) });
93
+ }
94
+ /**
95
+ * Resume this agent itself. The server allows it only for walls that clear on their own (disk);
96
+ * anything else comes back `resumed: false` and stays the lead's decision. A server without the
97
+ * route answers 404, which the caller reads the same way.
98
+ */
99
+ async resumeSelf() {
100
+ return this.call('/agents/me/resume', { method: 'POST', body: '{}' });
101
+ }
102
+ /** The wall is gone — tell the lead once. Resuming stays the lead's decision. */
103
+ async ready() {
104
+ await this.call('/agents/me/ready', { method: 'POST', body: '{}' });
105
+ }
86
106
  /** Every board with its lanes (key, name, type, order), as the REST API lists them. */
87
107
  async boards() {
88
108
  return ((await this.call('/boards')).boards ?? []);
@@ -1 +1 @@
1
- {"version":3,"file":"flaredeck.js","sourceRoot":"","sources":["../src/flaredeck.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flaredeck.js","sourceRoot":"","sources":["../src/flaredeck.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA4CH,MAAM,OAAO,SAAS;IAQD;IACA;IACA;IATnB;;;;;OAKG;IACH,YACmB,QAAgB,EAChB,IAA2B,EAC3B,UAAU,+BAA+B;QAFzC,aAAQ,GAAR,QAAQ,CAAQ;QAChB,SAAI,GAAJ,IAAI,CAAuB;QAC3B,YAAO,GAAP,OAAO,CAAkC;IACzD,CAAC;IAEI,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,OAAoB,EAAE;QACrD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,OAAO,OAAO,IAAI,CAAC,QAAQ,GAAG,IAAI,EAAE,EAAE;YACpE,GAAG,IAAI;YACP,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,MAAM,IAAI,CAAC,IAAI,EAAE,EAAE;gBAC5C,cAAc,EAAE,kBAAkB;gBAClC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;aACxB;SACF,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,MAAM,KAAM,IAAY,EAAE,OAAO,IAAK,IAAY,EAAE,KAAK,IAAI,gBAAgB,EAAE,CAAC,CAAC;QACpH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,oFAAoF;IACpF,KAAK,CAAC,OAAO,CACX,IAAY,EACZ,OAAe,EACf,QAAsK;QAEtK,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,kBAAkB,CAAC,IAAI,CAAC,WAAW,EAAE;YACrE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;SACrE,CAAC,CAAY,CAAC;IACjB,CAAC;IAED,iFAAiF;IACjF,KAAK,CAAC,gBAAgB;QACpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QACzD,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,CAAC;IAED,iGAAiG;IACjG,KAAK,CAAC,aAAa;QACjB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;QACtE,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9D,CAAC;IAED,2EAA2E;IAC3E,KAAK,CAAC,OAAO,CAAC,SAAiB,EAAE,OAAe;QAC9C,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,kBAAkB,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC5H,CAAC;IAED,4FAA4F;IAC5F,KAAK,CAAC,QAAQ,CAAC,SAAiB;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1C,OAAO,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,IAAI,CAAC;IAC7D,CAAC;IAED,mGAAmG;IACnG,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,KAA8B,EAAE,IAAa;QAC3E,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,kBAAkB,CAAC,SAAS,CAAC,SAAS,EAAE;YACpE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;SAC3D,CAAC,CAAC;IACL,CAAC;IAED,qFAAqF;IACrF,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,KAAuB;QACrD,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,kBAAkB,CAAC,SAAS,CAAC,SAAS,EAAE;YACpE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC;SAChC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAAY;QACzB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpE,OAAO,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAc,CAAC;IAC7C,CAAC;IAED,+FAA+F;IAC/F,KAAK,CAAC,IAAI,CAAC,QAAgB;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED,4FAA4F;IAC5F,KAAK,CAAC,UAAU;QACd,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC;IACxD,CAAC;IAED,sGAAsG;IACtG,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,MAAc;QACvC,OAAO,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IACpG,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,UAAU;QACd,OAAO,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACxE,CAAC;IAED,iFAAiF;IACjF,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,CAAC;IAED,uFAAuF;IACvF,KAAK,CAAC,MAAM;QACV,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAU,CAAC;IAC9D,CAAC;IAED,mHAAmH;IACnH,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,IAAY,EAAE,YAAY,GAAG,IAAI;QACxD,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9I,CAAC;IAED,mDAAmD;IACnD,KAAK,CAAC,SAAS;QACb,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAkB,CAAC;IAC5E,CAAC;IAED,+FAA+F;IAC/F,KAAK,CAAC,cAAc,CAAC,IAA+H;QAClJ,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAgB,CAAC;IACxG,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAU;QAC7B,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IAChF,CAAC;CACF"}
package/dist/github.d.ts CHANGED
@@ -22,6 +22,8 @@ export type Job = {
22
22
  /** What a pull request targets, from the board's own configuration. */
23
23
  base: string;
24
24
  card: string;
25
+ /** Told when GitHub refuses the login itself — a wall no retry gets past. The harness pauses. */
26
+ onAuthFailure?: (why: string) => void;
25
27
  };
26
28
  /**
27
29
  * Publish a job's branch. Extracted from the tool it used to live inside because the OTHER engine
package/dist/github.js CHANGED
@@ -124,6 +124,7 @@ export async function publishBranch(j) {
124
124
  // only "push_branch failed" will try again, try git, and then go looking for another way —
125
125
  // and none of them can work, because nothing on this machine can authenticate.
126
126
  const why = e instanceof Error ? e.message : String(e);
127
+ j.onAuthFailure?.(why);
127
128
  return {
128
129
  ok: false,
129
130
  text: `STOP — this machine cannot authenticate to GitHub, so nothing can be published from it.\n\n` +
@@ -142,6 +143,9 @@ export async function publishBranch(j) {
142
143
  // Redact before anything is shown: git echoes the remote URL on failure, and that URL now
143
144
  // carries the token.
144
145
  const safe = out.split(token).join('[REDACTED]');
146
+ if (code !== 0 && /Invalid username or token|Authentication failed|Bad credentials|could not read Username/i.test(safe)) {
147
+ j.onAuthFailure?.(safe.split('\n').find((l) => /invalid|authentication|credentials/i.test(l)) ?? safe.slice(0, 200));
148
+ }
145
149
  return code === 0
146
150
  ? { ok: true, text: `Pushed ${branch}.\n${safe}` }
147
151
  : { ok: false, text: `Could not push ${branch}:\n${safe}` };
@@ -1 +1 @@
1
- {"version":3,"file":"github.js","sourceRoot":"","sources":["../src/github.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github.js","sourceRoot":"","sources":["../src/github.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,16 @@ export declare function freshGitHubToken(tokens: GitHubTokens, onRefreshed: (t:
27
27
  * sign used to be `push_branch failed` — after a card had been read, a worktree cut, the work
28
28
  * done and twenty minutes spent. An agent that cannot publish should not start.
29
29
  *
30
- * A classic token has no expiry and no refresh, so it passes without a call.
30
+ * A token that never expires is still asked about. "Never expires" is not "still valid": GitHub
31
+ * keeps only ten tokens per person per OAuth app and cancels the oldest when an eleventh is
32
+ * issued, so one login on another machine or for another repo quietly kills a token here. That
33
+ * used to pass this check without a call, and every agent on the machine then did a card's
34
+ * work and failed at push_branch with "Invalid username or token".
31
35
  */
32
36
  export declare function canPublish(tokens: GitHubTokens | undefined): Promise<string | null>;
37
+ /**
38
+ * Can this token push to the repository `remote` points at? A valid login is not enough: an
39
+ * organisation can refuse an OAuth app, and a token can lack the repo. Only a definite "no" counts
40
+ * — a network blip or a remote that is not on GitHub says nothing about the token.
41
+ */
42
+ export declare function canPushTo(token: string, remote: string): Promise<string | null>;
@@ -11,8 +11,13 @@
11
11
  */
12
12
  /** Public by design — a device-flow client has no secret, which is why it suits an unattended box. */
13
13
  export const GITHUB_CLIENT_ID = 'Ov23liGPUwgxEVJBsYlU';
14
- /** Read/write on the repos you can reach. Broad; a GitHub App would scope it per repo. */
15
- const SCOPE = 'repo';
14
+ /**
15
+ * Read/write on the repos you can reach, AND on their workflow files. Broad; a GitHub App would
16
+ * scope it per repo. `workflow` is not optional: without it GitHub refuses any push that touches
17
+ * `.github/workflows/`, so a card fixing CI did the work and could not publish it (KD-1397,
18
+ * KD-1310) — and nothing a retry or a different branch does gets past that.
19
+ */
20
+ const SCOPE = 'repo workflow';
16
21
  const form = async (url, body) => {
17
22
  const res = await fetch(url, {
18
23
  method: 'POST',
@@ -95,30 +100,91 @@ export async function freshGitHubToken(tokens, onRefreshed) {
95
100
  * sign used to be `push_branch failed` — after a card had been read, a worktree cut, the work
96
101
  * done and twenty minutes spent. An agent that cannot publish should not start.
97
102
  *
98
- * A classic token has no expiry and no refresh, so it passes without a call.
103
+ * A token that never expires is still asked about. "Never expires" is not "still valid": GitHub
104
+ * keeps only ten tokens per person per OAuth app and cancels the oldest when an eleventh is
105
+ * issued, so one login on another machine or for another repo quietly kills a token here. That
106
+ * used to pass this check without a call, and every agent on the machine then did a card's
107
+ * work and failed at push_branch with "Invalid username or token".
99
108
  */
100
109
  export async function canPublish(tokens) {
101
110
  if (!tokens?.accessToken) {
102
111
  return 'This machine has no GitHub login, so nothing it writes could be published.';
103
112
  }
104
- // A personal access token: nothing to refresh, nothing to check up front.
105
- if (!tokens.expiresAt || !tokens.refreshToken)
113
+ let token = tokens.accessToken;
114
+ if (tokens.expiresAt && tokens.refreshToken && Date.now() >= tokens.expiresAt - EARLY_MS) {
115
+ try {
116
+ token = await freshGitHubToken(tokens, () => { });
117
+ }
118
+ catch (e) {
119
+ return expired(e);
120
+ }
121
+ }
122
+ return gitHubAccepts(token);
123
+ }
124
+ /**
125
+ * Asks GitHub whether it still takes this token. Only a definite refusal counts: a network that
126
+ * is down for a moment says nothing about the token, and refusing to start over it would turn a
127
+ * blip into a dead agent.
128
+ */
129
+ async function gitHubAccepts(token) {
130
+ let status;
131
+ try {
132
+ const res = await fetch('https://api.github.com/user', {
133
+ headers: { Authorization: `Bearer ${token}`, Accept: 'application/vnd.github+json' },
134
+ signal: AbortSignal.timeout(10_000),
135
+ });
136
+ status = res.status;
137
+ }
138
+ catch {
106
139
  return null;
107
- if (Date.now() < tokens.expiresAt - EARLY_MS)
140
+ }
141
+ if (status !== 401)
108
142
  return null;
143
+ return ('GitHub no longer accepts the login stored for this repository (401 Bad credentials), so ' +
144
+ 'nothing the agent writes here could be pushed.\n\n' +
145
+ 'It did not expire. GitHub keeps ten logins per person for this app and cancels the oldest ' +
146
+ 'when another is made, on this machine or any other. Sign in again, or use a classic token, ' +
147
+ 'which does not count towards that limit:\n\n' +
148
+ ' flaredeck-agent login --github\n' +
149
+ ' flaredeck-agent login --github-token ghp_… (classic, repo + workflow scopes)');
150
+ }
151
+ function expired(e) {
152
+ const why = e instanceof Error ? e.message : String(e);
153
+ return (`This machine's GitHub login has expired and cannot renew itself.\n\n${why}\n\n` +
154
+ 'That is not a mistake you made: an OAuth token here is refreshed with a client secret, and ' +
155
+ 'this package is public so it has none. Sign in again, or — better for a machine nobody is ' +
156
+ 'watching — use a classic token, which does not expire:\n\n' +
157
+ ' flaredeck-agent login --github\n' +
158
+ ' flaredeck-agent login --github-token ghp_… (classic, repo + workflow scopes)\n\n' +
159
+ 'Starting without it would mean doing the work and then discovering it cannot be published.');
160
+ }
161
+ /**
162
+ * Can this token push to the repository `remote` points at? A valid login is not enough: an
163
+ * organisation can refuse an OAuth app, and a token can lack the repo. Only a definite "no" counts
164
+ * — a network blip or a remote that is not on GitHub says nothing about the token.
165
+ */
166
+ export async function canPushTo(token, remote) {
167
+ const m = remote.match(/github\.com[/:]([^/]+)\/([^/]+?)(?:\.git)?\/?$/);
168
+ if (!m)
169
+ return null;
170
+ let res;
109
171
  try {
110
- await freshGitHubToken(tokens, () => { });
172
+ res = await fetch(`https://api.github.com/repos/${m[1]}/${m[2]}`, {
173
+ headers: { Authorization: `Bearer ${token}`, Accept: 'application/vnd.github+json' },
174
+ signal: AbortSignal.timeout(10_000),
175
+ });
176
+ }
177
+ catch {
111
178
  return null;
112
179
  }
113
- catch (e) {
114
- const why = e instanceof Error ? e.message : String(e);
115
- return (`This machine's GitHub login has expired and cannot renew itself.\n\n${why}\n\n` +
116
- 'That is not a mistake you made: an OAuth token here is refreshed with a client secret, and ' +
117
- 'this package is public so it has none. Sign in again, or — better for a machine nobody is ' +
118
- 'watching — use a classic token, which does not expire:\n\n' +
119
- ' flaredeck-agent login --github\n' +
120
- ' flaredeck-agent login --github-token ghp_… (classic, repo scope)\n\n' +
121
- 'Starting without it would mean doing the work and then discovering it cannot be published.');
180
+ if (res.status === 401)
181
+ return `GitHub refuses this machine's login (401 Bad credentials).`;
182
+ if (res.status === 404 || res.status === 403) {
183
+ return `GitHub will not show ${m[1]}/${m[2]} to this machine's login (${res.status}) — the account has no access, or the organisation blocks the app.`;
122
184
  }
185
+ const body = (await res.json().catch(() => ({})));
186
+ if (body.permissions && body.permissions.push === false)
187
+ return `This machine's GitHub login can read ${m[1]}/${m[2]} but not push to it.`;
188
+ return null;
123
189
  }
124
190
  //# sourceMappingURL=githubauth.js.map