hacklab 0.15.1 → 0.17.0
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.
- package/dist/agent-handoff.d.ts +15 -10
- package/dist/agent-handoff.d.ts.map +1 -1
- package/dist/agent-handoff.js +12 -8
- package/dist/agent-handoff.js.map +1 -1
- package/dist/commands/login.d.ts +28 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +24 -9
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/scan.d.ts +1 -0
- package/dist/commands/scan.d.ts.map +1 -1
- package/dist/commands/scan.js +1 -1
- package/dist/commands/scan.js.map +1 -1
- package/dist/commands/setup-rail.d.ts +57 -0
- package/dist/commands/setup-rail.d.ts.map +1 -0
- package/dist/commands/setup-rail.js +134 -0
- package/dist/commands/setup-rail.js.map +1 -0
- package/dist/commands/setup.d.ts +7 -0
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +146 -76
- package/dist/commands/setup.js.map +1 -1
- package/dist/ui.d.ts +1 -0
- package/dist/ui.d.ts.map +1 -1
- package/dist/ui.js +3 -0
- package/dist/ui.js.map +1 -1
- package/package.json +1 -1
package/dist/agent-handoff.d.ts
CHANGED
|
@@ -5,9 +5,10 @@
|
|
|
5
5
|
* it, answers its permission prompts, and (if the agent CLI is installed but
|
|
6
6
|
* logged out) walks its own login flow. Nothing here is silent or headless.
|
|
7
7
|
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
8
|
+
* Every outcome is reported to the backend, because the web onboarding waits
|
|
9
|
+
* only on positive evidence: a `launched` says an agent is running and the page
|
|
10
|
+
* should sit on "waiting for your agent"; `declined` / `unavailable` (and no
|
|
11
|
+
* signal at all) put the manual paste-the-prompt step up instead.
|
|
11
12
|
*/
|
|
12
13
|
export type AgentCli = {
|
|
13
14
|
/** Executable name, as it appears on PATH. */
|
|
@@ -33,14 +34,18 @@ export declare function findAgentCli(): AgentCli | null;
|
|
|
33
34
|
*/
|
|
34
35
|
export declare function launchAgentCli(agent: AgentCli, prompt: string): boolean;
|
|
35
36
|
/**
|
|
36
|
-
* Tell the backend
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
37
|
+
* Tell the backend what happened to the profile work, so the web onboarding
|
|
38
|
+
* knows which state to show: `launched` is the positive evidence that an agent
|
|
39
|
+
* is now running and the page should wait for it; `declined` and `unavailable`
|
|
40
|
+
* mean nobody took it, so the page shows the manual paste-the-prompt step
|
|
41
|
+
* instead of waiting for a ping that is never coming.
|
|
42
|
+
*
|
|
43
|
+
* Best effort by design: a failure (offline, or a backend too old to know the
|
|
44
|
+
* `launched` outcome and 400ing it) must never break the end of setup.
|
|
41
45
|
*
|
|
42
46
|
* Server contract (POST /api/cli/agent-handoff):
|
|
43
|
-
* `Authorization: Bearer <session token>`, body `{ outcome }
|
|
47
|
+
* `Authorization: Bearer <session token>`, body `{ outcome, agent? }`,
|
|
48
|
+
* where `agent` is the binary name we launched or offered (e.g. `claude`).
|
|
44
49
|
*/
|
|
45
|
-
export declare function notifyAgentHandoff(appUrl: string, token: string, outcome: 'unavailable' | 'declined'): Promise<void>;
|
|
50
|
+
export declare function notifyAgentHandoff(appUrl: string, token: string, outcome: 'launched' | 'unavailable' | 'declined', agent?: string): Promise<void>;
|
|
46
51
|
//# sourceMappingURL=agent-handoff.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-handoff.d.ts","sourceRoot":"","sources":["../src/agent-handoff.ts"],"names":[],"mappings":"AAIA
|
|
1
|
+
{"version":3,"file":"agent-handoff.d.ts","sourceRoot":"","sources":["../src/agent-handoff.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AAEH,MAAM,MAAM,QAAQ,GAAG;IACrB,8CAA8C;IAC9C,GAAG,EAAE,MAAM,CAAA;IACX,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAA;IACZ,8DAA8D;IAC9D,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,EAAE,CAAA;CACnC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,UAAU,EAAE,QAAQ,EAIhC,CAAA;AA2BD,+EAA+E;AAC/E,wBAAgB,YAAY,IAAI,QAAQ,GAAG,IAAI,CAE9C;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAWvE;AAID;;;;;;;;;;;;;GAaG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,UAAU,GAAG,aAAa,GAAG,UAAU,EAChD,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CAcf"}
|
package/dist/agent-handoff.js
CHANGED
|
@@ -59,16 +59,20 @@ export function launchAgentCli(agent, prompt) {
|
|
|
59
59
|
}
|
|
60
60
|
const HANDOFF_TIMEOUT_MS = 8000;
|
|
61
61
|
/**
|
|
62
|
-
* Tell the backend
|
|
63
|
-
*
|
|
64
|
-
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
62
|
+
* Tell the backend what happened to the profile work, so the web onboarding
|
|
63
|
+
* knows which state to show: `launched` is the positive evidence that an agent
|
|
64
|
+
* is now running and the page should wait for it; `declined` and `unavailable`
|
|
65
|
+
* mean nobody took it, so the page shows the manual paste-the-prompt step
|
|
66
|
+
* instead of waiting for a ping that is never coming.
|
|
67
|
+
*
|
|
68
|
+
* Best effort by design: a failure (offline, or a backend too old to know the
|
|
69
|
+
* `launched` outcome and 400ing it) must never break the end of setup.
|
|
67
70
|
*
|
|
68
71
|
* Server contract (POST /api/cli/agent-handoff):
|
|
69
|
-
* `Authorization: Bearer <session token>`, body `{ outcome }
|
|
72
|
+
* `Authorization: Bearer <session token>`, body `{ outcome, agent? }`,
|
|
73
|
+
* where `agent` is the binary name we launched or offered (e.g. `claude`).
|
|
70
74
|
*/
|
|
71
|
-
export async function notifyAgentHandoff(appUrl, token, outcome) {
|
|
75
|
+
export async function notifyAgentHandoff(appUrl, token, outcome, agent) {
|
|
72
76
|
try {
|
|
73
77
|
await fetch(`${appUrl}/api/cli/agent-handoff`, {
|
|
74
78
|
method: 'POST',
|
|
@@ -76,7 +80,7 @@ export async function notifyAgentHandoff(appUrl, token, outcome) {
|
|
|
76
80
|
'Content-Type': 'application/json',
|
|
77
81
|
Authorization: `Bearer ${token}`,
|
|
78
82
|
},
|
|
79
|
-
body: JSON.stringify({ outcome }),
|
|
83
|
+
body: JSON.stringify({ outcome, ...(agent ? { agent } : {}) }),
|
|
80
84
|
signal: AbortSignal.timeout(HANDOFF_TIMEOUT_MS),
|
|
81
85
|
});
|
|
82
86
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-handoff.js","sourceRoot":"","sources":["../src/agent-handoff.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAC/C,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"agent-handoff.js","sourceRoot":"","sources":["../src/agent-handoff.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/login.d.ts
CHANGED
|
@@ -1,4 +1,29 @@
|
|
|
1
1
|
import { type Session } from '../session.js';
|
|
2
|
+
/**
|
|
3
|
+
* How the device-code beat is drawn.
|
|
4
|
+
*
|
|
5
|
+
* There is one device flow, and two commands that wear it: bare `login`, whose
|
|
6
|
+
* output is DESIGN.md's reference block, and `setup`, which draws the same code
|
|
7
|
+
* and URL on its step rail and rubs the block out once auth lands. Only the
|
|
8
|
+
* drawing is swappable — the Enter-wait ↔ poll race below is identical either
|
|
9
|
+
* way, because "authorize on your phone and never touch Enter" has to keep
|
|
10
|
+
* working.
|
|
11
|
+
*/
|
|
12
|
+
export type DeviceCodeRenderer = {
|
|
13
|
+
/** Draw the code + URL beat. Returns the prompt for the Enter pause. */
|
|
14
|
+
show(code: {
|
|
15
|
+
userCode: string;
|
|
16
|
+
verificationUri: string;
|
|
17
|
+
}): string;
|
|
18
|
+
/**
|
|
19
|
+
* Called once the poll settles, success or failure. A renderer that redraws
|
|
20
|
+
* cleans up here; `enterPressed` tells it whether the user's Enter already
|
|
21
|
+
* moved the cursor off the prompt row.
|
|
22
|
+
*/
|
|
23
|
+
done(outcome: {
|
|
24
|
+
enterPressed: boolean;
|
|
25
|
+
}): void;
|
|
26
|
+
};
|
|
2
27
|
export type LoginOutcome = {
|
|
3
28
|
/** The session as it now stands (already persisted by `performLogin`). */
|
|
4
29
|
session: Session;
|
|
@@ -17,10 +42,12 @@ export type LoginOutcome = {
|
|
|
17
42
|
* The shared implementation behind both `hacklab login` and `hacklab setup` —
|
|
18
43
|
* there is exactly one device flow (the code/URL beat with the parallel
|
|
19
44
|
* Enter-wait ↔ poll race), and both front doors go through it. `claimAttempts`
|
|
20
|
-
* is how hard the handle claim tries before giving up
|
|
45
|
+
* is how hard the handle claim tries before giving up, and `deviceCode` swaps
|
|
46
|
+
* the code/URL presentation without touching the race behind it.
|
|
21
47
|
*/
|
|
22
48
|
export declare function performLogin(opts?: {
|
|
23
49
|
claimAttempts?: number;
|
|
50
|
+
deviceCode?: DeviceCodeRenderer;
|
|
24
51
|
}): Promise<LoginOutcome>;
|
|
25
52
|
/**
|
|
26
53
|
* Make sure the session's handle is actually claimed, resolving it from the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,OAAO,EAEb,MAAM,eAAe,CAAA;AAatB,MAAM,MAAM,YAAY,GAAG;IACzB,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAA;IAChB;;;;;OAKG;IACH,WAAW,EAAE,OAAO,CAAA;CACrB,CAAA;AAED
|
|
1
|
+
{"version":3,"file":"login.d.ts","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,KAAK,OAAO,EAEb,MAAM,eAAe,CAAA;AAatB;;;;;;;;;GASG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,wEAAwE;IACxE,IAAI,CAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,CAAA;IACjE;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE;QAAE,YAAY,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAA;CAC/C,CAAA;AAgBD,MAAM,MAAM,YAAY,GAAG;IACzB,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAA;IAChB;;;;;OAKG;IACH,WAAW,EAAE,OAAO,CAAA;CACrB,CAAA;AAED;;;;;;;;;GASG;AACH,wBAAsB,YAAY,CAChC,IAAI,GAAE;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,kBAAkB,CAAA;CAAO,GACrE,OAAO,CAAC,YAAY,CAAC,CAoBvB;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,OAAO,EAChB,QAAQ,SAAI,GACX,OAAO,CAAC,YAAY,CAAC,CA8BvB;AAED;;;;GAIG;AACH,wBAAsB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAgB3C"}
|
package/dist/commands/login.js
CHANGED
|
@@ -4,6 +4,19 @@ import { getAppUrl, resolveAppUrl, saveSession, } from '../session.js';
|
|
|
4
4
|
import { bold, dim, link } from '../ui.js';
|
|
5
5
|
import { openBrowser } from '../utils/openBrowser.js';
|
|
6
6
|
import { waitForEnter } from '../utils/waitForEnter.js';
|
|
7
|
+
/** DESIGN.md's reference block: dim label, bold code, blank beat, URL. */
|
|
8
|
+
const plainDeviceCode = {
|
|
9
|
+
show({ userCode, verificationUri }) {
|
|
10
|
+
console.log(dim('copy code'));
|
|
11
|
+
console.log(bold(userCode));
|
|
12
|
+
console.log('');
|
|
13
|
+
console.log(link(verificationUri));
|
|
14
|
+
return '(press enter) ';
|
|
15
|
+
},
|
|
16
|
+
done() {
|
|
17
|
+
// Nothing to undo: the block is meant to stay on screen.
|
|
18
|
+
},
|
|
19
|
+
};
|
|
7
20
|
/**
|
|
8
21
|
* Authenticate via GitHub's device flow and persist the session. Unknown GitHub
|
|
9
22
|
* identities get an account. An unclaimed GitHub-derived handle is claimed as-is.
|
|
@@ -11,11 +24,12 @@ import { waitForEnter } from '../utils/waitForEnter.js';
|
|
|
11
24
|
* The shared implementation behind both `hacklab login` and `hacklab setup` —
|
|
12
25
|
* there is exactly one device flow (the code/URL beat with the parallel
|
|
13
26
|
* Enter-wait ↔ poll race), and both front doors go through it. `claimAttempts`
|
|
14
|
-
* is how hard the handle claim tries before giving up
|
|
27
|
+
* is how hard the handle claim tries before giving up, and `deviceCode` swaps
|
|
28
|
+
* the code/URL presentation without touching the race behind it.
|
|
15
29
|
*/
|
|
16
30
|
export async function performLogin(opts = {}) {
|
|
17
31
|
const appUrl = getAppUrl();
|
|
18
|
-
const creds = await loginViaDevice(appUrl);
|
|
32
|
+
const creds = await loginViaDevice(appUrl, opts.deviceCode);
|
|
19
33
|
const outcome = await ensureHandleClaimed({
|
|
20
34
|
token: creds.token,
|
|
21
35
|
email: creds.email,
|
|
@@ -85,7 +99,7 @@ export async function login() {
|
|
|
85
99
|
});
|
|
86
100
|
}
|
|
87
101
|
}
|
|
88
|
-
async function loginViaDevice(appUrl) {
|
|
102
|
+
async function loginViaDevice(appUrl, render = plainDeviceCode) {
|
|
89
103
|
let startRes;
|
|
90
104
|
try {
|
|
91
105
|
startRes = await fetch(`${appUrl}/api/cli/device/start`, {
|
|
@@ -106,23 +120,24 @@ async function loginViaDevice(appUrl) {
|
|
|
106
120
|
// Show the code and URL first. Poll starts immediately so clicking the
|
|
107
121
|
// link (instead of Enter) still finishes login. Enter only opens a browser.
|
|
108
122
|
const openUrl = start.verificationUriComplete ?? start.verificationUri;
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
123
|
+
const enterPrompt = render.show({
|
|
124
|
+
userCode: start.userCode,
|
|
125
|
+
verificationUri: start.verificationUri,
|
|
126
|
+
});
|
|
113
127
|
const abort = new AbortController();
|
|
114
128
|
if (!process.stdin.isTTY)
|
|
115
129
|
void openBrowser(openUrl);
|
|
116
|
-
const enter = waitForEnter(
|
|
130
|
+
const enter = waitForEnter(enterPrompt, abort.signal).then((pressed) => {
|
|
117
131
|
if (pressed)
|
|
118
132
|
void openBrowser(openUrl);
|
|
133
|
+
return pressed;
|
|
119
134
|
});
|
|
120
135
|
try {
|
|
121
136
|
return await pollDevice(appUrl, start.deviceCode, start.expiresIn, start.interval);
|
|
122
137
|
}
|
|
123
138
|
finally {
|
|
124
139
|
abort.abort();
|
|
125
|
-
await enter;
|
|
140
|
+
render.done({ enterPressed: await enter });
|
|
126
141
|
}
|
|
127
142
|
}
|
|
128
143
|
async function pollDevice(appUrl, deviceCode, expiresIn, interval) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAA;AAC1D,OAAO,EACL,SAAS,EACT,aAAa,EAEb,WAAW,GACZ,MAAM,eAAe,CAAA;AACtB,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAC1C,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/commands/login.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/scan.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../src/commands/scan.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,aAAa,EAMnB,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../../src/commands/scan.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,KAAK,aAAa,EAMnB,MAAM,sBAAsB,CAAA;AAiB7B,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQ9C,CAAA;AAED;;;;;;;GAOG;AACH,wBAAsB,IAAI,CAAC,IAAI,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAyI7D;AAUD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,EAAE,CAsC/D"}
|
package/dist/commands/scan.js
CHANGED
|
@@ -11,7 +11,7 @@ import { promptShareOnX, renderShareCard, } from '../share.js';
|
|
|
11
11
|
import { checkSession, ensureFreshSession, uploadTokenScan } from '../sync.js';
|
|
12
12
|
import { bold, dim, error, info } from '../ui.js';
|
|
13
13
|
const MAX_MODELS = 8;
|
|
14
|
-
const TOOL_LABELS = {
|
|
14
|
+
export const TOOL_LABELS = {
|
|
15
15
|
claude_code: 'claude',
|
|
16
16
|
codex: 'codex',
|
|
17
17
|
cursor: 'cursor',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scan.js","sourceRoot":"","sources":["../../src/commands/scan.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scan.js","sourceRoot":"","sources":["../../src/commands/scan.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { DeviceCodeRenderer } from './login.js';
|
|
2
|
+
/**
|
|
3
|
+
* True when the cursor can be walked back over what we printed: a real terminal
|
|
4
|
+
* that reports a width. Down a pipe the escape codes are litter, and a pty that
|
|
5
|
+
* reports zero columns turns row arithmetic — ours and clack's `taskLog` — into
|
|
6
|
+
* a divide by zero.
|
|
7
|
+
*/
|
|
8
|
+
export declare function canRedraw(): boolean;
|
|
9
|
+
/**
|
|
10
|
+
* A run of rail lines that can rub itself out.
|
|
11
|
+
*
|
|
12
|
+
* Accounting is in terminal *rows*, not lines printed: a narrow window wraps a
|
|
13
|
+
* long verification URL onto two, and erasing one row too few leaves a stripe
|
|
14
|
+
* of the old block behind while one too many eats the step above it. Styled
|
|
15
|
+
* text is measured through its plain twin, since ANSI and OSC-8 escapes occupy
|
|
16
|
+
* no columns.
|
|
17
|
+
*/
|
|
18
|
+
export declare class RailBlock {
|
|
19
|
+
private rows;
|
|
20
|
+
/** Print one line. `plain` is the same text stripped of styling. */
|
|
21
|
+
line(styled: string, plain?: string): void;
|
|
22
|
+
/**
|
|
23
|
+
* Count a row drawn by something else that left the cursor parked on it — a
|
|
24
|
+
* `waitForEnter` prompt, which deliberately prints no newline of its own.
|
|
25
|
+
*/
|
|
26
|
+
prompt(plain: string): void;
|
|
27
|
+
/**
|
|
28
|
+
* Erase the block. `cursor` is where the terminal left us: `below` when the
|
|
29
|
+
* last thing written ended in a newline (including the one the user's Enter
|
|
30
|
+
* echoed), `inline` when the cursor still sits on the block's last row.
|
|
31
|
+
*/
|
|
32
|
+
erase(cursor: 'below' | 'inline'): void;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* `setup`'s device-code beat, modelled on GitHub's own CLI:
|
|
36
|
+
*
|
|
37
|
+
* ```
|
|
38
|
+
* │
|
|
39
|
+
* ▲ first copy your one-time code: C98F-E695
|
|
40
|
+
* │
|
|
41
|
+
* │ Press Enter to open https://github.com/login/device in your browser...
|
|
42
|
+
* ```
|
|
43
|
+
*
|
|
44
|
+
* The code is the one thing on screen the user has to act on, so it gets the
|
|
45
|
+
* attention glyph and the mint. Once GitHub answers, the block has served its
|
|
46
|
+
* purpose and the caller replaces all four rows with one `◇ github · …` line.
|
|
47
|
+
*/
|
|
48
|
+
export declare function railDeviceCode(): DeviceCodeRenderer;
|
|
49
|
+
/**
|
|
50
|
+
* The agent-handoff offer, drawn as a block that clears once answered. Enter is
|
|
51
|
+
* the accept here, so the prompt says so plainly and anything else is a no.
|
|
52
|
+
*/
|
|
53
|
+
export declare function railAgentOffer(agentName: string): {
|
|
54
|
+
prompt: string;
|
|
55
|
+
settle(): void;
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=setup-rail.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-rail.d.ts","sourceRoot":"","sources":["../../src/commands/setup-rail.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAmBpD;;;;;GAKG;AACH,wBAAgB,SAAS,IAAI,OAAO,CAMnC;AAiBD;;;;;;;;GAQG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,IAAI,CAAI;IAEhB,oEAAoE;IACpE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,GAAE,MAAe,GAAG,IAAI;IAKlD;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI3B;;;;OAIG;IACH,KAAK,CAAC,MAAM,EAAE,OAAO,GAAG,QAAQ,GAAG,IAAI;CAKxC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,IAAI,kBAAkB,CA0BnD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG;IACjD,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,IAAI,IAAI,CAAA;CACf,CAsBA"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { S_BAR, S_WARN } from '@clack/prompts';
|
|
2
|
+
import { bold, dim, displayWidth, gray, link, mint, yellow } from '../ui.js';
|
|
3
|
+
/**
|
|
4
|
+
* The step rail `setup` is drawn on.
|
|
5
|
+
*
|
|
6
|
+
* Everything clack prints — prompts, `log.*`, spinners, `taskLog` — hangs off a
|
|
7
|
+
* `│` gutter and leaves one `◇` line per finished step. Two beats of `setup`
|
|
8
|
+
* can't be a clack widget (the GitHub code beat races an Enter-wait against a
|
|
9
|
+
* poll; the agent offer waits on a bare Enter), so they are drawn here by hand
|
|
10
|
+
* in the same vocabulary and, like every other step, collapse to one line when
|
|
11
|
+
* they are done.
|
|
12
|
+
*/
|
|
13
|
+
/** Columns to wrap at. 80 is what a terminal that won't say implies. */
|
|
14
|
+
function width() {
|
|
15
|
+
const cols = process.stdout.columns;
|
|
16
|
+
return typeof cols === 'number' && cols > 0 ? cols : 80;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* True when the cursor can be walked back over what we printed: a real terminal
|
|
20
|
+
* that reports a width. Down a pipe the escape codes are litter, and a pty that
|
|
21
|
+
* reports zero columns turns row arithmetic — ours and clack's `taskLog` — into
|
|
22
|
+
* a divide by zero.
|
|
23
|
+
*/
|
|
24
|
+
export function canRedraw() {
|
|
25
|
+
return (process.stdout.isTTY === true &&
|
|
26
|
+
typeof process.stdout.columns === 'number' &&
|
|
27
|
+
process.stdout.columns > 0);
|
|
28
|
+
}
|
|
29
|
+
/** Terminal rows a plain, unstyled line occupies at the current width. */
|
|
30
|
+
function rowsFor(plain) {
|
|
31
|
+
return Math.max(1, Math.ceil(displayWidth(plain) / width()));
|
|
32
|
+
}
|
|
33
|
+
const ERASE_LINE = '\u001b[2K';
|
|
34
|
+
const CURSOR_UP = '\u001b[1A';
|
|
35
|
+
/** Erase `count` rows, ending on the topmost one with the cursor at column 1. */
|
|
36
|
+
function eraseRows(count) {
|
|
37
|
+
let out = ERASE_LINE;
|
|
38
|
+
for (let i = 1; i < count; i++)
|
|
39
|
+
out += CURSOR_UP + ERASE_LINE;
|
|
40
|
+
return `${out}\r`;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* A run of rail lines that can rub itself out.
|
|
44
|
+
*
|
|
45
|
+
* Accounting is in terminal *rows*, not lines printed: a narrow window wraps a
|
|
46
|
+
* long verification URL onto two, and erasing one row too few leaves a stripe
|
|
47
|
+
* of the old block behind while one too many eats the step above it. Styled
|
|
48
|
+
* text is measured through its plain twin, since ANSI and OSC-8 escapes occupy
|
|
49
|
+
* no columns.
|
|
50
|
+
*/
|
|
51
|
+
export class RailBlock {
|
|
52
|
+
rows = 0;
|
|
53
|
+
/** Print one line. `plain` is the same text stripped of styling. */
|
|
54
|
+
line(styled, plain = styled) {
|
|
55
|
+
console.log(styled);
|
|
56
|
+
this.rows += rowsFor(plain);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Count a row drawn by something else that left the cursor parked on it — a
|
|
60
|
+
* `waitForEnter` prompt, which deliberately prints no newline of its own.
|
|
61
|
+
*/
|
|
62
|
+
prompt(plain) {
|
|
63
|
+
this.rows += rowsFor(plain);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Erase the block. `cursor` is where the terminal left us: `below` when the
|
|
67
|
+
* last thing written ended in a newline (including the one the user's Enter
|
|
68
|
+
* echoed), `inline` when the cursor still sits on the block's last row.
|
|
69
|
+
*/
|
|
70
|
+
erase(cursor) {
|
|
71
|
+
const rows = this.rows + (cursor === 'below' ? 1 : 0);
|
|
72
|
+
this.rows = 0;
|
|
73
|
+
if (rows > 0 && canRedraw())
|
|
74
|
+
process.stdout.write(eraseRows(rows));
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* `setup`'s device-code beat, modelled on GitHub's own CLI:
|
|
79
|
+
*
|
|
80
|
+
* ```
|
|
81
|
+
* │
|
|
82
|
+
* ▲ first copy your one-time code: C98F-E695
|
|
83
|
+
* │
|
|
84
|
+
* │ Press Enter to open https://github.com/login/device in your browser...
|
|
85
|
+
* ```
|
|
86
|
+
*
|
|
87
|
+
* The code is the one thing on screen the user has to act on, so it gets the
|
|
88
|
+
* attention glyph and the mint. Once GitHub answers, the block has served its
|
|
89
|
+
* purpose and the caller replaces all four rows with one `◇ github · …` line.
|
|
90
|
+
*/
|
|
91
|
+
export function railDeviceCode() {
|
|
92
|
+
const block = new RailBlock();
|
|
93
|
+
let enterPlain = '';
|
|
94
|
+
return {
|
|
95
|
+
show({ userCode, verificationUri }) {
|
|
96
|
+
block.line(gray(S_BAR));
|
|
97
|
+
block.line(`${yellow(S_WARN)} first copy your one-time code: ${mint(userCode)}`, `${S_WARN} first copy your one-time code: ${userCode}`);
|
|
98
|
+
block.line(gray(S_BAR));
|
|
99
|
+
enterPlain = `${S_BAR} Press Enter to open ${verificationUri} in your browser... `;
|
|
100
|
+
return `${gray(S_BAR)} ${bold('Press Enter')} to open ${link(verificationUri)} in your browser... `;
|
|
101
|
+
},
|
|
102
|
+
done({ enterPressed }) {
|
|
103
|
+
// No TTY means `waitForEnter` printed nothing and returned at once, so
|
|
104
|
+
// there is no prompt row to account for.
|
|
105
|
+
if (!process.stdin.isTTY) {
|
|
106
|
+
block.erase('below');
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
block.prompt(enterPlain);
|
|
110
|
+
block.erase(enterPressed ? 'below' : 'inline');
|
|
111
|
+
},
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* The agent-handoff offer, drawn as a block that clears once answered. Enter is
|
|
116
|
+
* the accept here, so the prompt says so plainly and anything else is a no.
|
|
117
|
+
*/
|
|
118
|
+
export function railAgentOffer(agentName) {
|
|
119
|
+
const block = new RailBlock();
|
|
120
|
+
block.line(gray(S_BAR));
|
|
121
|
+
block.line(`${gray(S_BAR)} found ${bold(agentName)} — it can set up your profile now`, `${S_BAR} found ${agentName} — it can set up your profile now`);
|
|
122
|
+
block.line(`${gray(S_BAR)} ${dim('it runs here in your terminal, and you approve what it does')}`, `${S_BAR} it runs here in your terminal, and you approve what it does`);
|
|
123
|
+
const plain = `${S_BAR} Press Enter to hand off · anything else skips `;
|
|
124
|
+
return {
|
|
125
|
+
prompt: `${gray(S_BAR)} ${bold('Press Enter')} to hand off ${dim('· anything else skips')} `,
|
|
126
|
+
settle() {
|
|
127
|
+
// Reached only after a line was read, so the echoed newline has already
|
|
128
|
+
// moved the cursor below the prompt row.
|
|
129
|
+
block.prompt(plain);
|
|
130
|
+
block.erase('below');
|
|
131
|
+
},
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=setup-rail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup-rail.js","sourceRoot":"","sources":["../../src/commands/setup-rail.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/setup.d.ts
CHANGED
|
@@ -10,6 +10,13 @@
|
|
|
10
10
|
* has never used hacklab, and people stalled between them. Each stage still
|
|
11
11
|
* degrades on its own terms, and every piece remains its own command for anyone
|
|
12
12
|
* who wants to re-run just that piece.
|
|
13
|
+
*
|
|
14
|
+
* It is also the one command allowed clack chrome, and it spends that allowance
|
|
15
|
+
* on being *one* flow: every line goes on the step rail, and every stage ends as
|
|
16
|
+
* a single line naming the stage and how it went. What a stage shows while it is
|
|
17
|
+
* working — the per-tool receipt, the GitHub code — has done its job by the time
|
|
18
|
+
* the next stage starts, so it comes back off the screen. `setup-rail.ts` holds
|
|
19
|
+
* the two blocks clack has no widget for.
|
|
13
20
|
*/
|
|
14
21
|
export declare function setup(): Promise<void>;
|
|
15
22
|
//# sourceMappingURL=setup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAoCA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CA6K3C"}
|
package/dist/commands/setup.js
CHANGED
|
@@ -5,13 +5,15 @@ import { captureEvent, identifyUser } from '../posthog.js';
|
|
|
5
5
|
import { loadPromptConsent, savePromptConsent, } from '../prompt-consent.js';
|
|
6
6
|
import { rebuildScanState } from '../scanners/incremental.js';
|
|
7
7
|
import { collectToolScans, mergeToolScans, } from '../scanners/index.js';
|
|
8
|
+
import { formatTokens } from '../scanners/util.js';
|
|
8
9
|
import { loadSession, resolveAppUrl, saveSession, } from '../session.js';
|
|
9
10
|
import { scanConsentedPromptStats, uploadTokenScan } from '../sync.js';
|
|
10
|
-
import { bold, dim
|
|
11
|
+
import { bold, dim } from '../ui.js';
|
|
11
12
|
import { waitForBareEnter } from '../utils/waitForEnter.js';
|
|
12
13
|
import { ensureHandleClaimed, performLogin } from './login.js';
|
|
13
14
|
import { PROFILE_SETUP_PROMPT } from './rtfm.js';
|
|
14
|
-
import {
|
|
15
|
+
import { TOOL_LABELS } from './scan.js';
|
|
16
|
+
import { canRedraw, railAgentOffer, railDeviceCode } from './setup-rail.js';
|
|
15
17
|
/**
|
|
16
18
|
* `hacklab setup` — the front door.
|
|
17
19
|
*
|
|
@@ -24,11 +26,17 @@ import { formatScanReceipt } from './scan.js';
|
|
|
24
26
|
* has never used hacklab, and people stalled between them. Each stage still
|
|
25
27
|
* degrades on its own terms, and every piece remains its own command for anyone
|
|
26
28
|
* who wants to re-run just that piece.
|
|
29
|
+
*
|
|
30
|
+
* It is also the one command allowed clack chrome, and it spends that allowance
|
|
31
|
+
* on being *one* flow: every line goes on the step rail, and every stage ends as
|
|
32
|
+
* a single line naming the stage and how it went. What a stage shows while it is
|
|
33
|
+
* working — the per-tool receipt, the GitHub code — has done its job by the time
|
|
34
|
+
* the next stage starts, so it comes back off the screen. `setup-rail.ts` holds
|
|
35
|
+
* the two blocks clack has no widget for.
|
|
27
36
|
*/
|
|
28
37
|
export async function setup() {
|
|
29
38
|
clack.intro(bold('Hacklab CLI setup'));
|
|
30
|
-
|
|
31
|
-
console.log('');
|
|
39
|
+
clack.log.message(dim('scans your AI usage, connects GitHub, and starts a background usage sync'));
|
|
32
40
|
const existing = await loadSession();
|
|
33
41
|
const appUrl = resolveAppUrl(existing);
|
|
34
42
|
const syncState = await dailySyncState();
|
|
@@ -36,36 +44,41 @@ export async function setup() {
|
|
|
36
44
|
// A finished account AND a live daemon means there is genuinely nothing to
|
|
37
45
|
// do. Anything less falls through and skips only the stages already done.
|
|
38
46
|
if (existing?.handle && existing.usernameClaimed && syncState === 'current') {
|
|
39
|
-
|
|
40
|
-
|
|
47
|
+
clack.log.step(`already set up — you're ${bold(`@${existing.handle}`)}`);
|
|
48
|
+
clack.log.message(dim('re-scan with `hacklab scan`, re-upload with `hacklab sync`'), { spacing: 0 });
|
|
41
49
|
clack.outro(dim(`${appUrl}/${existing.handle}`));
|
|
42
50
|
return;
|
|
43
51
|
}
|
|
44
52
|
// ── Scan (before auth — an anonymous scan needs no account) ──────────────
|
|
45
|
-
const
|
|
46
|
-
spin.start('scanning local AI tool usage');
|
|
53
|
+
const scanStep = startScanStep();
|
|
47
54
|
let results;
|
|
48
55
|
try {
|
|
49
56
|
results = await collectToolScans();
|
|
50
57
|
}
|
|
51
58
|
catch (err) {
|
|
52
|
-
|
|
59
|
+
scanStep.failed('scan failed');
|
|
53
60
|
clack.cancel(`couldn't read local AI usage: ${err instanceof Error ? err.message : String(err)}`);
|
|
54
61
|
process.exit(1);
|
|
55
62
|
}
|
|
56
|
-
spin.stop('scan complete');
|
|
57
63
|
const scan = mergeToolScans(results);
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
64
|
+
// The per-tool tally is worth reading while the rank call is in flight and
|
|
65
|
+
// worth nothing after it — `hacklab scan` is where it lives permanently, and
|
|
66
|
+
// the share card carries it onward. So it goes inside the step, and leaves
|
|
67
|
+
// with it.
|
|
68
|
+
for (const line of scanNotes(scan))
|
|
69
|
+
scanStep.note(line);
|
|
70
|
+
// ── Anonymous rank preview (a hook, never a gate) ────────────────────────
|
|
71
|
+
const preview = scan.grandTotal > 0 ? await fetchRankPreview(appUrl, scan.grandTotal) : null;
|
|
72
|
+
scanStep.done(scanSummary(scan));
|
|
73
|
+
if (preview) {
|
|
74
|
+
clack.log.step(`you'd be #${preview.rank} of ${preview.ofTotal.toLocaleString('en-US')} hackers`);
|
|
63
75
|
}
|
|
64
|
-
|
|
76
|
+
if (scan.grandTotal === 0) {
|
|
65
77
|
// No hard floor: a hackathon-door signup on a fresh laptop is exactly who
|
|
66
|
-
// this flow is for, so the default is yes.
|
|
78
|
+
// this flow is for, so the default is yes. The step above already said
|
|
79
|
+
// there is nothing here, so the question only has to be the question.
|
|
67
80
|
const cont = await clack.confirm({
|
|
68
|
-
message: '
|
|
81
|
+
message: 'set up your account anyway?',
|
|
69
82
|
initialValue: true,
|
|
70
83
|
});
|
|
71
84
|
if (clack.isCancel(cont) || !cont) {
|
|
@@ -73,16 +86,6 @@ export async function setup() {
|
|
|
73
86
|
return;
|
|
74
87
|
}
|
|
75
88
|
}
|
|
76
|
-
// ── Anonymous rank preview (a hook, never a gate) ────────────────────────
|
|
77
|
-
let previewRank;
|
|
78
|
-
if (scan.grandTotal > 0) {
|
|
79
|
-
const preview = await fetchRankPreview(appUrl, scan.grandTotal);
|
|
80
|
-
if (preview) {
|
|
81
|
-
previewRank = preview.rank;
|
|
82
|
-
console.log(`${bold(`you'd be #${preview.rank}`)} of ${preview.ofTotal} hackers`);
|
|
83
|
-
console.log('');
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
89
|
// ── GitHub auth (the exact device flow `hacklab login` runs) ─────────────
|
|
87
90
|
let session;
|
|
88
91
|
let claimFailed;
|
|
@@ -94,14 +97,15 @@ export async function setup() {
|
|
|
94
97
|
await saveSession(outcome.session);
|
|
95
98
|
session = outcome.session;
|
|
96
99
|
claimFailed = outcome.claimFailed;
|
|
97
|
-
console.log(session.handle
|
|
98
|
-
? `signed in as @${session.handle}`
|
|
99
|
-
: `signed in as ${session.email}`);
|
|
100
|
-
console.log('');
|
|
101
100
|
}
|
|
102
101
|
else {
|
|
103
102
|
try {
|
|
104
|
-
const outcome = await performLogin({
|
|
103
|
+
const outcome = await performLogin({
|
|
104
|
+
claimAttempts: 2,
|
|
105
|
+
// The rail block ends by redrawing itself away; with no terminal to
|
|
106
|
+
// redraw, `login`'s plain block is the honest thing to print.
|
|
107
|
+
...(canRedraw() ? { deviceCode: railDeviceCode() } : {}),
|
|
108
|
+
});
|
|
105
109
|
session = outcome.session;
|
|
106
110
|
claimFailed = outcome.claimFailed;
|
|
107
111
|
}
|
|
@@ -109,22 +113,22 @@ export async function setup() {
|
|
|
109
113
|
clack.cancel(`GitHub sign-in failed: ${err instanceof Error ? err.message : String(err)}. run \`hacklab setup\` again.`);
|
|
110
114
|
process.exit(1);
|
|
111
115
|
}
|
|
112
|
-
console.log('');
|
|
113
|
-
console.log(session.handle
|
|
114
|
-
? `signed in as @${session.handle}`
|
|
115
|
-
: `signed in as ${session.email}`);
|
|
116
|
-
console.log('');
|
|
117
116
|
}
|
|
117
|
+
clack.log.step(session.handle
|
|
118
|
+
? `github · signed in as @${session.handle}`
|
|
119
|
+
: `github · signed in as ${session.email}`);
|
|
118
120
|
// A lost claim must never be silent here: the web onboarding page polls
|
|
119
121
|
// `username_claimed` and would sit spinning forever.
|
|
120
122
|
if (claimFailed) {
|
|
121
|
-
error("couldn't finish claiming your handle");
|
|
122
|
-
|
|
123
|
-
|
|
123
|
+
clack.log.error("couldn't finish claiming your handle");
|
|
124
|
+
clack.log.message(dim('run `hacklab login` again to finish it'), {
|
|
125
|
+
spacing: 0,
|
|
126
|
+
});
|
|
124
127
|
}
|
|
125
128
|
// ── The one question in the flow ─────────────────────────────────────────
|
|
126
129
|
const consent = await askConversationConsent();
|
|
127
130
|
// ── Upload ───────────────────────────────────────────────────────────────
|
|
131
|
+
const spin = clack.spinner();
|
|
128
132
|
spin.start('saving your usage');
|
|
129
133
|
let rank;
|
|
130
134
|
try {
|
|
@@ -137,23 +141,22 @@ export async function setup() {
|
|
|
137
141
|
// A full scan just went out, so re-base the minutely tick's incremental
|
|
138
142
|
// state on it — otherwise the first tick re-uploads the whole history.
|
|
139
143
|
await rebuildScanState(results);
|
|
140
|
-
spin.stop('usage saved');
|
|
141
144
|
const after = uploaded.rankAfter;
|
|
142
145
|
if (typeof after === 'number' && Number.isFinite(after))
|
|
143
146
|
rank = after;
|
|
144
|
-
|
|
145
|
-
console.log(`rank: #${rank}`);
|
|
147
|
+
spin.stop(rank ? `synced · rank #${rank}` : 'synced');
|
|
146
148
|
}
|
|
147
149
|
catch {
|
|
148
150
|
// Never fatal — the account exists, and `hacklab sync` is the recovery.
|
|
149
151
|
spin.stop('usage sync deferred');
|
|
150
|
-
|
|
152
|
+
clack.log.message(dim('run `hacklab sync` later to upload it'), {
|
|
153
|
+
spacing: 0,
|
|
154
|
+
});
|
|
151
155
|
}
|
|
152
156
|
// ── Daemon (silent; the intro line is the whole disclosure) ──────────────
|
|
153
157
|
await installDaemon(syncState, session.handle);
|
|
154
158
|
// ── Tail ─────────────────────────────────────────────────────────────────
|
|
155
|
-
|
|
156
|
-
success(session.handle ? `you're in — ${appUrl}/${session.handle}` : "you're in");
|
|
159
|
+
clack.log.success(session.handle ? `you're in — ${appUrl}/${session.handle}` : "you're in");
|
|
157
160
|
const handoff = await offerAgentHandoff(session, appUrl);
|
|
158
161
|
if (session.handle) {
|
|
159
162
|
await identifyUser(session.handle, {
|
|
@@ -164,9 +167,10 @@ export async function setup() {
|
|
|
164
167
|
},
|
|
165
168
|
$set_once: { joined_at: new Date().toISOString() },
|
|
166
169
|
});
|
|
170
|
+
const reportedRank = rank ?? preview?.rank;
|
|
167
171
|
await captureEvent(session.handle, 'cli_setup_completed', {
|
|
168
172
|
tokens_total: scan.grandTotal,
|
|
169
|
-
...(
|
|
173
|
+
...(reportedRank ? { rank: reportedRank } : {}),
|
|
170
174
|
prompt_consent: consent,
|
|
171
175
|
});
|
|
172
176
|
await captureEvent(session.handle, 'cli_agent_handoff', {
|
|
@@ -175,15 +179,68 @@ export async function setup() {
|
|
|
175
179
|
});
|
|
176
180
|
}
|
|
177
181
|
}
|
|
182
|
+
/**
|
|
183
|
+
* What the scan step shows while it is still running: one line per tool it
|
|
184
|
+
* found, biggest first.
|
|
185
|
+
*
|
|
186
|
+
* Deliberately not `scan`'s full receipt. That breaks every tool down by model,
|
|
187
|
+
* which on a heavy machine is twenty-odd lines — a wall to put up and take down
|
|
188
|
+
* again for the few seconds the rank call is in flight. One line per tool is the
|
|
189
|
+
* same answer at the altitude a first run needs, and it stays short.
|
|
190
|
+
*/
|
|
191
|
+
function scanNotes(scan) {
|
|
192
|
+
return Object.entries(scan.toolTotals)
|
|
193
|
+
.filter(([, total]) => total > 0)
|
|
194
|
+
.sort((a, b) => b[1] - a[1])
|
|
195
|
+
.map(([tool, total]) => `${TOOL_LABELS[tool] ?? tool} · ${formatTokens(total)} tokens`);
|
|
196
|
+
}
|
|
197
|
+
/** The one line the scan stage leaves on the rail. */
|
|
198
|
+
function scanSummary(scan) {
|
|
199
|
+
return scan.grandTotal > 0
|
|
200
|
+
? `scanned · ${formatTokens(scan.grandTotal)} tokens`
|
|
201
|
+
: 'scanned · no AI usage on this machine';
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* The scan stage as a step that shows its working and then compresses.
|
|
205
|
+
*
|
|
206
|
+
* clack's `taskLog` is exactly this shape — notes on the rail while the step
|
|
207
|
+
* runs, one line where they were once it finishes — but it collapses by walking
|
|
208
|
+
* the cursor back, which is litter down a pipe and a divide by zero on a
|
|
209
|
+
* terminal that reports no width. A plain spinner is the honest stand-in there:
|
|
210
|
+
* same single closing line, no notes.
|
|
211
|
+
*/
|
|
212
|
+
function startScanStep() {
|
|
213
|
+
const title = 'scanning local AI tool usage';
|
|
214
|
+
if (!canRedraw()) {
|
|
215
|
+
const spin = clack.spinner();
|
|
216
|
+
spin.start(title);
|
|
217
|
+
return {
|
|
218
|
+
note: () => {
|
|
219
|
+
// A spinner has nowhere to put notes it could take back.
|
|
220
|
+
},
|
|
221
|
+
done: (summary) => spin.stop(summary),
|
|
222
|
+
failed: (summary) => spin.stop(summary),
|
|
223
|
+
};
|
|
224
|
+
}
|
|
225
|
+
const log = clack.taskLog({ title });
|
|
226
|
+
return {
|
|
227
|
+
// taskLog dims its own notes and sizes them by raw string length, so they
|
|
228
|
+
// arrive as plain text: colouring them would both fight the dim and throw
|
|
229
|
+
// its row arithmetic off by the length of every escape sequence.
|
|
230
|
+
note: (line) => log.message(line),
|
|
231
|
+
done: (summary) => log.success(summary),
|
|
232
|
+
failed: (summary) => log.error(summary, { showLog: false }),
|
|
233
|
+
};
|
|
234
|
+
}
|
|
178
235
|
/**
|
|
179
236
|
* The last beat of setup: offer to hand the profile work to a coding agent the
|
|
180
237
|
* user already has installed, and close the flow.
|
|
181
238
|
*
|
|
182
239
|
* Every path ends with one closing line, and the browser line is printed before
|
|
183
240
|
* the agent takes over the terminal — once it does, nothing we print afterwards
|
|
184
|
-
* would be read in time.
|
|
185
|
-
* onboarding
|
|
186
|
-
*
|
|
241
|
+
* would be read in time. Every path also tells the backend what happened: the
|
|
242
|
+
* web onboarding only waits on a `launched`, and switches to the manual
|
|
243
|
+
* paste-the-prompt step on `declined` / `unavailable` or on hearing nothing.
|
|
187
244
|
*/
|
|
188
245
|
async function offerAgentHandoff(session, appUrl) {
|
|
189
246
|
const browserLine = 'head back to your browser — the page will move on by itself';
|
|
@@ -195,23 +252,30 @@ async function offerAgentHandoff(session, appUrl) {
|
|
|
195
252
|
clack.outro(dim(browserLine));
|
|
196
253
|
return { outcome: 'unavailable' };
|
|
197
254
|
}
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
const accepted = await waitForBareEnter(`(press enter to hand off) ${dim('· anything else skips')} `);
|
|
255
|
+
const offer = railAgentOffer(agent.name);
|
|
256
|
+
const accepted = await waitForBareEnter(offer.prompt);
|
|
257
|
+
offer.settle();
|
|
202
258
|
if (!accepted) {
|
|
259
|
+
clack.log.step('skipped');
|
|
203
260
|
await notifyAgentHandoff(appUrl, session.token, 'declined');
|
|
204
261
|
printManualPrompt();
|
|
205
262
|
clack.outro(dim(browserLine));
|
|
206
263
|
return { outcome: 'declined', agent: agent.bin };
|
|
207
264
|
}
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
265
|
+
clack.log.step(`handed off to ${agent.name}`);
|
|
266
|
+
clack.log.message(dim(browserLine));
|
|
267
|
+
// Ordering is load-bearing: the `launched` signal must be *awaited* before
|
|
268
|
+
// the spawn. `launchAgentCli` uses `spawnSync`, which blocks the event loop
|
|
269
|
+
// for the whole agent session, so a fire-and-forget fetch would not actually
|
|
270
|
+
// go out until the agent exits — by which time the web page it was meant to
|
|
271
|
+
// steer has long since given up. The 8s timeout inside `notifyAgentHandoff`
|
|
272
|
+
// caps how long this can hold up the spawn; the typical case is one fast POST.
|
|
273
|
+
await notifyAgentHandoff(appUrl, session.token, 'launched', agent.bin);
|
|
211
274
|
if (!launchAgentCli(agent, PROFILE_SETUP_PROMPT)) {
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
275
|
+
// The correction to the `launched` we just sent: the process never
|
|
276
|
+
// started, so the page must stop waiting and show the manual prompt.
|
|
277
|
+
await notifyAgentHandoff(appUrl, session.token, 'unavailable', agent.bin);
|
|
278
|
+
clack.log.error(`couldn't start ${agent.name}`);
|
|
215
279
|
printManualPrompt();
|
|
216
280
|
clack.outro(dim(session.handle ? `${appUrl}/${session.handle}` : appUrl));
|
|
217
281
|
return { outcome: 'spawn_failed', agent: agent.bin };
|
|
@@ -223,9 +287,10 @@ async function offerAgentHandoff(session, appUrl) {
|
|
|
223
287
|
}
|
|
224
288
|
/** The fallback when no agent runs here: the same line the web page shows. */
|
|
225
289
|
function printManualPrompt() {
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
290
|
+
clack.log.message([
|
|
291
|
+
dim("paste this into your agent when you're ready:"),
|
|
292
|
+
bold(PROFILE_SETUP_PROMPT),
|
|
293
|
+
]);
|
|
229
294
|
}
|
|
230
295
|
/**
|
|
231
296
|
* Ask once whether to share conversation text, defaulting to yes.
|
|
@@ -240,19 +305,21 @@ function printManualPrompt() {
|
|
|
240
305
|
async function askConversationConsent() {
|
|
241
306
|
const stored = await loadPromptConsent();
|
|
242
307
|
if (stored) {
|
|
243
|
-
|
|
244
|
-
|
|
308
|
+
// Already answered, so it is not a step to walk — one dim line saying what
|
|
309
|
+
// the answer is and where to change it.
|
|
310
|
+
clack.log.message(dim(`conversation sharing · ${stored} — change with \`hacklab config prompt-stats <full|stats|none>\``));
|
|
245
311
|
return stored;
|
|
246
312
|
}
|
|
247
313
|
if (!process.stdin.isTTY)
|
|
248
314
|
return 'none';
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
315
|
+
clack.log.message([
|
|
316
|
+
bold('share your prompts?'),
|
|
317
|
+
'hacklab scores how well you work with AI. your real prompts give the',
|
|
318
|
+
'scoring model actual evidence — a sharper score, and a profile that',
|
|
319
|
+
'stands out. a sample of up to 20,000 characters is read by the model,',
|
|
320
|
+
'scored, and discarded. never stored, never shown to anyone.',
|
|
321
|
+
dim('change anytime: hacklab config prompt-stats <full|stats|none>'),
|
|
322
|
+
]);
|
|
256
323
|
const answer = await clack.confirm({
|
|
257
324
|
message: 'share a sample of your prompts?',
|
|
258
325
|
initialValue: true,
|
|
@@ -298,7 +365,10 @@ async function installDaemon(state, handle) {
|
|
|
298
365
|
// A failed *repair* means the jobs are still scheduled — printing cron
|
|
299
366
|
// instructions there talks the user into a second, duplicate schedule.
|
|
300
367
|
if (state === 'missing') {
|
|
301
|
-
|
|
368
|
+
clack.log.warn('background sync · schedule it yourself');
|
|
369
|
+
clack.log.message(result.instructions.split('\n').map(dim), {
|
|
370
|
+
spacing: 0,
|
|
371
|
+
});
|
|
302
372
|
if (handle) {
|
|
303
373
|
await captureEvent(handle, 'cli_daily_sync_manual', {
|
|
304
374
|
mechanism: result.mechanism,
|
|
@@ -309,11 +379,11 @@ async function installDaemon(state, handle) {
|
|
|
309
379
|
return;
|
|
310
380
|
}
|
|
311
381
|
if (!result.recorded) {
|
|
312
|
-
|
|
382
|
+
clack.log.warn('background sync · not recorded, config unwritable');
|
|
313
383
|
return;
|
|
314
384
|
}
|
|
315
385
|
if (state === 'missing') {
|
|
316
|
-
|
|
386
|
+
clack.log.step(`background sync · scheduled (${result.mechanism})`);
|
|
317
387
|
if (handle) {
|
|
318
388
|
await captureEvent(handle, 'cli_daily_sync_installed', {
|
|
319
389
|
mechanism: result.mechanism,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
|
package/dist/ui.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export declare const dim: import("chalk").ChalkInstance;
|
|
2
2
|
export declare const bold: import("chalk").ChalkInstance;
|
|
3
3
|
export declare const green: import("chalk").ChalkInstance;
|
|
4
|
+
export declare const gray: import("chalk").ChalkInstance;
|
|
4
5
|
export declare const red: import("chalk").ChalkInstance;
|
|
5
6
|
export declare const yellow: import("chalk").ChalkInstance;
|
|
6
7
|
export declare const white: import("chalk").ChalkInstance;
|
package/dist/ui.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,GAAG,+BAAY,CAAA;AAC5B,eAAO,MAAM,IAAI,+BAAa,CAAA;AAC9B,eAAO,MAAM,KAAK,+BAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,GAAG,+BAAY,CAAA;AAC5B,eAAO,MAAM,IAAI,+BAAa,CAAA;AAC9B,eAAO,MAAM,KAAK,+BAAc,CAAA;AAGhC,eAAO,MAAM,IAAI,+BAAa,CAAA;AAC9B,eAAO,MAAM,GAAG,+BAAY,CAAA;AAC5B,eAAO,MAAM,MAAM,+BAAe,CAAA;AAClC,eAAO,MAAM,KAAK,+BAAoB,CAAA;AAGtC,eAAO,MAAM,QAAQ,+BAAuB,CAAA;AAE5C,gFAAgF;AAChF,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAExC;AAID,eAAO,MAAM,IAAI,+BAAuB,CAAA;AAwBxC;;;GAGG;AACH,wBAAgB,SAAS,CACvB,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,IAAI,EAAE,MAAM,GACX,MAAM,CAMR;AAcD,gFAAgF;AAChF,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE9C;AAID;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAa9D;AAED,+EAA+E;AAC/E,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAGzD;AAOD,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAG9C;AAED,wBAAgB,MAAM,SAIrB;AAED,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,QAElC;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,QAEhC;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,QAE/B;AAID,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,QAE/B"}
|
package/dist/ui.js
CHANGED
|
@@ -4,6 +4,9 @@ import { getBeltColor } from './belt.js';
|
|
|
4
4
|
export const dim = chalk.dim;
|
|
5
5
|
export const bold = chalk.bold;
|
|
6
6
|
export const green = chalk.green;
|
|
7
|
+
// The colour clack paints its step rail. `setup` draws two blocks by hand
|
|
8
|
+
// between clack widgets, and a gutter in any other colour reads as a seam.
|
|
9
|
+
export const gray = chalk.gray;
|
|
7
10
|
export const red = chalk.red;
|
|
8
11
|
export const yellow = chalk.yellow;
|
|
9
12
|
export const white = chalk.whiteBright;
|
package/dist/ui.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ui.js","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"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"}
|