@crosscom/toolkit 0.1.2 → 0.2.1
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/README.md +22 -0
- package/dist/cli.js +43 -1
- package/dist/cli.js.map +1 -1
- package/dist/client.d.ts +9 -0
- package/dist/client.js +4 -0
- package/dist/client.js.map +1 -1
- package/dist/hooks.d.ts +10 -0
- package/dist/hooks.js +154 -0
- package/dist/hooks.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -65,6 +65,28 @@ terminals with different identities by overriding `CROSSCOM_IDENTITY` per Claude
|
|
|
65
65
|
crosscom whoami
|
|
66
66
|
crosscom send "My /users endpoint returns {id,email,displayName}"
|
|
67
67
|
crosscom inbox # add --wait to long-poll in auto mode
|
|
68
|
+
crosscom attention # read-only peek at what's waiting for this terminal
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Attention hooks (never miss a message)
|
|
72
|
+
|
|
73
|
+
`crosscom setup` (and `crosscom cleanup`) install two Claude Code hooks in
|
|
74
|
+
`~/.claude/settings.json` so a session notices CrossCom traffic on its own —
|
|
75
|
+
no human relay needed:
|
|
76
|
+
|
|
77
|
+
- **Stop** — when the agent tries to go idle while DMs, tracked requests, queued
|
|
78
|
+
work, or mentions are waiting, the hook blocks the stop once and tells it to
|
|
79
|
+
collect them with `crosscom_standby` first.
|
|
80
|
+
- **UserPromptSubmit** — every turn starts with a `[CrossCom] … waiting` note
|
|
81
|
+
when something is pending.
|
|
82
|
+
|
|
83
|
+
Both use the read-only `/agent/attention` peek: nothing is consumed, marked
|
|
84
|
+
seen, or claimed, and unconfigured machines/sessions are skipped silently
|
|
85
|
+
(hooks always fail open). Manage them explicitly with:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
crosscom hooks # install / refresh
|
|
89
|
+
crosscom hooks --remove # uninstall
|
|
68
90
|
```
|
|
69
91
|
|
|
70
92
|
## How a terminal receives messages
|
package/dist/cli.js
CHANGED
|
@@ -8,6 +8,7 @@ import { join } from 'node:path';
|
|
|
8
8
|
import { CrossComClient } from './client.js';
|
|
9
9
|
import { loadConfig, saveConfig } from './config.js';
|
|
10
10
|
import { runStdioServer } from './server.js';
|
|
11
|
+
import { installHooks, uninstallHooks, runHook } from './hooks.js';
|
|
11
12
|
const DEFAULT_SERVER_URL = 'https://crosscom-api.theradio.in';
|
|
12
13
|
/** Gradient welcome banner (skipped when not a TTY or NO_COLOR is set). */
|
|
13
14
|
function banner() {
|
|
@@ -80,6 +81,12 @@ async function cmdSetup(flags) {
|
|
|
80
81
|
console.log(` Config saved to ${path}`);
|
|
81
82
|
if (res.warning)
|
|
82
83
|
console.log(`\n⚠ ${res.warning}`);
|
|
84
|
+
// Attention hooks: make Claude Code sessions notice waiting CrossCom items
|
|
85
|
+
// on their own. Only relevant on machines that actually run Claude Code.
|
|
86
|
+
if (!flags['no-hooks'] && existsSync(join(homedir(), '.claude'))) {
|
|
87
|
+
if (installHooks())
|
|
88
|
+
console.log('✓ Claude Code attention hooks installed (~/.claude/settings.json)');
|
|
89
|
+
}
|
|
83
90
|
// The setup script registers with Claude Code itself and passes --no-hint.
|
|
84
91
|
if (!flags['no-hint']) {
|
|
85
92
|
console.log('\nNext: add the toolkit to Claude Code:');
|
|
@@ -134,7 +141,12 @@ async function cmdCleanup() {
|
|
|
134
141
|
? '✓ Gemini CLI re-registered (npx)'
|
|
135
142
|
: '⚠ Gemini re-registration failed');
|
|
136
143
|
}
|
|
137
|
-
// 3.
|
|
144
|
+
// 3. Attention hooks — install/refresh (idempotent)
|
|
145
|
+
if (existsSync(join(homedir(), '.claude'))) {
|
|
146
|
+
if (installHooks())
|
|
147
|
+
console.log('✓ Claude Code attention hooks installed/refreshed');
|
|
148
|
+
}
|
|
149
|
+
// 4. Config sanity — keep the key, but flag stale server URLs
|
|
138
150
|
const config = loadConfig();
|
|
139
151
|
if (!config) {
|
|
140
152
|
console.log(`\n⚠ No usable config — run: npx -y @crosscom/toolkit setup`);
|
|
@@ -183,6 +195,28 @@ async function cmdInbox(flags) {
|
|
|
183
195
|
else
|
|
184
196
|
res.messages.forEach((m) => console.log(`[#${m.seq}] ${m.from} (${m.authorType}): ${m.content}`));
|
|
185
197
|
}
|
|
198
|
+
async function cmdAttention() {
|
|
199
|
+
const a = await requireClient().attention();
|
|
200
|
+
if (a.known === false)
|
|
201
|
+
console.log('This terminal is not registered yet — nothing waiting.');
|
|
202
|
+
else if (a.total === 0)
|
|
203
|
+
console.log('Nothing waiting.');
|
|
204
|
+
else
|
|
205
|
+
console.log(`Waiting for you: ${a.summary}`);
|
|
206
|
+
}
|
|
207
|
+
async function cmdHooks(flags) {
|
|
208
|
+
if (flags.remove === 'true') {
|
|
209
|
+
if (uninstallHooks())
|
|
210
|
+
console.log('✓ CrossCom attention hooks removed from ~/.claude/settings.json');
|
|
211
|
+
}
|
|
212
|
+
else {
|
|
213
|
+
if (installHooks()) {
|
|
214
|
+
console.log('✓ CrossCom attention hooks installed in ~/.claude/settings.json');
|
|
215
|
+
console.log(' Stop → blocks going idle while CrossCom items are waiting');
|
|
216
|
+
console.log(' UserPromptSubmit → surfaces waiting items at the start of every turn');
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
}
|
|
186
220
|
function usage() {
|
|
187
221
|
banner();
|
|
188
222
|
console.log(`crosscom — connect this terminal to a CrossCom project
|
|
@@ -194,6 +228,8 @@ Usage:
|
|
|
194
228
|
crosscom whoami Show identity, project, and peers
|
|
195
229
|
crosscom send <message> Post a message to the project channel
|
|
196
230
|
crosscom inbox [--wait] Pull new messages
|
|
231
|
+
crosscom attention Peek at what's waiting (read-only)
|
|
232
|
+
crosscom hooks [--remove] Install/remove Claude Code attention hooks
|
|
197
233
|
`);
|
|
198
234
|
}
|
|
199
235
|
async function main() {
|
|
@@ -213,6 +249,12 @@ async function main() {
|
|
|
213
249
|
return cmdSend(rest);
|
|
214
250
|
case 'inbox':
|
|
215
251
|
return cmdInbox(flags);
|
|
252
|
+
case 'attention':
|
|
253
|
+
return cmdAttention();
|
|
254
|
+
case 'hooks':
|
|
255
|
+
return cmdHooks(flags);
|
|
256
|
+
case 'hook':
|
|
257
|
+
return runHook(rest[0]);
|
|
216
258
|
case undefined:
|
|
217
259
|
case 'help':
|
|
218
260
|
case '--help':
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,UAAU,EAAmC,MAAM,aAAa,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
CHANGED
|
@@ -139,6 +139,15 @@ export declare class CrossComClient {
|
|
|
139
139
|
standby(timeoutSeconds?: number): Promise<Attention & {
|
|
140
140
|
timedOut: boolean;
|
|
141
141
|
}>;
|
|
142
|
+
attention(): Promise<{
|
|
143
|
+
total: number;
|
|
144
|
+
dms: number;
|
|
145
|
+
requests: number;
|
|
146
|
+
queuedWork: number;
|
|
147
|
+
mentions: number;
|
|
148
|
+
summary: string;
|
|
149
|
+
known?: boolean;
|
|
150
|
+
}>;
|
|
142
151
|
history(count: number, channel?: string, dm?: string): Promise<{
|
|
143
152
|
messages: InboxMessage[];
|
|
144
153
|
}>;
|
package/dist/client.js
CHANGED
|
@@ -83,6 +83,10 @@ export class CrossComClient {
|
|
|
83
83
|
standby(timeoutSeconds) {
|
|
84
84
|
return this.req(`/agent/standby${timeoutSeconds ? `?timeoutSeconds=${timeoutSeconds}` : ''}`);
|
|
85
85
|
}
|
|
86
|
+
// Read-only peek — never consumes delivery or touches the terminal row.
|
|
87
|
+
attention() {
|
|
88
|
+
return this.req('/agent/attention');
|
|
89
|
+
}
|
|
86
90
|
history(count, channel, dm) {
|
|
87
91
|
return this.req(`/agent/messages?${qs({ history: String(count), channel, dm })}`);
|
|
88
92
|
}
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAEA,qDAAqD;AACrD,SAAS,EAAE,CAAC,MAAoD;IAC9D,MAAM,EAAE,GAAG,IAAI,eAAe,EAAE,CAAC;IACjC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,KAAK;YAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;AACvB,CAAC;AAmDD,+CAA+C;AAC/C,MAAM,OAAO,cAAc;IAKf;IACA;IACA;IANV,uEAAuE;IACvE,yEAAyE;IACzE,wDAAwD;IACxD,YACU,MAAsB,EACtB,SAAkB,EAClB,SAAyB;QAFzB,WAAM,GAAN,MAAM,CAAgB;QACtB,cAAS,GAAT,SAAS,CAAS;QAClB,cAAS,GAAT,SAAS,CAAgB;IAChC,CAAC;IAEJ,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;IAC9B,CAAC;IAED,6EAA6E;IAC7E,KAAK,CAAC,QAAQ,CAAC,WAAmB;QAChC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CACxB,iBAAiB,EACjB,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,EAAE,CACpE,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC;QACzD,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,OAAO,CAAC,OAAgB;QAC9B,OAAO;YACL,4EAA4E;YAC5E,wEAAwE;YACxE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,gBAAgB,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;YACjC,qBAAqB,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ;YAC3C,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClE,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,GAAG,CAAI,IAAY,EAAE,OAAoB,EAAE;QACvD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,EAAE,EAAE;YACnD,GAAG,IAAI;YACP,OAAO,EAAE,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE;SACzE,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,MAAM,GAAG,QAAQ,GAAG,CAAC,MAAM,EAAE,CAAC;YAClC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAuB,CAAC;gBACtD,IAAI,IAAI,CAAC,KAAK;oBAAE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;YACtC,CAAC;YAAC,MAAM,CAAC;gBACP,oBAAoB;YACtB,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,4BAA4B,MAAM,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAM,CAAC;IACjC,CAAC;IAED,QAAQ;QAMN,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,SAAS,CAAC,MAAqB;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IACzF,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,CAAC,cAAuB;QAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,cAAc,CAAC,CAAC,CAAC,mBAAmB,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChG,CAAC;IAED,OAAO,CAAC,KAAa,EAAE,OAAgB,EAAE,EAAW;QAClD,OAAO,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACpF,CAAC;IAED,aAAa,CAAC,EAAU,EAAE,KAAa,EAAE,IAAY;QACnD,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IACpG,CAAC;IAED,YAAY;QACV,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAED,aAAa,CAAC,EAAU,EAAE,MAA8B,EAAE,MAAc;QACtE,OAAO,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;IAChH,CAAC;IAED,OAAO,CAAC,EAAU,EAAE,OAAe;QACjC,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,+EAA+E;IAC/E,IAAI,CACF,OAAe,EACf,OAAgB,EAChB,EAAW;QAMX,OAAO,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACzG,CAAC;IAED,uEAAuE;IACvE,KAAK,CACH,IAAI,GAAG,KAAK,EACZ,OAAgB,EAChB,EAAW;QAEX,OAAO,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACrF,CAAC;IAED,wEAAwE;IACxE,eAAe,CACb,OAAgB,EAChB,EAAW;QAEX,OAAO,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/hooks.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/** Install (or refresh) the attention hooks in ~/.claude/settings.json. */
|
|
2
|
+
export declare function installHooks(): boolean;
|
|
3
|
+
/** Remove our attention hooks from ~/.claude/settings.json. */
|
|
4
|
+
export declare function uninstallHooks(): boolean;
|
|
5
|
+
/**
|
|
6
|
+
* Hook entrypoint (invoked by Claude Code, JSON payload on stdin). Fails OPEN
|
|
7
|
+
* on every path — missing config, dead network, unknown terminal — because a
|
|
8
|
+
* notification helper must never trap or slow the host session.
|
|
9
|
+
*/
|
|
10
|
+
export declare function runHook(kind: string | undefined): Promise<void>;
|
package/dist/hooks.js
ADDED
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { readFileSync, writeFileSync, mkdirSync, existsSync } from 'node:fs';
|
|
2
|
+
import { homedir } from 'node:os';
|
|
3
|
+
import { join, dirname } from 'node:path';
|
|
4
|
+
import { loadConfigRaw, resolveIdentityFor, claudeSessionId } from './config.js';
|
|
5
|
+
/**
|
|
6
|
+
* Claude Code hooks that make a session *notice* CrossCom traffic on its own:
|
|
7
|
+
* - Stop: blocks going idle while DMs / requests / queued work / mentions are
|
|
8
|
+
* waiting, telling the agent to collect them with crosscom_standby first.
|
|
9
|
+
* - UserPromptSubmit: injects a pending-items line so every turn starts aware.
|
|
10
|
+
* Both call the read-only /agent/attention peek — nothing is consumed, so the
|
|
11
|
+
* items are still delivered normally when the agent picks them up.
|
|
12
|
+
*/
|
|
13
|
+
const SETTINGS_PATH = join(homedir(), '.claude', 'settings.json');
|
|
14
|
+
// Our entries are recognized (for idempotent install/remove) by this substring.
|
|
15
|
+
const HOOK_MARKER = '@crosscom/toolkit hook';
|
|
16
|
+
const HOOK_EVENTS = {
|
|
17
|
+
Stop: 'stop',
|
|
18
|
+
UserPromptSubmit: 'prompt',
|
|
19
|
+
};
|
|
20
|
+
function hookCommand(kind) {
|
|
21
|
+
return `npx -y ${HOOK_MARKER} ${kind}`;
|
|
22
|
+
}
|
|
23
|
+
function readSettings() {
|
|
24
|
+
if (!existsSync(SETTINGS_PATH))
|
|
25
|
+
return { settings: {}, corrupt: false };
|
|
26
|
+
try {
|
|
27
|
+
return { settings: JSON.parse(readFileSync(SETTINGS_PATH, 'utf8')), corrupt: false };
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
return { settings: {}, corrupt: true };
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
function stripOurs(entries) {
|
|
34
|
+
return (entries ?? []).filter((e) => !(e.hooks ?? []).some((h) => (h.command ?? '').includes(HOOK_MARKER)));
|
|
35
|
+
}
|
|
36
|
+
/** Install (or refresh) the attention hooks in ~/.claude/settings.json. */
|
|
37
|
+
export function installHooks() {
|
|
38
|
+
const { settings, corrupt } = readSettings();
|
|
39
|
+
if (corrupt) {
|
|
40
|
+
console.error(`⚠ ${SETTINGS_PATH} is not valid JSON — fix it, then re-run \`crosscom hooks\`.`);
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
const hooks = (settings.hooks ?? {});
|
|
44
|
+
for (const [event, kind] of Object.entries(HOOK_EVENTS)) {
|
|
45
|
+
hooks[event] = [
|
|
46
|
+
...stripOurs(hooks[event]),
|
|
47
|
+
{ hooks: [{ type: 'command', command: hookCommand(kind), timeout: 30 }] },
|
|
48
|
+
];
|
|
49
|
+
}
|
|
50
|
+
settings.hooks = hooks;
|
|
51
|
+
mkdirSync(dirname(SETTINGS_PATH), { recursive: true });
|
|
52
|
+
writeFileSync(SETTINGS_PATH, JSON.stringify(settings, null, 2) + '\n');
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
/** Remove our attention hooks from ~/.claude/settings.json. */
|
|
56
|
+
export function uninstallHooks() {
|
|
57
|
+
const { settings, corrupt } = readSettings();
|
|
58
|
+
if (corrupt) {
|
|
59
|
+
console.error(`⚠ ${SETTINGS_PATH} is not valid JSON — fix it manually.`);
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
if (!settings.hooks)
|
|
63
|
+
return true;
|
|
64
|
+
const hooks = settings.hooks;
|
|
65
|
+
for (const event of Object.keys(HOOK_EVENTS)) {
|
|
66
|
+
const kept = stripOurs(hooks[event]);
|
|
67
|
+
if (kept.length > 0)
|
|
68
|
+
hooks[event] = kept;
|
|
69
|
+
else
|
|
70
|
+
delete hooks[event];
|
|
71
|
+
}
|
|
72
|
+
if (Object.keys(hooks).length === 0)
|
|
73
|
+
delete settings.hooks;
|
|
74
|
+
writeFileSync(SETTINGS_PATH, JSON.stringify(settings, null, 2) + '\n');
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
function readStdinToEnd(timeoutMs) {
|
|
78
|
+
return new Promise((resolve) => {
|
|
79
|
+
if (process.stdin.isTTY)
|
|
80
|
+
return resolve('');
|
|
81
|
+
let data = '';
|
|
82
|
+
const timer = setTimeout(() => resolve(data), timeoutMs);
|
|
83
|
+
process.stdin.setEncoding('utf8');
|
|
84
|
+
process.stdin.on('data', (chunk) => (data += chunk));
|
|
85
|
+
process.stdin.on('end', () => {
|
|
86
|
+
clearTimeout(timer);
|
|
87
|
+
resolve(data);
|
|
88
|
+
});
|
|
89
|
+
process.stdin.on('error', () => {
|
|
90
|
+
clearTimeout(timer);
|
|
91
|
+
resolve(data);
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Hook entrypoint (invoked by Claude Code, JSON payload on stdin). Fails OPEN
|
|
97
|
+
* on every path — missing config, dead network, unknown terminal — because a
|
|
98
|
+
* notification helper must never trap or slow the host session.
|
|
99
|
+
*/
|
|
100
|
+
export async function runHook(kind) {
|
|
101
|
+
if (kind !== 'stop' && kind !== 'prompt') {
|
|
102
|
+
console.error('Usage: crosscom hook <stop|prompt> (invoked by Claude Code hooks)');
|
|
103
|
+
process.exit(1);
|
|
104
|
+
}
|
|
105
|
+
try {
|
|
106
|
+
let payload = {};
|
|
107
|
+
try {
|
|
108
|
+
payload = JSON.parse(await readStdinToEnd(2000));
|
|
109
|
+
}
|
|
110
|
+
catch {
|
|
111
|
+
/* no/invalid stdin — fall back to env */
|
|
112
|
+
}
|
|
113
|
+
// Already continued once because of us — let the session stop this time.
|
|
114
|
+
if (kind === 'stop' && payload.stop_hook_active)
|
|
115
|
+
return;
|
|
116
|
+
const sessionId = payload.session_id || claudeSessionId();
|
|
117
|
+
const cfg = loadConfigRaw();
|
|
118
|
+
if (!cfg.url || !cfg.key || !sessionId)
|
|
119
|
+
return;
|
|
120
|
+
const identity = resolveIdentityFor(sessionId);
|
|
121
|
+
// Generous ceiling: some networks (slow resolvers, cold DNS) take ~5s just
|
|
122
|
+
// to resolve. The hook's own timeout in settings.json still caps the worst case.
|
|
123
|
+
const controller = new AbortController();
|
|
124
|
+
const timer = setTimeout(() => controller.abort(), 15000);
|
|
125
|
+
const res = await fetch(`${cfg.url}/agent/attention`, {
|
|
126
|
+
headers: { 'X-CrossCom-Key': cfg.key, 'X-CrossCom-Terminal': identity },
|
|
127
|
+
signal: controller.signal,
|
|
128
|
+
});
|
|
129
|
+
clearTimeout(timer);
|
|
130
|
+
if (!res.ok)
|
|
131
|
+
return;
|
|
132
|
+
const data = (await res.json());
|
|
133
|
+
if (!data.known || !data.total)
|
|
134
|
+
return;
|
|
135
|
+
if (kind === 'stop') {
|
|
136
|
+
console.log(JSON.stringify({
|
|
137
|
+
decision: 'block',
|
|
138
|
+
reason: `CrossCom: ${data.summary} waiting for this terminal ("${identity}"). Collect them with crosscom_standby, handle each item (answer requests with crosscom_answer, reply to DMs with crosscom_dm), then finish.`,
|
|
139
|
+
}));
|
|
140
|
+
}
|
|
141
|
+
else {
|
|
142
|
+
console.log(JSON.stringify({
|
|
143
|
+
hookSpecificOutput: {
|
|
144
|
+
hookEventName: 'UserPromptSubmit',
|
|
145
|
+
additionalContext: `[CrossCom] ${data.summary} waiting for this terminal ("${identity}") — collect with crosscom_standby after handling the user's request.`,
|
|
146
|
+
},
|
|
147
|
+
}));
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
catch {
|
|
151
|
+
/* fail open */
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=hooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hooks.js","sourceRoot":"","sources":["../src/hooks.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@crosscom/toolkit",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Connect your AI coding agent (Claude Code, Codex CLI, Gemini CLI, Cursor…) to CrossCom — agents collaborate across machines, humans govern everything.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|