[Bug]: request_secret file delivery has no trailing newline, and the tool text does not say so

オープン 初心者向け
#34,318 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

@juliusmarminge がすでに取り組んでいます。

2026年11月11日 から。

  • #34494 @juliusmarminge による — オープン

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
69/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
typescript
領域
backend

調査の方向性

apps/server/src/secrets/SecretRequests.tsを読み、ツールrequest_secretの説明とissueで言及されているsudoのガイダンスを見つけてください。ファイルへの受け渡し時にsecretがどのように書き込まれるかを確認し、その動作をエージェント向けの指示と比較してください。指示で末尾の改行がないことを説明し、行単位で読み取る仕組みに対処する実用的な方法を示していれば完了です。該当する場合は、SSH経由のリモートsudoも含めてください。

索引モデルが 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
  1. Have an agent call request_secret with delivery: "file" and enter a password.
  2. Have the agent feed the file to a line-based reader, for example running sudo on another machine over ssh -tt (sudo's timestamp has to be on the same tty as the later command, so sudo -S < "$file" locally does not help):
ssh -tt host 'IFS= read -rs pw; printf "%s\n" "$pw" | sudo -S -p "" true; ...' \
  < <(cat "$file"; exec sleep 7200)
Expected behavior

The agent knows from the tool text that the file holds the value exactly, with no trailing newline, so it appends one for readers that wait for a line. Or there is a documented pattern for sudo on a remote host.

Actual behavior

request_secret writes the value with no trailing newline (apps/server/src/secrets/SecretRequests.ts, fileSystem.writeFile(partial, new TextEncoder().encode(value), ...)). The two patterns in the agent-facing text, "$(cat <file>)" and sudo -S -p '' <cmd> < "$file", work because both accept EOF. Neither the tool description nor the sudo guidance says the newline is missing, though.

In the case above, read never sees a newline, so the remote shell blocks with no output and no error. The agent cannot tell it is stuck on the password, not on the work it started, until it checks the remote process list. Appending printf '\n' after cat "$file" fixes it.

Suggestion: say in the request_secret description, and in the sudo guidance, that the file has no trailing newline. Optionally add a short pattern for sudo on a remote host over ssh.

Impact

Minor bug or occasional failure

Version or commit

T3 Code desktop 0.1.9-nightly.20261111.4515

Environment

macOS desktop app, Claude provider; the target was a linked Linux machine reached over ssh.

Workaround

Append a newline: < <(cat "$file"; printf '\n'; exec sleep 7200).

主要言語
TypeScript
スター
24.8k
フォーク
6.4k
平均マージ
10時間 56分
マージ済み PR(30日)
226

環境構築

Codespaces で開く

このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

pingdotgg/t3code のほかの issue

pingdotgg/t3code の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。