{ "permissions": { "use": { "title": "Use the assistant", "description": "Open the assistant and ask it things." }, "manage_providers": { "title": "Manage providers", "description": "Add, edit and remove the AI providers and their API keys." }, "apply_proposals": { "title": "Apply proposals", "description": "Let the assistant carry out the changes it suggests." }, "services.use": { "title": "Use AI from other features", "description": "Other features may call the assistant on your behalf." }, "secrets.share": { "title": "Share the API key", "description": "Other features may use the stored AI API key without seeing it." } }, "settings": { "assistantUnavailable": "The AI assistant is turned off on this server.", "providersNeedOptIn": "Turn on the AI assistant above to add providers.", "admin": { "globallyEnabled": { "label": "AI assistant", "description": "Let users turn on the AI assistant. While this is off, the assistant is hidden and blocked for everyone." }, "privateEndpoints": { "label": "Allowed private AI hosts", "description": "Hosts on your private network that users may point a provider at, such as a self-hosted Ollama. Put one host on each line." } }, "host": { "enableAiAssistant": { "label": "Enable AI Assistant", "description": "Allow the AI assistant to help in this host's terminal. Off by default, and still needs AI enabled for your account." } } }, "ai": { "title": "Assistant", "send": "Send", "stop": "Stop", "save": "Save", "cancel": "Cancel", "running": "running", "approve": "Approve", "reject": "Reject", "inputPlaceholder": "Ask about your servers, or describe a change to propose", "selectProvider": "Select a provider", "providerSettings": "Provider settings", "addProvider": "Add provider", "editProvider": "Edit provider", "removeProvider": "Remove provider", "providerType": "Provider", "providerLabel": "Name", "providerLabelPlaceholder": "For example: Local Ollama", "baseUrl": "Server address", "apiKey": "API key", "defaultModel": "Default model", "defaultModelPlaceholder": "For example: llama3.1 or claude-opus-5", "labelRequired": "Give this provider a name", "providerSaveFailed": "Could not save the provider", "providerUpdated": "Provider updated", "providerDeleteFailed": "Could not remove the provider", "privateEndpointHint": "Addresses on your private network need an administrator to allow the host first.", "providerOllama": "Ollama", "providerAnthropic": "Anthropic", "providerOpenai": "OpenAI", "providerGemini": "Google Gemini", "providerOpenaiCompatible": "OpenAI compatible", "toolArguments": "Input", "toolResult": "Result", "statusApplied": "Applied", "statusRejected": "Rejected", "proposalApplied": "Change applied", "proposalApplyFailed": "Could not apply the change", "proposalRejectFailed": "Could not reject the change", "enableTitle": "Enable the AI assistant", "enableDescription": "Let the assistant read your setup and suggest changes for you to approve.", "readOnlyCommands": "Allow read-only diagnostic commands", "readOnlyCommandsDescription": "The assistant may run a short list of safe commands like df and uptime without asking each time. Anything that changes a server is always proposed first.", "modelDetectFailed": "Could not reach the provider, so this is a general list. You can type any model name.", "modelCustom": "Enter a model name", "modelRefresh": "Refresh list", "modelPlaceholder": "Choose or type a model", "attachHint": "Type @ to reference a host, snippet or automation. Changes are proposed for you to approve.", "runCommandTitle": "Run command", "assistant": "AI Assistant", "terminalPanelEmpty": "Ask the assistant about this host. Anything that changes state needs your approval first.", "terminalPanelPlaceholder": "Ask about this host...", "noProvidersConfigured": "No AI provider is configured yet. Add one in the AI assistant tab.", "runsInOpenTerminal": "Runs in your open terminal session.", "runInTerminal": "Run", "terminalContextPrefill": "Here is my terminal output:\n\n{{output}}\n\n", "secrets": { "shareApiKey": "Let other features use your AI provider API key for their own requests. The key is never copied, and you can revoke this at any time." } }, "nav": { "ai": "AI" }, "onboarding": { "aiTitle": "AI assistant", "aiIntro": "Termix can include an optional AI assistant. You can change this later in your settings.", "aiSkipTitle": "Leave it off", "aiSkipDesc": "Termix works as it does now. The assistant stays hidden.", "aiEnableTitle": "Turn it on", "aiEnableDesc": "Adds an assistant that reads your setup and suggests changes you approve. Needs a provider you supply, such as a local Ollama.", "aiNote": "Nothing is sent anywhere until you add a provider and send a message." }, "hosts": { "docsLink": "View docs" }, "agents": { "title": "AI Agent", "permissionTitle": "Run remote AI agents", "permissionDescription": "Start coding agents on SSH hosts using configured AI providers. Agents can execute commands and change files as the SSH user.", "new": "New session", "description": "Run an agent in a directory on this host using a Termix AI provider.", "runtime": "Agent", "provider": "Termix provider", "chooseProvider": "Choose a compatible provider", "model": "Model", "directory": "Working directory", "executable": "Executable (optional absolute path)", "requirements": "The host needs Node.js 22.19+ and the selected agent installed. SSH remote loopback forwarding must be allowed. Existing agent configurations are not overwritten.", "responsesRequired": "Codex requires a Responses API endpoint. A Chat Completions-only endpoint cannot run Codex.", "piPermissions": "Pi tools run with this SSH account’s permissions. Only launch in a directory you authorize the agent to modify.", "start": "Start agent", "resume": "Resume", "stop": "Stop session", "interrupt": "Interrupt turn", "send": "Send", "prompt": "Ask the agent to work in this directory…", "noSessions": "No agent sessions for this host.", "approval": "Agent needs your decision", "answer": "Answer (JSON for structured questions)", "allow": "Allow once", "deny": "Deny", "tool": "Tool activity", "streamFailed": "Agent stream disconnected. Reopen the session to reconnect.", "status": { "starting": "Starting", "ready": "Ready", "running": "Working", "stopped": "Stopped", "error": "Error" }, "installRuntime": "Install selected agent and Node.js", "installSource": "Official sources only: nodejs.org (SHA-256 verified) and registry.npmjs.org (locked package integrity). Installs for the SSH user in ~/.local/share/termix-agent-runtime; requires curl, tar, and Linux/macOS x64 or arm64. Does not change SSH forwarding policy.", "installSucceeded": "Installation verified. You can now start the agent; SSH loopback remote forwarding must also be allowed.", "installFailed": "Installation failed. Review the log and retry.", "installLog": "Installation log", "enableForwarding": "Enable Agent forwarding", "forwardingScope": "Linux with systemd/OpenSSH; requires root or passwordless sudo. Backs up and validates SSH configuration, then reloads it. Only the current SSH account and observed connection source receive loopback remote forwarding; existing local forwarding is preserved. Failed changes are rolled back.", "forwardingSucceeded": "SSH loopback remote forwarding is ready. Start or resume the agent to open a new SSH connection.", "forwardingFailed": "SSH forwarding configuration failed. Review the log; no unvalidated configuration is kept.", "search": "Search sessions", "showArchived": "Show archived", "sessionName": "Session name", "rename": "Rename", "archive": "Archive and stop", "restore": "Restore session", "queue": "Queued messages", "enqueue": "Queue message", "continueQueue": "Continue queue", "pauseQueue": "Pause queue", "editQueued": "Edit queued message", "save": "Save", "remove": "Remove", "upload": "Upload attachment", "remoteFile": "File path inside working directory", "attach": "Attach file", "attachments": "Reuse a session attachment", "pasteImage": "Paste an image in the composer. Up to 4 attachments, 1 MiB each.", "attachmentLimit": "Up to 4 attachments, 1 MiB each", "review": "Git changes and worktrees", "gitStatus": "Refresh Git status", "diffFile": "File path to review", "diff": "View diff", "branch": "New branch name", "createWorktree": "Create worktree", "useWorktree": "New session in this worktree", "worktreeHint": "Creates a new branch from HEAD. Uncommitted changes stay in the current directory. Existing worktrees are never deleted automatically.", "clean": "No changes", "reconnecting": "Reconnecting and restoring messages…", "unavailable": "Session is no longer accessible. Check your permissions or sign in again.", "shortcuts": "Enter sends or queues · Shift+Enter adds a line · Esc interrupts and pauses the queue" }, "plugin": { "name": "AI Assistant" } }