wechat-claude-sessions 1.0.1-dev → 1.0.1-dev.usage-limit-detection.4.76a0129
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.en.md +50 -0
- package/README.md +37 -0
- package/dist/cli.js +17 -16
- package/dist/cli.js.map +1 -1
- package/dist/daemon.js +267 -16
- package/dist/daemon.js.map +1 -1
- package/dist/i18n.d.ts +12 -0
- package/dist/i18n.js +30 -0
- package/dist/i18n.js.map +1 -1
- package/dist/ilink.js +8 -1
- package/dist/ilink.js.map +1 -1
- package/dist/nudge.d.ts +2 -0
- package/dist/nudge.js +29 -0
- package/dist/nudge.js.map +1 -0
- package/dist/paths.d.ts +3 -0
- package/dist/paths.js +16 -1
- package/dist/paths.js.map +1 -1
- package/dist/replies.d.ts +3 -0
- package/dist/replies.js +51 -0
- package/dist/replies.js.map +1 -0
- package/dist/routing.js +1 -1
- package/dist/routing.js.map +1 -1
- package/dist/server.js +20 -0
- package/dist/server.js.map +1 -1
- package/dist/sessions.d.ts +1 -0
- package/dist/sessions.js.map +1 -1
- package/dist/transcripts.d.ts +9 -0
- package/dist/transcripts.js +71 -0
- package/dist/transcripts.js.map +1 -0
- package/dist/types.d.ts +6 -4
- package/dist/usage.d.ts +33 -0
- package/dist/usage.js +260 -0
- package/dist/usage.js.map +1 -0
- package/dist/utils.d.ts +9 -0
- package/dist/utils.js +9 -0
- package/dist/utils.js.map +1 -1
- package/dist/watch-inbox.js +18 -1
- package/dist/watch-inbox.js.map +1 -1
- package/package.json +1 -1
- package/templates/wechat.md +1 -1
- package/dist/router.d.ts +0 -31
- package/dist/router.js +0 -339
- package/dist/router.js.map +0 -1
package/dist/server.js
CHANGED
|
@@ -10,7 +10,10 @@ import { ILinkClient } from "./ilink.js";
|
|
|
10
10
|
import { PKG_ROOT } from "./pkg-root.js";
|
|
11
11
|
import { peekInbox as peekInboxFor, readInbox as readInboxFor } from "./inbox.js";
|
|
12
12
|
import { isMonitoring, touchHeartbeat } from "./monitoring.js";
|
|
13
|
+
import { markReplied } from "./replies.js";
|
|
13
14
|
import { routingLines } from "./routing.js";
|
|
15
|
+
import { transcriptPath } from "./transcripts.js";
|
|
16
|
+
import { readUsageState, resetHint } from "./usage.js";
|
|
14
17
|
import { DAEMON_PID_FILE, EXPIRED_FLAG_FILE, SESSIONS_DIR, TYPING_DIR, WECHAT_DIR, ensureDirs as ensureWechatDirs, isProcessAlive, } from "./paths.js";
|
|
15
18
|
import { detectSessionName as detectSessionNameFor, listSessions, writeSessionFile, } from "./sessions.js";
|
|
16
19
|
const DAEMON_LOG_FILE = path.join(WECHAT_DIR, "daemon.log");
|
|
@@ -77,12 +80,19 @@ const sessionId = String(process.pid);
|
|
|
77
80
|
const sessionName = { value: detectSessionName() };
|
|
78
81
|
const client = new ILinkClient();
|
|
79
82
|
function currentSessionInfo() {
|
|
83
|
+
// Claude Code passes its own session id to MCP servers; it is the transcript
|
|
84
|
+
// file's name, which is how the daemon can watch this exact session for
|
|
85
|
+
// signs of life instead of guessing from the project directory.
|
|
86
|
+
const claudeSessionId = process.env.CLAUDE_CODE_SESSION_ID;
|
|
80
87
|
return {
|
|
81
88
|
id: sessionId,
|
|
82
89
|
name: sessionName.value,
|
|
83
90
|
cwd: process.cwd(),
|
|
84
91
|
pid: process.pid,
|
|
85
92
|
lastActive: Date.now(),
|
|
93
|
+
transcript: claudeSessionId
|
|
94
|
+
? transcriptPath(process.cwd(), claudeSessionId)
|
|
95
|
+
: undefined,
|
|
86
96
|
};
|
|
87
97
|
}
|
|
88
98
|
function register() {
|
|
@@ -240,6 +250,9 @@ server.tool("wechat_send_text", "Send a text message to a WeChat user.", {
|
|
|
240
250
|
try {
|
|
241
251
|
clearTyping(to_user_id);
|
|
242
252
|
await client.sendText(to_user_id, text);
|
|
253
|
+
// Tells the daemon this session actually answered, so its silence
|
|
254
|
+
// watchdog (usage-limit detection) stops tracking the delivery.
|
|
255
|
+
markReplied(sessionId, to_user_id);
|
|
243
256
|
await client.sendTyping(to_user_id, false);
|
|
244
257
|
return {
|
|
245
258
|
content: [
|
|
@@ -280,6 +293,7 @@ server.tool("wechat_send_image", "Send an image file to a WeChat user.", {
|
|
|
280
293
|
}
|
|
281
294
|
clearTyping(to_user_id);
|
|
282
295
|
await client.sendImage(to_user_id, file_path, caption);
|
|
296
|
+
markReplied(sessionId, to_user_id);
|
|
283
297
|
await client.sendTyping(to_user_id, false);
|
|
284
298
|
return {
|
|
285
299
|
content: [
|
|
@@ -327,6 +341,12 @@ server.tool("wechat_status", "Check WeChat connection, daemon status, and active
|
|
|
327
341
|
return ` ${active} ${s.name} (pid: ${s.pid})${mon}`;
|
|
328
342
|
}),
|
|
329
343
|
];
|
|
344
|
+
// The daemon records this; a session that was rate-limited comes back with
|
|
345
|
+
// no idea why it went quiet, and the user is owed an explanation.
|
|
346
|
+
const usage = readUsageState();
|
|
347
|
+
if (usage.limited && (usage.resetAt === undefined || Date.now() < usage.resetAt)) {
|
|
348
|
+
lines.push("", `Claude usage limit is currently reached (reset: ${resetHint(usage, Date.now()) ?? "unknown"}). All sessions are blocked from replying until it lifts; the daemon notified the user on WeChat and will nudge this session when it recovers.`);
|
|
349
|
+
}
|
|
330
350
|
if (isLoginExpired()) {
|
|
331
351
|
lines.push("", "WeChat login has EXPIRED. Call wechat_login to re-authenticate (scan QR code).");
|
|
332
352
|
}
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/sessions.d.ts
CHANGED
package/dist/sessions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../src/sessions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../src/sessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const PROJECTS_DIR: string;
|
|
2
|
+
export declare function projectDirName(cwd: string): string;
|
|
3
|
+
export declare function transcriptPath(cwd: string, claudeSessionId: string, projectsDir?: string): string;
|
|
4
|
+
export declare function fileMtime(file: string): number | undefined;
|
|
5
|
+
export declare function latestTranscriptMtime(cwd: string, projectsDir?: string): number | undefined;
|
|
6
|
+
export declare function looksStalled(session: {
|
|
7
|
+
cwd: string;
|
|
8
|
+
transcript?: string;
|
|
9
|
+
}, idleMs: number, now?: number, projectsDir?: string): boolean;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
// Claude Code appends to a per-session transcript on every step it takes, so
|
|
2
|
+
// the transcript's mtime is a free "is this session still working?" signal.
|
|
3
|
+
// The daemon uses it to tell a busy session (long task, still writing) from a
|
|
4
|
+
// stalled one (rate-limited, writing nothing) before spending a probe.
|
|
5
|
+
//
|
|
6
|
+
// Which file matters: several Claude sessions can share a working directory,
|
|
7
|
+
// so the newest transcript in the project directory may belong to a different
|
|
8
|
+
// one — busy neighbours would mask a stalled target, and stale neighbours would
|
|
9
|
+
// fake a stall. The MCP server records its own transcript path (it knows its
|
|
10
|
+
// CLAUDE_CODE_SESSION_ID), and that exact file is used whenever it is
|
|
11
|
+
// available; the directory-wide guess is only a fallback for sessions
|
|
12
|
+
// registered by an older build.
|
|
13
|
+
import fs from "node:fs";
|
|
14
|
+
import os from "node:os";
|
|
15
|
+
import path from "node:path";
|
|
16
|
+
export const PROJECTS_DIR = path.join(os.homedir(), ".claude", "projects");
|
|
17
|
+
// Claude Code's directory naming: every non-alphanumeric character in the
|
|
18
|
+
// absolute cwd becomes a dash.
|
|
19
|
+
export function projectDirName(cwd) {
|
|
20
|
+
return cwd.replace(/[^a-zA-Z0-9]/g, "-");
|
|
21
|
+
}
|
|
22
|
+
// Where Claude Code keeps the transcript of one session.
|
|
23
|
+
export function transcriptPath(cwd, claudeSessionId, projectsDir = PROJECTS_DIR) {
|
|
24
|
+
return path.join(projectsDir, projectDirName(cwd), `${claudeSessionId}.jsonl`);
|
|
25
|
+
}
|
|
26
|
+
export function fileMtime(file) {
|
|
27
|
+
try {
|
|
28
|
+
return fs.statSync(file).mtimeMs;
|
|
29
|
+
}
|
|
30
|
+
catch {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
// Newest transcript mtime for a working directory, or undefined when there is
|
|
35
|
+
// no transcript directory (a fresh project, or a layout we don't recognise) —
|
|
36
|
+
// callers must treat undefined as "no information", not as "idle".
|
|
37
|
+
export function latestTranscriptMtime(cwd, projectsDir = PROJECTS_DIR) {
|
|
38
|
+
const dir = path.join(projectsDir, projectDirName(cwd));
|
|
39
|
+
let newest;
|
|
40
|
+
let entries;
|
|
41
|
+
try {
|
|
42
|
+
entries = fs.readdirSync(dir);
|
|
43
|
+
}
|
|
44
|
+
catch {
|
|
45
|
+
return undefined;
|
|
46
|
+
}
|
|
47
|
+
for (const file of entries) {
|
|
48
|
+
if (!file.endsWith(".jsonl"))
|
|
49
|
+
continue;
|
|
50
|
+
try {
|
|
51
|
+
const { mtimeMs } = fs.statSync(path.join(dir, file));
|
|
52
|
+
if (newest === undefined || mtimeMs > newest)
|
|
53
|
+
newest = mtimeMs;
|
|
54
|
+
}
|
|
55
|
+
catch { }
|
|
56
|
+
}
|
|
57
|
+
return newest;
|
|
58
|
+
}
|
|
59
|
+
// True when the session's transcript has been untouched for `idleMs` — i.e.
|
|
60
|
+
// Claude is not doing anything, despite having work waiting. Unknown
|
|
61
|
+
// transcripts count as idle-unknown (false) so we don't probe on every message.
|
|
62
|
+
export function looksStalled(session, idleMs, now = Date.now(), projectsDir = PROJECTS_DIR) {
|
|
63
|
+
const own = session.transcript ? fileMtime(session.transcript) : undefined;
|
|
64
|
+
// Only fall back to the directory-wide guess when this session's own
|
|
65
|
+
// transcript is unknown — otherwise a neighbour's activity would hide it.
|
|
66
|
+
const mtime = own ?? latestTranscriptMtime(session.cwd, projectsDir);
|
|
67
|
+
if (mtime === undefined)
|
|
68
|
+
return false;
|
|
69
|
+
return now - mtime >= idleMs;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=transcripts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transcripts.js","sourceRoot":"","sources":["../src/transcripts.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,4EAA4E;AAC5E,8EAA8E;AAC9E,uEAAuE;AACvE,EAAE;AACF,6EAA6E;AAC7E,8EAA8E;AAC9E,gFAAgF;AAChF,6EAA6E;AAC7E,sEAAsE;AACtE,sEAAsE;AACtE,gCAAgC;AAChC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AAE3E,0EAA0E;AAC1E,+BAA+B;AAC/B,MAAM,UAAU,cAAc,CAAC,GAAW;IACxC,OAAO,GAAG,CAAC,OAAO,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;AAC3C,CAAC;AAED,yDAAyD;AACzD,MAAM,UAAU,cAAc,CAC5B,GAAW,EACX,eAAuB,EACvB,cAAsB,YAAY;IAElC,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,EAAE,GAAG,eAAe,QAAQ,CAAC,CAAC;AACjF,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,8EAA8E;AAC9E,mEAAmE;AACnE,MAAM,UAAU,qBAAqB,CACnC,GAAW,EACX,cAAsB,YAAY;IAElC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,IAAI,MAA0B,CAAC;IAC/B,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAAE,SAAS;QACvC,IAAI,CAAC;YACH,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;YACtD,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,GAAG,MAAM;gBAAE,MAAM,GAAG,OAAO,CAAC;QACjE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IACZ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,4EAA4E;AAC5E,qEAAqE;AACrE,gFAAgF;AAChF,MAAM,UAAU,YAAY,CAC1B,OAA6C,EAC7C,MAAc,EACd,MAAc,IAAI,CAAC,GAAG,EAAE,EACxB,cAAsB,YAAY;IAElC,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3E,qEAAqE;IACrE,0EAA0E;IAC1E,MAAM,KAAK,GAAG,GAAG,IAAI,qBAAqB,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IACrE,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,OAAO,GAAG,GAAG,KAAK,IAAI,MAAM,CAAC;AAC/B,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -86,10 +86,12 @@ export type WeixinMessage = {
|
|
|
86
86
|
item_list: MessageItem[];
|
|
87
87
|
};
|
|
88
88
|
export type GetUpdatesResponse = {
|
|
89
|
-
ret
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
89
|
+
ret?: number;
|
|
90
|
+
errcode?: number;
|
|
91
|
+
errmsg?: string;
|
|
92
|
+
msgs?: WeixinMessage[];
|
|
93
|
+
get_updates_buf?: string;
|
|
94
|
+
longpolling_timeout_ms?: number;
|
|
93
95
|
};
|
|
94
96
|
export type GetConfigResponse = {
|
|
95
97
|
ret: number;
|
package/dist/usage.d.ts
ADDED
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export type LimitProbe = {
|
|
2
|
+
state: "ok";
|
|
3
|
+
} | {
|
|
4
|
+
state: "limited";
|
|
5
|
+
resetAt?: number;
|
|
6
|
+
resetText?: string;
|
|
7
|
+
detail: string;
|
|
8
|
+
} | {
|
|
9
|
+
state: "unknown";
|
|
10
|
+
detail: string;
|
|
11
|
+
};
|
|
12
|
+
export declare function parseProbeOutput(exitCode: number | null, output: string, now?: number): LimitProbe;
|
|
13
|
+
export declare function resolveClaudeBin(): string;
|
|
14
|
+
export declare function probeModel(): string | undefined;
|
|
15
|
+
export declare const PROBE_TIMEOUT_MS = 90000;
|
|
16
|
+
export declare function probeUsageLimit(timeoutMs?: number): Promise<LimitProbe>;
|
|
17
|
+
export type UsageState = {
|
|
18
|
+
limited: boolean;
|
|
19
|
+
since?: number;
|
|
20
|
+
resetAt?: number;
|
|
21
|
+
resetText?: string;
|
|
22
|
+
lastProbeAt: number;
|
|
23
|
+
notified: string[];
|
|
24
|
+
};
|
|
25
|
+
export declare const OK_PROBE_INTERVAL_MS: number;
|
|
26
|
+
export declare const LIMITED_PROBE_INTERVAL_MS: number;
|
|
27
|
+
export declare function shouldProbe(state: UsageState, now: number, opts?: {
|
|
28
|
+
okIntervalMs?: number;
|
|
29
|
+
limitedIntervalMs?: number;
|
|
30
|
+
}): boolean;
|
|
31
|
+
export declare function resetHint(state: UsageState, now: number): string | undefined;
|
|
32
|
+
export declare function readUsageState(): UsageState;
|
|
33
|
+
export declare function writeUsageState(state: UsageState): void;
|
package/dist/usage.js
ADDED
|
@@ -0,0 +1,260 @@
|
|
|
1
|
+
// Detecting "Claude is out of usage quota".
|
|
2
|
+
//
|
|
3
|
+
// When a Claude subscription hits its limit, every session stops answering at
|
|
4
|
+
// once: the model call is rejected, so nothing reaches the inbox reader and
|
|
5
|
+
// nothing comes back to WeChat. From the phone it looks identical to a crashed
|
|
6
|
+
// daemon. The daemon therefore probes the limit itself — one throttled headless
|
|
7
|
+
// `claude -p` call — and tells the user what is going on.
|
|
8
|
+
import fs from "node:fs";
|
|
9
|
+
import os from "node:os";
|
|
10
|
+
import path from "node:path";
|
|
11
|
+
import { spawn } from "node:child_process";
|
|
12
|
+
import { CONFIG_FILE, USAGE_STATE_FILE } from "./paths.js";
|
|
13
|
+
// Phrases that mean "quota exhausted" rather than any other failure. Matched
|
|
14
|
+
// only against output that already failed, so ordinary replies can't trip them.
|
|
15
|
+
const LIMIT_PATTERNS = [
|
|
16
|
+
/usage limit/i,
|
|
17
|
+
/\blimit reached\b/i,
|
|
18
|
+
/\brate[_ -]?limit/i,
|
|
19
|
+
/too many requests/i,
|
|
20
|
+
/\b429\b/,
|
|
21
|
+
/quota (?:exceeded|exhausted)/i,
|
|
22
|
+
/out of (?:usage|credits?)/i,
|
|
23
|
+
/credit balance is too low/i,
|
|
24
|
+
/insufficient (?:credits?|quota)/i,
|
|
25
|
+
/用量|额度|次数已达|已达上限/,
|
|
26
|
+
];
|
|
27
|
+
// Human-readable reset hint, e.g. "resets at 10pm (America/Los_Angeles)".
|
|
28
|
+
function parseResetText(text) {
|
|
29
|
+
const m = text.match(/reset(?:s|ting)?(?: will be)?(?: at| in)?\s+([^."\n}]{2,60})/i);
|
|
30
|
+
if (m)
|
|
31
|
+
return m[1].trim();
|
|
32
|
+
const zh = text.match(/(?:将于|大约)?\s*([^。"\n]{2,30}?)\s*(?:后)?恢复/);
|
|
33
|
+
return zh ? zh[1].trim() : undefined;
|
|
34
|
+
}
|
|
35
|
+
// Absolute reset time, when the failure carries a machine-readable one.
|
|
36
|
+
function parseResetAt(text, now) {
|
|
37
|
+
const epoch = text.match(/"?reset(?:s)?[_-]?at"?\s*[:=]\s*"?(\d{10,13})/i);
|
|
38
|
+
if (epoch) {
|
|
39
|
+
const n = parseInt(epoch[1], 10);
|
|
40
|
+
return epoch[1].length <= 10 ? n * 1000 : n;
|
|
41
|
+
}
|
|
42
|
+
const iso = text.match(/"?reset(?:s)?[_-]?at"?\s*[:=]\s*"(\d{4}-\d{2}-\d{2}T[^"]+)"/i);
|
|
43
|
+
if (iso) {
|
|
44
|
+
const ms = Date.parse(iso[1]);
|
|
45
|
+
if (Number.isFinite(ms))
|
|
46
|
+
return ms;
|
|
47
|
+
}
|
|
48
|
+
const retryAfter = text.match(/retry[_ -]?after"?\s*[:=]?\s*"?(\d{1,6})/i);
|
|
49
|
+
if (retryAfter)
|
|
50
|
+
return now + parseInt(retryAfter[1], 10) * 1000;
|
|
51
|
+
return undefined;
|
|
52
|
+
}
|
|
53
|
+
// Pull the most useful line out of a probe failure for logs / WeChat.
|
|
54
|
+
function summarize(text) {
|
|
55
|
+
const cleaned = text.replace(/\s+/g, " ").trim();
|
|
56
|
+
return cleaned.length > 220 ? `${cleaned.slice(0, 220)}…` : cleaned;
|
|
57
|
+
}
|
|
58
|
+
// Classify one `claude -p --output-format json` run. Exported for tests: the
|
|
59
|
+
// real output shape is the CLI's, so this must stay tolerant — a failure we
|
|
60
|
+
// cannot attribute to the quota is "unknown", never a false "limited".
|
|
61
|
+
export function parseProbeOutput(exitCode, output, now = Date.now()) {
|
|
62
|
+
let failed = exitCode !== 0;
|
|
63
|
+
let message = output;
|
|
64
|
+
const jsonStart = output.indexOf("{");
|
|
65
|
+
if (jsonStart >= 0) {
|
|
66
|
+
try {
|
|
67
|
+
const parsed = JSON.parse(output.slice(jsonStart));
|
|
68
|
+
if (typeof parsed.is_error === "boolean")
|
|
69
|
+
failed = parsed.is_error;
|
|
70
|
+
const detail = [parsed.result, parsed.error, parsed.subtype]
|
|
71
|
+
.filter((v) => typeof v === "string")
|
|
72
|
+
.join(" ");
|
|
73
|
+
if (detail)
|
|
74
|
+
message = detail;
|
|
75
|
+
}
|
|
76
|
+
catch {
|
|
77
|
+
// Not JSON (crash before the CLI could format a result) — use raw text.
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
if (!failed)
|
|
81
|
+
return { state: "ok" };
|
|
82
|
+
if (!LIMIT_PATTERNS.some((re) => re.test(message)))
|
|
83
|
+
return { state: "unknown", detail: summarize(message) };
|
|
84
|
+
return {
|
|
85
|
+
state: "limited",
|
|
86
|
+
resetAt: parseResetAt(message, now),
|
|
87
|
+
resetText: parseResetText(message),
|
|
88
|
+
detail: summarize(message),
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
function readConfig() {
|
|
92
|
+
try {
|
|
93
|
+
const parsed = JSON.parse(fs.readFileSync(CONFIG_FILE, "utf-8"));
|
|
94
|
+
return typeof parsed === "object" && parsed !== null
|
|
95
|
+
? parsed
|
|
96
|
+
: {};
|
|
97
|
+
}
|
|
98
|
+
catch {
|
|
99
|
+
return {};
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// The daemon runs under launchd with a minimal PATH, so a bare "claude" may not
|
|
103
|
+
// resolve. Prefer an explicit override, then the usual install locations.
|
|
104
|
+
export function resolveClaudeBin() {
|
|
105
|
+
const env = process.env.WECHAT_CLAUDE_BIN;
|
|
106
|
+
if (env)
|
|
107
|
+
return env;
|
|
108
|
+
const configured = readConfig().claudeBin;
|
|
109
|
+
if (typeof configured === "string" && configured) {
|
|
110
|
+
return configured.startsWith("~/")
|
|
111
|
+
? path.join(os.homedir(), configured.slice(2))
|
|
112
|
+
: configured;
|
|
113
|
+
}
|
|
114
|
+
const candidates = [
|
|
115
|
+
path.join(os.homedir(), ".local/bin/claude"),
|
|
116
|
+
path.join(os.homedir(), ".claude/local/claude"),
|
|
117
|
+
"/opt/homebrew/bin/claude",
|
|
118
|
+
"/usr/local/bin/claude",
|
|
119
|
+
];
|
|
120
|
+
for (const c of candidates) {
|
|
121
|
+
try {
|
|
122
|
+
fs.accessSync(c, fs.constants.X_OK);
|
|
123
|
+
return c;
|
|
124
|
+
}
|
|
125
|
+
catch { }
|
|
126
|
+
}
|
|
127
|
+
return "claude";
|
|
128
|
+
}
|
|
129
|
+
// Model used for the probe. Cheap by default: subscription limits are
|
|
130
|
+
// account-wide, so a Haiku call is rejected by the same limit that stops the
|
|
131
|
+
// real sessions, at a fraction of the cost. Override with `probeModel` in
|
|
132
|
+
// ~/.claude/wechat/config.json (e.g. to catch an Opus-only weekly cap).
|
|
133
|
+
export function probeModel() {
|
|
134
|
+
const configured = readConfig().probeModel;
|
|
135
|
+
if (typeof configured === "string" && configured) {
|
|
136
|
+
return configured === "default" ? undefined : configured;
|
|
137
|
+
}
|
|
138
|
+
return "claude-haiku-4-5-20251001";
|
|
139
|
+
}
|
|
140
|
+
export const PROBE_TIMEOUT_MS = 90_000;
|
|
141
|
+
// One headless round-trip. `--strict-mcp-config` with an empty server map
|
|
142
|
+
// matters (the map must be spelled out in full — `{}` alone is rejected): the
|
|
143
|
+
// probe must not load this package's own MCP server, which would register a
|
|
144
|
+
// phantom session in the list every time we check.
|
|
145
|
+
export function probeUsageLimit(timeoutMs = PROBE_TIMEOUT_MS) {
|
|
146
|
+
const model = probeModel();
|
|
147
|
+
const args = [
|
|
148
|
+
"-p",
|
|
149
|
+
"ok",
|
|
150
|
+
"--output-format",
|
|
151
|
+
"json",
|
|
152
|
+
"--max-turns",
|
|
153
|
+
"1",
|
|
154
|
+
"--allowedTools",
|
|
155
|
+
"",
|
|
156
|
+
"--strict-mcp-config",
|
|
157
|
+
"--mcp-config",
|
|
158
|
+
'{"mcpServers":{}}',
|
|
159
|
+
...(model ? ["--model", model] : []),
|
|
160
|
+
];
|
|
161
|
+
return new Promise((resolve) => {
|
|
162
|
+
let child;
|
|
163
|
+
try {
|
|
164
|
+
child = spawn(resolveClaudeBin(), args, {
|
|
165
|
+
cwd: os.tmpdir(),
|
|
166
|
+
stdio: ["ignore", "pipe", "pipe"],
|
|
167
|
+
env: {
|
|
168
|
+
...process.env,
|
|
169
|
+
PATH: `${process.env.PATH ?? ""}:${path.join(os.homedir(), ".local/bin")}:/opt/homebrew/bin:/usr/local/bin`,
|
|
170
|
+
},
|
|
171
|
+
});
|
|
172
|
+
}
|
|
173
|
+
catch (err) {
|
|
174
|
+
resolve({
|
|
175
|
+
state: "unknown",
|
|
176
|
+
detail: `spawn failed: ${err instanceof Error ? err.message : String(err)}`,
|
|
177
|
+
});
|
|
178
|
+
return;
|
|
179
|
+
}
|
|
180
|
+
let out = "";
|
|
181
|
+
const capture = (chunk) => {
|
|
182
|
+
// Cap the buffer: a wedged CLI must not grow the daemon's memory.
|
|
183
|
+
if (out.length < 64_000)
|
|
184
|
+
out += chunk.toString();
|
|
185
|
+
};
|
|
186
|
+
child.stdout?.on("data", capture);
|
|
187
|
+
child.stderr?.on("data", capture);
|
|
188
|
+
let settled = false;
|
|
189
|
+
const finish = (probe) => {
|
|
190
|
+
if (settled)
|
|
191
|
+
return;
|
|
192
|
+
settled = true;
|
|
193
|
+
clearTimeout(timer);
|
|
194
|
+
resolve(probe);
|
|
195
|
+
};
|
|
196
|
+
const timer = setTimeout(() => {
|
|
197
|
+
try {
|
|
198
|
+
child.kill("SIGKILL");
|
|
199
|
+
}
|
|
200
|
+
catch { }
|
|
201
|
+
finish({ state: "unknown", detail: `probe timed out after ${timeoutMs}ms` });
|
|
202
|
+
}, timeoutMs);
|
|
203
|
+
child.on("error", (err) => finish({ state: "unknown", detail: `probe failed: ${err.message}` }));
|
|
204
|
+
child.on("close", (code) => finish(parseProbeOutput(code, out)));
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
export const OK_PROBE_INTERVAL_MS = 5 * 60_000;
|
|
208
|
+
export const LIMITED_PROBE_INTERVAL_MS = 2 * 60_000;
|
|
209
|
+
// Probes cost a little quota, so they are throttled. While limited they are
|
|
210
|
+
// free (the call is rejected instantly), but if a reset time is known there is
|
|
211
|
+
// no point asking again before it — except for a slow safety re-check, in case
|
|
212
|
+
// the reported reset time was wrong.
|
|
213
|
+
export function shouldProbe(state, now, opts = {}) {
|
|
214
|
+
const since = now - state.lastProbeAt;
|
|
215
|
+
if (!state.limited)
|
|
216
|
+
return since >= (opts.okIntervalMs ?? OK_PROBE_INTERVAL_MS);
|
|
217
|
+
if (state.resetAt !== undefined) {
|
|
218
|
+
// Before the announced reset there is nothing to learn; check slowly, only
|
|
219
|
+
// in case the announced time was wrong. Once it is due, check promptly so
|
|
220
|
+
// recovery is announced quickly.
|
|
221
|
+
return now < state.resetAt - 30_000 ? since >= 10 * 60_000 : since >= 30_000;
|
|
222
|
+
}
|
|
223
|
+
return since >= (opts.limitedIntervalMs ?? LIMITED_PROBE_INTERVAL_MS);
|
|
224
|
+
}
|
|
225
|
+
// How the limit reads to the user: prefer the CLI's own wording, fall back to
|
|
226
|
+
// a countdown derived from the machine-readable reset time.
|
|
227
|
+
export function resetHint(state, now) {
|
|
228
|
+
if (state.resetText)
|
|
229
|
+
return state.resetText;
|
|
230
|
+
if (state.resetAt === undefined || state.resetAt <= now)
|
|
231
|
+
return undefined;
|
|
232
|
+
const mins = Math.max(1, Math.round((state.resetAt - now) / 60_000));
|
|
233
|
+
return mins >= 60
|
|
234
|
+
? `~${Math.round(mins / 60)}h`
|
|
235
|
+
: `~${mins}m`;
|
|
236
|
+
}
|
|
237
|
+
export function readUsageState() {
|
|
238
|
+
try {
|
|
239
|
+
const parsed = JSON.parse(fs.readFileSync(USAGE_STATE_FILE, "utf-8"));
|
|
240
|
+
if (typeof parsed === "object" &&
|
|
241
|
+
parsed !== null &&
|
|
242
|
+
typeof parsed.limited === "boolean") {
|
|
243
|
+
const state = parsed;
|
|
244
|
+
return {
|
|
245
|
+
...state,
|
|
246
|
+
lastProbeAt: Number.isFinite(state.lastProbeAt) ? state.lastProbeAt : 0,
|
|
247
|
+
notified: Array.isArray(state.notified) ? state.notified : [],
|
|
248
|
+
};
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
catch { }
|
|
252
|
+
return { limited: false, lastProbeAt: 0, notified: [] };
|
|
253
|
+
}
|
|
254
|
+
export function writeUsageState(state) {
|
|
255
|
+
try {
|
|
256
|
+
fs.writeFileSync(USAGE_STATE_FILE, JSON.stringify(state));
|
|
257
|
+
}
|
|
258
|
+
catch { }
|
|
259
|
+
}
|
|
260
|
+
//# sourceMappingURL=usage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usage.js","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -10,3 +10,12 @@ export declare function parseRunFlags(args: string): {
|
|
|
10
10
|
rest: string;
|
|
11
11
|
};
|
|
12
12
|
export declare function buildRunPrompt(task: string, fromUserId: string): string;
|
|
13
|
+
export type McpRegistration = {
|
|
14
|
+
kind: "none";
|
|
15
|
+
} | {
|
|
16
|
+
kind: "current";
|
|
17
|
+
} | {
|
|
18
|
+
kind: "other";
|
|
19
|
+
target?: string;
|
|
20
|
+
};
|
|
21
|
+
export declare function classifyMcpRegistration(stdout: string | undefined, serverJs: string): McpRegistration;
|
package/dist/utils.js
CHANGED
|
@@ -85,4 +85,13 @@ export function buildRunPrompt(task, fromUserId) {
|
|
|
85
85
|
"如果任务失败、被阻塞或需要用户决策,也必须通过 wechat_send_text 说明情况,并保持微信监控运行以等待用户回复。",
|
|
86
86
|
].join("\n");
|
|
87
87
|
}
|
|
88
|
+
export function classifyMcpRegistration(stdout, serverJs) {
|
|
89
|
+
if (stdout === undefined)
|
|
90
|
+
return { kind: "none" };
|
|
91
|
+
if (stdout.includes(serverJs))
|
|
92
|
+
return { kind: "current" };
|
|
93
|
+
// Best-effort label for the message; absence must not change the outcome.
|
|
94
|
+
const target = stdout.match(/\S*dist[/\\]server\.js/)?.[0];
|
|
95
|
+
return { kind: "other", target };
|
|
96
|
+
}
|
|
88
97
|
//# sourceMappingURL=utils.js.map
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|