tailii-host 0.7.1 → 0.8.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/chat/subagentTranscript.d.ts +7 -0
- package/dist/chat/subagentTranscript.js +44 -0
- package/dist/chat/subagentTranscript.js.map +1 -1
- package/dist/chat/transcriptTailer.d.ts +18 -0
- package/dist/chat/transcriptTailer.js +167 -8
- package/dist/chat/transcriptTailer.js.map +1 -1
- package/dist/commands/launch.d.ts +58 -1
- package/dist/commands/launch.js +161 -4
- package/dist/commands/launch.js.map +1 -1
- package/dist/engine/handlers/claudeModels.js +5 -1
- package/dist/engine/handlers/claudeModels.js.map +1 -1
- package/dist/engine/handlers/conversation.js +38 -0
- package/dist/engine/handlers/conversation.js.map +1 -1
- package/dist/engine/handlers/mode.js +9 -1
- package/dist/engine/handlers/mode.js.map +1 -1
- package/dist/engine/handlers/session.js +11 -2
- package/dist/engine/handlers/session.js.map +1 -1
- package/dist/hub/hubDaemon.js +8 -2
- package/dist/hub/hubDaemon.js.map +1 -1
- package/dist/hub/panePreviewPump.d.ts +8 -0
- package/dist/hub/panePreviewPump.js +15 -0
- package/dist/hub/panePreviewPump.js.map +1 -1
- package/dist/hub/sessionHub.d.ts +35 -1
- package/dist/hub/sessionHub.js +145 -4
- package/dist/hub/sessionHub.js.map +1 -1
- package/dist/protocol/decode.d.ts +4 -0
- package/dist/protocol/decode.js +50 -2
- package/dist/protocol/decode.js.map +1 -1
- package/dist/protocol/encode.js +2 -0
- package/dist/protocol/encode.js.map +1 -1
- package/dist/protocol/messages.d.ts +39 -0
- package/dist/push/approvalPushNotifier.d.ts +19 -0
- package/dist/push/approvalPushNotifier.js +26 -2
- package/dist/push/approvalPushNotifier.js.map +1 -1
- package/dist/push/pushTypes.d.ts +4 -1
- package/dist/push/pushTypes.js +4 -2
- package/dist/push/pushTypes.js.map +1 -1
- package/dist/services/claudeModelCatalog.d.ts +14 -0
- package/dist/services/claudeModelCatalog.js +47 -0
- package/dist/services/claudeModelCatalog.js.map +1 -1
- package/dist/services/peerSessions.d.ts +36 -0
- package/dist/services/peerSessions.js +114 -0
- package/dist/services/peerSessions.js.map +1 -0
- package/dist/shared/clientBuild.d.ts +1 -1
- package/dist/shared/clientBuild.js +1 -1
- package/dist/shared/systemNotice.js +9 -0
- package/dist/shared/systemNotice.js.map +1 -1
- package/dist/shared/usageLimitWait.d.ts +18 -0
- package/dist/shared/usageLimitWait.js +72 -0
- package/dist/shared/usageLimitWait.js.map +1 -0
- package/package.json +3 -3
|
@@ -12,6 +12,13 @@ export declare function readCodexSubagentTranscript(file: string | null): Subage
|
|
|
12
12
|
* 先頭切り捨て時は omitted=1 で「省略あり」を明示する(行数は数えない)。
|
|
13
13
|
*/
|
|
14
14
|
export declare function readBackgroundOutput(file: string | null): SubagentTranscriptResult;
|
|
15
|
+
/**
|
|
16
|
+
* fork サブエージェント(Claude Code 2.1.232〜, fork mode 既定 ON)の user 行から、harness の定型
|
|
17
|
+
* 指示 `<fork-boilerplate>…</fork-boilerplate>` を外して指示本文だけを返す(TESTABLE, fork-subagent)。
|
|
18
|
+
* 実測 2026-09-14 の形: boilerplate ブロック + 空行 + `Your directive: <本文>`。
|
|
19
|
+
* boilerplate を含まない本文は null(通常の user 行)。
|
|
20
|
+
*/
|
|
21
|
+
export declare function presentForkDirective(raw: string): string | null;
|
|
15
22
|
export declare function parseSubagentTranscript(jsonl: string): SubagentTranscriptResult;
|
|
16
23
|
/**
|
|
17
24
|
* fork された Codex rollout には親の履歴も複製される。親→子の agent_message を境界にし、
|
|
@@ -61,8 +61,28 @@ export function readBackgroundOutput(file) {
|
|
|
61
61
|
omitted: clamped ? 1 : 0,
|
|
62
62
|
};
|
|
63
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* fork サブエージェント(Claude Code 2.1.232〜, fork mode 既定 ON)の user 行から、harness の定型
|
|
66
|
+
* 指示 `<fork-boilerplate>…</fork-boilerplate>` を外して指示本文だけを返す(TESTABLE, fork-subagent)。
|
|
67
|
+
* 実測 2026-09-14 の形: boilerplate ブロック + 空行 + `Your directive: <本文>`。
|
|
68
|
+
* boilerplate を含まない本文は null(通常の user 行)。
|
|
69
|
+
*/
|
|
70
|
+
export function presentForkDirective(raw) {
|
|
71
|
+
const open = raw.indexOf("<fork-boilerplate>");
|
|
72
|
+
if (open < 0)
|
|
73
|
+
return null;
|
|
74
|
+
const closeTag = "</fork-boilerplate>";
|
|
75
|
+
const close = raw.indexOf(closeTag, open);
|
|
76
|
+
const rest = (close < 0 ? "" : raw.slice(close + closeTag.length)).trim();
|
|
77
|
+
const directive = rest.replace(/^Your directive:\s*/u, "").trim();
|
|
78
|
+
return directive.length > 0 ? `⑂ 分岐(fork)への指示\n\n${directive}` : "⑂ 分岐(fork)への指示";
|
|
79
|
+
}
|
|
64
80
|
export function parseSubagentTranscript(jsonl) {
|
|
65
81
|
const all = [];
|
|
82
|
+
// fork の transcript は親履歴を複製せず、先頭に参照レコード `fork-context-ref` を置き、その直後に
|
|
83
|
+
// 親が fork を起こした Agent tool_use の写しが 1 行入る(実測 2026-09-14)。写しは fork 自身の
|
|
84
|
+
// 行動ではないのでタイムラインから外す。
|
|
85
|
+
let forkSpawnCopyPending = false;
|
|
66
86
|
for (const line of jsonl.split(/\r?\n/)) {
|
|
67
87
|
if (!line)
|
|
68
88
|
continue;
|
|
@@ -76,12 +96,21 @@ export function parseSubagentTranscript(jsonl) {
|
|
|
76
96
|
if (typeof value !== "object" || value === null || Array.isArray(value))
|
|
77
97
|
continue;
|
|
78
98
|
const record = value;
|
|
99
|
+
if (record["type"] === "fork-context-ref") {
|
|
100
|
+
forkSpawnCopyPending = true;
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
79
103
|
const ts = parseTimestamp(record["timestamp"]);
|
|
80
104
|
const message = object(record["message"]);
|
|
81
105
|
const role = message?.["role"] ?? record["type"];
|
|
82
106
|
if (role !== "user" && role !== "assistant")
|
|
83
107
|
continue;
|
|
84
108
|
const content = message?.["content"] ?? record["content"];
|
|
109
|
+
if (forkSpawnCopyPending) {
|
|
110
|
+
forkSpawnCopyPending = false;
|
|
111
|
+
if (role === "assistant" && isAgentSpawnOnlyContent(content))
|
|
112
|
+
continue;
|
|
113
|
+
}
|
|
85
114
|
// harness 注入の <system-reminder>(user 行のリマインダ / assistant text 末尾の背景通知)は
|
|
86
115
|
// 表示せず、user 行で届く通知封筒はコンパクトな 1 行に畳む。除去で空になった text は行にしない。
|
|
87
116
|
const present = (raw) => {
|
|
@@ -93,6 +122,12 @@ export function parseSubagentTranscript(jsonl) {
|
|
|
93
122
|
const status = /<status>([^<]*)<\/status>/u.exec(raw)?.[1]?.trim() ?? "";
|
|
94
123
|
return status === "" ? "⚙️ バックグラウンドタスク通知" : `⚙️ バックグラウンドタスク通知(${status})`;
|
|
95
124
|
}
|
|
125
|
+
// fork の定型指示(<fork-boilerplate>)は harness の注入。指示本文だけを見せる。
|
|
126
|
+
if (role === "user") {
|
|
127
|
+
const directive = presentForkDirective(raw);
|
|
128
|
+
if (directive !== null)
|
|
129
|
+
return directive;
|
|
130
|
+
}
|
|
96
131
|
// 別セッションからのメッセージ封筒(<cross-session-message>)は、封筒と harness の
|
|
97
132
|
// 前置き/後置きを外して「⇄ 送信元名 より」+ 本文へ転写する(規則は shared/crossSession.ts)。
|
|
98
133
|
if (role === "user") {
|
|
@@ -316,4 +351,13 @@ function snippet(value, cap) {
|
|
|
316
351
|
function truncate(value, cap) {
|
|
317
352
|
return value.length <= cap ? value : `${value.slice(0, cap)}…`;
|
|
318
353
|
}
|
|
354
|
+
/** content が「Agent ツール呼び出しのみ」か(fork 先頭の spawn 写し判定)。 */
|
|
355
|
+
function isAgentSpawnOnlyContent(content) {
|
|
356
|
+
if (!Array.isArray(content) || content.length === 0)
|
|
357
|
+
return false;
|
|
358
|
+
return content.every((block) => {
|
|
359
|
+
const rec = object(block);
|
|
360
|
+
return rec !== null && rec["type"] === "tool_use" && rec["name"] === "Agent";
|
|
361
|
+
});
|
|
362
|
+
}
|
|
319
363
|
//# sourceMappingURL=subagentTranscript.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subagentTranscript.js","sourceRoot":"","sources":["../../src/chat/subagentTranscript.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"subagentTranscript.js","sourceRoot":"","sources":["../../src/chat/subagentTranscript.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,11 @@ export declare const CONTEXT_STREAM_ID = "pc:context";
|
|
|
13
13
|
* しか持たなかったので、これを権威として同期する。
|
|
14
14
|
*/
|
|
15
15
|
export declare const EFFORT_STREAM_ID = "pc:effort";
|
|
16
|
+
/**
|
|
17
|
+
* API エラー終端行ならそのエラー種別(トップレベル `error` 文字列。無ければ "")を、そうでなければ
|
|
18
|
+
* null を返す。実測: 使用量制限は `error: "rate_limit"`(usage-limit-wait の武装に使う)。
|
|
19
|
+
*/
|
|
20
|
+
export declare function apiErrorAssistantKind(text: string): string | null;
|
|
16
21
|
/**
|
|
17
22
|
* transcript 末尾を読み、最後のターン記録が「ターン終端マーカー」ならその行の timestamp(ms) を
|
|
18
23
|
* 返す。終端マーカー = 利用者の中断確定(user 行)/ API エラー終端(`isApiErrorMessage` の
|
|
@@ -58,6 +63,12 @@ export interface ClaudeTurnLifecycleEvent {
|
|
|
58
63
|
* 処理中状態を直接は動かさない(権威は hook)。
|
|
59
64
|
*/
|
|
60
65
|
kind: "interrupted" | "api_error" | "turn_start";
|
|
66
|
+
/**
|
|
67
|
+
* `api_error` のエラー種別(合成 assistant 行の `error`。実測: `rate_limit` = 使用量制限 429 /
|
|
68
|
+
* `server_error` 529 / `authentication_failed` 403)。hub は `rate_limit` のとき、Claude Code の
|
|
69
|
+
* 自動再開待ち(usage-limit-wait)を pane から見張り push で知らせる。不明は省略。
|
|
70
|
+
*/
|
|
71
|
+
errorKind?: string | null;
|
|
61
72
|
/** transcript 行の timestamp(Unix ms)。履歴再生で流れる過去ターンのマーカーを除外する根拠。 */
|
|
62
73
|
atMs: number;
|
|
63
74
|
}
|
|
@@ -91,6 +102,13 @@ interface Turn {
|
|
|
91
102
|
toolUseId: string;
|
|
92
103
|
text: string;
|
|
93
104
|
};
|
|
105
|
+
/** user 行の `isMeta`(harness 注入のプロンプト。制限リセット後の自動再開プロンプト判定に使う)。 */
|
|
106
|
+
isMeta?: boolean;
|
|
107
|
+
/** Artifact ツールの tool_result から拾った公開 URL(該当ツールカードへ後付けする, artifact-card)。 */
|
|
108
|
+
artifactResults?: {
|
|
109
|
+
toolUseId: string;
|
|
110
|
+
url: string;
|
|
111
|
+
}[];
|
|
94
112
|
}
|
|
95
113
|
/** claude セッショントランスクリプト(JSONL)の tail 実装。 */
|
|
96
114
|
export declare class TranscriptTailer {
|
|
@@ -48,20 +48,48 @@ function isClaudeInterruptMarker(text) {
|
|
|
48
48
|
* 空白の書式には依存させない — 書式変更で判定が無言で失効しないように)。
|
|
49
49
|
*/
|
|
50
50
|
function isApiErrorAssistantLine(text) {
|
|
51
|
+
return apiErrorAssistantKind(text) !== null;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* API エラー終端行ならそのエラー種別(トップレベル `error` 文字列。無ければ "")を、そうでなければ
|
|
55
|
+
* null を返す。実測: 使用量制限は `error: "rate_limit"`(usage-limit-wait の武装に使う)。
|
|
56
|
+
*/
|
|
57
|
+
export function apiErrorAssistantKind(text) {
|
|
51
58
|
// 引用符込みでキー名を探す(本文中に同名文字列を含む巨大 tool_result 行で parse を走らせない)。
|
|
52
59
|
if (!text.includes('"isApiErrorMessage"'))
|
|
53
|
-
return
|
|
60
|
+
return null;
|
|
54
61
|
try {
|
|
55
62
|
const parsed = JSON.parse(text);
|
|
56
63
|
if (typeof parsed !== "object" || parsed === null)
|
|
57
|
-
return
|
|
64
|
+
return null;
|
|
58
65
|
const record = parsed;
|
|
59
|
-
|
|
66
|
+
if (record["type"] !== "assistant" || record["isApiErrorMessage"] !== true)
|
|
67
|
+
return null;
|
|
68
|
+
return typeof record["error"] === "string" ? record["error"] : "";
|
|
60
69
|
}
|
|
61
70
|
catch {
|
|
62
|
-
return
|
|
71
|
+
return null;
|
|
63
72
|
}
|
|
64
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* 制限リセット後の自動再開プロンプト(isMeta の user 行)を利用者向けの注記へ。cross-session の
|
|
76
|
+
* 起こし(`Another Claude session sent a message:` / 封筒)は自動再開ではないので対象外。
|
|
77
|
+
*/
|
|
78
|
+
const AUTO_CONTINUE_NOTICE = "⏱️ 使用量制限がリセットされ、Claude Code が作業を自動再開しました";
|
|
79
|
+
/** 制限到達から自動再開プロンプトを待つ時間窓(週次制限のリセットでも一晩は待つ)。 */
|
|
80
|
+
const AUTO_CONTINUE_WINDOW_MS = 12 * 60 * 60 * 1000;
|
|
81
|
+
/**
|
|
82
|
+
* isMeta の user 行のうち、自動再開プロンプトではないと分かる harness 由来の形(cross-session の起こし /
|
|
83
|
+
* idle 通知 / 停止境界の注入 / バックグラウンド通知封筒)。これらは畳まず従来どおり present() に委ねる。
|
|
84
|
+
*/
|
|
85
|
+
function looksLikeOtherHarnessPrompt(text) {
|
|
86
|
+
const trimmed = text.trimStart();
|
|
87
|
+
return (trimmed.includes("<cross-session-message") ||
|
|
88
|
+
trimmed.startsWith("Another Claude session sent a message") ||
|
|
89
|
+
trimmed.startsWith("[Cross-session") ||
|
|
90
|
+
trimmed.startsWith("<system-reminder>") ||
|
|
91
|
+
trimmed.includes("<task-notification>"));
|
|
92
|
+
}
|
|
65
93
|
/**
|
|
66
94
|
* transcript 末尾を読み、最後のターン記録が「ターン終端マーカー」ならその行の timestamp(ms) を
|
|
67
95
|
* 返す。終端マーカー = 利用者の中断確定(user 行)/ API エラー終端(`isApiErrorMessage` の
|
|
@@ -303,6 +331,10 @@ export class TranscriptTailer {
|
|
|
303
331
|
noticeCtx: createSystemNoticeContext(),
|
|
304
332
|
activeQuestionIds: new Set(),
|
|
305
333
|
pendingSkillActivities: new Map(),
|
|
334
|
+
pendingArtifactActivities: new Map(),
|
|
335
|
+
rateLimitArmed: false,
|
|
336
|
+
rateLimitArmedAtMs: null,
|
|
337
|
+
live: false,
|
|
306
338
|
onLifecycle: this.lifecycleObserver,
|
|
307
339
|
};
|
|
308
340
|
const start = Date.now();
|
|
@@ -317,6 +349,7 @@ export class TranscriptTailer {
|
|
|
317
349
|
bytesRead = 0;
|
|
318
350
|
}
|
|
319
351
|
if (bytesRead === 0) {
|
|
352
|
+
state.live = true;
|
|
320
353
|
// 初回 EOF = 既存内容の再生完了。マーカー有効時は完了シグナルを 1 通流す。
|
|
321
354
|
if (this.emitReplayDoneMarker && !announcedReplayDone) {
|
|
322
355
|
announcedReplayDone = true;
|
|
@@ -488,14 +521,43 @@ function* emitLine(line, state) {
|
|
|
488
521
|
// 実機 2026-09-07: 「You've hit your session limit」で止まった会話が hub では処理中のまま残り、
|
|
489
522
|
// 停止ボタン点灯・背景購読の継続(開き直しても履歴再生が走らず host 経路が配線されない)・
|
|
490
523
|
// reaper の計時停止を招いていた。
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
524
|
+
const apiErrorKind = apiErrorAssistantKind(text);
|
|
525
|
+
if (apiErrorKind !== null) {
|
|
526
|
+
// 使用量制限(rate_limit)の後は、Claude Code が自動再開で流す isMeta の発話を注記へ畳む。
|
|
527
|
+
state.rateLimitArmed = apiErrorKind === "rate_limit";
|
|
528
|
+
const errorAtMs = lineTimestampMs(line);
|
|
529
|
+
state.rateLimitArmedAtMs = state.rateLimitArmed && Number.isFinite(errorAtMs) ? errorAtMs : null;
|
|
530
|
+
if (state.onLifecycle !== null && Number.isFinite(errorAtMs)) {
|
|
531
|
+
state.onLifecycle({ kind: "api_error", atMs: errorAtMs, errorKind: apiErrorKind });
|
|
532
|
+
}
|
|
495
533
|
}
|
|
496
534
|
const turn = extractTurn(text, state.noticeCtx);
|
|
497
535
|
if (turn === null)
|
|
498
536
|
return;
|
|
537
|
+
if (state.rateLimitArmed && turn.role === "assistant" && apiErrorKind === null) {
|
|
538
|
+
// 自動再開プロンプトを挟まず assistant が動いた(queued 発話の自動 dequeue 等)→ 武装解除。
|
|
539
|
+
state.rateLimitArmed = false;
|
|
540
|
+
}
|
|
541
|
+
let foldAutoContinue = false;
|
|
542
|
+
if (turn.role === "user" && turn.text.length > 0 && userLineKind(text) === "utterance") {
|
|
543
|
+
const lineAtMs = lineTimestampMs(line);
|
|
544
|
+
const inWindow = state.rateLimitArmedAtMs === null || !Number.isFinite(lineAtMs) ||
|
|
545
|
+
lineAtMs - state.rateLimitArmedAtMs <= AUTO_CONTINUE_WINDOW_MS;
|
|
546
|
+
if (turn.isMeta === true && state.rateLimitArmed && inWindow && !looksLikeOtherHarnessPrompt(turn.text)) {
|
|
547
|
+
// 自動再開の固定プロンプト(usage-limit-wait): 利用者の発話ではないので system 注記にする。
|
|
548
|
+
// 文言そのものは公開されていないため、live 行に限り本文の先頭を診断ログへ残し次回の精緻化に使う。
|
|
549
|
+
if (state.live) {
|
|
550
|
+
process.stderr.write(`[tailii-host tailer] auto-continue-prompt 検出(isMeta, rate_limit 後): ${turn.text.slice(0, 120).replaceAll("\n", " ")}\n`);
|
|
551
|
+
}
|
|
552
|
+
state.rateLimitArmed = false;
|
|
553
|
+
// 注記への書き換えはライフサイクル観測(turn_start)の後に行う(下)。
|
|
554
|
+
foldAutoContinue = true;
|
|
555
|
+
}
|
|
556
|
+
else if (turn.isMeta !== true || !inWindow) {
|
|
557
|
+
// 本物の発話が来た(利用者が制限後に別の指示を出した)/ 時間窓を過ぎた → 武装解除。
|
|
558
|
+
state.rateLimitArmed = false;
|
|
559
|
+
}
|
|
560
|
+
}
|
|
499
561
|
// 中断確定マーカー: ターン終了の権威(Stop hook は中断で発火しない)。表示用の chat_output
|
|
500
562
|
// とは別に、行の timestamp 付きで観測者へ通知する。timestamp 不明行は履歴/ライブを区別
|
|
501
563
|
// できないため通知しない(誤って進行中ターンを終了扱いにしない側へ倒す)。
|
|
@@ -513,6 +575,11 @@ function* emitLine(line, state) {
|
|
|
513
575
|
}
|
|
514
576
|
}
|
|
515
577
|
}
|
|
578
|
+
// 自動再開プロンプト(usage-limit-wait): 発話としての観測(turn_start)は上で済ませ、表示だけ注記へ畳む。
|
|
579
|
+
if (foldAutoContinue) {
|
|
580
|
+
turn.role = "system";
|
|
581
|
+
turn.text = AUTO_CONTINUE_NOTICE;
|
|
582
|
+
}
|
|
516
583
|
for (const prompt of turn.questionPrompts) {
|
|
517
584
|
if (state.activeQuestionIds.has(prompt.id))
|
|
518
585
|
continue;
|
|
@@ -520,6 +587,16 @@ function* emitLine(line, state) {
|
|
|
520
587
|
yield { type: "question_prompt", v: PROTOCOL_V1, id: prompt.id, questions: prompt.questions };
|
|
521
588
|
}
|
|
522
589
|
for (const activity of turn.toolActivities) {
|
|
590
|
+
// Artifact カードは tool_result に載る公開 URL(`Published … at https://claude.ai/…`)を後付けする
|
|
591
|
+
// ため保持する(artifact-card)。上限は Skill と共用の値で最古から破棄。
|
|
592
|
+
if (activity.name === "Artifact") {
|
|
593
|
+
state.pendingArtifactActivities.set(activity.id, activity);
|
|
594
|
+
if (state.pendingArtifactActivities.size > MAX_PENDING_SKILL_ACTIVITIES) {
|
|
595
|
+
const oldest = state.pendingArtifactActivities.keys().next().value;
|
|
596
|
+
if (oldest !== undefined)
|
|
597
|
+
state.pendingArtifactActivities.delete(oldest);
|
|
598
|
+
}
|
|
599
|
+
}
|
|
523
600
|
// Skill ツールカードは注入されるスキル本文(後続の isMeta 行)を詳細へ後付けする
|
|
524
601
|
// ため保持する。本文が届かないまま溜まらないよう上限で最古から破棄。
|
|
525
602
|
if (activity.name === "Skill") {
|
|
@@ -545,6 +622,14 @@ function* emitLine(line, state) {
|
|
|
545
622
|
yield { type: "tool_activity", v: PROTOCOL_V1, activity: enriched };
|
|
546
623
|
}
|
|
547
624
|
}
|
|
625
|
+
// Artifact の公開 URL が届いたら、該当カードを url 付きで再送する(iOS は同一 id を更新として扱う)。
|
|
626
|
+
for (const result of turn.artifactResults ?? []) {
|
|
627
|
+
const pending = state.pendingArtifactActivities.get(result.toolUseId);
|
|
628
|
+
if (pending === undefined)
|
|
629
|
+
continue;
|
|
630
|
+
state.pendingArtifactActivities.delete(result.toolUseId);
|
|
631
|
+
yield { type: "tool_activity", v: PROTOCOL_V1, activity: { ...pending, url: result.url } };
|
|
632
|
+
}
|
|
548
633
|
for (const id of turn.toolResultIds) {
|
|
549
634
|
if (!state.activeQuestionIds.has(id))
|
|
550
635
|
continue;
|
|
@@ -718,6 +803,13 @@ export function extractTurn(line, ctx) {
|
|
|
718
803
|
if (injectedSkill && typeof rec["sourceToolUseID"] === "string" && plainText.length > 0) {
|
|
719
804
|
turn.skillInjection = { toolUseId: rec["sourceToolUseID"], text: plainText };
|
|
720
805
|
}
|
|
806
|
+
if (role === "user") {
|
|
807
|
+
if (rec["isMeta"] === true)
|
|
808
|
+
turn.isMeta = true;
|
|
809
|
+
const artifactResults = extractArtifactResults(rawContent);
|
|
810
|
+
if (artifactResults.length > 0)
|
|
811
|
+
turn.artifactResults = artifactResults;
|
|
812
|
+
}
|
|
721
813
|
return turn;
|
|
722
814
|
}
|
|
723
815
|
/** usage から現在コンテキスト相当のトークン数を合算する(未知フィールドは 0 扱い)。 */
|
|
@@ -970,6 +1062,37 @@ function makeToolActivity(id, name, input) {
|
|
|
970
1062
|
activity.description = captionCap.value;
|
|
971
1063
|
return activity;
|
|
972
1064
|
}
|
|
1065
|
+
case "Artifact": {
|
|
1066
|
+
// Claude Code の Artifact ツール(`/design` のキャンバスや共有ページの公開, Week 34)。
|
|
1067
|
+
// input = { file_path?, title?, description?, favicon?, url?(更新時), action?(list/read 等) }。
|
|
1068
|
+
// 公開 URL は tool_result(`Published <path> at https://claude.ai/code/artifact/<id>`)から後付けする。
|
|
1069
|
+
const action = nonEmpty(str(input["action"]));
|
|
1070
|
+
const title = nonEmpty(str(input["title"]));
|
|
1071
|
+
const filePath = nonEmpty(str(input["file_path"]));
|
|
1072
|
+
const descriptionCap = cap(str(input["description"]), MAX_DESCRIPTION_CHARACTERS);
|
|
1073
|
+
const subject = title ?? (filePath !== null ? displayPath(filePath, name) : null);
|
|
1074
|
+
const label = action !== null && action !== "publish"
|
|
1075
|
+
? `Artifact ${action}`
|
|
1076
|
+
: subject === null ? "Artifact を公開" : `Artifact を公開 ${subject}`;
|
|
1077
|
+
const activity = {
|
|
1078
|
+
id,
|
|
1079
|
+
name,
|
|
1080
|
+
label,
|
|
1081
|
+
commandTruncated: false,
|
|
1082
|
+
descriptionTruncated: descriptionCap.truncated,
|
|
1083
|
+
};
|
|
1084
|
+
if (filePath !== null)
|
|
1085
|
+
activity.file = filePath;
|
|
1086
|
+
if (descriptionCap.value !== null)
|
|
1087
|
+
activity.description = descriptionCap.value;
|
|
1088
|
+
// 公開(action 無し / publish)だけ URL を載せる。read / comments / upload_asset 等は入力に url を
|
|
1089
|
+
// 取るが「開く」導線にしない(カードは公開操作だけ)。
|
|
1090
|
+
const url = nonEmpty(str(input["url"]));
|
|
1091
|
+
if ((action === null || action === "publish") && url !== null && /^https:\/\/claude\.ai\//.test(url)) {
|
|
1092
|
+
activity.url = url;
|
|
1093
|
+
}
|
|
1094
|
+
return activity;
|
|
1095
|
+
}
|
|
973
1096
|
case "TodoWrite": {
|
|
974
1097
|
const todos = extractTodos(input["todos"]);
|
|
975
1098
|
const activity = {
|
|
@@ -1151,6 +1274,42 @@ function decodeQuestionPromptQuestion(raw) {
|
|
|
1151
1274
|
}
|
|
1152
1275
|
return { header, question, multiSelect, options };
|
|
1153
1276
|
}
|
|
1277
|
+
/** Artifact ツールの tool_result から公開 URL を拾う(`https://claude.ai/code/artifact/<id>` 等)。 */
|
|
1278
|
+
const ARTIFACT_URL_PATTERN = /https:\/\/claude\.ai\/(?:code\/)?artifact\/[A-Za-z0-9-]+/;
|
|
1279
|
+
function extractArtifactResults(content) {
|
|
1280
|
+
if (!Array.isArray(content))
|
|
1281
|
+
return [];
|
|
1282
|
+
const out = [];
|
|
1283
|
+
for (const block of content) {
|
|
1284
|
+
if (typeof block !== "object" || block === null)
|
|
1285
|
+
continue;
|
|
1286
|
+
const rec = block;
|
|
1287
|
+
if (rec["type"] !== "tool_result" || typeof rec["tool_use_id"] !== "string")
|
|
1288
|
+
continue;
|
|
1289
|
+
const text = toolResultPlainText(rec["content"]);
|
|
1290
|
+
if (!text.includes("claude.ai/"))
|
|
1291
|
+
continue;
|
|
1292
|
+
const match = ARTIFACT_URL_PATTERN.exec(text);
|
|
1293
|
+
if (match !== null)
|
|
1294
|
+
out.push({ toolUseId: rec["tool_use_id"], url: match[0] });
|
|
1295
|
+
}
|
|
1296
|
+
return out;
|
|
1297
|
+
}
|
|
1298
|
+
/** tool_result の content(文字列 / text ブロック配列)を平文へ。 */
|
|
1299
|
+
function toolResultPlainText(content) {
|
|
1300
|
+
if (typeof content === "string")
|
|
1301
|
+
return content;
|
|
1302
|
+
if (!Array.isArray(content))
|
|
1303
|
+
return "";
|
|
1304
|
+
return content
|
|
1305
|
+
.map((block) => {
|
|
1306
|
+
if (typeof block !== "object" || block === null)
|
|
1307
|
+
return "";
|
|
1308
|
+
const rec = block;
|
|
1309
|
+
return rec["type"] === "text" && typeof rec["text"] === "string" ? rec["text"] : "";
|
|
1310
|
+
})
|
|
1311
|
+
.join("\n");
|
|
1312
|
+
}
|
|
1154
1313
|
function extractToolResultIds(content) {
|
|
1155
1314
|
if (!Array.isArray(content))
|
|
1156
1315
|
return [];
|