{
"cli.bundle.add.adding": "bundleにpackを追加中...",
"cli.bundle.add.bundle": " Bundle: {}",
"cli.bundle.add.created_structure": "{} にbundle構造を作成しました",
"cli.bundle.add.dry_run": "[dry-run] packをbundleに追加します",
"cli.bundle.add.env": " Env: {}",
"cli.bundle.add.pack_ref": " Pack参照: {}",
"cli.bundle.add.resolved": " 解決されたpack: {}",
"cli.bundle.add.success": "packをbundleに正常に追加しました。",
"cli.bundle.add.team": " Team: {}",
"cli.bundle.add.tenant": " Tenant: {}",
"cli.bundle.add.version_warning": "警告: バージョン {} の検証に失敗しました: {}",
"cli.bundle.build.building": "ポータブルbundleをビルド中...",
"cli.bundle.build.output": " 出力: {}",
"cli.bundle.build.running_doctor": "doctor検証を実行中...",
"cli.bundle.build.success": "{} にbundleを正常にビルドしました",
"cli.bundle.init.created": "{} にbundleを作成しました",
"cli.bundle.init.creating": "{} にbundleを作成中...",
"cli.bundle.init.exists": "{} に既にbundleが存在します",
"cli.bundle.init.next_steps": "次のステップ:",
"cli.bundle.init.step_add": " 1. greentic-setup bundle add <pack.gtpack> --bundle {}",
"cli.bundle.init.step_setup": " 2. greentic-setup bundle setup --bundle {} --answers answers.yaml",
"cli.bundle.list.bundle": "Bundle: {}",
"cli.bundle.list.domain": "Domain: {}",
"cli.bundle.list.packs_found": "見つかったpack: {}",
"cli.bundle.remove.cancelled": "削除がキャンセルされました - --force を使用して確認してください",
"cli.bundle.remove.complete": "providerを削除しました: {}",
"cli.bundle.remove.confirm": "provider設定が削除されます。",
"cli.bundle.remove.removing": "providerを削除中...",
"cli.bundle.remove.use_force": "--force を使用して確認してください。",
"cli.bundle.setup.complete": "providerのセットアップが完了しました: {}",
"cli.bundle.setup.domain": " Domain: {}",
"cli.bundle.setup.dry_run": "[dry-run] providerをセットアップします: {}",
"cli.bundle.setup.emit_usage": "編集して使用: greentic-setup bundle setup --answers {}",
"cli.bundle.setup.emit_written": "回答テンプレートを書き込みました: {}",
"cli.bundle.setup.env_bootstrap_created": "{} に既定のケイパビリティバインディングを持つ `local` 環境をブートストラップしました。",
"cli.bundle.setup.interactive_not_impl": "対話型セットアップはまだ実装されていません。",
"cli.bundle.setup.provider": " Provider: {}",
"cli.bundle.setup.setting_up": "providerをセットアップ中...",
"cli.bundle.setup.use_answers": "--answers <file> を使用してセットアップの回答を提供してください。",
"cli.bundle.setup.use_emit_answers": "または --emit-answers <file> を使用して回答テンプレートを生成してください。",
"cli.bundle.status.bundle_label": "Bundle: {}",
"cli.bundle.status.not_found": "bundleが見つかりません: {}",
"cli.bundle.status.packs": "Pack: {} インストール済み",
"cli.bundle.status.tenants": "Tenant: {}",
"cli.bundle.status.valid_no": "いいえ (greentic.demo.yaml がありません)",
"cli.bundle.status.valid_yes": "はい",
"cli.bundle.update.complete": "providerの更新が完了しました: {}",
"cli.bundle.update.dry_run": "[dry-run] providerを更新します: {}",
"cli.bundle.update.emit_usage": "編集して使用: greentic-setup bundle update --answers {}",
"cli.bundle.update.updating": "provider設定を更新中...",
"cli.error.answers_required": "非対話モードでは --answers が必要です",
"cli.error.failed_build_plan": "プランのビルドに失敗しました",
"cli.error.failed_create_bundle": "bundle構造の作成に失敗しました",
"cli.error.failed_emit_answers": "回答テンプレートの出力に失敗しました",
"cli.error.failed_execute_plan": "プランの実行に失敗しました",
"cli.error.failed_read_answers": "回答ファイルの読み込みに失敗しました",
"cli.error.interactive_required": "対話型セットアップには --answers ファイルが必要です",
"cli.error.invalid_bundle": "無効なbundleディレクトリ",
"cli.help.for_help": "ヘルプ: greentic-setup --help",
"cli.simple.bundle_required": "bundleパスが必要です。使用法: greentic-setup [OPTIONS] <BUNDLE>",
"cli.simple.dry_run": "[dry-run] bundleをセットアップします: {}",
"cli.simple.emit_usage": "編集して使用: greentic-setup --answers {} {}",
"cli.simple.expected_bundle_format": "ディレクトリまたは .gtbundle ファイルが必要です: {}",
"cli.simple.extracted_to": " 展開先: {}",
"cli.simple.extracting": ".gtbundleアーカイブを展開中...",
"cli.simple.header": "Greentic セットアップ",
"cli.simple.interactive_mode": "対話型ウィザードモード",
"cli.simple.wizard_not_impl": "対話型ウィザードはまだ実装されていません - --answers <file> を使用してください",
"env_wizard.basic_mode": "基本モード — --advanced を渡すと、顧客 ID、設定オーバーライド、ルートホスト、ウェルカムフロー、エンドポイントシークレット参照も設定できます。",
"env_wizard.dry_run_secrets_note": "注: --dry-run はプレビューのみです — 入力した {} 個の貼り付け済みシークレット値はストアに書き込まれません。永続化するには、--dry-run なしで再実行し、プランを確認してください。",
"env_wizard.form.desc": "`greentic.env-manifest.v1` マニフェストを作成します — 1 つの環境に対する、永続的で再適用可能な望ましい状態のドキュメントです。",
"env_wizard.form.title": "環境セットアップ",
"env_wizard.list.bundles.item_label": "バンドル",
"env_wizard.list.messaging_endpoints.item_label": "メッセージングエンドポイント",
"env_wizard.list.secrets.item_label": "シークレット",
"env_wizard.manifest_prompt": "マニフェストファイル [{}]: ",
"env_wizard.q.bundle_id.desc": "自然キー — マニフェスト内で一意です。",
"env_wizard.q.bundle_id.title": "バンドル ID",
"env_wizard.q.bundle_path.desc": "ローカルの `.gtbundle`。相対パスはマニフェストファイルのディレクトリを基準に解決されます。",
"env_wizard.q.bundle_path.title": "バンドルパス",
"env_wizard.q.bundles.desc": "この環境のバンドルデプロイメント。",
"env_wizard.q.bundles.title": "バンドル",
"env_wizard.q.config_overrides.desc": "JSON オブジェクト `{\"<pack_id>\": {\"<key>\": <value>}}`。空 = 変更しない、`{}` = 明示的にクリア。",
"env_wizard.q.config_overrides.title": "設定オーバーライド (JSON)",
"env_wizard.q.customer_id.desc": "請求主体 — 非 `local` 環境では apply に必要です。",
"env_wizard.q.customer_id.title": "顧客 ID",
"env_wizard.q.environment_id.desc": "適用先の環境。`local` は既定の env-pack バインディングでブートストラップされます。それ以外の ID は既に存在している必要があります (apply が調整します。非ローカル環境の作成はオペレーターストア用に予約されています)。",
"env_wizard.q.environment_id.title": "環境 ID",
"env_wizard.q.from_env.desc": "シークレット値を保持する変数名 (例: TELEGRAM_BOT_TOKEN) — 値ではなく名前です。ソースが `env` の場合は必須です。",
"env_wizard.q.from_env.title": "環境変数名",
"env_wizard.q.links.desc": "このエンドポイントが受け入れる `bundle_id` のカンマ区切りリスト。",
"env_wizard.q.links.title": "リンクされたバンドル ID",
"env_wizard.q.messaging_endpoints.desc": "メッセージングエンドポイントとそのバンドルリンク。",
"env_wizard.q.messaging_endpoints.title": "メッセージングエンドポイント",
"env_wizard.q.name.desc": "マニフェスト内のハンドルおよび表示名。プロバイダータイプと合わせて upsert キーになります。",
"env_wizard.q.name.title": "エンドポイント名",
"env_wizard.q.path.desc": "`<tenant>/<team>/<pack>/<name>`、例: default/_/messaging-telegram/telegram_bot_token",
"env_wizard.q.path.title": "シークレットパス",
"env_wizard.q.provider_type.desc": "プロバイダークラス、例: messaging.telegram.bot。",
"env_wizard.q.provider_type.title": "プロバイダータイプ",
"env_wizard.q.public_base_url.desc": "環境に保存されるオリジンのみの URL (例: https://bots.example.com)。現在の値を維持するには空のままにします。",
"env_wizard.q.public_base_url.title": "公開ベース URL",
"env_wizard.q.route_hosts.desc": "ルートバインディングのホスト名のカンマ区切りリスト。",
"env_wizard.q.route_hosts.title": "ルートホスト",
"env_wizard.q.route_path_prefixes.desc": "`/` で始まる HTTP パスプレフィックスのカンマ区切りリスト (例: /legal)。",
"env_wizard.q.route_path_prefixes.title": "ルートパスプレフィックス",
"env_wizard.q.route_team.desc": "ルートバインディングのテナントセレクター用のチーム — `route_tenant` と合わせて設定します。",
"env_wizard.q.route_team.title": "ルートチーム",
"env_wizard.q.route_tenant.desc": "ルートバインディングのテナントセレクター用のテナント — `route_team` と合わせて設定します。",
"env_wizard.q.route_tenant.title": "ルートテナント",
"env_wizard.q.secret_refs.desc": "エンドポイント作成時に転送されるシークレット参照のカンマ区切りリスト。",
"env_wizard.q.secret_refs.title": "シークレット参照",
"env_wizard.q.secrets.desc": "開発ストアのシークレットエントリ。各シークレットの値は、名前付き環境変数または貼り付けた値から取得されます — 値がマニフェストに入ることはありません。",
"env_wizard.q.secrets.title": "シークレット",
"env_wizard.q.source.desc": "`env` は apply 時に名前付き環境変数から値を読み取ります。`paste` では対話的に値を入力できます — 値は環境のシークレットストアに保存され、マニフェストには保存されません。",
"env_wizard.q.source.title": "シークレットソース",
"env_wizard.q.trust_root_bootstrap.desc": "ローカルオペレーターキーで環境の信頼ルートを初期化します (冪等。バンドルをステージングできるようになる前に一度だけ必要です)。",
"env_wizard.q.trust_root_bootstrap.title": "信頼ルートをブートストラップしますか?",
"env_wizard.q.webchat_gui.desc": "組み込みのWebチャットコンソールを配信し、そのURLをブラウザーで開いてこの環境とチャットできるようにします。`local` では既定でオンです。チャットパスはループバック専用で認証なしのため、意図している場合を除き、公開URLで公開される環境ではオフのままにしてください。",
"env_wizard.q.webchat_gui.title": "WebチャットGUIを追加しますか?",
"env_wizard.q.welcome_bundle_id.desc": "3つのwelcome_*フィールドをまとめて設定します(またはどれも設定しません)。",
"env_wizard.q.welcome_bundle_id.title": "ウェルカムフロー: バンドルID",
"env_wizard.q.welcome_flow_id.desc": "3つのwelcome_*フィールドをまとめて設定します(またはどれも設定しません)。",
"env_wizard.q.welcome_flow_id.title": "ウェルカムフロー: フローID",
"env_wizard.q.welcome_pack_id.desc": "3つのwelcome_*フィールドをまとめて設定します(またはどれも設定しません)。",
"env_wizard.q.welcome_pack_id.title": "ウェルカムフロー: パックID",
"env_wizard.secrets.choose": "それぞれについて、値の取得元を選択してください: 名前付き環境\n変数、またはここで貼り付けます。貼り付けた値は環境の\nシークレットストアに保存され、マニフェストには書き込まれません。",
"env_wizard.secrets.entry": "{} — {} (バンドル: {}){}",
"env_wizard.secrets.envvar_prompt": "環境変数名 [{}]: ",
"env_wizard.secrets.envvar_required": "環境変数名が必要です。",
"env_wizard.secrets.keep_env_note": "注: 既存のシークレット `{}` を保持します(バンドルは再ビルドされません)",
"env_wizard.secrets.keep_paste_note": "注: 既存の貼り付け済みシークレット `{}` を保持します(バンドルは再ビルドされません)",
"env_wizard.secrets.need": "シークレット — 構成済みのバンドルには{}個のシークレットが必要です。",
"env_wizard.secrets.none": "シークレット — 構成済みのバンドルではシークレットが宣言されていません。入力するものはありません。",
"env_wizard.secrets.optional_suffix": " [任意]",
"env_wizard.secrets.paste_prompt": "値を貼り付けてください(非表示、1行): ",
"env_wizard.secrets.paste_prompt_keep": "値を貼り付けてください(非表示、1行。空の場合は保存済みの値を保持): ",
"env_wizard.secrets.paste_required": "値が必要です。",
"env_wizard.secrets.path": "シークレットパス: {}",
"env_wizard.secrets.source_invalid": "1(環境変数)または2(貼り付け)を入力してください。",
"env_wizard.secrets.source_prompt": "値の取得元は [1] 環境変数、または [2] 今すぐ貼り付けますか? [{}]: ",
"env_wizard.wrote_manifest": "`{}` を書き込みました — マニフェストは永続的な成果物です。バージョン管理に入れてください。",
"setup.answers.emitted": "回答テンプレートを {} に書き込みました",
"setup.answers.loaded": "{} から回答を読み込みました",
"setup.capability.not_found": "capability '{}' が見つかりません",
"setup.capability.resolved": "capabilityを解決しました: pack_id={} stable_id={}",
"setup.discovering_packs": "bundleからpackを検出中...",
"setup.dry_run.header": "セットアッププラン (dry-run):",
"setup.error.bundle_not_found": "bundleが見つかりません: {}",
"setup.error.protocol_not_supported": "プロトコルはまだサポートされていません: {}",
"setup.error.version_mismatch": "タグバージョン ({}) がクレートバージョン ({}) と一致しません",
"setup.execute.failed": "セットアップに失敗しました: {}",
"setup.execute.success": "セットアップが完了しました: {}",
"setup.found_packs": "{} 個のpackが見つかりました: {}",
"setup.plan.header": "セットアッププラン:",
"setup.plan.step.collect_answers": "{} の回答を収集",
"setup.plan.step.discover": "packの検出",
"setup.plan.step.resolve": "解決済みマニフェストを生成",
"setup.plan.step.run_setup": "{} のセットアップフローを実行",
"setup.plan.step.seed_secrets": "{} のシークレットを設定",
"setup.plan.step.validate": "bundleを検証",
"setup.plan.step.webhooks": "{} のwebhookを登録",
"setup.plan.step.write_config": "{} の設定を書き込み",
"setup.qa.invalid_choice": "無効な選択です。選択肢: {}",
"setup.qa.list.add_first": "{}を追加しますか? [y/N] ",
"setup.qa.list.add_more": "別の{}を追加しますか? [y/N] ",
"setup.qa.list.field_required_row": "このフィールドは必須です — 少なくとも1行必要です。",
"setup.qa.list.max_reached": "(最大{}行に達しました)",
"setup.qa.list.min_required": "少なくとも{}行が必要です — 現在{}行です。別の行を追加するには 'y' と入力してください。",
"setup.qa.list.row_dropped": "(行は破棄されました — 必須列が空でした)",
"setup.qa.list.row_header": "行 #{}:",
"setup.qa.prompt.configuring": "{}を構成中: {}",
"setup.qa.prompt.default": "(既定値: {}) ",
"setup.qa.prompt.field_required": "このフィールドは必須です。",
"setup.qa.prompt.invalid_choice": "無効な選択です。オプション: {}",
"setup.qa.prompt.invalid_format": "形式が無効です。想定されるパターン: {}",
"setup.qa.prompt.mode_advanced": "(詳細)",
"setup.qa.prompt.optional_marker": "(任意)",
"setup.qa.prompt.required_marker": "(必須)",
"setup.qa.question_prompt": "{}",
"setup.qa.required_field": "このフィールドは必須です",
"setup.qa.secret_input": "シークレット値を入力してください (非表示):",
"setup.secrets.failed": "provider={} tenant={} のシークレット設定に失敗しました: {}",
"setup.secrets.seeded": "provider={} tenant={} に {} 個のシークレットを設定しました",
"setup.state_store.fallback": "インメモリステートストアを使用中 (Redis URLが利用できません)",
"setup.state_store.upgraded": "ステートストアをRedisにアップグレードしました: {}",
"ui.back": "戻る",
"ui.close": "閉じる",
"ui.configure": "{} を設定",
"ui.continue": "続行",
"ui.dashboard.add_scope": "スコープを追加",
"ui.dashboard.back": "ダッシュボードに戻る",
"ui.dashboard.configured": "設定済み",
"ui.dashboard.delete": "削除",
"ui.dashboard.description": "{} 内で {} プロバイダーを設定します。異なるテナント/環境用に複数のスコープを作成できます。",
"ui.dashboard.executed": "実行済み",
"ui.dashboard.export": "回答をエクスポート",
"ui.description": "{} で {} 個のプロバイダーを設定",
"ui.discovering": "プロバイダーを検出中...",
"ui.discovering_sub": "バンドル設定を読み込み中",
"ui.done": "完了",
"ui.execute_setup": "セットアップを実行",
"ui.executing.sub": "設定をバンドルに適用中",
"ui.executing.title": "セットアップを実行中...",
"ui.export.description": "--answers モードに対応した JSON 回答ファイルとして設定をダウンロードします。",
"ui.export.download": "answers.json をダウンロード",
"ui.export.password": "暗号化パスワード",
"ui.export.password_help": "設定すると、シークレット値は AES-256-GCM で暗号化されます。--answers --key を使用する際にこのパスワードが必要です。",
"ui.export.password_hint": "暗号化しない場合は空のままにしてください",
"ui.export.title": "回答をエクスポート",
"ui.field.required": "{} は必須です。",
"ui.import.decrypt_failed": "復号に失敗しました",
"ui.import.dropzone": "answers.json をここにドロップするか、クリックしてインポート",
"ui.import.no_scopes": "ファイル内に有効なスコープが見つかりません。",
"ui.import.parse_error": "ファイルの解析に失敗しました",
"ui.import.password_prompt": "このファイルには暗号化されたシークレットが含まれています。復号パスワードを入力してください:",
"ui.new_setup": "新しいセットアップ",
"ui.no_providers": "バンドル内にプロバイダーが見つかりません。",
"ui.nothing_to_configure": "設定するものがありません。",
"ui.pending": "保留中",
"ui.provider.configure": "{} を設定",
"ui.q.api_base_url": "APIベースURL",
"ui.q.base_url": "ベースURL",
"ui.q.channel_id": "チャネルID",
"ui.q.default_channel": "デフォルトチャネル",
"ui.q.default_room_id": "デフォルトのルームID",
"ui.q.default_to_person_email": "デフォルトのユーザーメールアドレス",
"ui.q.enabled": "プロバイダーを有効にする",
"ui.q.jwt_signing_key": "JWT署名キー",
"ui.q.jwt_signing_key.help": "Direct Lineトークンの署名に使用する秘密鍵。任意のランダム文字列を使用してください(例: openssl rand -hex 32)。",
"ui.q.mode": "モード",
"ui.q.ms_bot_app_id": "Bot App ID",
"ui.q.ms_bot_app_id.help": "Azure Bot Serviceの登録で取得したMicrosoft Bot App ID",
"ui.q.ms_bot_app_password": "Bot App Password",
"ui.q.oauth_custom_auth_url": "認可URL",
"ui.q.oauth_custom_client_id": "クライアントID",
"ui.q.oauth_custom_label": "プロバイダー表示名",
"ui.q.oauth_custom_scopes": "スコープ",
"ui.q.oauth_custom_token_url": "トークンURL",
"ui.q.oauth_enable_custom": "カスタムOIDCプロバイダーを有効にする",
"ui.q.oauth_enable_github": "GitHubログインを有効にする",
"ui.q.oauth_enable_google": "Googleログインを有効にする",
"ui.q.oauth_enable_microsoft": "Microsoftログインを有効にする",
"ui.q.oauth_enabled": "OAuthログインを有効にする",
"ui.q.oauth_enabled.help": "チャットにアクセスする前にユーザーのサインインを必須にする",
"ui.q.oauth_github_client_id": "GitHub Client ID",
"ui.q.oauth_github_client_secret": "GitHub Client Secret",
"ui.q.oauth_google_client_id": "Google Client ID",
"ui.q.oauth_google_client_secret": "Google Client Secret",
"ui.q.oauth_microsoft_client_id": "Microsoft Client ID",
"ui.q.oauth_microsoft_client_secret": "Microsoft Client Secret",
"ui.q.public_base_url": "公開ベースURL",
"ui.q.public_base_url.help": "Webhookコールバック用の公開URL(例: https://xxxx.trycloudflare.com)",
"ui.q.route": "ルート",
"ui.q.slack_app_id": "Slack App ID",
"ui.q.slack_bot_token": "Slackボットトークン",
"ui.q.slack_configuration_token": "Slack設定トークン",
"ui.q.team_id": "チームID",
"ui.q.tenant_channel_id": "テナントチャネルID",
"ui.q.webex_bot_token": "Webexボットトークン",
"ui.questions": "質問",
"ui.result.closed": "セットアップを閉じました。",
"ui.result.closed_sub": "このタブを閉じても構いません。",
"ui.result.fail.description": "セットアップ中に問題が発生しました。",
"ui.result.fail.title": "セットアップ失敗",
"ui.result.log": "ログ",
"ui.result.manual_steps": "手動手順が必要です",
"ui.result.output": "出力",
"ui.result.success.description": "バンドルの設定が正常に完了しました。",
"ui.result.success.title": "セットアップ完了",
"ui.review.description": "バンドルに適用する前に設定を確認してください。",
"ui.review.no": "いいえ",
"ui.review.secret_mask": "********",
"ui.review.title": "確認して実行",
"ui.review.yes": "はい",
"ui.review_execute": "確認して実行",
"ui.scope.description": "このセットアップの対象テナント、環境、チームを設定します。",
"ui.scope.detected_tenant": "バンドルから検出: {}",
"ui.scope.env": "環境",
"ui.scope.env_help": "ランタイムで使用される GREENTIC_ENV(dev、local、test)と一致する必要があります。",
"ui.scope.hint": "これらの値によって、シークレットと設定の保存先が決まります。ランタイム設定と一致していることを確認してください。",
"ui.scope.team": "チーム",
"ui.scope.team_help": "デフォルトの場合は空のままにしてください。チームごとにシークレットのスコープを設定するために使用されます。",
"ui.scope.tenant": "テナント",
"ui.scope.title": "セットアップスコープ",
"ui.select_action": "開始するにはアクションを選択してください。",
"ui.shared.description": "これらの質問はすべてのプロバイダーに適用されます。",
"ui.shared.title": "共通設定",
"ui.start_config": "設定を開始",
"ui.title": "Greentic セットアップ"
}