a6bd33bcff
Workspace sessions (docs/plans/desktop-parity, phases 1-5 and 7): - sessions.lane_id: a workspace lists only the sessions its panes held, stamped by bindRunSession (first writer wins, nested `claude -p` excluded); GET /api/sessions?lane=&archived= - session row state dot, double-click rename, archive (sessions.archived_at, hides only); the activity bar's duplicate Sessions tab removed - Fork beside Resume (--fork-session, Claude only), Ctrl/Cmd+click a live session opens it in a second pane, a diff line's comment is pasted into the workspace's last-focused pane (lib/panePaste.ts) dashboard_runs stability: - a pane's previous run is archived as <pane>@<started_at> instead of being overwritten by INSERT OR REPLACE - a run is flagged abandoned only once its tmux session is gone, at boot and on the run-heal beat (panes outlive a server restart) UI: - sidebar: no footer, language or theme block; small collapse button in the brand corner; version + update check in the connection details modal, a status-bar dot while a release is out; language in Settings -> General - one Switch component for every switch, the themed Checkbox for every checkbox (no native checkboxes) Also: AI Tools catalog trimmed to 10 built-ins (custom-file prompt modes tested through fixtures), and the workspace plans under docs/plans/ (the multi-user server plan lives in the AgentHub-Server repo).
71 lines
2.4 KiB
JSON
71 lines
2.4 KiB
JSON
{
|
|
"activityFeed": "Luồng hoạt động",
|
|
"agentBoard": "Bảng Kanban",
|
|
"analytics": "Phân tích",
|
|
"avg": "TB",
|
|
"brand": "AgentHub",
|
|
"brandSub": "SmartGift Solution",
|
|
"ccConfig": "Cấu hình Claude",
|
|
"checkFailed": "Kiểm tra cập nhật thất bại",
|
|
"checkForUpdates": "Kiểm tra cập nhật",
|
|
"checkingForUpdates": "Đang kiểm tra cập nhật...",
|
|
"close": "Đóng",
|
|
"collapse": "Thu gọn thanh bên",
|
|
"connection": "Kết nối",
|
|
"connectionDetails": "Chi tiết kết nối",
|
|
"connectionUptime": "Đã kết nối",
|
|
"dashboard": "Tổng quan",
|
|
"daysAgo": "{{count}} ngày trước",
|
|
"disconnected": "Mất kết nối",
|
|
"eventsLastMin": "60s qua",
|
|
"eventsReceived": "Sự kiện đã nhận",
|
|
"eventsTotal": "Tổng",
|
|
"expand": "Mở rộng thanh bên",
|
|
"hoursAgo": "{{count}} giờ trước",
|
|
"justNow": "vừa xong",
|
|
"language": "Ngôn ngữ",
|
|
"languageNames": {
|
|
"en": "English",
|
|
"vi": "Tiếng Việt"
|
|
},
|
|
"languageShort": {
|
|
"en": "EN",
|
|
"vi": "VI"
|
|
},
|
|
"lastEvent": "Sự kiện gần nhất",
|
|
"live": "Trực tiếp",
|
|
"minutesAgo": "{{count}} phút trước",
|
|
"noEventsYet": "Chưa có sự kiện",
|
|
"notConnected": "Chưa kết nối",
|
|
"notFound": "Không tìm thấy",
|
|
"peakRate": "Đỉnh",
|
|
"recentActivity": "Hoạt động gần đây",
|
|
"resetStats": "Đặt lại",
|
|
"scrollDown": "Cuộn danh mục xuống",
|
|
"scrollUp": "Cuộn danh mục lên",
|
|
"secondsAgo": "{{count}} giây trước",
|
|
"sessions": "Phiên",
|
|
"settings": "Cài đặt",
|
|
"skipToContent": "Bỏ qua đến nội dung",
|
|
"statsPersisted": "Số liệu được lưu sau khi tải lại",
|
|
"throughput60s": "Lưu lượng · 60s qua",
|
|
"topEventTypes": "Loại sự kiện phổ biến",
|
|
"unitEvents": "sự kiện",
|
|
"unitPerSec": "sự kiện/s",
|
|
"upToDate": "Đã là mới nhất",
|
|
"updateAvailable": "Có bản cập nhật",
|
|
"website": "Website",
|
|
"workspace": "Không gian làm việc",
|
|
"wsEndpoint": "WebSocket",
|
|
"releaseAvailable": "Có {{version}}",
|
|
"devBuild": "Bản dev · trước {{count}} commit",
|
|
"installedNotRunning": "Đã cài {{version}}, chưa chạy",
|
|
"releaseUnchecked": "Không kiểm tra được bản mới",
|
|
"statusBar": {
|
|
"running": "{{count}} đang chạy",
|
|
"needYou": "{{count}} cần bạn",
|
|
"today": "Hôm nay {{cost}}"
|
|
},
|
|
"version": "Phiên bản"
|
|
}
|