[Bug]: Artifact watches are refused in every Claude thread: "Watch <url>" is treated as a print session
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 64/100
- issue の種類
- バグ
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- typescript
調査の方向性
Start in the apps/server area, then trace how Claude session entrypoints are identified and how ArtifactComments decides whether a session can hold an artifact watch. Compare the current "t3-code" entrypoint with the reported working "sdk-ts" behavior and inspect the change from commit ddfc4a92ed. Done when a T3 Code Claude thread can arm the watch and comments sent to Claude reach that thread.
索引モデルが issue の本文から書いたものです。
説明
Before submitting
- I searched existing issues and did not find a duplicate.
- I included enough detail to reproduce or investigate the problem.
Area
apps/server
Steps to reproduce
Prerequisites: Claude Code signed in with a claude.ai account, and "env": {"CLAUDE_CODE_ARTIFACT": "1"} in Claude's settings.json so the Artifact tools load.
- In a T3 Code Claude thread, send:
Use your Artifact tool to publish a private page titled "Sample page" with the two lines "Sample page" and "Line two." - In the same thread, send
Watch <the link of that artifact>. - Read the result of the
ArtifactCommentscall (expand the tool row), or ask Claude whether comments sent to it on that page will reach the thread.
Expected behavior
The watch connects, as in a terminal claude session. In T3 Code builds from before the entrypoint identifier changed, Claude Code accepts the watch. One such build that also marks composer messages as typed by a person (commit 6a275fb45a) gives, with the same Claude Code version:
Watching <artifact-url> — the watch is armed (`status` shows whether it has connected yet); this session keeps track of new versions published elsewhere; a new version starts no turn and sends no notification
followed by "A comment on it sent to Claude reaches this session (its status row says auto-replies armed)". A comment with "Send to Claude" on that page then wakes the thread, and Claude handles and resolves it.
Actual behavior
On current main the watch is refused. The ArtifactComments result is:
Not watching <artifact-url> — only a main-loop session (interactive, SDK, or background) holds the watch, not a subagent, teammate, or print session.
The publish result in step 1 already says:
Live subscription: none — this is a print (-p), cloud, subagent, or teammate session, which does not keep track of new versions of this artifact published elsewhere (only the main conversation of a local interactive, background, or TypeScript/Python Agent SDK session does). Expected; not an error.
So no artifact watch can connect in any T3 Code Claude thread, and "Send to Claude" on a comment never reaches the thread. Claude Code's session transcript records the thread's prompts with "entrypoint": "t3-code". The build from before the change records "entrypoint": "sdk-ts" for the same steps.
This started when the entrypoint identifier changed (commit ddfc4a92ed, 2026-11-01).
Impact
Major degradation or frequent failure
Version or commit
main b68aedfdb7 (2026-11-12); the build where the watch arms is 6a275fb45a. Claude Code 2.1.322.
Environment
Linux (Ubuntu 26.04), T3 Code desktop app and web client built from source, Claude Code 2.1.322 signed in with a claude.ai subscription, Claude Haiku 5.5.
Logs or stack traces
main b68aedfdb7: entrypoint "t3-code" -> ArtifactComments watch: "Not watching <artifact-url> — only a main-loop session (interactive, SDK, or background) holds the watch, not a subagent, teammate, or print session."
6a275fb45a: entrypoint "sdk-ts" -> ArtifactComments watch: "Watching <artifact-url> — the watch is armed ..."
Workaround
None found. Watching the artifact from a terminal claude session works.
- 主要言語
- TypeScript
- スター
- 24.8k
- フォーク
- 6.4k
- 平均マージ
- 4時間 16分
- マージ済み PR(30日)
- 352
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
pingdotgg/t3code のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 67/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信
pingdotgg/t3code の issue をすべて見る
似ている issue
-
idea-scout idea:453
難易度 2/5 1〜3時間 初心者へのやさしさ 83/100
jeanibarz/agent-notebook#453 ·
メンテナーはふだん 1 日以内に返信
-
level/task
難易度 1/5 1時間未満 初心者へのやさしさ 95/100
wazuh/wazuh-dashboard-plugins#9642 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 91/100
unicef/adt-studio#1112 ·
メンテナーはふだん 2 日以内に返信
-
feature request good first issue
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
TabularisDB/tabularis#1513 ·
メンテナーはふだん 2 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 75/100