Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
140 changes: 70 additions & 70 deletions apps/web/messages/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -330,74 +330,6 @@
"organizationSettings": "Organization Settings",
"billing": "Billing",
"usage": "Usage",
"slackIntegration": "Slack Integration",
"byomKeys": "BYOM Keys",
"mcpConnectionsLabel": "MCP Connections",
"mcpConnections": {
"title": "External MCP connections",
"description": "Connect approved GitHub, Linear, and Jira MCP servers, validate their tool catalog, and request manual review for anything outside the allowlist.",
"loadError": "Could not load MCP connection settings.",
"connectError": "Could not validate the MCP connection.",
"connectSuccess": "{server} connection saved.",
"disconnectError": "Could not remove the MCP connection.",
"disconnectSuccess": "The MCP connection was removed and live deployments were suspended.",
"requestError": "Could not submit the MCP review request.",
"requestSuccess": "Review request submitted. Custom MCP servers stay pending until manual approval.",
"githubOAuthSuccess": "GitHub MCP connection completed successfully.",
"githubOAuthError": "GitHub MCP connection failed. Retry the OAuth flow.",
"connectGitHub": "Connect GitHub",
"connectManual": "Validate & save",
"labelPlaceholder": "Connection label (optional)",
"apiKeyPlaceholder": "Paste the provider API key",
"apiTokenPlaceholder": "Paste the provider API token",
"customRequestTitle": "Request a custom MCP server",
"customRequestDescription": "Servers outside the approved allowlist require manual review before they can be connected.",
"requestNamePlaceholder": "Server name",
"requestUrlPlaceholder": "https://mcp.example.com/rpc",
"requestNotesPlaceholder": "Why this MCP server is needed",
"requestReview": "Request review",
"labelValue": "Label · {label}",
"maskedSecretValue": "Saved secret · {secret}",
"toolCountValue": "Cached tools · {count}",
"validatedAtValue": "Last validated · {date}",
"status": {
"active": "Connected",
"error": "Connection error",
"pending_oauth": "OAuth pending",
"disconnected": "Not connected"
},
"auth": {
"oauth": "OAuth",
"api_key": "API key",
"api_token": "API token"
}
},
"byomKeys": {
"title": "BYOM Key Management",
"description": "Bring your own model key. Validate and save a provider API key for this project.",
"providerLabel": "Provider",
"apiKeyLabel": "API Key",
"apiKeyPlaceholder": "sk-... or provider token",
"apiKeyUpdatePlaceholder": "Enter new key (leave blank to keep existing)",
"savedKeyLabel": "Saved key",
"baseUrlLabel": "Base URL",
"baseUrlPlaceholder": "https://your-endpoint.example.com/v1",
"baseUrlHint": "Required for OpenAI-compatible providers and must include /v1.",
"baseUrlSavedLabel": "Saved endpoint",
"validateCta": "Validate",
"validating": "Validating...",
"saveCta": "Save Key",
"validationSuccess": "API key is valid and working.",
"validationError": "API key validation failed. Check the key and try again.",
"saveSuccess": "API key saved successfully.",
"deleteSuccess": "Saved BYOM key deleted successfully.",
"deleteSuccessWithRotation": "Saved BYOM key deleted. KMS rotation request recorded.",
"deleteConfirmTitle": "Delete API key?",
"deleteConfirmDesc": "This will remove the saved API key from this project. AI features that depend on it will stop working.",
"confirmDelete": "Delete Key",
"showKey": "Show",
"hideKey": "Hide"
},
"slackIntegration": {
"title": "Slack integration & channel mapping",
"description": "Connect Slack once, review workspace health, and map channels to the right Sprintable project without leaving Settings.",
Expand Down Expand Up @@ -460,6 +392,72 @@
"remapSuccessTitle": "Slack channel remapped",
"remapSuccessBody": "{channel} now points to {project}.",
"unknownProject": "Unknown project"
},
"byomKeys": {
"title": "BYOM Key Management",
"description": "Bring your own model key. Validate and save a provider API key for this project.",
"providerLabel": "Provider",
"apiKeyLabel": "API Key",
"apiKeyPlaceholder": "sk-... or provider token",
"apiKeyUpdatePlaceholder": "Enter new key (leave blank to keep existing)",
"savedKeyLabel": "Saved key",
"baseUrlLabel": "Base URL",
"baseUrlPlaceholder": "https://your-endpoint.example.com/v1",
"baseUrlHint": "Required for OpenAI-compatible providers and must include /v1.",
"baseUrlSavedLabel": "Saved endpoint",
"validateCta": "Validate",
"validating": "Validating...",
"saveCta": "Save Key",
"validationSuccess": "API key is valid and working.",
"validationError": "API key validation failed. Check the key and try again.",
"saveSuccess": "API key saved successfully.",
"deleteSuccess": "Saved BYOM key deleted successfully.",
"deleteSuccessWithRotation": "Saved BYOM key deleted. KMS rotation request recorded.",
"deleteConfirmTitle": "Delete API key?",
"deleteConfirmDesc": "This will remove the saved API key from this project. AI features that depend on it will stop working.",
"confirmDelete": "Delete Key",
"showKey": "Show",
"hideKey": "Hide"
},
"mcpConnectionsLabel": "MCP Connections",
"mcpConnections": {
"title": "External MCP connections",
"description": "Connect approved GitHub, Linear, and Jira MCP servers, validate their tool catalog, and request manual review for anything outside the allowlist.",
"loadError": "Could not load MCP connection settings.",
"connectError": "Could not validate the MCP connection.",
"connectSuccess": "{server} connection saved.",
"disconnectError": "Could not remove the MCP connection.",
"disconnectSuccess": "The MCP connection was removed and live deployments were suspended.",
"requestError": "Could not submit the MCP review request.",
"requestSuccess": "Review request submitted. Custom MCP servers stay pending until manual approval.",
"githubOAuthSuccess": "GitHub MCP connection completed successfully.",
"githubOAuthError": "GitHub MCP connection failed. Retry the OAuth flow.",
"connectGitHub": "Connect GitHub",
"connectManual": "Validate & save",
"labelPlaceholder": "Connection label (optional)",
"apiKeyPlaceholder": "Paste the provider API key",
"apiTokenPlaceholder": "Paste the provider API token",
"customRequestTitle": "Request a custom MCP server",
"customRequestDescription": "Servers outside the approved allowlist require manual review before they can be connected.",
"requestNamePlaceholder": "Server name",
"requestUrlPlaceholder": "https://mcp.example.com/rpc",
"requestNotesPlaceholder": "Why this MCP server is needed",
"requestReview": "Request review",
"labelValue": "Label · {label}",
"maskedSecretValue": "Saved secret · {secret}",
"toolCountValue": "Cached tools · {count}",
"validatedAtValue": "Last validated · {date}",
"status": {
"active": "Connected",
"error": "Connection error",
"pending_oauth": "OAuth pending",
"disconnected": "Not connected"
},
"auth": {
"oauth": "OAuth",
"api_key": "API key",
"api_token": "API token"
}
}
},
"landing": {
Expand Down Expand Up @@ -839,7 +837,9 @@
"docTagsPlaceholder": "For example, docs, mobile, parity",
"docTagsHint": "Separate tags with commas to show them as badges.",
"codeCopy": "Copy code",
"codeCopied": "Copied"
"codeCopied": "Copied",
"moveCircularError": "Cannot move a document into its own subtree",
"movePermissionError": "You do not have permission to move documents here"
},
"rewards": {
"title": "Rewards",
Expand Down Expand Up @@ -1723,4 +1723,4 @@
"policySummaryTitle": "Runtime prompt summary",
"policySummaryBody": "This exact summary is injected into the agent system prompt."
}
}
}
140 changes: 70 additions & 70 deletions apps/web/messages/ko.json
Original file line number Diff line number Diff line change
Expand Up @@ -330,74 +330,6 @@
"organizationSettings": "조직 설정",
"billing": "결제",
"usage": "사용량",
"slackIntegration": "Slack 연동",
"byomKeys": "BYOM 키 관리",
"mcpConnectionsLabel": "MCP 연결",
"mcpConnections": {
"title": "외부 MCP 연결",
"description": "승인된 GitHub, Linear, Jira MCP 서버를 연결하고 tool catalog를 검증하며, allowlist 밖의 서버는 수동 심사 요청으로 올리는.",
"loadError": "MCP 연결 설정을 불러오지 못한.",
"connectError": "MCP 연결 검증에 실패한.",
"connectSuccess": "{server} 연결을 저장한.",
"disconnectError": "MCP 연결을 제거하지 못한.",
"disconnectSuccess": "MCP 연결을 제거했고 연결된 live deployment도 suspend 처리한.",
"requestError": "MCP 심사 요청을 제출하지 못한.",
"requestSuccess": "심사 요청을 등록한. allowlist 밖 커스텀 MCP는 수동 승인 전까지 pending 상태입니다.",
"githubOAuthSuccess": "GitHub MCP 연결을 완료한.",
"githubOAuthError": "GitHub MCP 연결에 실패한. OAuth를 다시 진행하기 바라는.",
"connectGitHub": "GitHub 연결",
"connectManual": "검증 후 저장",
"labelPlaceholder": "연결 라벨 (선택)",
"apiKeyPlaceholder": "제공자 API 키 입력",
"apiTokenPlaceholder": "제공자 API 토큰 입력",
"customRequestTitle": "커스텀 MCP 서버 심사 요청",
"customRequestDescription": "승인된 allowlist 밖의 MCP 서버는 연결 전에 반드시 수동 심사를 거치는.",
"requestNamePlaceholder": "서버 이름",
"requestUrlPlaceholder": "https://mcp.example.com/rpc",
"requestNotesPlaceholder": "이 MCP 서버가 필요한 이유",
"requestReview": "심사 요청",
"labelValue": "라벨 · {label}",
"maskedSecretValue": "저장된 secret · {secret}",
"toolCountValue": "캐시된 tool 수 · {count}",
"validatedAtValue": "마지막 검증 · {date}",
"status": {
"active": "연결됨",
"error": "연결 오류",
"pending_oauth": "OAuth 대기",
"disconnected": "미연결"
},
"auth": {
"oauth": "OAuth",
"api_key": "API 키",
"api_token": "API 토큰"
}
},
"byomKeys": {
"title": "BYOM 키 관리",
"description": "프로젝트 전용 AI 제공자 API 키를 검증하고 저장합니다.",
"providerLabel": "제공자",
"apiKeyLabel": "API 키",
"apiKeyPlaceholder": "sk-... 또는 제공자 토큰",
"apiKeyUpdatePlaceholder": "새 키 입력 (비워두면 기존 키 유지)",
"savedKeyLabel": "저장된 키",
"baseUrlLabel": "Base URL",
"baseUrlPlaceholder": "https://your-endpoint.example.com/v1",
"baseUrlHint": "OpenAI-compatible 제공자는 /v1 포함 endpoint가 필요합니다.",
"baseUrlSavedLabel": "저장된 endpoint",
"validateCta": "검증",
"validating": "검증 중...",
"saveCta": "키 저장",
"validationSuccess": "API 키가 유효합니다.",
"validationError": "API 키 검증에 실패했습니다. 키를 확인하고 다시 시도하세요.",
"saveSuccess": "API 키가 저장되었습니다.",
"deleteSuccess": "저장된 BYOM 키를 삭제한.",
"deleteSuccessWithRotation": "저장된 BYOM 키를 삭제했고 KMS rotation 요청도 기록한.",
"deleteConfirmTitle": "API 키를 삭제하시겠습니까?",
"deleteConfirmDesc": "이 프로젝트에서 저장된 API 키가 제거됩니다. 해당 키에 의존하는 AI 기능이 중단됩니다.",
"confirmDelete": "키 삭제",
"showKey": "보기",
"hideKey": "숨기기"
},
"slackIntegration": {
"title": "Slack 연동 및 채널 매핑",
"description": "Slack을 한 번 연결한 뒤 워크스페이스 상태를 확인하고, 채널을 올바른 Sprintable 프로젝트에 바로 매핑합니다.",
Expand Down Expand Up @@ -460,6 +392,72 @@
"remapSuccessTitle": "Slack 채널 remap 완료",
"remapSuccessBody": "{channel} 채널이 이제 {project}를 가리키는.",
"unknownProject": "알 수 없는 프로젝트"
},
"byomKeys": {
"title": "BYOM 키 관리",
"description": "프로젝트 전용 AI 제공자 API 키를 검증하고 저장합니다.",
"providerLabel": "제공자",
"apiKeyLabel": "API 키",
"apiKeyPlaceholder": "sk-... 또는 제공자 토큰",
"apiKeyUpdatePlaceholder": "새 키 입력 (비워두면 기존 키 유지)",
"savedKeyLabel": "저장된 키",
"baseUrlLabel": "Base URL",
"baseUrlPlaceholder": "https://your-endpoint.example.com/v1",
"baseUrlHint": "OpenAI-compatible 제공자는 /v1 포함 endpoint가 필요합니다.",
"baseUrlSavedLabel": "저장된 endpoint",
"validateCta": "검증",
"validating": "검증 중...",
"saveCta": "키 저장",
"validationSuccess": "API 키가 유효합니다.",
"validationError": "API 키 검증에 실패했습니다. 키를 확인하고 다시 시도하세요.",
"saveSuccess": "API 키가 저장되었습니다.",
"deleteSuccess": "저장된 BYOM 키를 삭제한.",
"deleteSuccessWithRotation": "저장된 BYOM 키를 삭제했고 KMS rotation 요청도 기록한.",
"deleteConfirmTitle": "API 키를 삭제하시겠습니까?",
"deleteConfirmDesc": "이 프로젝트에서 저장된 API 키가 제거됩니다. 해당 키에 의존하는 AI 기능이 중단됩니다.",
"confirmDelete": "키 삭제",
"showKey": "보기",
"hideKey": "숨기기"
},
"mcpConnectionsLabel": "MCP 연결",
"mcpConnections": {
"title": "외부 MCP 연결",
"description": "승인된 GitHub, Linear, Jira MCP 서버를 연결하고 tool catalog를 검증하며, allowlist 밖의 서버는 수동 심사 요청으로 올리는.",
"loadError": "MCP 연결 설정을 불러오지 못한.",
"connectError": "MCP 연결 검증에 실패한.",
"connectSuccess": "{server} 연결을 저장한.",
"disconnectError": "MCP 연결을 제거하지 못한.",
"disconnectSuccess": "MCP 연결을 제거했고 연결된 live deployment도 suspend 처리한.",
"requestError": "MCP 심사 요청을 제출하지 못한.",
"requestSuccess": "심사 요청을 등록한. allowlist 밖 커스텀 MCP는 수동 승인 전까지 pending 상태입니다.",
"githubOAuthSuccess": "GitHub MCP 연결을 완료한.",
"githubOAuthError": "GitHub MCP 연결에 실패한. OAuth를 다시 진행하기 바라는.",
"connectGitHub": "GitHub 연결",
"connectManual": "검증 후 저장",
"labelPlaceholder": "연결 라벨 (선택)",
"apiKeyPlaceholder": "제공자 API 키 입력",
"apiTokenPlaceholder": "제공자 API 토큰 입력",
"customRequestTitle": "커스텀 MCP 서버 심사 요청",
"customRequestDescription": "승인된 allowlist 밖의 MCP 서버는 연결 전에 반드시 수동 심사를 거치는.",
"requestNamePlaceholder": "서버 이름",
"requestUrlPlaceholder": "https://mcp.example.com/rpc",
"requestNotesPlaceholder": "이 MCP 서버가 필요한 이유",
"requestReview": "심사 요청",
"labelValue": "라벨 · {label}",
"maskedSecretValue": "저장된 secret · {secret}",
"toolCountValue": "캐시된 tool 수 · {count}",
"validatedAtValue": "마지막 검증 · {date}",
"status": {
"active": "연결됨",
"error": "연결 오류",
"pending_oauth": "OAuth 대기",
"disconnected": "미연결"
},
"auth": {
"oauth": "OAuth",
"api_key": "API 키",
"api_token": "API 토큰"
}
}
},
"landing": {
Expand Down Expand Up @@ -839,7 +837,9 @@
"docTagsPlaceholder": "예: docs, mobile, parity",
"docTagsHint": "쉼표로 구분하면 배지로 표시되어 주세요",
"codeCopy": "코드 복사",
"codeCopied": "복사됨"
"codeCopied": "복사됨",
"moveCircularError": "문서를 자신의 하위로 이동할 수 없습니다",
"movePermissionError": "이 위치로 문서를 이동할 권한이 없습니다"
},
"rewards": {
"title": "리워드",
Expand Down Expand Up @@ -1723,4 +1723,4 @@
"policySummaryTitle": "런타임 주입 요약",
"policySummaryBody": "에이전트 시스템 프롬프트에 그대로 들어가는 정책 요약인."
}
}
}
Loading
Loading