@nac3/forge-cli 1.0.77 → 1.0.78
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/panel.d.ts.map +1 -1
- package/dist/chat/panel.js +152 -30
- package/dist/chat/panel.js.map +1 -1
- package/dist/core/file_tree.d.ts +2 -0
- package/dist/core/file_tree.d.ts.map +1 -1
- package/dist/core/file_tree.js +4 -2
- package/dist/core/file_tree.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/src/i18n/catalogs/ar.json +529 -525
- package/src/i18n/catalogs/de.json +529 -525
- package/src/i18n/catalogs/en.json +529 -525
- package/src/i18n/catalogs/es.json +529 -525
- package/src/i18n/catalogs/fr.json +529 -525
- package/src/i18n/catalogs/hi.json +529 -525
- package/src/i18n/catalogs/it.json +529 -525
- package/src/i18n/catalogs/ja.json +529 -525
- package/src/i18n/catalogs/pt.json +529 -525
- package/src/i18n/catalogs/zh.json +529 -525
|
@@ -1,527 +1,531 @@
|
|
|
1
|
-
{
|
|
2
|
-
"panel.brand": "Yujin Forge",
|
|
3
|
-
"panel.brand.kanji": "侑",
|
|
4
|
-
"panel.tagline": "音声ファースト開発アシスタント",
|
|
5
|
-
"panel.input.placeholder": "Yujinに質問する",
|
|
6
|
-
"panel.button.send": "送信",
|
|
7
|
-
"panel.button.mic": "話す(長押し)",
|
|
8
|
-
"panel.button.mic.recording": "押して録音を停止",
|
|
9
|
-
"panel.button.tts": "音声有効",
|
|
10
|
-
"panel.button.keys": "鍵",
|
|
11
|
-
"panel.button.minimise": "縮小",
|
|
12
|
-
"panel.button.maximise": "最大化",
|
|
13
|
-
"panel.button.close": "閉じる",
|
|
14
|
-
"panel.button.language": "言語",
|
|
15
|
-
"panel.trace.title": "アクション履歴",
|
|
16
|
-
"panel.trace.count.one": "{n}回のツール呼び出し",
|
|
17
|
-
"panel.trace.count.other": "{n}回のツール呼び出し",
|
|
18
|
-
"panel.trace.empty.kanji": "空",
|
|
19
|
-
"panel.trace.empty.body": "Yujin Forgeは、応答に呼び出すすべてのツールをここに表示します:マニフェストの読み込み、SPECの検索、コンポーネントの編集、ドキュメントの読み込み。それらを必要とする質問をしてください。",
|
|
20
|
-
"panel.trace.badge.tool": "ツール",
|
|
21
|
-
"panel.trace.badge.voice": "音声",
|
|
22
|
-
"panel.trace.badge.error": "エラー",
|
|
23
|
-
"panel.stream.empty.kanji": "侑仁",
|
|
24
|
-
"panel.stream.empty.body": "Yujin Forgeはオンラインです。プロジェクトの変更を依頼してください。",
|
|
25
|
-
"panel.status.no_audio": "音声が取得されませんでした。マイクが何も拾わなかった可能性があります。",
|
|
26
|
-
"panel.status.did_not_catch": "聞き取れませんでした。もう一度試してください。",
|
|
27
|
-
"panel.status.mic_denied": "マイクの許可が拒否されたか利用できません:{error}",
|
|
28
|
-
"panel.status.voice_failed": "音声に失敗しました:{error}",
|
|
29
|
-
"panel.status.voice_reply_failed": "応答を再生できませんでした:{error}",
|
|
30
|
-
"panel.status.audio_play_error": "音声を再生できませんでした:{error}",
|
|
31
|
-
"panel.status.reading": "{filename}を読み込み中...",
|
|
32
|
-
"panel.status.ingest_failed": "取り込みに失敗しました:{error}",
|
|
33
|
-
"panel.status.read_failed": "仕様書を読み込めませんでした:{error}",
|
|
34
|
-
"panel.drop.title": "仕様書をここにドロップ",
|
|
35
|
-
"panel.drop.hint": "PDF, DOCX, HTML, MD, RTF, EPUB, CSV, XLSX, TXT",
|
|
36
|
-
"panel.ingest.spec_attached": "仕様書添付:{filename}、{kb} KB",
|
|
37
|
-
"panel.ingest.read_label": "読み込み完了。",
|
|
38
|
-
"panel.ingest.title_label": "タイトル:{title}",
|
|
39
|
-
"panel.ingest.no_title": "(タイトルなし)",
|
|
40
|
-
"panel.ingest.format_label": "形式:{format} / {sections}セクション / {kb} KB",
|
|
41
|
-
"panel.ingest.first_lines": "最初の数行:",
|
|
42
|
-
"panel.ingest.action_done": "アクション{tool}が完了しました。",
|
|
43
|
-
"vault.modal.title": "認証情報(ボールト)",
|
|
44
|
-
"vault.modal.aria.close": "認証情報モーダルを閉じる",
|
|
45
|
-
"vault.tab.list": "登録済みスロット",
|
|
46
|
-
"vault.tab.add": "追加",
|
|
47
|
-
"vault.list.loading": "読み込み中...",
|
|
48
|
-
"vault.list.empty": "まだ鍵を登録していません。「追加」をクリックして始めてください。",
|
|
49
|
-
"vault.add.slot_label": "スロット名",
|
|
50
|
-
"vault.add.slot_hint": "小文字、数字、アンダースコア、ハイフン。文字で始まる必要があります。",
|
|
51
|
-
"vault.add.value_label": "プレーンテキストの値(マスク済み)",
|
|
52
|
-
"vault.add.value_hint": "保存時に一度だけ表示されます。その後は置き換えのみ可能で再読み込みはできません。",
|
|
53
|
-
"vault.add.button_save": "保存",
|
|
54
|
-
"vault.add.button_cancel": "キャンセル",
|
|
55
|
-
"vault.add.success": "スロット{slot}を保存しました。",
|
|
56
|
-
"vault.add.overwrite": "スロット{slot}を上書きしました。",
|
|
57
|
-
"manual.intro": "Yujin Forge -- ユーザーマニュアル",
|
|
58
|
-
"manual.section.welcome": "ようこそ",
|
|
59
|
-
"manual.section.install": "インストール",
|
|
60
|
-
"manual.section.first_run": "初回実行",
|
|
61
|
-
"manual.section.voice": "音声コマンド",
|
|
62
|
-
"manual.section.spec_ingest": "仕様書の取り込み",
|
|
63
|
-
"manual.section.troubleshooting": "トラブルシューティング",
|
|
64
|
-
"manual.section.support": "サポート",
|
|
65
|
-
"lang.name.es": "スペイン語",
|
|
66
|
-
"lang.name.en": "英語",
|
|
67
|
-
"lang.name.pt": "ポルトガル語",
|
|
68
|
-
"lang.name.fr": "フランス語",
|
|
69
|
-
"lang.name.ja": "日本語",
|
|
70
|
-
"lang.name.zh": "中国語",
|
|
71
|
-
"lang.name.hi": "ヒンディー語",
|
|
72
|
-
"lang.name.ar": "アラビア語",
|
|
73
|
-
"lang.name.de": "ドイツ語",
|
|
74
|
-
"lang.name.it": "イタリア語",
|
|
75
|
-
"recap.fallback_period": "。",
|
|
76
|
-
"recap.empty": "まだ要約するものはありません。",
|
|
77
|
-
"error_ui.severity.info": "お知らせ",
|
|
78
|
-
"error_ui.severity.warning": "警告",
|
|
79
|
-
"error_ui.severity.error": "エラー",
|
|
80
|
-
"error_ui.severity.fatal": "致命的",
|
|
81
|
-
"error_ui.label.what": "何が起きたか",
|
|
82
|
-
"error_ui.label.why": "なぜ",
|
|
83
|
-
"error_ui.label.fix": "対処方法",
|
|
84
|
-
"error_ui.label.cmd": "コマンド",
|
|
85
|
-
"error_ui.label.docs": "ローカル ドキュメント",
|
|
86
|
-
"error_ui.label.retry": "再試行までの時間",
|
|
87
|
-
"error_ui.copy_btn": "コマンドをコピー",
|
|
88
|
-
"error_ui.unknown.what": "Forgeが内部エラーを検出しました(未知のコード)。",
|
|
89
|
-
"error_ui.unknown.why": "コード {code} はカタログにありません。バグです。",
|
|
90
|
-
"error_ui.unknown.fix": "https://github.com/yujinapp/yujin-forge/issues にコードとトレースバックを添えてissueを開いてください。",
|
|
91
|
-
"error.cap_frontier_exhausted.what": "frontierティア(大型モデル)の月次トークンキャップに達しました。",
|
|
92
|
-
"error.cap_frontier_exhausted.why": "プラン {plan} はfrontierで月 {cap} トークンまで許可されています。{used} 使用しました。次のUTC月初にリセットされます。",
|
|
93
|
-
"error.cap_frontier_exhausted.fix": "Anthropic BYOK直接に切り替えてください: workerの月次キャップを回避します。コストはAnthropicの直接料金になります。",
|
|
94
|
-
"error.cap_frontier_exhausted.cmd": "yf brain config --frontier-provider anthropic --frontier-model claude-opus-4-7",
|
|
95
|
-
"error.cap_eco_exhausted.what": "ecoティア(小型モデル)の月次トークンキャップに達しました。",
|
|
96
|
-
"error.cap_eco_exhausted.why": "プラン {plan} はecoで月 {cap} トークンまで許可されています。{used} 使用しました。次のUTC月初にリセットされます。",
|
|
97
|
-
"error.cap_eco_exhausted.fix": "BYOK直接に切り替えるかプランをアップグレードしてください。BYOKはworkerキャップを回避します。",
|
|
98
|
-
"error.cap_eco_exhausted.cmd": "yf brain config --eco-provider google_ai --eco-model gemini-2.5-flash-lite",
|
|
99
|
-
"error.tier_not_in_plan.what": "ティア {tier} はあなたのプランで有効になっていません。",
|
|
100
|
-
"error.tier_not_in_plan.why": "プラン {plan} は {tier} ティアを含みません。free-publicかライセンス期限切れの可能性があります。",
|
|
101
|
-
"error.tier_not_in_plan.fix": "有料ライセンスを有効化するかBYOK直接に切り替えてください(あなたの費用、workerキャップなし)。",
|
|
102
|
-
"error.tier_not_in_plan.cmd": "yf license activate --key <jwt>",
|
|
103
|
-
"error.response_truncated.what": "モデルの応答が完了前に切り捨てられました。",
|
|
104
|
-
"error.response_truncated.why": "managed_max_tokens_per_turn = {limit} トークンの制限がターンの途中で達しました。モデルは生成を停止しました。",
|
|
105
|
-
"error.response_truncated.fix": "yf limits で制限を上げてください。次のターンに適用、チャット再起動不要です。",
|
|
106
|
-
"error.response_truncated.cmd": "yf limits set managed_max_tokens_per_turn 16384",
|
|
107
|
-
"error.response_truncated.banner": "[max_tokens={max} で応答が切り捨てられました。制限を上げてください: yf limits set managed_max_tokens_per_turn {suggested}]",
|
|
108
|
-
"error.modal_trace_stale.what": "承認モーダルが期限切れまたは孤立しました。",
|
|
109
|
-
"error.modal_trace_stale.why": "trace_id {trace_id} にディスパッチャー保留中の承認がありません。invokeとパネルの状態の競合状態、または以前のキャンセルでトレースがゾンビ化した可能性があります。",
|
|
110
|
-
"error.modal_trace_stale.fix": "チャットから verb を再呼び出ししてください: クリーンな新トレースを開始します。問題が続く場合は yf doctor でパネルを確認してください。",
|
|
111
|
-
"error.modal_trace_stale.cmd": "yf doctor",
|
|
112
|
-
"error.byok_key_missing.what": "プロバイダー {provider} のAPIキーがありません。",
|
|
113
|
-
"error.byok_key_missing.why": "ティア {tier} のプロバイダーとして {provider} を設定しましたが、スロット byok_{slot} が暗号化されたVaultにありません。",
|
|
114
|
-
"error.byok_key_missing.fix": "yf keys set でキーを設定してください(アトミック、モード 0600、ログ記録なし)。",
|
|
115
|
-
"error.byok_key_missing.cmd": "yf keys set {slot}",
|
|
116
|
-
"error.worker_unreachable.what": "yujin.app worker に到達できませんでした。",
|
|
117
|
-
"error.worker_unreachable.why": "ネットワークタイムアウトまたはworkerダウン (HTTP {status})。{attempts} 回再試行しました。",
|
|
118
|
-
"error.worker_unreachable.fix": "インターネット接続を確認してください。OKであれば一時的にBYOK直接に切り替えてworker依存を回避してください。",
|
|
119
|
-
"error.worker_unreachable.cmd": "yf brain config --frontier-provider anthropic",
|
|
120
|
-
"error.vault_decrypt_failed.what": "Vaultからキーを復号できませんでした。",
|
|
121
|
-
"error.vault_decrypt_failed.why": "マスターキーが間違っているかVaultファイルが破損しています。マスターを移行せずにマシン間で設定を移動したか、ディスクエラーが発生した可能性があります。",
|
|
122
|
-
"error.vault_decrypt_failed.fix": "サーバーバックアップが有効な場合、サーバーコピーを取得してください(ローカルマスターで再暗号化されます)。",
|
|
123
|
-
"error.vault_decrypt_failed.cmd": "yf keys setup --pull",
|
|
124
|
-
"error.shell_exec_rejected.what": "yujin.shell.exec のR8モーダルを拒否しました。",
|
|
125
|
-
"error.shell_exec_rejected.why": "コマンド {command} は {classification} に分類されました。shell.exec は read-only であっても常に安全のため承認を求めます。",
|
|
126
|
-
"error.shell_exec_rejected.fix": "コマンドが read-only だった場合 (yf projects active, git status, ls)、同等のネイティブ verb を使用してください。必要だったが誤って拒否した場合は、再呼び出ししてください。",
|
|
127
|
-
"error.project_not_registered.what": "登録されたアダプタープロジェクトがありません。",
|
|
128
|
-
"error.project_not_registered.why": "呼び出した verb はアクティブな project root が必要ですが、~/.yujin-forge/projects.json にエントリがありません。",
|
|
129
|
-
"error.project_not_registered.fix": "yujin.project.init で作成するか、yf projects add で既存のものを登録してください。",
|
|
130
|
-
"error.project_not_registered.cmd": "yf projects scan",
|
|
131
|
-
"panel.button.agents": "エージェント",
|
|
132
|
-
"panel.agents.title": "エージェント",
|
|
133
|
-
"panel.agents.subtitle": "このプロジェクトに登録されたディレクターとサブエージェント",
|
|
134
|
-
"panel.agents.empty.title": "エージェントはまだありません",
|
|
135
|
-
"panel.agents.empty.body": "`yf agent install --defaults` を実行して、ディレクターと4つのサブエージェント(アナリスト、コーダー、テスター、スキャフォルダー)を登録してください。",
|
|
136
|
-
"panel.agents.legend.eco": "エコ",
|
|
137
|
-
"panel.agents.legend.managed": "マネージド",
|
|
138
|
-
"panel.agents.legend.frontier": "フロンティア",
|
|
139
|
-
"panel.agents.status.disabled": "エージェントランタイムが開始されていません",
|
|
140
|
-
"panel.agents.event.running": "実行中",
|
|
141
|
-
"panel.agents.event.idle": "待機中",
|
|
142
|
-
"panel.agents.tick.live": "接続済み",
|
|
143
|
-
"panel.agents.tick.lost": "接続切断",
|
|
144
|
-
"workflow.phase.i": "トリアージと意図",
|
|
145
|
-
"workflow.phase.ii": "明確化(機能要件+4種NFR+ブロック計画)",
|
|
146
|
-
"workflow.phase.iii": "仕様(RFP+アーキ+デザイン+承認)",
|
|
147
|
-
"workflow.phase.iv": "ブートストラップ",
|
|
148
|
-
"workflow.phase.v": "ブロック実装",
|
|
149
|
-
"workflow.phase.vi": "デプロイと運用開始",
|
|
150
|
-
"wizard.title": "Yujin Forge へようこそ",
|
|
151
|
-
"wizard.close": "閉じる",
|
|
152
|
-
"wizard.intro": "開始するには、Forge がAI モデルにどう接続するかを選んでください。後でSettingsから変更できます。",
|
|
153
|
-
"wizard.back": "戻る",
|
|
154
|
-
"wizard.start": "開始",
|
|
155
|
-
"wizard.plan.badge": "推奨",
|
|
156
|
-
"wizard.plan.title": "Claude プラン",
|
|
157
|
-
"wizard.plan.desc": "Claude の月額サブスクリプション。継続利用に最も経済的。Forge はあなたの claude -p セッションを使用します。",
|
|
158
|
-
"wizard.plan.price": "月額固定 (プラン)",
|
|
159
|
-
"wizard.plan.step.title": "Claude プランに接続",
|
|
160
|
-
"wizard.plan.step.1": "新しいターミナルを開きます。",
|
|
161
|
-
"wizard.plan.step.2": "claude コマンド (引数なし) を実行し、ブラウザでログインを完了させます。",
|
|
162
|
-
"wizard.plan.step.3": "ここに戻り、ログイン済み をクリックして確認します。",
|
|
163
|
-
"wizard.plan.done": "ログイン済み",
|
|
164
|
-
"wizard.byok.title": "自分の API キー(BYOK)",
|
|
165
|
-
"wizard.byok.desc": "任意のプロバイダ(Anthropic、OpenAI、Google、DeepSeek…)の自分のキー。あなたのアカウントで従量課金。",
|
|
166
|
-
"wizard.byok.price": "使用量課金 (Console)",
|
|
167
|
-
"wizard.byok.step.title": "プロバイダを選んで API キーを貼り付け",
|
|
168
|
-
"wizard.byok.step.intro": "メニューからプロバイダを選び、その API キーを貼り付け。Forge はローカルの Vault に暗号化して保存し、マシンの外には出ない。",
|
|
169
|
-
"wizard.byok.test": "検証して保存",
|
|
170
|
-
"wizard.skip.title": "既に設定済み",
|
|
171
|
-
"wizard.skip.desc": "ウィザードをスキップします。後で Settings から再度開けます。",
|
|
172
|
-
"wizard.done.kanji": "完",
|
|
173
|
-
"wizard.done.title": "完了",
|
|
174
|
-
"wizard.done.msg": "Forge の設定が完了しました。チャットを始めましょう。",
|
|
175
|
-
"pizarron.button.read": "読み上げ",
|
|
176
|
-
"pizarron.button.copy": "コピー",
|
|
177
|
-
"pizarron.button.edit": "編集",
|
|
178
|
-
"pizarron.graph.refresh": "更新",
|
|
179
|
-
"pizarron.graph.regenerating": "再生成中...",
|
|
180
|
-
"pizarron.graph.detail.hint": "ノードをタップして詳細を表示。",
|
|
181
|
-
"pizarron.graph.detail.empty": "このノードの詳細はありません。",
|
|
1
|
+
{
|
|
2
|
+
"panel.brand": "Yujin Forge",
|
|
3
|
+
"panel.brand.kanji": "侑",
|
|
4
|
+
"panel.tagline": "音声ファースト開発アシスタント",
|
|
5
|
+
"panel.input.placeholder": "Yujinに質問する",
|
|
6
|
+
"panel.button.send": "送信",
|
|
7
|
+
"panel.button.mic": "話す(長押し)",
|
|
8
|
+
"panel.button.mic.recording": "押して録音を停止",
|
|
9
|
+
"panel.button.tts": "音声有効",
|
|
10
|
+
"panel.button.keys": "鍵",
|
|
11
|
+
"panel.button.minimise": "縮小",
|
|
12
|
+
"panel.button.maximise": "最大化",
|
|
13
|
+
"panel.button.close": "閉じる",
|
|
14
|
+
"panel.button.language": "言語",
|
|
15
|
+
"panel.trace.title": "アクション履歴",
|
|
16
|
+
"panel.trace.count.one": "{n}回のツール呼び出し",
|
|
17
|
+
"panel.trace.count.other": "{n}回のツール呼び出し",
|
|
18
|
+
"panel.trace.empty.kanji": "空",
|
|
19
|
+
"panel.trace.empty.body": "Yujin Forgeは、応答に呼び出すすべてのツールをここに表示します:マニフェストの読み込み、SPECの検索、コンポーネントの編集、ドキュメントの読み込み。それらを必要とする質問をしてください。",
|
|
20
|
+
"panel.trace.badge.tool": "ツール",
|
|
21
|
+
"panel.trace.badge.voice": "音声",
|
|
22
|
+
"panel.trace.badge.error": "エラー",
|
|
23
|
+
"panel.stream.empty.kanji": "侑仁",
|
|
24
|
+
"panel.stream.empty.body": "Yujin Forgeはオンラインです。プロジェクトの変更を依頼してください。",
|
|
25
|
+
"panel.status.no_audio": "音声が取得されませんでした。マイクが何も拾わなかった可能性があります。",
|
|
26
|
+
"panel.status.did_not_catch": "聞き取れませんでした。もう一度試してください。",
|
|
27
|
+
"panel.status.mic_denied": "マイクの許可が拒否されたか利用できません:{error}",
|
|
28
|
+
"panel.status.voice_failed": "音声に失敗しました:{error}",
|
|
29
|
+
"panel.status.voice_reply_failed": "応答を再生できませんでした:{error}",
|
|
30
|
+
"panel.status.audio_play_error": "音声を再生できませんでした:{error}",
|
|
31
|
+
"panel.status.reading": "{filename}を読み込み中...",
|
|
32
|
+
"panel.status.ingest_failed": "取り込みに失敗しました:{error}",
|
|
33
|
+
"panel.status.read_failed": "仕様書を読み込めませんでした:{error}",
|
|
34
|
+
"panel.drop.title": "仕様書をここにドロップ",
|
|
35
|
+
"panel.drop.hint": "PDF, DOCX, HTML, MD, RTF, EPUB, CSV, XLSX, TXT",
|
|
36
|
+
"panel.ingest.spec_attached": "仕様書添付:{filename}、{kb} KB",
|
|
37
|
+
"panel.ingest.read_label": "読み込み完了。",
|
|
38
|
+
"panel.ingest.title_label": "タイトル:{title}",
|
|
39
|
+
"panel.ingest.no_title": "(タイトルなし)",
|
|
40
|
+
"panel.ingest.format_label": "形式:{format} / {sections}セクション / {kb} KB",
|
|
41
|
+
"panel.ingest.first_lines": "最初の数行:",
|
|
42
|
+
"panel.ingest.action_done": "アクション{tool}が完了しました。",
|
|
43
|
+
"vault.modal.title": "認証情報(ボールト)",
|
|
44
|
+
"vault.modal.aria.close": "認証情報モーダルを閉じる",
|
|
45
|
+
"vault.tab.list": "登録済みスロット",
|
|
46
|
+
"vault.tab.add": "追加",
|
|
47
|
+
"vault.list.loading": "読み込み中...",
|
|
48
|
+
"vault.list.empty": "まだ鍵を登録していません。「追加」をクリックして始めてください。",
|
|
49
|
+
"vault.add.slot_label": "スロット名",
|
|
50
|
+
"vault.add.slot_hint": "小文字、数字、アンダースコア、ハイフン。文字で始まる必要があります。",
|
|
51
|
+
"vault.add.value_label": "プレーンテキストの値(マスク済み)",
|
|
52
|
+
"vault.add.value_hint": "保存時に一度だけ表示されます。その後は置き換えのみ可能で再読み込みはできません。",
|
|
53
|
+
"vault.add.button_save": "保存",
|
|
54
|
+
"vault.add.button_cancel": "キャンセル",
|
|
55
|
+
"vault.add.success": "スロット{slot}を保存しました。",
|
|
56
|
+
"vault.add.overwrite": "スロット{slot}を上書きしました。",
|
|
57
|
+
"manual.intro": "Yujin Forge -- ユーザーマニュアル",
|
|
58
|
+
"manual.section.welcome": "ようこそ",
|
|
59
|
+
"manual.section.install": "インストール",
|
|
60
|
+
"manual.section.first_run": "初回実行",
|
|
61
|
+
"manual.section.voice": "音声コマンド",
|
|
62
|
+
"manual.section.spec_ingest": "仕様書の取り込み",
|
|
63
|
+
"manual.section.troubleshooting": "トラブルシューティング",
|
|
64
|
+
"manual.section.support": "サポート",
|
|
65
|
+
"lang.name.es": "スペイン語",
|
|
66
|
+
"lang.name.en": "英語",
|
|
67
|
+
"lang.name.pt": "ポルトガル語",
|
|
68
|
+
"lang.name.fr": "フランス語",
|
|
69
|
+
"lang.name.ja": "日本語",
|
|
70
|
+
"lang.name.zh": "中国語",
|
|
71
|
+
"lang.name.hi": "ヒンディー語",
|
|
72
|
+
"lang.name.ar": "アラビア語",
|
|
73
|
+
"lang.name.de": "ドイツ語",
|
|
74
|
+
"lang.name.it": "イタリア語",
|
|
75
|
+
"recap.fallback_period": "。",
|
|
76
|
+
"recap.empty": "まだ要約するものはありません。",
|
|
77
|
+
"error_ui.severity.info": "お知らせ",
|
|
78
|
+
"error_ui.severity.warning": "警告",
|
|
79
|
+
"error_ui.severity.error": "エラー",
|
|
80
|
+
"error_ui.severity.fatal": "致命的",
|
|
81
|
+
"error_ui.label.what": "何が起きたか",
|
|
82
|
+
"error_ui.label.why": "なぜ",
|
|
83
|
+
"error_ui.label.fix": "対処方法",
|
|
84
|
+
"error_ui.label.cmd": "コマンド",
|
|
85
|
+
"error_ui.label.docs": "ローカル ドキュメント",
|
|
86
|
+
"error_ui.label.retry": "再試行までの時間",
|
|
87
|
+
"error_ui.copy_btn": "コマンドをコピー",
|
|
88
|
+
"error_ui.unknown.what": "Forgeが内部エラーを検出しました(未知のコード)。",
|
|
89
|
+
"error_ui.unknown.why": "コード {code} はカタログにありません。バグです。",
|
|
90
|
+
"error_ui.unknown.fix": "https://github.com/yujinapp/yujin-forge/issues にコードとトレースバックを添えてissueを開いてください。",
|
|
91
|
+
"error.cap_frontier_exhausted.what": "frontierティア(大型モデル)の月次トークンキャップに達しました。",
|
|
92
|
+
"error.cap_frontier_exhausted.why": "プラン {plan} はfrontierで月 {cap} トークンまで許可されています。{used} 使用しました。次のUTC月初にリセットされます。",
|
|
93
|
+
"error.cap_frontier_exhausted.fix": "Anthropic BYOK直接に切り替えてください: workerの月次キャップを回避します。コストはAnthropicの直接料金になります。",
|
|
94
|
+
"error.cap_frontier_exhausted.cmd": "yf brain config --frontier-provider anthropic --frontier-model claude-opus-4-7",
|
|
95
|
+
"error.cap_eco_exhausted.what": "ecoティア(小型モデル)の月次トークンキャップに達しました。",
|
|
96
|
+
"error.cap_eco_exhausted.why": "プラン {plan} はecoで月 {cap} トークンまで許可されています。{used} 使用しました。次のUTC月初にリセットされます。",
|
|
97
|
+
"error.cap_eco_exhausted.fix": "BYOK直接に切り替えるかプランをアップグレードしてください。BYOKはworkerキャップを回避します。",
|
|
98
|
+
"error.cap_eco_exhausted.cmd": "yf brain config --eco-provider google_ai --eco-model gemini-2.5-flash-lite",
|
|
99
|
+
"error.tier_not_in_plan.what": "ティア {tier} はあなたのプランで有効になっていません。",
|
|
100
|
+
"error.tier_not_in_plan.why": "プラン {plan} は {tier} ティアを含みません。free-publicかライセンス期限切れの可能性があります。",
|
|
101
|
+
"error.tier_not_in_plan.fix": "有料ライセンスを有効化するかBYOK直接に切り替えてください(あなたの費用、workerキャップなし)。",
|
|
102
|
+
"error.tier_not_in_plan.cmd": "yf license activate --key <jwt>",
|
|
103
|
+
"error.response_truncated.what": "モデルの応答が完了前に切り捨てられました。",
|
|
104
|
+
"error.response_truncated.why": "managed_max_tokens_per_turn = {limit} トークンの制限がターンの途中で達しました。モデルは生成を停止しました。",
|
|
105
|
+
"error.response_truncated.fix": "yf limits で制限を上げてください。次のターンに適用、チャット再起動不要です。",
|
|
106
|
+
"error.response_truncated.cmd": "yf limits set managed_max_tokens_per_turn 16384",
|
|
107
|
+
"error.response_truncated.banner": "[max_tokens={max} で応答が切り捨てられました。制限を上げてください: yf limits set managed_max_tokens_per_turn {suggested}]",
|
|
108
|
+
"error.modal_trace_stale.what": "承認モーダルが期限切れまたは孤立しました。",
|
|
109
|
+
"error.modal_trace_stale.why": "trace_id {trace_id} にディスパッチャー保留中の承認がありません。invokeとパネルの状態の競合状態、または以前のキャンセルでトレースがゾンビ化した可能性があります。",
|
|
110
|
+
"error.modal_trace_stale.fix": "チャットから verb を再呼び出ししてください: クリーンな新トレースを開始します。問題が続く場合は yf doctor でパネルを確認してください。",
|
|
111
|
+
"error.modal_trace_stale.cmd": "yf doctor",
|
|
112
|
+
"error.byok_key_missing.what": "プロバイダー {provider} のAPIキーがありません。",
|
|
113
|
+
"error.byok_key_missing.why": "ティア {tier} のプロバイダーとして {provider} を設定しましたが、スロット byok_{slot} が暗号化されたVaultにありません。",
|
|
114
|
+
"error.byok_key_missing.fix": "yf keys set でキーを設定してください(アトミック、モード 0600、ログ記録なし)。",
|
|
115
|
+
"error.byok_key_missing.cmd": "yf keys set {slot}",
|
|
116
|
+
"error.worker_unreachable.what": "yujin.app worker に到達できませんでした。",
|
|
117
|
+
"error.worker_unreachable.why": "ネットワークタイムアウトまたはworkerダウン (HTTP {status})。{attempts} 回再試行しました。",
|
|
118
|
+
"error.worker_unreachable.fix": "インターネット接続を確認してください。OKであれば一時的にBYOK直接に切り替えてworker依存を回避してください。",
|
|
119
|
+
"error.worker_unreachable.cmd": "yf brain config --frontier-provider anthropic",
|
|
120
|
+
"error.vault_decrypt_failed.what": "Vaultからキーを復号できませんでした。",
|
|
121
|
+
"error.vault_decrypt_failed.why": "マスターキーが間違っているかVaultファイルが破損しています。マスターを移行せずにマシン間で設定を移動したか、ディスクエラーが発生した可能性があります。",
|
|
122
|
+
"error.vault_decrypt_failed.fix": "サーバーバックアップが有効な場合、サーバーコピーを取得してください(ローカルマスターで再暗号化されます)。",
|
|
123
|
+
"error.vault_decrypt_failed.cmd": "yf keys setup --pull",
|
|
124
|
+
"error.shell_exec_rejected.what": "yujin.shell.exec のR8モーダルを拒否しました。",
|
|
125
|
+
"error.shell_exec_rejected.why": "コマンド {command} は {classification} に分類されました。shell.exec は read-only であっても常に安全のため承認を求めます。",
|
|
126
|
+
"error.shell_exec_rejected.fix": "コマンドが read-only だった場合 (yf projects active, git status, ls)、同等のネイティブ verb を使用してください。必要だったが誤って拒否した場合は、再呼び出ししてください。",
|
|
127
|
+
"error.project_not_registered.what": "登録されたアダプタープロジェクトがありません。",
|
|
128
|
+
"error.project_not_registered.why": "呼び出した verb はアクティブな project root が必要ですが、~/.yujin-forge/projects.json にエントリがありません。",
|
|
129
|
+
"error.project_not_registered.fix": "yujin.project.init で作成するか、yf projects add で既存のものを登録してください。",
|
|
130
|
+
"error.project_not_registered.cmd": "yf projects scan",
|
|
131
|
+
"panel.button.agents": "エージェント",
|
|
132
|
+
"panel.agents.title": "エージェント",
|
|
133
|
+
"panel.agents.subtitle": "このプロジェクトに登録されたディレクターとサブエージェント",
|
|
134
|
+
"panel.agents.empty.title": "エージェントはまだありません",
|
|
135
|
+
"panel.agents.empty.body": "`yf agent install --defaults` を実行して、ディレクターと4つのサブエージェント(アナリスト、コーダー、テスター、スキャフォルダー)を登録してください。",
|
|
136
|
+
"panel.agents.legend.eco": "エコ",
|
|
137
|
+
"panel.agents.legend.managed": "マネージド",
|
|
138
|
+
"panel.agents.legend.frontier": "フロンティア",
|
|
139
|
+
"panel.agents.status.disabled": "エージェントランタイムが開始されていません",
|
|
140
|
+
"panel.agents.event.running": "実行中",
|
|
141
|
+
"panel.agents.event.idle": "待機中",
|
|
142
|
+
"panel.agents.tick.live": "接続済み",
|
|
143
|
+
"panel.agents.tick.lost": "接続切断",
|
|
144
|
+
"workflow.phase.i": "トリアージと意図",
|
|
145
|
+
"workflow.phase.ii": "明確化(機能要件+4種NFR+ブロック計画)",
|
|
146
|
+
"workflow.phase.iii": "仕様(RFP+アーキ+デザイン+承認)",
|
|
147
|
+
"workflow.phase.iv": "ブートストラップ",
|
|
148
|
+
"workflow.phase.v": "ブロック実装",
|
|
149
|
+
"workflow.phase.vi": "デプロイと運用開始",
|
|
150
|
+
"wizard.title": "Yujin Forge へようこそ",
|
|
151
|
+
"wizard.close": "閉じる",
|
|
152
|
+
"wizard.intro": "開始するには、Forge がAI モデルにどう接続するかを選んでください。後でSettingsから変更できます。",
|
|
153
|
+
"wizard.back": "戻る",
|
|
154
|
+
"wizard.start": "開始",
|
|
155
|
+
"wizard.plan.badge": "推奨",
|
|
156
|
+
"wizard.plan.title": "Claude プラン",
|
|
157
|
+
"wizard.plan.desc": "Claude の月額サブスクリプション。継続利用に最も経済的。Forge はあなたの claude -p セッションを使用します。",
|
|
158
|
+
"wizard.plan.price": "月額固定 (プラン)",
|
|
159
|
+
"wizard.plan.step.title": "Claude プランに接続",
|
|
160
|
+
"wizard.plan.step.1": "新しいターミナルを開きます。",
|
|
161
|
+
"wizard.plan.step.2": "claude コマンド (引数なし) を実行し、ブラウザでログインを完了させます。",
|
|
162
|
+
"wizard.plan.step.3": "ここに戻り、ログイン済み をクリックして確認します。",
|
|
163
|
+
"wizard.plan.done": "ログイン済み",
|
|
164
|
+
"wizard.byok.title": "自分の API キー(BYOK)",
|
|
165
|
+
"wizard.byok.desc": "任意のプロバイダ(Anthropic、OpenAI、Google、DeepSeek…)の自分のキー。あなたのアカウントで従量課金。",
|
|
166
|
+
"wizard.byok.price": "使用量課金 (Console)",
|
|
167
|
+
"wizard.byok.step.title": "プロバイダを選んで API キーを貼り付け",
|
|
168
|
+
"wizard.byok.step.intro": "メニューからプロバイダを選び、その API キーを貼り付け。Forge はローカルの Vault に暗号化して保存し、マシンの外には出ない。",
|
|
169
|
+
"wizard.byok.test": "検証して保存",
|
|
170
|
+
"wizard.skip.title": "既に設定済み",
|
|
171
|
+
"wizard.skip.desc": "ウィザードをスキップします。後で Settings から再度開けます。",
|
|
172
|
+
"wizard.done.kanji": "完",
|
|
173
|
+
"wizard.done.title": "完了",
|
|
174
|
+
"wizard.done.msg": "Forge の設定が完了しました。チャットを始めましょう。",
|
|
175
|
+
"pizarron.button.read": "読み上げ",
|
|
176
|
+
"pizarron.button.copy": "コピー",
|
|
177
|
+
"pizarron.button.edit": "編集",
|
|
178
|
+
"pizarron.graph.refresh": "更新",
|
|
179
|
+
"pizarron.graph.regenerating": "再生成中...",
|
|
180
|
+
"pizarron.graph.detail.hint": "ノードをタップして詳細を表示。",
|
|
181
|
+
"pizarron.graph.detail.empty": "このノードの詳細はありません。",
|
|
182
182
|
"pizarron.graph.detail.weight": "重み",
|
|
183
183
|
"pizarron.graph.orbit": "軌道",
|
|
184
|
-
"pizarron.graph.orbit.speed": "軌道速度",
|
|
185
|
-
"startup.tab.graph": "グラフ(図)",
|
|
186
|
-
"startup.tab.graphSem": "セマンティックグラフ",
|
|
187
|
-
"startup.tab.pendings": "保留中",
|
|
188
|
-
"startup.tab.workflow": "Workflow",
|
|
189
|
-
"settings.startupTabs": "起動時のタブ(グラフ、保留、ワークフロー)",
|
|
190
|
-
"graph.term.nodes": "ノード",
|
|
191
|
-
"graph.term.edges": "エッジ",
|
|
192
|
-
"coding.read": "{x} を読み込み中",
|
|
193
|
-
"coding.read_bare": "ファイルを読み込み中",
|
|
194
|
-
"coding.edit": "{x} を編集中",
|
|
195
|
-
"coding.edit_bare": "ファイルを編集中",
|
|
196
|
-
"coding.write": "{x} を書き込み中",
|
|
197
|
-
"coding.write_bare": "ファイルを書き込み中",
|
|
198
|
-
"coding.notebook_bare": "ノートブックを編集中",
|
|
199
|
-
"coding.bash": "実行中: {x}",
|
|
200
|
-
"coding.bash_bare": "コマンドを実行中",
|
|
201
|
-
"coding.grep": "「{x}」を検索中",
|
|
202
|
-
"coding.grep_bare": "コードを検索中",
|
|
203
|
-
"coding.glob": "{x} を一覧表示中",
|
|
204
|
-
"coding.glob_bare": "ファイルを一覧表示中",
|
|
205
|
-
"coding.web_bare": "ウェブを読み込み中",
|
|
206
|
-
"coding.websearch": "ウェブ検索: {x}",
|
|
207
|
-
"coding.websearch_bare": "ウェブを検索中",
|
|
208
|
-
"coding.task": "サブエージェント: {x}",
|
|
209
|
-
"coding.task_bare": "サブエージェントを起動中",
|
|
210
|
-
"coding.todo": "タスクリストを更新中",
|
|
211
|
-
"coding.verb_bare": "yujin 動詞を実行中",
|
|
212
|
-
"panel.button.stop": "停止",
|
|
213
|
-
"panel.status.stopping": "停止中...",
|
|
214
|
-
"panel.status.noActiveTurn": "進行中のターンはありませんでした。",
|
|
215
|
-
"panel.status.interruptFailed": "中断を送信できませんでした。",
|
|
216
|
-
"panel.status.turnInterrupted": "ターンを中断しました。",
|
|
217
|
-
"panel.label.interrupted": "(中断)",
|
|
218
|
-
"panel.queue.label": "待機中",
|
|
219
|
-
"panel.queue.remove": "キューから削除",
|
|
220
|
-
"panel.project.switchHint": "プロジェクトを切り替え",
|
|
221
|
-
"panel.project.title": "プロジェクト",
|
|
222
|
-
"panel.project.add": "プロジェクトを追加...",
|
|
223
|
-
"panel.project.addPrompt": "追加するプロジェクトの絶対パス:",
|
|
224
|
-
"panel.project.switching": "プロジェクトを切り替え中...",
|
|
225
|
-
"startup.tab.files": "ファイル",
|
|
226
|
-
"panel.project.remove": "リストから削除",
|
|
227
|
-
"panel.project.removeConfirm": "このプロジェクトをリストから削除しますか?(ディスク上のファイルは削除されません)",
|
|
228
|
-
"panel.project.removed": "プロジェクトをリストから削除しました",
|
|
229
|
-
"panel.files.refresh": "更新",
|
|
230
|
-
"panel.files.loading": "読み込み中...",
|
|
231
|
-
"panel.files.error": "ファイルを読み込めませんでした。",
|
|
232
|
-
"panel.files.empty": "(ファイルなし)",
|
|
233
|
-
"panel.files.truncated": "(リストは省略されています)",
|
|
234
|
-
"panel.files.opened": "開きました",
|
|
235
|
-
"panel.files.openFailed": "ファイルを開けませんでした。",
|
|
236
|
-
"
|
|
237
|
-
"
|
|
238
|
-
"
|
|
239
|
-
"
|
|
240
|
-
"
|
|
241
|
-
"settings.
|
|
242
|
-
"settings.
|
|
243
|
-
"settings.
|
|
244
|
-
"settings.voice.
|
|
245
|
-
"settings.voice.
|
|
246
|
-
"settings.voice.
|
|
247
|
-
"settings.voice.
|
|
248
|
-
"settings.
|
|
249
|
-
"settings.
|
|
250
|
-
"settings.
|
|
251
|
-
"settings.
|
|
252
|
-
"settings.vad.
|
|
253
|
-
"settings.vad.
|
|
254
|
-
"settings.vad.
|
|
255
|
-
"settings.vad.
|
|
256
|
-
"settings.vad.
|
|
257
|
-
"settings.vad.
|
|
258
|
-
"settings.vad.
|
|
259
|
-
"settings.vad.
|
|
260
|
-
"settings.vad.
|
|
261
|
-
"settings.vad.
|
|
262
|
-
"settings.vad.
|
|
263
|
-
"settings.vad.
|
|
264
|
-
"settings.
|
|
265
|
-
"settings.
|
|
266
|
-
"settings.
|
|
267
|
-
"settings.
|
|
268
|
-
"settings.brain.
|
|
269
|
-
"settings.brain.
|
|
270
|
-
"settings.brain.
|
|
271
|
-
"settings.brain.
|
|
272
|
-
"settings.brain.
|
|
273
|
-
"settings.brain.
|
|
274
|
-
"settings.brain.
|
|
275
|
-
"settings.brain.
|
|
276
|
-
"settings.brain.
|
|
277
|
-
"settings.brain.
|
|
278
|
-
"settings.
|
|
279
|
-
"settings.
|
|
280
|
-
"settings.
|
|
281
|
-
"settings.
|
|
282
|
-
"settings.federation.
|
|
283
|
-
"settings.federation.
|
|
284
|
-
"settings.federation.
|
|
285
|
-
"settings.federation.
|
|
286
|
-
"settings.federation.
|
|
287
|
-
"settings.federation.
|
|
288
|
-
"settings.federation.
|
|
289
|
-
"settings.federation.
|
|
290
|
-
"settings.federation.
|
|
291
|
-
"settings.federation.
|
|
292
|
-
"settings.
|
|
293
|
-
"settings.
|
|
294
|
-
"settings.
|
|
295
|
-
"settings.
|
|
296
|
-
"settings.keys.
|
|
297
|
-
"settings.keys.
|
|
298
|
-
"settings.keys.
|
|
299
|
-
"settings.keys.
|
|
300
|
-
"settings.keys.
|
|
301
|
-
"settings.keys.
|
|
302
|
-
"settings.keys.
|
|
303
|
-
"settings.keys.
|
|
304
|
-
"settings.keys.
|
|
305
|
-
"settings.keys.
|
|
306
|
-
"settings.
|
|
307
|
-
"settings.
|
|
308
|
-
"settings.
|
|
309
|
-
"settings.
|
|
310
|
-
"settings.
|
|
311
|
-
"settings.
|
|
312
|
-
"settings.
|
|
313
|
-
"settings.
|
|
314
|
-
"settings.
|
|
315
|
-
"settings.
|
|
316
|
-
"settings.license.
|
|
317
|
-
"settings.license.
|
|
318
|
-
"settings.license.
|
|
319
|
-
"settings.
|
|
320
|
-
"settings.
|
|
321
|
-
"settings.
|
|
322
|
-
"settings.
|
|
323
|
-
"settings.budget.
|
|
324
|
-
"settings.
|
|
325
|
-
"settings.
|
|
326
|
-
"settings.
|
|
327
|
-
"settings.
|
|
328
|
-
"settings.
|
|
329
|
-
"settings.
|
|
330
|
-
"settings.
|
|
331
|
-
"settings.
|
|
332
|
-
"settings.
|
|
333
|
-
"settings.
|
|
334
|
-
"settings.
|
|
335
|
-
"settings.
|
|
336
|
-
"settings.
|
|
337
|
-
"settings.audit.
|
|
338
|
-
"settings.audit.
|
|
339
|
-
"settings.
|
|
340
|
-
"settings.
|
|
341
|
-
"settings.
|
|
342
|
-
"settings.
|
|
343
|
-
"settings.
|
|
344
|
-
"settings.
|
|
345
|
-
"settings.
|
|
346
|
-
"settings.
|
|
347
|
-
"
|
|
348
|
-
"
|
|
349
|
-
"
|
|
350
|
-
"
|
|
351
|
-
"panel.status.
|
|
352
|
-
"panel.status.
|
|
353
|
-
"panel.status.
|
|
354
|
-
"panel.status.
|
|
355
|
-
"panel.status.
|
|
356
|
-
"panel.status.
|
|
357
|
-
"panel.status.
|
|
358
|
-
"panel.status.
|
|
359
|
-
"panel.status.
|
|
360
|
-
"panel.status.
|
|
361
|
-
"panel.status.
|
|
362
|
-
"panel.status.
|
|
363
|
-
"panel.status.
|
|
364
|
-
"panel.status.
|
|
365
|
-
"panel.status.
|
|
366
|
-
"panel.status.
|
|
367
|
-
"panel.status.
|
|
368
|
-
"panel.
|
|
369
|
-
"panel.
|
|
370
|
-
"panel.
|
|
371
|
-
"panel.
|
|
372
|
-
"panel.confirm.
|
|
373
|
-
"panel.
|
|
374
|
-
"panel.
|
|
375
|
-
"panel.
|
|
376
|
-
"panel.
|
|
377
|
-
"panel.
|
|
378
|
-
"panel.voice.
|
|
379
|
-
"panel.voice.
|
|
380
|
-
"panel.voice.
|
|
381
|
-
"panel.voice.
|
|
382
|
-
"panel.voice.
|
|
383
|
-
"panel.voice.
|
|
384
|
-
"panel.voice.
|
|
385
|
-
"panel.voice.
|
|
386
|
-
"panel.voice.
|
|
387
|
-
"panel.voice.
|
|
388
|
-
"panel.voice.
|
|
389
|
-
"panel.voice.
|
|
390
|
-
"panel.voice.
|
|
391
|
-
"panel.voice.
|
|
392
|
-
"panel.voice.
|
|
393
|
-
"panel.voice.
|
|
394
|
-
"panel.voice.
|
|
395
|
-
"panel.voice.
|
|
396
|
-
"panel.voice.
|
|
397
|
-
"panel.voice.
|
|
398
|
-
"panel.
|
|
399
|
-
"panel.
|
|
400
|
-
"panel.
|
|
401
|
-
"panel.
|
|
402
|
-
"panel.
|
|
403
|
-
"panel.
|
|
404
|
-
"panel.
|
|
405
|
-
"panel.tip.
|
|
406
|
-
"panel.tip.
|
|
407
|
-
"panel.tip.
|
|
408
|
-
"panel.tip.
|
|
409
|
-
"panel.tip.
|
|
410
|
-
"panel.tip.
|
|
411
|
-
"panel.tip.
|
|
412
|
-
"panel.tip.
|
|
413
|
-
"panel.tip.
|
|
414
|
-
"panel.tip.
|
|
415
|
-
"panel.tip.
|
|
416
|
-
"panel.tip.
|
|
417
|
-
"panel.tip.
|
|
418
|
-
"panel.tip.
|
|
419
|
-
"panel.tip.
|
|
420
|
-
"panel.tip.
|
|
421
|
-
"panel.tip.
|
|
422
|
-
"panel.tip.
|
|
423
|
-
"panel.
|
|
424
|
-
"panel.
|
|
425
|
-
"panel.
|
|
426
|
-
"panel.
|
|
427
|
-
"panel.aria.
|
|
428
|
-
"panel.aria.
|
|
429
|
-
"panel.aria.
|
|
430
|
-
"panel.
|
|
431
|
-
"panel.
|
|
432
|
-
"panel.
|
|
433
|
-
"panel.
|
|
434
|
-
"panel.
|
|
435
|
-
"panel.
|
|
436
|
-
"panel.
|
|
437
|
-
"panel.
|
|
438
|
-
"panel.
|
|
439
|
-
"panel.
|
|
440
|
-
"panel.
|
|
441
|
-
"panel.
|
|
442
|
-
"panel.
|
|
443
|
-
"panel.
|
|
444
|
-
"panel.
|
|
445
|
-
"panel.feedback.
|
|
446
|
-
"panel.feedback.
|
|
447
|
-
"panel.feedback.
|
|
448
|
-
"panel.feedback.
|
|
449
|
-
"panel.feedback.
|
|
450
|
-
"panel.
|
|
451
|
-
"panel.
|
|
452
|
-
"panel.
|
|
453
|
-
"panel.
|
|
454
|
-
"panel.pair.
|
|
455
|
-
"panel.
|
|
456
|
-
"panel.
|
|
457
|
-
"panel.
|
|
458
|
-
"panel.
|
|
459
|
-
"panel.
|
|
460
|
-
"panel.
|
|
461
|
-
"panel.nac3.
|
|
462
|
-
"panel.nac3.
|
|
463
|
-
"panel.nac3.
|
|
464
|
-
"panel.
|
|
465
|
-
"panel.
|
|
466
|
-
"panel.
|
|
467
|
-
"panel.
|
|
468
|
-
"panel.
|
|
469
|
-
"panel.
|
|
470
|
-
"panel.
|
|
471
|
-
"panel.
|
|
472
|
-
"panel.
|
|
473
|
-
"panel.
|
|
474
|
-
"panel.
|
|
475
|
-
"panel.
|
|
476
|
-
"panel.license.
|
|
477
|
-
"panel.license.
|
|
478
|
-
"panel.license.
|
|
479
|
-
"panel.license.
|
|
480
|
-
"panel.license.
|
|
481
|
-
"panel.license.
|
|
482
|
-
"panel.license.
|
|
483
|
-
"panel.license.
|
|
484
|
-
"panel.license.
|
|
485
|
-
"panel.license.
|
|
486
|
-
"panel.
|
|
487
|
-
"panel.
|
|
488
|
-
"panel.
|
|
489
|
-
"panel.
|
|
490
|
-
"panel.
|
|
491
|
-
"panel.
|
|
492
|
-
"panel.
|
|
493
|
-
"panel.
|
|
494
|
-
"panel.
|
|
495
|
-
"panel.agentsChat.
|
|
496
|
-
"panel.agentsChat.
|
|
497
|
-
"panel.
|
|
498
|
-
"panel.
|
|
499
|
-
"panel.
|
|
500
|
-
"panel.
|
|
501
|
-
"panel.
|
|
502
|
-
"panel.
|
|
503
|
-
"panel.
|
|
504
|
-
"panel.
|
|
505
|
-
"panel.
|
|
506
|
-
"panel.
|
|
507
|
-
"panel.
|
|
508
|
-
"panel.
|
|
509
|
-
"panel.
|
|
510
|
-
"panel.
|
|
511
|
-
"panel.
|
|
512
|
-
"panel.brain.
|
|
513
|
-
"panel.brain.
|
|
514
|
-
"panel.
|
|
515
|
-
"panel.
|
|
516
|
-
"panel.
|
|
517
|
-
"panel.
|
|
518
|
-
"panel.bridge.
|
|
519
|
-
"panel.
|
|
520
|
-
"panel.
|
|
521
|
-
"panel.
|
|
522
|
-
"panel.
|
|
523
|
-
"panel.
|
|
524
|
-
"panel.
|
|
525
|
-
"panel.
|
|
526
|
-
"panel.
|
|
527
|
-
}
|
|
184
|
+
"pizarron.graph.orbit.speed": "軌道速度",
|
|
185
|
+
"startup.tab.graph": "グラフ(図)",
|
|
186
|
+
"startup.tab.graphSem": "セマンティックグラフ",
|
|
187
|
+
"startup.tab.pendings": "保留中",
|
|
188
|
+
"startup.tab.workflow": "Workflow",
|
|
189
|
+
"settings.startupTabs": "起動時のタブ(グラフ、保留、ワークフロー)",
|
|
190
|
+
"graph.term.nodes": "ノード",
|
|
191
|
+
"graph.term.edges": "エッジ",
|
|
192
|
+
"coding.read": "{x} を読み込み中",
|
|
193
|
+
"coding.read_bare": "ファイルを読み込み中",
|
|
194
|
+
"coding.edit": "{x} を編集中",
|
|
195
|
+
"coding.edit_bare": "ファイルを編集中",
|
|
196
|
+
"coding.write": "{x} を書き込み中",
|
|
197
|
+
"coding.write_bare": "ファイルを書き込み中",
|
|
198
|
+
"coding.notebook_bare": "ノートブックを編集中",
|
|
199
|
+
"coding.bash": "実行中: {x}",
|
|
200
|
+
"coding.bash_bare": "コマンドを実行中",
|
|
201
|
+
"coding.grep": "「{x}」を検索中",
|
|
202
|
+
"coding.grep_bare": "コードを検索中",
|
|
203
|
+
"coding.glob": "{x} を一覧表示中",
|
|
204
|
+
"coding.glob_bare": "ファイルを一覧表示中",
|
|
205
|
+
"coding.web_bare": "ウェブを読み込み中",
|
|
206
|
+
"coding.websearch": "ウェブ検索: {x}",
|
|
207
|
+
"coding.websearch_bare": "ウェブを検索中",
|
|
208
|
+
"coding.task": "サブエージェント: {x}",
|
|
209
|
+
"coding.task_bare": "サブエージェントを起動中",
|
|
210
|
+
"coding.todo": "タスクリストを更新中",
|
|
211
|
+
"coding.verb_bare": "yujin 動詞を実行中",
|
|
212
|
+
"panel.button.stop": "停止",
|
|
213
|
+
"panel.status.stopping": "停止中...",
|
|
214
|
+
"panel.status.noActiveTurn": "進行中のターンはありませんでした。",
|
|
215
|
+
"panel.status.interruptFailed": "中断を送信できませんでした。",
|
|
216
|
+
"panel.status.turnInterrupted": "ターンを中断しました。",
|
|
217
|
+
"panel.label.interrupted": "(中断)",
|
|
218
|
+
"panel.queue.label": "待機中",
|
|
219
|
+
"panel.queue.remove": "キューから削除",
|
|
220
|
+
"panel.project.switchHint": "プロジェクトを切り替え",
|
|
221
|
+
"panel.project.title": "プロジェクト",
|
|
222
|
+
"panel.project.add": "プロジェクトを追加...",
|
|
223
|
+
"panel.project.addPrompt": "追加するプロジェクトの絶対パス:",
|
|
224
|
+
"panel.project.switching": "プロジェクトを切り替え中...",
|
|
225
|
+
"startup.tab.files": "ファイル",
|
|
226
|
+
"panel.project.remove": "リストから削除",
|
|
227
|
+
"panel.project.removeConfirm": "このプロジェクトをリストから削除しますか?(ディスク上のファイルは削除されません)",
|
|
228
|
+
"panel.project.removed": "プロジェクトをリストから削除しました",
|
|
229
|
+
"panel.files.refresh": "更新",
|
|
230
|
+
"panel.files.loading": "読み込み中...",
|
|
231
|
+
"panel.files.error": "ファイルを読み込めませんでした。",
|
|
232
|
+
"panel.files.empty": "(ファイルなし)",
|
|
233
|
+
"panel.files.truncated": "(リストは省略されています)",
|
|
234
|
+
"panel.files.opened": "開きました",
|
|
235
|
+
"panel.files.openFailed": "ファイルを開けませんでした。",
|
|
236
|
+
"panel.files.searchName": "名前で絞り込み",
|
|
237
|
+
"panel.files.searchType": "種類 (例: ts, png)",
|
|
238
|
+
"panel.files.matches": "{n} 件",
|
|
239
|
+
"panel.files.noMatches": "一致なし",
|
|
240
|
+
"startup.tab.tasks": "タスク",
|
|
241
|
+
"settings.bridge.title": "インスタンス間の調整",
|
|
242
|
+
"settings.bridge.accept": "他のインスタンスからの指定メッセージを受け入れる(チャットとして挿入)",
|
|
243
|
+
"settings.bridge.composePlaceholder": "他のインスタンスへのメッセージ...",
|
|
244
|
+
"settings.voice.title": "音声",
|
|
245
|
+
"settings.voice.mode": "モード",
|
|
246
|
+
"settings.voice.modeMic": "マイクモード",
|
|
247
|
+
"settings.voice.stt": "STT",
|
|
248
|
+
"settings.voice.sttBrowser": "STT ブラウザ",
|
|
249
|
+
"settings.voice.ttsEngine": "TTS エンジン",
|
|
250
|
+
"settings.voice.ttsBrowser": "TTS ブラウザ",
|
|
251
|
+
"settings.voice.ttsVoice": "TTS 音声(Google のみ)",
|
|
252
|
+
"settings.vad.title": "VAD(無音検出)",
|
|
253
|
+
"settings.vad.resetDefaults": "デフォルトに戻す",
|
|
254
|
+
"settings.vad.engine": "エンジン",
|
|
255
|
+
"settings.vad.engineAmplitude": "振幅(RMS)",
|
|
256
|
+
"settings.vad.engineBand": "帯域 80-400Hz",
|
|
257
|
+
"settings.vad.baselineWindow": "ベースライン窓",
|
|
258
|
+
"settings.vad.thresholdMult": "閾値倍率(ベースライン x N)",
|
|
259
|
+
"settings.vad.thresholdMin": "最小閾値",
|
|
260
|
+
"settings.vad.thresholdMax": "最大閾値",
|
|
261
|
+
"settings.vad.silence": "終了する無音時間",
|
|
262
|
+
"settings.vad.minVoiced": "最小発話(アンチブリップ)",
|
|
263
|
+
"settings.vad.tick": "VAD のティック",
|
|
264
|
+
"settings.vad.bandLow": "音声帯域: low (Hz)",
|
|
265
|
+
"settings.vad.bandHigh": "音声帯域: high (Hz)",
|
|
266
|
+
"settings.vad.showOverlay": "ライブオーバーレイを表示",
|
|
267
|
+
"settings.vad.logStats": "セッションごとの統計を記録",
|
|
268
|
+
"settings.brain.anthropicMode": "Anthropic: モード",
|
|
269
|
+
"settings.brain.modePlan": "Plan(Claude サブスク)",
|
|
270
|
+
"settings.brain.modeConsole": "Console(API key)",
|
|
271
|
+
"settings.brain.modeNote": "パネルを再度開くと適用されます。",
|
|
272
|
+
"settings.brain.ecoEnabled": "eco モード有効",
|
|
273
|
+
"settings.brain.ecoHint": "オフ = 常に frontier",
|
|
274
|
+
"settings.brain.modelEco": "eco モデル",
|
|
275
|
+
"settings.brain.modelFrontier": "frontier モデル",
|
|
276
|
+
"settings.brain.modelMultimodal": "multimodal モデル",
|
|
277
|
+
"settings.brain.multimodalClearTitle": "専用 multimodal brain を削除(自動ビジョンルーティングに戻る)",
|
|
278
|
+
"settings.brain.auto": "自動",
|
|
279
|
+
"settings.brain.multimodalHint": "画像付きターン用の専用 brain。自動 = 自動ビジョンルーティング(frontier が見えればそれを、見えなければ通知)。",
|
|
280
|
+
"settings.brain.geminiCache": "Gemini の明示的キャッシュ(CachedContent)",
|
|
281
|
+
"settings.brain.geminiCacheHint": "オプトイン。Gemini Pro での長いセッションに有効。短いセッションでは 2.5 の無料の暗黙キャッシュで十分。",
|
|
282
|
+
"settings.federation.title": "brain のフェデレーション",
|
|
283
|
+
"settings.federation.intro": "別の Forge の brain を使う(その key はマシンから出ない)か、自分のものを貸す。コードはローカルで実行され、推論だけが移動する。",
|
|
284
|
+
"settings.federation.connectedTo": "接続先",
|
|
285
|
+
"settings.federation.disconnect": "切断",
|
|
286
|
+
"settings.federation.connectMe": "接続する",
|
|
287
|
+
"settings.federation.tokenPlaceholder": "フェデレーションコードを貼り付け",
|
|
288
|
+
"settings.federation.connect": "接続",
|
|
289
|
+
"settings.federation.lendBrain": "自分の brain を貸す",
|
|
290
|
+
"settings.federation.generateCode": "コードを生成",
|
|
291
|
+
"settings.federation.host": "ホストする(子に応答)",
|
|
292
|
+
"settings.federation.fedBrain": "フェデレーションの brain",
|
|
293
|
+
"settings.federation.fedBrainNote": "子に応答するもの。直接 API(デフォルトは DeepSeek)。Claude Plan はホストに使えない。残高のある key が必要。",
|
|
294
|
+
"settings.federation.codeOnce": "コード(1回限り)",
|
|
295
|
+
"settings.federation.copy": "コピー",
|
|
296
|
+
"settings.keys.title": "API keys(BYOK)",
|
|
297
|
+
"settings.keys.configure": "設定",
|
|
298
|
+
"settings.keys.remove": "削除",
|
|
299
|
+
"settings.keys.brainAnthropic": "Brain(Anthropic)",
|
|
300
|
+
"settings.keys.brainOpenai": "Brain(OpenAI)",
|
|
301
|
+
"settings.keys.brainGoogle": "Brain(Google AI)",
|
|
302
|
+
"settings.keys.brainDeepseek": "Brain(DeepSeek)",
|
|
303
|
+
"settings.keys.brainXai": "Brain(xAI / Grok)",
|
|
304
|
+
"settings.keys.brainMistral": "Brain(Mistral)",
|
|
305
|
+
"settings.keys.brainCohere": "Brain(Cohere)",
|
|
306
|
+
"settings.keys.sttGoogle": "STT Google",
|
|
307
|
+
"settings.keys.ttsGoogle": "TTS Google",
|
|
308
|
+
"settings.keys.ttsElevenlabs": "TTS ElevenLabs",
|
|
309
|
+
"settings.keys.sttWhisper": "STT Whisper",
|
|
310
|
+
"settings.lang.title": "言語",
|
|
311
|
+
"settings.lang.panelVoice": "パネル + 音声",
|
|
312
|
+
"settings.lang.changeButton": "言語を変更",
|
|
313
|
+
"settings.vault.title": "Vault(暗号化)",
|
|
314
|
+
"settings.vault.slots": "スロット",
|
|
315
|
+
"settings.vault.open": "Vault を開く",
|
|
316
|
+
"settings.license.email": "メール",
|
|
317
|
+
"settings.license.validated": "検証済み",
|
|
318
|
+
"settings.license.connectHint": "Polar アカウントを接続します。支払いに使ったメールを入力すると、プランを自動で同期します。",
|
|
319
|
+
"settings.license.emailPlaceholder": "email@example.com",
|
|
320
|
+
"settings.license.connect": "接続",
|
|
321
|
+
"settings.license.sync": "Polar と同期",
|
|
322
|
+
"settings.license.buy": "プランを購入 / 有効化",
|
|
323
|
+
"settings.budget.title": "今月の予算",
|
|
324
|
+
"settings.budget.renews": "更新",
|
|
325
|
+
"settings.budget.tokensEco": "eco トークン",
|
|
326
|
+
"settings.budget.tokensFrontier": "frontier トークン",
|
|
327
|
+
"settings.budget.buyExtension": "トークンの追加を購入",
|
|
328
|
+
"settings.limits.title": "制限(詳細)",
|
|
329
|
+
"settings.limits.editHint": "任意の値を編集 + tab/blur で保存。",
|
|
330
|
+
"settings.limits.reset": "デフォルトに戻す",
|
|
331
|
+
"settings.bookmarks.title": "Reader のブックマーク",
|
|
332
|
+
"settings.graph.title": "プロジェクトの知識グラフ",
|
|
333
|
+
"settings.pair.title": "スマホを連携",
|
|
334
|
+
"settings.pair.hint": "Forge Mobile を開き、「連携」をタップしてこの QR をスキャンしてください。完了。",
|
|
335
|
+
"settings.pair.generateQr": "QR を生成",
|
|
336
|
+
"settings.pair.cantRead": "カメラが QR を読めない場合は、このコードをコピーして Forge Mobile に貼り付けてください:",
|
|
337
|
+
"settings.audit.viewFull": "全体を表示",
|
|
338
|
+
"settings.audit.close": "閉じる",
|
|
339
|
+
"settings.audit.allKinds": "すべての kind",
|
|
340
|
+
"settings.audit.allModes": "すべての mode",
|
|
341
|
+
"settings.audit.copyJson": "JSON をコピー",
|
|
342
|
+
"settings.audit.closeDetail": "詳細を閉じる",
|
|
343
|
+
"settings.about.title": "情報",
|
|
344
|
+
"settings.danger.title": "危険ゾーン",
|
|
345
|
+
"settings.danger.warning": "ON のとき、Yujin は確認なしですべてのアクションを実行します(shell.exec、rm、git push --force などを含む)。安全より速度。すべて audit log に記録されます。",
|
|
346
|
+
"settings.keyEditor.placeholder": "ここに API key を貼り付け",
|
|
347
|
+
"settings.license.title": "ライセンス",
|
|
348
|
+
"settings.plan": "プラン",
|
|
349
|
+
"settings.audit.title": "監査ログ",
|
|
350
|
+
"settings.legal.title": "法的情報",
|
|
351
|
+
"panel.status.projectSwitchFail": "プロジェクトを切り替えできませんでした。",
|
|
352
|
+
"panel.status.projectRemoveFail": "プロジェクトを削除できませんでした。",
|
|
353
|
+
"panel.status.projectAddFail": "プロジェクトを追加できませんでした。",
|
|
354
|
+
"panel.status.cancelFail": "キャンセルできませんでした: {reason}",
|
|
355
|
+
"panel.status.cancelNetError": "シェルのキャンセル中にネットワークエラーが発生しました。",
|
|
356
|
+
"panel.status.notEditable": "この種類のコンテンツは編集できません。",
|
|
357
|
+
"panel.status.savedAsPicker": "{name} として保存しました(ダイアログで選んだパスに保存)。",
|
|
358
|
+
"panel.status.saveAsFail": "名前を付けて保存でエラー: {error} -- フォールバックを使用します。",
|
|
359
|
+
"panel.status.saveFail": "保存中にエラー: {error}",
|
|
360
|
+
"panel.status.savedAs": "{path} として保存しました({bytes} バイト)",
|
|
361
|
+
"panel.status.netError": "ネットワークエラー: {error}",
|
|
362
|
+
"panel.status.savedTabOnly": "変更をタブに保存しました(ディスクには未保存 -- file_path なし)。",
|
|
363
|
+
"panel.status.saved": "保存しました: {path}({bytes} バイト)",
|
|
364
|
+
"panel.status.copied": "クリップボードにコピーしました。",
|
|
365
|
+
"panel.status.copyFail": "コピーできませんでした。",
|
|
366
|
+
"panel.status.modeAvailable": "利用可能なモード: didactico, tecnico. 使い方: /modo tecnico",
|
|
367
|
+
"panel.status.modeChangeFail": "モードを変更できませんでした: {error}",
|
|
368
|
+
"panel.status.modeChanged": "モードを {target} に変更しました。次のターンからこのモードが使われます。",
|
|
369
|
+
"panel.status.genericError": "エラー: {error}",
|
|
370
|
+
"panel.status.brainTierAuto": "Brain tier を auto に戻しました(router が verb / phase で判断します)。",
|
|
371
|
+
"panel.status.brainTierForced": "このセッションでは Brain tier を \"{target}\" に固定しました。/auto で router に戻ります。",
|
|
372
|
+
"panel.confirm.tabUnsaved": "タブ \"{title}\" に未保存の変更があります。閉じますか?",
|
|
373
|
+
"panel.confirm.tabsUnsaved": "未保存の変更があるタブがあります。すべて閉じますか?",
|
|
374
|
+
"panel.confirm.discardChanges": "未保存の変更を破棄しますか?",
|
|
375
|
+
"panel.confirm.removeSlot": "slot \"{slot}\" を削除しますか?この操作は元に戻せません。",
|
|
376
|
+
"panel.confirm.removeKey": "{slot} の key を削除しますか?",
|
|
377
|
+
"panel.prompt.saveAs": "名前を付けて保存(プロジェクトからの相対パス):",
|
|
378
|
+
"panel.voice.sttFallback": "ブラウザの STT が利用できません。サーバー側のフォールバックを使用します。",
|
|
379
|
+
"panel.voice.noMicSupport": "お使いのブラウザはマイクへのアクセスに対応していません。",
|
|
380
|
+
"panel.voice.recordingCountdown": "録音中... {n}秒後に自動停止",
|
|
381
|
+
"panel.voice.autoStopped": "55秒で録音を自動停止しました(Google STT の1分制限)。短くしてお試しください。",
|
|
382
|
+
"panel.voice.noAudio": "音声が取得できませんでした。もう一度お試しください。",
|
|
383
|
+
"panel.voice.audioTooLong": "音声が長すぎます(1分超)。Google STT の同期制限です。短くしてお試しください。",
|
|
384
|
+
"panel.voice.ttsUnavailable": "ブラウザの TTS が利用できません。設定で Google に戻してください。",
|
|
385
|
+
"panel.voice.micClosedHalfDuplex": "Yujin の発話中はマイクを閉じています(半二重)。",
|
|
386
|
+
"panel.voice.micBlocked": "マイクがブロックされています。ブラウザの設定でこのアプリのマイクを許可して、もう一度お試しください。",
|
|
387
|
+
"panel.voice.noMicDevice": "このデバイスでマイクを検出できませんでした。",
|
|
388
|
+
"panel.voice.micOpenFail": "マイクを開けませんでした: {error}",
|
|
389
|
+
"panel.voice.micOpenListening": "マイク オン、聞いています...",
|
|
390
|
+
"panel.voice.listening": "聞いています...",
|
|
391
|
+
"panel.voice.listeningInterim": "聞いています... {text}",
|
|
392
|
+
"panel.voice.micBlockedBrowser": "ブラウザによってマイクがブロックされています。URL バーの鍵アイコンをクリックしてマイクを許可し、ページを再読み込みしてください。API key があれば、設定で STT を \"google\" / \"whisper\" に変更してください。",
|
|
393
|
+
"panel.voice.noMicPhysical": "物理マイクを検出できません。接続するか、設定で STT を \"google\" / \"whisper\" に変更してください。",
|
|
394
|
+
"panel.voice.networkRequired": "Web Speech にはインターネット接続が必要です(Chrome は裏で Google を使用します)。接続が不安定でない状態で試すか、API key があれば STT を \"whisper\" に変更してください。",
|
|
395
|
+
"panel.voice.langNotSupported": "お使いのブラウザはこの言語の STT に対応していません。パネルの言語を対応言語(en, es, pt)に変更するか、STT を \"google\" / \"whisper\" に変更してください。",
|
|
396
|
+
"panel.voice.micError": "マイクエラー: {error}",
|
|
397
|
+
"panel.voice.noAudioToRecognizer": "認識エンジンに音声が届きませんでした。このアプリでブラウザのディクテーションが取得できていません。",
|
|
398
|
+
"panel.voice.micOpenNoVoice": "マイクは開いていますが音声を検出できません。マイクに近づいて大きめに話してください。続く場合、この PWA では無料のディクテーションが動作しません。",
|
|
399
|
+
"panel.voice.voiceNoText": "音声を検出しましたが、ブラウザからテキストが返りませんでした(この PWA では無料の STT が利用できません)。",
|
|
400
|
+
"panel.voice.startingDictation": "ディクテーションを開始しています...",
|
|
401
|
+
"panel.voice.couldNotStartMic": "マイクを開始できませんでした: {error}",
|
|
402
|
+
"panel.status.imageTooLarge": "画像が大きすぎます(>6MB): {name}",
|
|
403
|
+
"panel.status.imageReady": "送信準備ができた画像: {name}",
|
|
404
|
+
"panel.status.imageReadFail": "画像を読み込めませんでした: {error}",
|
|
405
|
+
"panel.tip.attachFile": "ファイルを添付",
|
|
406
|
+
"panel.tip.refreshDiscovery": "ディスカバリを更新",
|
|
407
|
+
"panel.tip.refreshNow": "今すぐ更新",
|
|
408
|
+
"panel.tip.filterByProject": "プロジェクトで絞り込み",
|
|
409
|
+
"panel.tip.concurrentRuns": "同時実行: グローバル / プロジェクトごとの上限",
|
|
410
|
+
"panel.tip.mcpBridges": "MCP ブリッジ (F101)",
|
|
411
|
+
"panel.tip.activity": "エージェントの活動 + ブリッジ検査 + エージェントごとのチャット",
|
|
412
|
+
"panel.tip.settings": "設定 (音声モード、STT、TTS、キー、言語)",
|
|
413
|
+
"panel.tip.zoomOut": "ズームアウト (Ctrl -)",
|
|
414
|
+
"panel.tip.zoomReset": "ズームをリセット (Ctrl 0)",
|
|
415
|
+
"panel.tip.zoomIn": "ズームイン (Ctrl +)",
|
|
416
|
+
"panel.tip.maximize": "最大化 / 復元 (全画面)",
|
|
417
|
+
"panel.tip.closeBoard": "ボード全体を閉じる",
|
|
418
|
+
"panel.tip.openInEditor": "自分のエディタで開く",
|
|
419
|
+
"panel.tip.open": "開く",
|
|
420
|
+
"panel.tip.saveAs": "名前を付けて保存 -- 新しいパスを選択 (プロジェクトからの相対)",
|
|
421
|
+
"panel.tip.codeModeDetail": "詳細: ファイル、差分、コマンドをライブ表示",
|
|
422
|
+
"panel.tip.codeModeZen": "Sumi-e: 時折テキストを添えたアート",
|
|
423
|
+
"panel.tip.cancelShell": "シェルコマンドをキャンセル",
|
|
424
|
+
"panel.tip.closeTab": "タブを閉じる",
|
|
425
|
+
"panel.tip.reopenNativeTabs": "閉じたネイティブタブを再度開く",
|
|
426
|
+
"panel.tip.notTestedYet": "まだテストされていません",
|
|
427
|
+
"panel.aria.activity": "アクティビティ",
|
|
428
|
+
"panel.aria.settings": "設定",
|
|
429
|
+
"panel.aria.zoomOut": "ズームアウト",
|
|
430
|
+
"panel.aria.zoomIn": "ズームイン",
|
|
431
|
+
"panel.aria.maximize": "最大化",
|
|
432
|
+
"panel.aria.closeBoard": "すべて閉じる",
|
|
433
|
+
"panel.aria.thinking": "考え中",
|
|
434
|
+
"panel.hint.boardEmpty": "ここに構造化されたコンテンツ (コード、表、ドキュメント) が表示されます。Yujin に何かを書くか編集するよう頼んでください。",
|
|
435
|
+
"panel.hint.planMode": "Plan モード (サブスクリプション) です。ボードは brain が API モードで動作するときに描画されます。<strong>設定 > Brain > Anthropic: モード > Console</strong> で変更し、パネルを開き直してください。",
|
|
436
|
+
"panel.hint.bookmarksEmpty": "ブックマークがありません。ドキュメントを読みながら Yujin に「この箇所を ... としてマーク」と頼んでください。",
|
|
437
|
+
"panel.voice.replyFailed": "音声応答に失敗しました: {err}",
|
|
438
|
+
"panel.voice.replyError": "音声応答エラー: {err}",
|
|
439
|
+
"panel.status.languageSwitchFailed": "言語の切り替えに失敗しました: {err}",
|
|
440
|
+
"panel.status.languageListFailed": "言語リストを読み込めませんでした",
|
|
441
|
+
"panel.legal.loading": "読み込み中...",
|
|
442
|
+
"panel.legal.loadError": "ドキュメントの読み込みエラー {status}。",
|
|
443
|
+
"panel.legal.networkError": "ネットワークエラー: {err}",
|
|
444
|
+
"panel.legal.defaultTitle": "法的情報",
|
|
445
|
+
"panel.feedback.copied": "コピーしました",
|
|
446
|
+
"panel.feedback.copyFailed": "コピーに失敗しました",
|
|
447
|
+
"panel.feedback.clipboardUnavailable": "クリップボードを利用できません",
|
|
448
|
+
"panel.feedback.saving": "保存中...",
|
|
449
|
+
"panel.feedback.saved": "保存しました。",
|
|
450
|
+
"panel.feedback.saveError": "保存エラー",
|
|
451
|
+
"panel.feedback.netError": "ネットワークエラー",
|
|
452
|
+
"panel.feedback.netErrorSaving": "保存中のネットワークエラー",
|
|
453
|
+
"panel.feedback.errorPrefix": "エラー: {detail}",
|
|
454
|
+
"panel.pair.generating": "生成中...",
|
|
455
|
+
"panel.pair.generateQr": "QR を生成",
|
|
456
|
+
"panel.pair.copy": "コピー",
|
|
457
|
+
"panel.pair.expiry": "約 {mins} 分で期限切れです。期限が切れたら再生成してください。",
|
|
458
|
+
"panel.pair.qrNetError": "QR の生成中にネットワークエラーが発生しました。",
|
|
459
|
+
"panel.audit.copyJson": "JSON をコピー",
|
|
460
|
+
"panel.limits.resetApplied": "デフォルトへのリセットを適用しました",
|
|
461
|
+
"panel.nac3.effects": "影響: {list}",
|
|
462
|
+
"panel.nac3.effectsUnknown": "不明",
|
|
463
|
+
"panel.nac3.cancel": "キャンセル",
|
|
464
|
+
"panel.nac3.reject": "拒否",
|
|
465
|
+
"panel.nac3.approve": "承認",
|
|
466
|
+
"panel.nac3.approveDestructive": "承認 (破壊的)",
|
|
467
|
+
"panel.nac3.executing": "実行中...",
|
|
468
|
+
"panel.tts.providerBrowser": "TTS ブラウザ",
|
|
469
|
+
"panel.tts.providerGoogle": "TTS Google",
|
|
470
|
+
"panel.tts.providerTitle": "クリックでブラウザ (ネイティブの SpeechSynthesis、OS の音声) と Google Cloud TTS (サーバー側) を切り替えます。",
|
|
471
|
+
"panel.stt.providerBrowser": "STT ブラウザ",
|
|
472
|
+
"panel.stt.providerGoogle": "STT Google",
|
|
473
|
+
"panel.stt.providerWhisper": "STT Whisper",
|
|
474
|
+
"panel.stt.providerTitle": "クリックでブラウザ (高速 + ネイティブ es-AR + 無料)、Google Cloud STT (サーバー側、BYOK)、Whisper (サーバー側、BYOK) を切り替えます。",
|
|
475
|
+
"panel.tts.voiceTitle": "現在の音声: {id} / {persona} ({gender}) -- {style}。クリックで切り替え。Studio = s を明瞭に発音; Neural2 = 自然なスペイン語 (語末の s を弱める)。",
|
|
476
|
+
"panel.license.lendNeedsLicense": "brain を貸し出すにはライセンスを有効化してください",
|
|
477
|
+
"panel.license.emailInvalid": "有効なメールアドレスを入力してください (@ を含む)。",
|
|
478
|
+
"panel.license.connecting": "接続中...",
|
|
479
|
+
"panel.license.savingEmail": "メールを保存 + Polar と同期中...",
|
|
480
|
+
"panel.license.syncFailedRetry": "メールは保存されましたが同期に失敗しました: {err}{http}。支払ったばかりなら 1-2 分待って「Polar と同期」を押してください。",
|
|
481
|
+
"panel.license.planOk": "OK -- プラン: {plan}。",
|
|
482
|
+
"panel.license.netError": "ネットワークエラー: {err}",
|
|
483
|
+
"panel.license.syncing": "同期中...",
|
|
484
|
+
"panel.license.querying": "サーバーに問い合わせ中...",
|
|
485
|
+
"panel.license.syncError": "同期エラー: {err}{http}",
|
|
486
|
+
"panel.license.planUnchanged": "プランは変更なし: {plan}",
|
|
487
|
+
"panel.license.planUpdated": "プランを更新: {before} -> {after}",
|
|
488
|
+
"panel.license.syncWithPolar": "Polar と同期",
|
|
489
|
+
"panel.license.errorWithCode": "エラー: {code}",
|
|
490
|
+
"panel.keyEditor.keyTooShort": "キーが短すぎます (最小 8 文字)。",
|
|
491
|
+
"panel.bridge.coordUnavailable": "コーディネーションは利用できません。",
|
|
492
|
+
"panel.bridge.statusUnavailable": "利用不可",
|
|
493
|
+
"panel.mcp.loadingBridges": "ブリッジを読み込み中...",
|
|
494
|
+
"panel.tools.loading": "ツールを読み込み中...",
|
|
495
|
+
"panel.agentsChat.backPairs": "< ペア",
|
|
496
|
+
"panel.agentsChat.noMessages": "このペアにメッセージはありません。",
|
|
497
|
+
"panel.agentsChat.noAgents": "エージェントなし",
|
|
498
|
+
"panel.agentsChat.pickAgent": "送信する前にエージェントを選んでテキストを入力してください。",
|
|
499
|
+
"panel.agentsChat.sending": "送信中...",
|
|
500
|
+
"panel.agentsChat.errorGeneric": "エラー: {err}",
|
|
501
|
+
"panel.whatsNew.dismiss": "閉じる",
|
|
502
|
+
"panel.alert.noEditor": "PATH にエディタがありません。パスをコピーしてください: {path}",
|
|
503
|
+
"panel.alert.pathRelative": "パスはプロジェクトからの相対でなければなりません (先頭の \"/\" や \"..\" は不可)。",
|
|
504
|
+
"panel.tip.saveTo": "{path} に保存",
|
|
505
|
+
"panel.tip.saveToMemory": "(メモリ)",
|
|
506
|
+
"panel.button.saveAs": "名前を付けて保存...",
|
|
507
|
+
"panel.aria.concurrentRuns": "同時実行",
|
|
508
|
+
"panel.activity.allProjects": "すべてのプロジェクト",
|
|
509
|
+
"panel.activity.loadingFeed": "フィードを読み込み中...",
|
|
510
|
+
"panel.feedback.savedShort": "保存済み",
|
|
511
|
+
"panel.pair.qrFailed": "QR を生成できませんでした。",
|
|
512
|
+
"panel.brain.modePlan": "Plan (サブスクリプション)",
|
|
513
|
+
"panel.brain.modeConsole": "Console (API キー)",
|
|
514
|
+
"panel.brain.applying": "{mode} を適用中...",
|
|
515
|
+
"panel.brain.applied": "{mode} を適用しました。次のターンからこのモードを使用します。",
|
|
516
|
+
"panel.brain.reopenHint": "パネルを再度開くと適用されます。",
|
|
517
|
+
"panel.brain.active": "{mode} 有効",
|
|
518
|
+
"panel.bridge.roleHost": "ホスト",
|
|
519
|
+
"panel.bridge.roleClient": "クライアント",
|
|
520
|
+
"panel.bridge.instanceOne": "インスタンス",
|
|
521
|
+
"panel.bridge.instanceMany": "インスタンス",
|
|
522
|
+
"panel.bridge.you": "あなた",
|
|
523
|
+
"panel.tip.deleteTask": "タスクを削除",
|
|
524
|
+
"panel.tasks.cmdPlaceholder": "コマンド (例: pnpm install)...",
|
|
525
|
+
"panel.readAloud.code": "コード",
|
|
526
|
+
"panel.readAloud.codeLang": "{lang} のコード",
|
|
527
|
+
"panel.readAloud.file": "ファイル {file}",
|
|
528
|
+
"panel.readAloud.content": "内容: {content}",
|
|
529
|
+
"panel.pizarron.tabOne": "タブ",
|
|
530
|
+
"panel.pizarron.tabMany": "タブ"
|
|
531
|
+
}
|