1. CRASH on word input (e.g. "claude") at any menu: $((ans-1)) under set -u → "unbound variable" → install died. Added _onb_read_choice validation (all 4 menus). 2. Claude Code default: added claude-code subscription provider (kei-registries submodule c559065→b904993), subscription default transport, claude-code default provider — Enter,Enter,Enter → Claude Code, no API key. 3. install died at line 178 for no-key providers (claude-code/codex/local): onboarding_run ended on a false `&&` → returned 1 → set -e. Added `return 0`. Plus en+ru explanations and auto-select single-option steps. Verified piped-under-pty. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
48 lines
2 KiB
Bash
48 lines
2 KiB
Bash
# shellcheck shell=bash
|
|
# i18n/en.sh — English strings. Default before user picks language.
|
|
|
|
# Welcome banner (always EN, shown before language picker).
|
|
STR_WELCOME_TITLE="KeiSeiKit · Exobrain installer"
|
|
STR_WELCOME_TAGLINE="Portable Rust agent substrate for AI coding tools"
|
|
|
|
# Onboarding wizard steps
|
|
STR_ONBOARDING_INTRO="Onboarding wizard (5 steps)"
|
|
STR_PICK_LANGUAGE="Choose interface language:"
|
|
STR_PICK_TRANSPORT="Choose connection transport:"
|
|
STR_PICK_PROVIDER="Choose provider within"
|
|
STR_PICK_MODEL="Default model:"
|
|
|
|
# Transport descriptions
|
|
STR_TR_DIRECT_API="Direct provider API (key)"
|
|
STR_TR_AWS_BEDROCK="AWS Bedrock (IAM/role)"
|
|
STR_TR_AZURE_OPENAI="Azure OpenAI (deployment+key)"
|
|
STR_TR_GOOGLE_VERTEX="Google Vertex AI (GCP)"
|
|
STR_TR_LOCAL="Local (Ollama/MLX/LMStudio)"
|
|
STR_TR_PROXY="Proxy (LiteLLM/OpenRouter)"
|
|
STR_TR_SUBSCRIPTION="Subscription login (Claude Code / ChatGPT — no API key)"
|
|
|
|
# Auth collection
|
|
STR_AUTH_INTRO="Auth for"
|
|
STR_AUTH_PROMPT="Enter values (Enter — leave empty, fill later)."
|
|
STR_AUTH_CURRENT_HINT="(current: <hidden>)"
|
|
|
|
# Completion
|
|
STR_DONE_TITLE="Onboarding complete"
|
|
STR_DONE_CONFIG="config:"
|
|
STR_DONE_SECRETS="secrets:"
|
|
|
|
# Profile menu (lib-menu.sh strings)
|
|
STR_MENU_TITLE="KeiSeiKit Installer"
|
|
STR_MENU_SUBSTRATE="Substrate baseline (always installed):"
|
|
STR_MENU_PROFILE_PROMPT="Choose install profile:"
|
|
STR_MENU_CONFIRM="Confirm selection?"
|
|
|
|
# Preflight warnings
|
|
STR_PREFLIGHT_FAILED="Preflight failed — provider may not work."
|
|
STR_PREFLIGHT_CONTINUE="Continue anyway? [y/N]"
|
|
|
|
# Wizard explanations + input validation
|
|
STR_PICK_INVALID="please type one of the numbers shown"
|
|
STR_EXPLAIN_TRANSPORT="How the agents reach the AI. subscription = log in with your plan, no API key (Claude Code is option 1); direct-api = your own API key. Press Enter for the default."
|
|
STR_EXPLAIN_PROVIDER="Which AI service. Option 1 is the recommended default — press Enter."
|
|
STR_EXPLAIN_MODEL="Default model the agents use. Option 1 is the recommended default — press Enter."
|