@tunnelbox/core 0.1.17 → 0.1.20
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/index.js +999 -20
- package/locales/de-DE.json +277 -166
- package/locales/en-US.json +277 -166
- package/locales/es-ES.json +277 -166
- package/locales/fr-FR.json +277 -166
- package/locales/ja-JP.json +277 -166
- package/locales/ko-KR.json +277 -166
- package/locales/zh-CN.json +277 -166
- package/locales/zh-TW.json +277 -166
- package/package.json +2 -1
- package/src/cli.ts +119 -0
- package/src/index.ts +1 -0
- package/src/qr.ts +2 -1
- package/src/state.ts +6 -5
- package/src/types.ts +2 -0
package/locales/ja-JP.json
CHANGED
|
@@ -1,166 +1,277 @@
|
|
|
1
|
-
{
|
|
2
|
-
"agent.err.createSession": "セッションの作成に失敗しました",
|
|
3
|
-
"agent.err.httpClient": "opencode HTTP client にアクセスできません",
|
|
4
|
-
"agent.err.unknownPerm": "不明な権限リクエスト: {id}",
|
|
5
|
-
"agent.err.unknownQuestion": "不明な質問リクエスト: {id}",
|
|
6
|
-
"agent.log.fallback404": "優先エンドポイントが 404 を返したため、別のエンドポイントへフォールバック: {message}",
|
|
7
|
-
"agent.log.gotPermReply": "携帯から権限の返信を受信 (id={id} {reply} {version})",
|
|
8
|
-
"agent.log.gotQuestionReply": "携帯から質問の返信を受信 (id={id} {status} {version})",
|
|
9
|
-
"agent.log.handleFailed": "{type} の処理に失敗: {message}",
|
|
10
|
-
"agent.log.msgOk": "セッションメッセージ取得成功 session={session} data={count} 方式={limited} win={win} ms={ms}",
|
|
11
|
-
"agent.log.msgFailed": "セッションメッセージ取得失敗 session={session} err={err} ms={ms}",
|
|
12
|
-
"agent.log.msgLimitFallback": "この opencode は limit 非対応のため全量取得にフォールバック(session={session})",
|
|
13
|
-
"agent.log.httpOk": "opencode HTTP {status} {path}",
|
|
14
|
-
"agent.log.pendingResent": "session.pending: {session} の保留リクエスト {count} 件を再送",
|
|
15
|
-
"agent.log.unhandledType": "未処理のメッセージタイプ: {type}",
|
|
16
|
-
"events.log.fwdPermission": "権限リクエストを携帯へ転送 (id={id} tool={tool} {version})",
|
|
17
|
-
"events.log.sessionDeleted": "session.deleted を携帯へ転送 (session={session})",
|
|
18
|
-
"events.log.permissionReplied": "opencode 応答 permission.replied (id={id} {response})",
|
|
19
|
-
"events.log.questionRejected": "opencode 応答 question.rejected (id={id})",
|
|
20
|
-
"events.log.questionReplied": "opencode 応答 question.replied (id={id})",
|
|
21
|
-
"index.error.connectRelay": "リレーに接続できません。リレーアドレスを確認して再試行してください",
|
|
22
|
-
"index.error.pairTimeout": "ペアリングコードの取得がタイムアウトしました(リレーが応答しません)",
|
|
23
|
-
"index.log.claimed": "スマホのアカウントに紐付けました。以降は「マイ PC」から直接接続されるため、再スキャンは不要です",
|
|
24
|
-
"index.log.connectedRelay": "リレーに接続しました {url}",
|
|
25
|
-
"index.log.loaded": "tunnelbox opencode プラグインを起動しました(v{version})",
|
|
26
|
-
"index.log.disconnected": "リレーから切断、自動的に再接続しています…",
|
|
27
|
-
"index.log.exit": "終了しました",
|
|
28
|
-
"index.log.pairCode": "ペアリングコードを生成: {code}",
|
|
29
|
-
"index.log.pairingStillClaimed": "このペアリングコードは同一アカウントの新しいスマートフォンとの再ペアリング専用です。この PC は既に連携済みで、スマートフォンの「マイ コンピューター」から引き続き接続できます。",
|
|
30
|
-
"index.log.pairingPreparing": "リレーへ接続してペアリングコードを生成しています…",
|
|
31
|
-
"index.log.permissionToPhone": "権限リクエスト → スマホで承認 (id={id} tool={tool})",
|
|
32
|
-
"index.log.permissionTuiFallback": "App がオフラインのため、権限リクエストは opencode TUI で対応 (id={id} tool={tool})",
|
|
33
|
-
"index.log.relayError": "リレーエラー: {msg}",
|
|
34
|
-
"index.log.resetIdentity": "アカウントから解除されました。ID をリセットして新しいペアリングコードを生成します…",
|
|
35
|
-
"index.log.unknown": "不明",
|
|
36
|
-
"install.codeLine": "ペアリングコード: {code}",
|
|
37
|
-
"install.commandInstalled": "コマンドをインストール: {path}",
|
|
38
|
-
"install.done": "完了。リレーに接続して本機のペアリング情報を出力しました:",
|
|
39
|
-
"install.failConnect": "(ペアリング情報を出力するためリレーに接続できませんでした — リレーに到達できないか Node が古すぎる可能性があります。",
|
|
40
|
-
"install.failConnectHint": "opencode を再起動後、--print-logs でターミナルの QR コードを確認するか、opencode 内で「ペアリングコードを表示」または /pair と入力してください。)",
|
|
41
|
-
"install.hintFresh": "注意:ペアリングコードは一度きりで、約 10 分間有効です。後から opencode を起動する場合は、起動時に表示されるか /pair で取得した最新情報を使用してください。",
|
|
42
|
-
"install.pluginInstalled": "プラグインをインストール: {path}",
|
|
43
|
-
"install.qrUnavailable": "(QR コードを表示できません — 上記のペアリングコードを使用してください)",
|
|
44
|
-
"install.qrcodeEnsure": "qrcode を opencode 設定ディレクトリにインストールしています…",
|
|
45
|
-
"install.qrcodeFail": "qrcode のインストールに失敗しました(使用には影響せず、ペアリングコードのみ表示されます): {err}",
|
|
46
|
-
"install.relayError": "リレーがエラーを返しました: {msg}",
|
|
47
|
-
"install.scanHint": "スマホで tunnelbox App「スキャンしてペアリング」を開き、上の QR コードをスキャンして接続:",
|
|
48
|
-
"pair.heading": "tunnelbox スマホペアリング",
|
|
49
|
-
"pair.howTo": "スマホで tunnelbox App を開き、「スキャンしてペアリング」で上の QR コードをスキャンするか、ペアリングコードを手動入力してください。",
|
|
50
|
-
"pair.oneTime": "
|
|
51
|
-
"pair.promptBody": "この PC のスマホ遠隔ペアリング情報を表示してください:ペアリングコードと、スキャンできる QR コード。QR コードは等幅コードブロックに入れ、1 文字も変えずそのまま出力してください。スマホでスキャンできるようにするためです。",
|
|
52
|
-
"pair.promptDescription": "スマホ遠隔ペアリングのペアリングコード・スキャン用 QR コードを表示",
|
|
53
|
-
"pair.scanIntro": "**スキャンでペアリング**:スマホで tunnelbox App「スキャンしてペアリング」を開き、下の QR コードをスキャンすると自動的に接続されます。",
|
|
54
|
-
"perm.promptAuthorize": "opencode が認可を要求しています",
|
|
55
|
-
"perm.promptPatterns": "opencode がアクセスを要求: {list}",
|
|
56
|
-
"perm.promptResource": "opencode がリソースへのアクセスを要求: {list}",
|
|
57
|
-
"perm.promptTool": "opencode が {tool} の実行を要求",
|
|
58
|
-
"qr.codeLabel": "ペアリングコード",
|
|
59
|
-
"qr.fileWritten": "ペアリング情報を書き込みました: {path}",
|
|
60
|
-
"qr.openHint": "tunnelbox App を開き、上の QR コードをスキャンするか、App でペアリングコードを手動入力してください。",
|
|
61
|
-
"qr.titleNoType": "tunnelbox スマホペアリング",
|
|
62
|
-
"qr.titleWithType": "tunnelbox {type} スマホペアリング",
|
|
63
|
-
"qr.unavailable": "(qrcode が未インストール — 上記のペアリングコードを使用してください)",
|
|
64
|
-
"claude.errBusy": "このセッションは実行中です。完了するまでお待ちいただくか、先に停止してください",
|
|
65
|
-
"claude.errTurn": "生成エラー",
|
|
66
|
-
"claude.pairingStillClaimed": "すでにアカウントに紐付け済みです。このコードは同じアカウントの新しい端末のペアリング専用です。現在の端末は「マイコンピュータ」から直接接続できます",
|
|
67
|
-
"claude.pairForced": "--pair:ペアリングコードを強制リクエストしました(今回のみ)",
|
|
68
|
-
"claude.pairUnclaimed": "紐付け済みアカウントを検出できませんでした。ペアリング案内を開始します:",
|
|
69
|
-
"claude.claimedHint": "携帯アカウントに紐付け済みです:携帯の「マイコンピュータ」から直接接続してください",
|
|
70
|
-
"claude.errStartFailed": "起動に失敗しました:",
|
|
71
|
-
"claude.msgStarted": "Claude Code アダプターを起動しました(Ctrl+C で終了)",
|
|
72
|
-
"claude.warnInvalidMode": "無効な TUNNELBOX_CLAUDE_MODE を無視: {raw}(許可 {list})",
|
|
73
|
-
"claude.warnInvalidThinking": "無効な TUNNELBOX_CLAUDE_THINKING を無視: {raw}(off|adaptive|enabled[:budget])",
|
|
74
|
-
"claude.cmdNew": "新しいセッション",
|
|
75
|
-
"claude.cmdHelp": "ヘルプを表示",
|
|
76
|
-
"claude.errNoRelay": "中継 URL が設定されていません: ビルド時は --env でデフォルトを注入し、実行時は TUNNELBOX_RELAY_URL で上書きできます",
|
|
77
|
-
"claude.logConnected": "中継 {url} に接続しました",
|
|
78
|
-
"claude.logMsgUncaught": "メッセージ処理中に未捕捉の例外: {message}",
|
|
79
|
-
"claude.reasonDisconnect": "中継が切断されました(fail-closed 自動拒否)",
|
|
80
|
-
"claude.reasonUnbind": "アカウント連携解除(fail-closed 自動拒否)",
|
|
81
|
-
"claude.logDisconnected": "中継から切断、自動で再接続中…",
|
|
82
|
-
"claude.logPairCode": "ペアリングコードを生成: {code}",
|
|
83
|
-
"claude.logUnhandledType": "未処理のメッセージタイプ: {type}",
|
|
84
|
-
"claude.logHandleFailed": "{type} の処理に失敗: {message}",
|
|
85
|
-
"claude.newSessionTitle": "新しいセッション",
|
|
86
|
-
"claude.helpText": "使用可能なコマンド:\n- /new 新しいセッション\n- /help ヘルプを表示",
|
|
87
|
-
"claude.logPromptFailed": "session.prompt に失敗: {message}",
|
|
88
|
-
"claude.logAbortSent": "中止を送信しました (session={session})",
|
|
89
|
-
"claude.logAbortFailed": "中止に失敗 (session={session}): {message}",
|
|
90
|
-
"claude.errBadWorkspaceEmpty": "ワークスペースのパスがありません",
|
|
91
|
-
"claude.errBadWorkspaceNotDir": "ディレクトリが存在しないか利用できません",
|
|
92
|
-
"claude.logWorkspaceSwitched": "ワークスペースを切替: {path}",
|
|
93
|
-
"claude.logUnknownQuestionReply": "一致しない構造化質問の応答 (id={id})",
|
|
94
|
-
"claude.logFlushedQuestions": "未回答の質問 {count} 件をキャンセル: {reason}",
|
|
95
|
-
"claude.logFlushedApprovals": "未回答のリクエスト {count} 件を拒否: {reason}",
|
|
96
|
-
"claude.logPendingResent": "session.pending: {session} の保留項目 {count} 件を再送信",
|
|
97
|
-
"claude.logSetModeFailed": "setPermissionMode に失敗 (session={session}): {message}",
|
|
98
|
-
"claude.errWorkspaceMissing": "ワークスペースが存在しません: {dir}",
|
|
99
|
-
"claude.logSessionError": "セッションエラー (session={session}): {message}",
|
|
100
|
-
"claude.logOfflineDenyTool": "中継オフライン、ツール {tool} を自動拒否",
|
|
101
|
-
"claude.errOfflineDeny": "中継オフライン、自動拒否(fail-closed)",
|
|
102
|
-
"claude.logAuqDisabled": "AskUserQuestion は無効です(TUNNELBOX_CLAUDE_ASK_USER_QUESTION=0)、自動拒否",
|
|
103
|
-
"claude.errAuqDisabled": "AskUserQuestion は有効になっていません",
|
|
104
|
-
"claude.logAuqParseFailed": "AskUserQuestion 入力の解析に失敗、自動拒否(fail-closed)",
|
|
105
|
-
"claude.errAuqParse": "質問を解析できません",
|
|
106
|
-
"claude.logAuqSkipped": "AskUserQuestion 未回答/キャンセル (session={session})",
|
|
107
|
-
"claude.errAuqCancelled": "ユーザーが選択しませんでした(キャンセル)",
|
|
108
|
-
"claude.logAuqDone": "AskUserQuestion に回答しました (session={session})",
|
|
109
|
-
"claude.promptRunTool": "Claude Code が {tool} の実行を要求",
|
|
110
|
-
"claude.errApprovalTimeout": "承認がタイムアウト、自動拒否(fail-closed)",
|
|
111
|
-
"claude.errUserDenied": "ユーザーが拒否",
|
|
112
|
-
"claude.errAborted": "リクエストは中止されました",
|
|
113
|
-
"claude.logPermToPhone": "権限リクエスト(tool={tool}) → スマホへ送信 permissionID={id}",
|
|
114
|
-
"claude.errRelayUnreachable": "中継に到達できず、自動拒否(fail-closed)",
|
|
115
|
-
"claude.logQuestionOffline": "中継オフライン、構造化質問を自動キャンセル",
|
|
116
|
-
"claude.logQuestionToPhone": "構造化質問({count} 問)→ スマホへ送信 questionID={id}",
|
|
117
|
-
"claude.logDialogOffline": "中継オフライン、ダイアログを自動キャンセル({tool})",
|
|
118
|
-
"claude.logDialogToPhone": "ダイアログ要求(kind={kind} tool={tool}) → スマホへ送信 permissionID={id}",
|
|
119
|
-
"claude.logAuqDialogParse": "AskUserQuestion ペイロードの解析に失敗、既定の動作を維持(session={session})",
|
|
120
|
-
"claude.logDialogUnmapped": "request_user_dialog(kind={kind}) のマッピングがなく、既定の動作を維持(session={session})",
|
|
121
|
-
"claude.promptMcpAuth": "MCP「{server}」が認可を要求",
|
|
122
|
-
"claude.logElicitUnmapped": "MCP elicitation(server={server}, mode={mode})は未対応、自動拒否(session={session})",
|
|
123
|
-
"claude.logResetIdentity": "アカウント連携が解除されました。ID をリセットし、新しいペアリングコードを生成しています…",
|
|
124
|
-
"claude.dialogConfirm": "Claude Code が確認を要求({kind})",
|
|
125
|
-
"claude.resultTruncated": "…(結果が長すぎるため省略)",
|
|
126
|
-
"claude.streamError": "claude ストリーミングエラー",
|
|
127
|
-
"claude.errListSessions": "Claude セッション一覧の読み取りに失敗",
|
|
128
|
-
"claude.errReadHistory": "セッション履歴の読み取りに失敗({id})",
|
|
129
|
-
"setup.langSet": "実行言語を設定しました",
|
|
130
|
-
"setup.langHint": "再起動後にこの言語で出力します(実行時は TUNNELBOX_LANG で上書き可能)。状態ファイル:",
|
|
131
|
-
"setup.langCurrent": "現在の実行言語",
|
|
132
|
-
"hermes.errNoRelay": "リレーURLが設定されていません:--env でデフォルトを注入、実行時は TUNNELBOX_RELAY_URL で上書きしてください",
|
|
133
|
-
"hermes.logConnected": "リレーに接続しました {url}",
|
|
134
|
-
"hermes.logMsgUncaught": "メッセージ処理中の未捕捉例外: {message}",
|
|
135
|
-
"hermes.logDisconnected": "リレーから切断、自動再接続中…",
|
|
136
|
-
"hermes.logPairCode": "ペアリングコードを生成: {code}",
|
|
137
|
-
"hermes.logUnhandledType": "未処理のメッセージタイプ: {type}",
|
|
138
|
-
"hermes.logHandleFailed": "{type} の処理に失敗: {message}",
|
|
139
|
-
"hermes.logClaimed": "スマホのアカウントにバインドしました。以後はスマホの「マイコンピュータ」から直接接続します",
|
|
140
|
-
"hermes.logResetIdentity": "アカウントからバインド解除、IDをリセットして新しいペアリングコードを生成中…",
|
|
141
|
-
"hermes.cmdNew": "新規セッション",
|
|
142
|
-
"hermes.cmdHelp": "ヘルプを表示",
|
|
143
|
-
"hermes.newSessionTitle": "新規セッション",
|
|
144
|
-
"hermes.helpText": "サポートコマンド:\n- /new 新規セッション\n- /help ヘルプを表示",
|
|
145
|
-
"hermes.errBusy": "このセッションは生成中です。完了を待つか、先に停止してください",
|
|
146
|
-
"hermes.errBadWorkspace": "このディレクトリは存在しないか使用できません",
|
|
147
|
-
"hermes.logWorkspaceSwitched": "ワークスペースを切替: {path}",
|
|
148
|
-
"hermes.errWorkspaceMissing": "ワークスペースが存在しません: {dir}",
|
|
149
|
-
"hermes.errStartFailed": "起動に失敗: {message}",
|
|
150
|
-
"hermes.msgStarted": "Hermes アダプタを起動しました(Ctrl+C で終了)",
|
|
151
|
-
"hermes.logAbortSent": "中止を送信 (session={session})",
|
|
152
|
-
"hermes.logPromptFailed": "session.prompt に失敗: {message}",
|
|
153
|
-
"hermes.logTurnError": "ターンエラー (session={session}): {message}",
|
|
154
|
-
"hermes.logPairForced": "--pair:ペアリングコードを強制取得(今回のみ)",
|
|
155
|
-
"hermes.pairingStillClaimed": "スマホアカウントにバインド済み:このコードは同アカウントの新デバイス再ペアリング用です。現在のデバイスはスマホの「マイコンピュータ」から直接接続できます",
|
|
156
|
-
"hermes.logPairNoRelay": "リレーURLが未設定のためペアリングコードを取得できません",
|
|
157
|
-
"hermes.errSpawnHermes": "Hermes({bin})を起動できません:インストールを確認してください({err})",
|
|
158
|
-
"hermes.errHermesExit": "hermes 終了({code}): {err}",
|
|
159
|
-
"hermes.logSessionUpdated": "セッションを更新 (session={session})",
|
|
160
|
-
"hermes.errNoInject": "スマホからのメッセージ挿入が利用できません(非対話セッションまたはプロセス未準備)",
|
|
161
|
-
"hermes.pairNoRelay": "リレーに接続できません(リレー到達不能または websockets 欠落)",
|
|
162
|
-
"hermes.pairTimeout": "ペアリングコード要求がタイムアウト(リレー未応答)",
|
|
163
|
-
"hermes.errToolPair": "tunnelbox_pair 失敗: {err}",
|
|
164
|
-
"hermes.errToolStatus": "tunnelbox_status 失敗: {err}",
|
|
165
|
-
"hermes.cliUsage": "使用方法: /tunnelbox <pair|status>\n pair ペアリングコードを取得して表示\n status リレー/バインド/接続状態を表示"
|
|
166
|
-
|
|
1
|
+
{
|
|
2
|
+
"agent.err.createSession": "セッションの作成に失敗しました",
|
|
3
|
+
"agent.err.httpClient": "opencode HTTP client にアクセスできません",
|
|
4
|
+
"agent.err.unknownPerm": "不明な権限リクエスト: {id}",
|
|
5
|
+
"agent.err.unknownQuestion": "不明な質問リクエスト: {id}",
|
|
6
|
+
"agent.log.fallback404": "優先エンドポイントが 404 を返したため、別のエンドポイントへフォールバック: {message}",
|
|
7
|
+
"agent.log.gotPermReply": "携帯から権限の返信を受信 (id={id} {reply} {version})",
|
|
8
|
+
"agent.log.gotQuestionReply": "携帯から質問の返信を受信 (id={id} {status} {version})",
|
|
9
|
+
"agent.log.handleFailed": "{type} の処理に失敗: {message}",
|
|
10
|
+
"agent.log.msgOk": "セッションメッセージ取得成功 session={session} data={count} 方式={limited} win={win} ms={ms}",
|
|
11
|
+
"agent.log.msgFailed": "セッションメッセージ取得失敗 session={session} err={err} ms={ms}",
|
|
12
|
+
"agent.log.msgLimitFallback": "この opencode は limit 非対応のため全量取得にフォールバック(session={session})",
|
|
13
|
+
"agent.log.httpOk": "opencode HTTP {status} {path}",
|
|
14
|
+
"agent.log.pendingResent": "session.pending: {session} の保留リクエスト {count} 件を再送",
|
|
15
|
+
"agent.log.unhandledType": "未処理のメッセージタイプ: {type}",
|
|
16
|
+
"events.log.fwdPermission": "権限リクエストを携帯へ転送 (id={id} tool={tool} {version})",
|
|
17
|
+
"events.log.sessionDeleted": "session.deleted を携帯へ転送 (session={session})",
|
|
18
|
+
"events.log.permissionReplied": "opencode 応答 permission.replied (id={id} {response})",
|
|
19
|
+
"events.log.questionRejected": "opencode 応答 question.rejected (id={id})",
|
|
20
|
+
"events.log.questionReplied": "opencode 応答 question.replied (id={id})",
|
|
21
|
+
"index.error.connectRelay": "リレーに接続できません。リレーアドレスを確認して再試行してください",
|
|
22
|
+
"index.error.pairTimeout": "ペアリングコードの取得がタイムアウトしました(リレーが応答しません)",
|
|
23
|
+
"index.log.claimed": "スマホのアカウントに紐付けました。以降は「マイ PC」から直接接続されるため、再スキャンは不要です",
|
|
24
|
+
"index.log.connectedRelay": "リレーに接続しました {url}",
|
|
25
|
+
"index.log.loaded": "tunnelbox opencode プラグインを起動しました(v{version})",
|
|
26
|
+
"index.log.disconnected": "リレーから切断、自動的に再接続しています…",
|
|
27
|
+
"index.log.exit": "終了しました",
|
|
28
|
+
"index.log.pairCode": "ペアリングコードを生成: {code}",
|
|
29
|
+
"index.log.pairingStillClaimed": "このペアリングコードは同一アカウントの新しいスマートフォンとの再ペアリング専用です。この PC は既に連携済みで、スマートフォンの「マイ コンピューター」から引き続き接続できます。",
|
|
30
|
+
"index.log.pairingPreparing": "リレーへ接続してペアリングコードを生成しています…",
|
|
31
|
+
"index.log.permissionToPhone": "権限リクエスト → スマホで承認 (id={id} tool={tool})",
|
|
32
|
+
"index.log.permissionTuiFallback": "App がオフラインのため、権限リクエストは opencode TUI で対応 (id={id} tool={tool})",
|
|
33
|
+
"index.log.relayError": "リレーエラー: {msg}",
|
|
34
|
+
"index.log.resetIdentity": "アカウントから解除されました。ID をリセットして新しいペアリングコードを生成します…",
|
|
35
|
+
"index.log.unknown": "不明",
|
|
36
|
+
"install.codeLine": "ペアリングコード: {code}",
|
|
37
|
+
"install.commandInstalled": "コマンドをインストール: {path}",
|
|
38
|
+
"install.done": "完了。リレーに接続して本機のペアリング情報を出力しました:",
|
|
39
|
+
"install.failConnect": "(ペアリング情報を出力するためリレーに接続できませんでした — リレーに到達できないか Node が古すぎる可能性があります。",
|
|
40
|
+
"install.failConnectHint": "opencode を再起動後、--print-logs でターミナルの QR コードを確認するか、opencode 内で「ペアリングコードを表示」または /pair と入力してください。)",
|
|
41
|
+
"install.hintFresh": "注意:ペアリングコードは一度きりで、約 10 分間有効です。後から opencode を起動する場合は、起動時に表示されるか /pair で取得した最新情報を使用してください。",
|
|
42
|
+
"install.pluginInstalled": "プラグインをインストール: {path}",
|
|
43
|
+
"install.qrUnavailable": "(QR コードを表示できません — 上記のペアリングコードを使用してください)",
|
|
44
|
+
"install.qrcodeEnsure": "qrcode を opencode 設定ディレクトリにインストールしています…",
|
|
45
|
+
"install.qrcodeFail": "qrcode のインストールに失敗しました(使用には影響せず、ペアリングコードのみ表示されます): {err}",
|
|
46
|
+
"install.relayError": "リレーがエラーを返しました: {msg}",
|
|
47
|
+
"install.scanHint": "スマホで tunnelbox App「スキャンしてペアリング」を開き、上の QR コードをスキャンして接続:",
|
|
48
|
+
"pair.heading": "tunnelbox スマホペアリング",
|
|
49
|
+
"pair.howTo": "スマホで tunnelbox App を開き、「スキャンしてペアリング」で上の QR コードをスキャンするか、ペアリングコードを手動入力してください。",
|
|
50
|
+
"pair.oneTime": "ペアリングコードは1回限りで、有効期限は約10分です。使用または期限切れで無効になります。新しいコードが必要な場合は「ペアリングコードを更新」と依頼してください。",
|
|
51
|
+
"pair.promptBody": "この PC のスマホ遠隔ペアリング情報を表示してください:ペアリングコードと、スキャンできる QR コード。QR コードは等幅コードブロックに入れ、1 文字も変えずそのまま出力してください。スマホでスキャンできるようにするためです。",
|
|
52
|
+
"pair.promptDescription": "スマホ遠隔ペアリングのペアリングコード・スキャン用 QR コードを表示",
|
|
53
|
+
"pair.scanIntro": "**スキャンでペアリング**:スマホで tunnelbox App「スキャンしてペアリング」を開き、下の QR コードをスキャンすると自動的に接続されます。",
|
|
54
|
+
"perm.promptAuthorize": "opencode が認可を要求しています",
|
|
55
|
+
"perm.promptPatterns": "opencode がアクセスを要求: {list}",
|
|
56
|
+
"perm.promptResource": "opencode がリソースへのアクセスを要求: {list}",
|
|
57
|
+
"perm.promptTool": "opencode が {tool} の実行を要求",
|
|
58
|
+
"qr.codeLabel": "ペアリングコード",
|
|
59
|
+
"qr.fileWritten": "ペアリング情報を書き込みました: {path}",
|
|
60
|
+
"qr.openHint": "tunnelbox App を開き、上の QR コードをスキャンするか、App でペアリングコードを手動入力してください。",
|
|
61
|
+
"qr.titleNoType": "tunnelbox スマホペアリング",
|
|
62
|
+
"qr.titleWithType": "tunnelbox {type} スマホペアリング",
|
|
63
|
+
"qr.unavailable": "(qrcode が未インストール — 上記のペアリングコードを使用してください)",
|
|
64
|
+
"claude.errBusy": "このセッションは実行中です。完了するまでお待ちいただくか、先に停止してください",
|
|
65
|
+
"claude.errTurn": "生成エラー",
|
|
66
|
+
"claude.pairingStillClaimed": "すでにアカウントに紐付け済みです。このコードは同じアカウントの新しい端末のペアリング専用です。現在の端末は「マイコンピュータ」から直接接続できます",
|
|
67
|
+
"claude.pairForced": "--pair:ペアリングコードを強制リクエストしました(今回のみ)",
|
|
68
|
+
"claude.pairUnclaimed": "紐付け済みアカウントを検出できませんでした。ペアリング案内を開始します:",
|
|
69
|
+
"claude.claimedHint": "携帯アカウントに紐付け済みです:携帯の「マイコンピュータ」から直接接続してください",
|
|
70
|
+
"claude.errStartFailed": "起動に失敗しました:",
|
|
71
|
+
"claude.msgStarted": "Claude Code アダプターを起動しました(Ctrl+C で終了)",
|
|
72
|
+
"claude.warnInvalidMode": "無効な TUNNELBOX_CLAUDE_MODE を無視: {raw}(許可 {list})",
|
|
73
|
+
"claude.warnInvalidThinking": "無効な TUNNELBOX_CLAUDE_THINKING を無視: {raw}(off|adaptive|enabled[:budget])",
|
|
74
|
+
"claude.cmdNew": "新しいセッション",
|
|
75
|
+
"claude.cmdHelp": "ヘルプを表示",
|
|
76
|
+
"claude.errNoRelay": "中継 URL が設定されていません: ビルド時は --env でデフォルトを注入し、実行時は TUNNELBOX_RELAY_URL で上書きできます",
|
|
77
|
+
"claude.logConnected": "中継 {url} に接続しました",
|
|
78
|
+
"claude.logMsgUncaught": "メッセージ処理中に未捕捉の例外: {message}",
|
|
79
|
+
"claude.reasonDisconnect": "中継が切断されました(fail-closed 自動拒否)",
|
|
80
|
+
"claude.reasonUnbind": "アカウント連携解除(fail-closed 自動拒否)",
|
|
81
|
+
"claude.logDisconnected": "中継から切断、自動で再接続中…",
|
|
82
|
+
"claude.logPairCode": "ペアリングコードを生成: {code}",
|
|
83
|
+
"claude.logUnhandledType": "未処理のメッセージタイプ: {type}",
|
|
84
|
+
"claude.logHandleFailed": "{type} の処理に失敗: {message}",
|
|
85
|
+
"claude.newSessionTitle": "新しいセッション",
|
|
86
|
+
"claude.helpText": "使用可能なコマンド:\n- /new 新しいセッション\n- /help ヘルプを表示",
|
|
87
|
+
"claude.logPromptFailed": "session.prompt に失敗: {message}",
|
|
88
|
+
"claude.logAbortSent": "中止を送信しました (session={session})",
|
|
89
|
+
"claude.logAbortFailed": "中止に失敗 (session={session}): {message}",
|
|
90
|
+
"claude.errBadWorkspaceEmpty": "ワークスペースのパスがありません",
|
|
91
|
+
"claude.errBadWorkspaceNotDir": "ディレクトリが存在しないか利用できません",
|
|
92
|
+
"claude.logWorkspaceSwitched": "ワークスペースを切替: {path}",
|
|
93
|
+
"claude.logUnknownQuestionReply": "一致しない構造化質問の応答 (id={id})",
|
|
94
|
+
"claude.logFlushedQuestions": "未回答の質問 {count} 件をキャンセル: {reason}",
|
|
95
|
+
"claude.logFlushedApprovals": "未回答のリクエスト {count} 件を拒否: {reason}",
|
|
96
|
+
"claude.logPendingResent": "session.pending: {session} の保留項目 {count} 件を再送信",
|
|
97
|
+
"claude.logSetModeFailed": "setPermissionMode に失敗 (session={session}): {message}",
|
|
98
|
+
"claude.errWorkspaceMissing": "ワークスペースが存在しません: {dir}",
|
|
99
|
+
"claude.logSessionError": "セッションエラー (session={session}): {message}",
|
|
100
|
+
"claude.logOfflineDenyTool": "中継オフライン、ツール {tool} を自動拒否",
|
|
101
|
+
"claude.errOfflineDeny": "中継オフライン、自動拒否(fail-closed)",
|
|
102
|
+
"claude.logAuqDisabled": "AskUserQuestion は無効です(TUNNELBOX_CLAUDE_ASK_USER_QUESTION=0)、自動拒否",
|
|
103
|
+
"claude.errAuqDisabled": "AskUserQuestion は有効になっていません",
|
|
104
|
+
"claude.logAuqParseFailed": "AskUserQuestion 入力の解析に失敗、自動拒否(fail-closed)",
|
|
105
|
+
"claude.errAuqParse": "質問を解析できません",
|
|
106
|
+
"claude.logAuqSkipped": "AskUserQuestion 未回答/キャンセル (session={session})",
|
|
107
|
+
"claude.errAuqCancelled": "ユーザーが選択しませんでした(キャンセル)",
|
|
108
|
+
"claude.logAuqDone": "AskUserQuestion に回答しました (session={session})",
|
|
109
|
+
"claude.promptRunTool": "Claude Code が {tool} の実行を要求",
|
|
110
|
+
"claude.errApprovalTimeout": "承認がタイムアウト、自動拒否(fail-closed)",
|
|
111
|
+
"claude.errUserDenied": "ユーザーが拒否",
|
|
112
|
+
"claude.errAborted": "リクエストは中止されました",
|
|
113
|
+
"claude.logPermToPhone": "権限リクエスト(tool={tool}) → スマホへ送信 permissionID={id}",
|
|
114
|
+
"claude.errRelayUnreachable": "中継に到達できず、自動拒否(fail-closed)",
|
|
115
|
+
"claude.logQuestionOffline": "中継オフライン、構造化質問を自動キャンセル",
|
|
116
|
+
"claude.logQuestionToPhone": "構造化質問({count} 問)→ スマホへ送信 questionID={id}",
|
|
117
|
+
"claude.logDialogOffline": "中継オフライン、ダイアログを自動キャンセル({tool})",
|
|
118
|
+
"claude.logDialogToPhone": "ダイアログ要求(kind={kind} tool={tool}) → スマホへ送信 permissionID={id}",
|
|
119
|
+
"claude.logAuqDialogParse": "AskUserQuestion ペイロードの解析に失敗、既定の動作を維持(session={session})",
|
|
120
|
+
"claude.logDialogUnmapped": "request_user_dialog(kind={kind}) のマッピングがなく、既定の動作を維持(session={session})",
|
|
121
|
+
"claude.promptMcpAuth": "MCP「{server}」が認可を要求",
|
|
122
|
+
"claude.logElicitUnmapped": "MCP elicitation(server={server}, mode={mode})は未対応、自動拒否(session={session})",
|
|
123
|
+
"claude.logResetIdentity": "アカウント連携が解除されました。ID をリセットし、新しいペアリングコードを生成しています…",
|
|
124
|
+
"claude.dialogConfirm": "Claude Code が確認を要求({kind})",
|
|
125
|
+
"claude.resultTruncated": "…(結果が長すぎるため省略)",
|
|
126
|
+
"claude.streamError": "claude ストリーミングエラー",
|
|
127
|
+
"claude.errListSessions": "Claude セッション一覧の読み取りに失敗",
|
|
128
|
+
"claude.errReadHistory": "セッション履歴の読み取りに失敗({id})",
|
|
129
|
+
"setup.langSet": "実行言語を設定しました",
|
|
130
|
+
"setup.langHint": "再起動後にこの言語で出力します(実行時は TUNNELBOX_LANG で上書き可能)。状態ファイル:",
|
|
131
|
+
"setup.langCurrent": "現在の実行言語",
|
|
132
|
+
"hermes.errNoRelay": "リレーURLが設定されていません:--env でデフォルトを注入、実行時は TUNNELBOX_RELAY_URL で上書きしてください",
|
|
133
|
+
"hermes.logConnected": "リレーに接続しました {url}",
|
|
134
|
+
"hermes.logMsgUncaught": "メッセージ処理中の未捕捉例外: {message}",
|
|
135
|
+
"hermes.logDisconnected": "リレーから切断、自動再接続中…",
|
|
136
|
+
"hermes.logPairCode": "ペアリングコードを生成: {code}",
|
|
137
|
+
"hermes.logUnhandledType": "未処理のメッセージタイプ: {type}",
|
|
138
|
+
"hermes.logHandleFailed": "{type} の処理に失敗: {message}",
|
|
139
|
+
"hermes.logClaimed": "スマホのアカウントにバインドしました。以後はスマホの「マイコンピュータ」から直接接続します",
|
|
140
|
+
"hermes.logResetIdentity": "アカウントからバインド解除、IDをリセットして新しいペアリングコードを生成中…",
|
|
141
|
+
"hermes.cmdNew": "新規セッション",
|
|
142
|
+
"hermes.cmdHelp": "ヘルプを表示",
|
|
143
|
+
"hermes.newSessionTitle": "新規セッション",
|
|
144
|
+
"hermes.helpText": "サポートコマンド:\n- /new 新規セッション\n- /help ヘルプを表示",
|
|
145
|
+
"hermes.errBusy": "このセッションは生成中です。完了を待つか、先に停止してください",
|
|
146
|
+
"hermes.errBadWorkspace": "このディレクトリは存在しないか使用できません",
|
|
147
|
+
"hermes.logWorkspaceSwitched": "ワークスペースを切替: {path}",
|
|
148
|
+
"hermes.errWorkspaceMissing": "ワークスペースが存在しません: {dir}",
|
|
149
|
+
"hermes.errStartFailed": "起動に失敗: {message}",
|
|
150
|
+
"hermes.msgStarted": "Hermes アダプタを起動しました(Ctrl+C で終了)",
|
|
151
|
+
"hermes.logAbortSent": "中止を送信 (session={session})",
|
|
152
|
+
"hermes.logPromptFailed": "session.prompt に失敗: {message}",
|
|
153
|
+
"hermes.logTurnError": "ターンエラー (session={session}): {message}",
|
|
154
|
+
"hermes.logPairForced": "--pair:ペアリングコードを強制取得(今回のみ)",
|
|
155
|
+
"hermes.pairingStillClaimed": "スマホアカウントにバインド済み:このコードは同アカウントの新デバイス再ペアリング用です。現在のデバイスはスマホの「マイコンピュータ」から直接接続できます",
|
|
156
|
+
"hermes.logPairNoRelay": "リレーURLが未設定のためペアリングコードを取得できません",
|
|
157
|
+
"hermes.errSpawnHermes": "Hermes({bin})を起動できません:インストールを確認してください({err})",
|
|
158
|
+
"hermes.errHermesExit": "hermes 終了({code}): {err}",
|
|
159
|
+
"hermes.logSessionUpdated": "セッションを更新 (session={session})",
|
|
160
|
+
"hermes.errNoInject": "スマホからのメッセージ挿入が利用できません(非対話セッションまたはプロセス未準備)",
|
|
161
|
+
"hermes.pairNoRelay": "リレーに接続できません(リレー到達不能または websockets 欠落)",
|
|
162
|
+
"hermes.pairTimeout": "ペアリングコード要求がタイムアウト(リレー未応答)",
|
|
163
|
+
"hermes.errToolPair": "tunnelbox_pair 失敗: {err}",
|
|
164
|
+
"hermes.errToolStatus": "tunnelbox_status 失敗: {err}",
|
|
165
|
+
"hermes.cliUsage": "使用方法: /tunnelbox <pair|status>\n pair ペアリングコードを取得して表示\n status リレー/バインド/接続状態を表示",
|
|
166
|
+
"qr.validFor": "ペアリングコードの有効期限は約10分です。期限切れの場合はパソコン側で再取得してください。",
|
|
167
|
+
"pair.toolDesc": "このパソコンのスマホ連携情報(ペアリングコードとスキャン可能なQRコード)を表示します。ペアリングやQRコードのスキャン、スマホからの操作について質問されたときに呼び出します。",
|
|
168
|
+
"pair.toolRefreshDesc": "リレーに新しいペアリングコードを要求するかどうか",
|
|
169
|
+
"state.errSaveState": "状態の保存に失敗しました",
|
|
170
|
+
"adapter.logConnected": "リレーに接続しました {url}",
|
|
171
|
+
"adapter.logDisconnected": "リレーから切断されました。自動的に再接続しています…",
|
|
172
|
+
"adapter.logPairCode": "ペアリングコードを生成しました: {code}",
|
|
173
|
+
"adapter.logClaimed": "スマホアカウントに紐付けました。以降はスマホの「マイコンピューター」から直接接続します",
|
|
174
|
+
"adapter.logResetIdentity": "アカウントから解除されました。IDをリセットし、新しいペアリングコードを生成しています…",
|
|
175
|
+
"adapter.logUnhandledType": "未処理のメッセージタイプ: {type}",
|
|
176
|
+
"adapter.errNoRelay": "リレーURLが設定されていません。ビルド時に --env で既定値を注入するか、実行時に TUNNELBOX_RELAY_URL で上書きしてください",
|
|
177
|
+
"adapter.errBusy": "このセッションは実行中です。完了を待つか、先に停止してください",
|
|
178
|
+
"adapter.errBadWorkspaceEmpty": "ワークスペースのパスがありません",
|
|
179
|
+
"adapter.errBadWorkspaceNotDir": "ディレクトリが存在しないか使用できません",
|
|
180
|
+
"adapter.errWorkspaceMissing": "ワークスペースが存在しません: {dir}",
|
|
181
|
+
"adapter.cmdNew": "新しいセッション",
|
|
182
|
+
"adapter.cmdHelp": "ヘルプを表示",
|
|
183
|
+
"adapter.helpText": "使用可能なコマンド:\n- /new 新しいセッション\n- /help ヘルプを表示",
|
|
184
|
+
"adapter.newSessionTitle": "新しいセッション",
|
|
185
|
+
"install.langHelpTitle": "install-local が対応する言語(--lang <tag>):",
|
|
186
|
+
"install.langHelpExample": "例: npm run install-local -- --lang de-DE",
|
|
187
|
+
"install.unknownLang": "不明な言語 \"{raw}\" のため en-US にフォールバックします。対応: {list}",
|
|
188
|
+
"hermes.errAskRequired": "question は必須です",
|
|
189
|
+
"hermes.msgPhoneUnavailable": "スマホが利用できないか応答がありません。組み込みの clarify でローカルに質問するか、ご自身で判断して続行してください。",
|
|
190
|
+
"hermes.errClarifyUnavailable": "clarify サポートは利用できません",
|
|
191
|
+
"hermes.errAskFailed": "tunnelbox_ask に失敗しました: {err}",
|
|
192
|
+
"hermes.errClarifyFailed": "clarify に失敗しました: {err}",
|
|
193
|
+
"bin.denied": "スマホで拒否されました",
|
|
194
|
+
"bin.timeout": "承認がタイムアウトしました(fail-closed)",
|
|
195
|
+
"bin.reqRun": "Claude Code が {tool} の実行を要求しています",
|
|
196
|
+
"bin.pairTitle": "tunnelbox スマホ連携",
|
|
197
|
+
"bin.pairCodeLine": " ペアリングコード: {code}",
|
|
198
|
+
"bin.pairHint": "tunnelbox アプリを開き「スキャンしてペアリング」でQRコードを読み取るか、ペアリングコードを手入力してください(1回限り)。",
|
|
199
|
+
"bin.pairWritten": " 連携情報を書き込みました: {path}",
|
|
200
|
+
"bin.pairRequestFailed": "リレーへのペアリングコード要求に失敗しました。",
|
|
201
|
+
"bin.alreadyClaimed": "このパソコンは既にスマホアカウントに紐付けられています。スマホの「マイコンピューター」から直接接続できます。再ペアリングするには、先にスマホ側で解除してください。",
|
|
202
|
+
"bin.noRelay": "リレーURLが設定されていません。環境変数 TUNNELBOX_RELAY_URL を設定して再試行してください。",
|
|
203
|
+
"bin.connectFailed": "リレーに接続できません: {relay}\nTUNNELBOX_RELAY_URL を設定するか、official-plugin の状態ファイルで構成してください。",
|
|
204
|
+
"bin.statusRelay": "リレー: {value}",
|
|
205
|
+
"bin.statusAgent": "エージェントID: {value}",
|
|
206
|
+
"bin.statusClaimed": "スマホ連携: {value}",
|
|
207
|
+
"bin.statusStateFile": "状態ファイル: {value}",
|
|
208
|
+
"bin.statusLatest": "最新の連携情報:",
|
|
209
|
+
"bin.usage": "使用法: tunnelbox <pair|status|ask>",
|
|
210
|
+
"bin.usagePair": " pair スマホ連携コードを取得して表示",
|
|
211
|
+
"bin.usageStatus": " status リレー/連携状態を表示",
|
|
212
|
+
"bin.usageAsk": " ask ツール承認をスマホに転送",
|
|
213
|
+
"adapter.logMsgUncaught": "メッセージ処理で未捕捉の例外: {message}",
|
|
214
|
+
"adapter.logHandleFailed": "{type} の処理に失敗しました: {message}",
|
|
215
|
+
"adapter.logPromptFailed": "session.prompt に失敗しました: {message}",
|
|
216
|
+
"adapter.logAbortSent": "中止を送信しました (session={session})",
|
|
217
|
+
"adapter.errUserDenied": "ユーザーが拒否しました",
|
|
218
|
+
"adapter.logPendingResent": "session.pending: 未処理リクエストを {count} 件再送しました",
|
|
219
|
+
"adapter.logWorkspaceSwitched": "ワークスペースを切り替えました: {path}",
|
|
220
|
+
"adapter.logNewSession": "新規セッションを保存 codexId={codexId} (alias={session})",
|
|
221
|
+
"adapter.logSessionError": "ターンエラー (session={session}): {message}",
|
|
222
|
+
"adapter.logDshSent": "dsh に送信しました (session={session})",
|
|
223
|
+
"adapter.logReadHistoryFailed": "セッション履歴の読み取りに失敗しました ({session}): {message}",
|
|
224
|
+
"adapter.logAnswererInitFailed": "応答者の初期化に失敗しました: {message}",
|
|
225
|
+
"adapter.logRemoteMode": "両側同時表示モード: 選択/承認は typert マルチクライアント放送を使用。スマホと dsh web が同じ画面を共有し、先に回答した方が有効",
|
|
226
|
+
"adapter.logRemoteProbeFailed": "typert リモートイベントソースの検出に失敗。ローカル応答モードにフォールバックします: {message}",
|
|
227
|
+
"adapter.logLocalMode": "ローカル応答モード: 選択/承認はスマホが回答(headless、dsh web 放送なし)",
|
|
228
|
+
"adapter.logRemoteStreamInterrupted": "remote events ストリームが中断しました: {message}",
|
|
229
|
+
"adapter.logResultRejected": "$events/result が受理されませんでした ({eventId}): {message}",
|
|
230
|
+
"adapter.logResultBackfillFailed": "$events/result の書き戻しに失敗しました ({eventId}): {message}",
|
|
231
|
+
"adapter.logRemoteQuestion": "remote 質問放送 → スマホ質問カード questionID={id} (session={session})",
|
|
232
|
+
"adapter.errRemoteReadyFrame": "remote events の最初のフレームが異常です",
|
|
233
|
+
"adapter.logRemoteApproval": "remote 承認放送 → スマホ権限カード permissionID={id} (session={session})",
|
|
234
|
+
"adapter.logUserQuestionRoute": "user-questions 選択 → session={session} にルーティング",
|
|
235
|
+
"adapter.errDshQuestionEmpty": "dsh の質問内容が空です",
|
|
236
|
+
"adapter.errQuestionTimeout": "質問がタイムアウトしました ({seconds}s)、キャンセルされました",
|
|
237
|
+
"adapter.errQuestionCancelledAbort": "質問がキャンセルされました(エージェント中止)",
|
|
238
|
+
"adapter.errQuestionCancelledRelay": "リレーに到達できず、質問がキャンセルされました",
|
|
239
|
+
"adapter.logQuestionToPhone": "user-questions 選択 → スマホ質問カードに送信 questionID={id} (session={session})",
|
|
240
|
+
"adapter.errQuestionUserCancelled": "ユーザーがスマホで質問をキャンセル/拒否しました",
|
|
241
|
+
"adapter.logApprovalRequest": "承認リクエスト (tool={tool}) → スマホ権限カードに送信 permissionID={id}",
|
|
242
|
+
"adapter.logAgentPresetFailed": "agentPreset の解決に失敗しました ({preset})。preset なしにフォールバック: {message}",
|
|
243
|
+
"adapter.logSessionLiveAdopted": "セッション {session} はこのプロセスの別のエージェントが保持中(live)。既存のエージェントを採用して継続します: {message}",
|
|
244
|
+
"adapter.logDisposeSkipped": "採用した外部 live エージェントは dispose を実行しません(セッション {session} は元の保持者が管理)",
|
|
245
|
+
"adapter.logAgentCreateFailed": "エージェントの作成/再開に失敗しました ({session}): {message}",
|
|
246
|
+
"adapter.errSessionBusyLive": "セッション {session} は使用中です(live)。後でもう一度お試しください",
|
|
247
|
+
"adapter.errAgentsUnavailable": "agents サービスが利用できません",
|
|
248
|
+
"adapter.logToolReason": "dsh がツール {tool} の実行を要求しています",
|
|
249
|
+
"adapter.logGatewayConnected": "ローカル OpenClaw Gateway に接続しました({version})",
|
|
250
|
+
"adapter.logGatewayDisconnected": "OpenClaw Gateway から切断されました。公式クライアントが再接続しています…",
|
|
251
|
+
"adapter.logGatewayConnectFailed": "ローカル OpenClaw Gateway に接続できません(初回は本機でデバイスを承認してください: `openclaw devices list` + `openclaw devices approve <requestId>`)",
|
|
252
|
+
"adapter.errGatewayNoSessionKey": "Gateway がセッション key を返しませんでした",
|
|
253
|
+
"adapter.logDeleteSessionFailed": "セッションの削除に失敗しました ({session}): {message}(削除済みとして応答)",
|
|
254
|
+
"adapter.logApprovalReplyFailed": "承認応答に失敗しました ({id}): {message}",
|
|
255
|
+
"adapter.logPendingApproval": "session.pending: 未処理の承認を {count} 件再送しました (session={session})",
|
|
256
|
+
"adapter.workspaceDefault": "デフォルト",
|
|
257
|
+
"adapter.cursorSessionTitle": "Cursor セッション",
|
|
258
|
+
"adapter.reasonDisconnect": "リレー切断、自動拒否(fail-closed)",
|
|
259
|
+
"adapter.warnInvalidEnv": "無効な {name} を無視します: {raw}({list})",
|
|
260
|
+
"adapter.errStartFailed": "起動に失敗しました:",
|
|
261
|
+
"adapter.msgStarted": "{name} アダプターを起動しました(Ctrl+C で終了)",
|
|
262
|
+
"adapter.warnCliMissing": "実行ファイル「{bin}」が見つかりません。インストールする(例: npm i -g @openai/codex)か、TUNNELBOX_CODEX_BIN でパスを指定してください",
|
|
263
|
+
"adapter.errCliNotFound": "{name} の実行ファイル「{bin}」が見つかりません:Codex CLI をインストール(npm i -g @openai/codex)するか TUNNELBOX_CODEX_BIN を設定してください",
|
|
264
|
+
"adapter.errSessionNotFound": "セッションが存在しないか、すでに削除されています",
|
|
265
|
+
"adapter.checkHeader": "tunnelbox-codex 環境チェック",
|
|
266
|
+
"adapter.checkCliOk": "{name} 実行ファイル: {path}",
|
|
267
|
+
"adapter.checkCliMissing": "{name} 実行ファイルが見つかりません({bin})",
|
|
268
|
+
"bin.yes": "はい",
|
|
269
|
+
"bin.no": "いいえ",
|
|
270
|
+
"adapter.errAppServerSpawn": "codex app-server を起動できません: {message}(Codex CLI が `codex app-server` に対応しているか確認してください)",
|
|
271
|
+
"adapter.errAppServerExit": "codex app-server が終了しました。保留中の承認/選択は自動的に拒否されました",
|
|
272
|
+
"adapter.logUnsupportedServerRequest": "未対応の app-server リクエスト: {method}",
|
|
273
|
+
"adapter.logQuestionNative": "選択リクエスト -> スマホ選択カード questionID={id} (session={session})",
|
|
274
|
+
"adapter.logPermissionNative": "承認リクエスト -> スマホ承認カード permissionID={id} (session={session})",
|
|
275
|
+
"adapter.checkAppServerOk": "codex app-server 利用可能",
|
|
276
|
+
"adapter.checkAppServerMissing": "この Codex CLI は `codex app-server` に対応していません(Codex CLI を更新してください)"
|
|
277
|
+
}
|