feat: v0.3.0 re-release - add dashboard & sessions, hide pi option

- Usage dashboard: KPIs, model split, daily bars, year heatmap, recent requests
- Sessions management: list/preview/archive/delete with streaming preview
- Double-click daily bar opens per-model breakdown modal
- Paginated recent requests (30/page)
- Hide pi option from nav (kept code, just removed from UI)
- Timezone fixes: today/day_key/heatmap now use local calendar day
- Streaming preview with 20MB byte cap + 500-char frontend clip
- README attribution to kimicode-dashboard (MIT, JochenYang)
This commit is contained in:
KimiSwitch Dev committed 2026-07-28 09:16:21 +08:00
1 parent 139af18826
commit 32de98bff5
19 files changed
+3648 -35

No files matched your search

+67
View File
@@ -20,6 +20,8 @@ export const enTranslations: Record<TranslationKey, string> = {
// Provider list
providers: "Providers",
dashboard: "Dashboard",
sessions: "Sessions",
addProvider: "Add Provider",
noProviders: "No providers yet",
addFirstProvider: "Add first provider",
@@ -131,6 +133,71 @@ export const enTranslations: Record<TranslationKey, string> = {
capToolUse: "Tool Use",
customCapabilities: "Other capabilities (comma-separated)",
// Sessions
sessionsTitle: "Sessions",
sessionsSubtitle:
"Browse, preview, archive, or delete Kimi Code sessions by workspace. Archiving keeps data on disk.",
workspaces: "Workspaces",
workspaceIsolatedHint: "Sessions are isolated per workspace",
allWorkspaces: "All workspaces",
emptyWorkspace: "Empty",
deleteWorkspace: "Delete workspace",
noSessions: "No sessions",
statusActive: "Active",
statusArchived: "Archived",
statusAll: "All",
selectAll: "Select all",
deselectAll: "Deselect all",
selectedCount: "{n} selected",
archive: "Archive",
unarchive: "Unarchive",
sessionTitle: "Session",
workspace: "Workspace",
status: "Status",
size: "Size",
updated: "Updated",
actions: "Actions",
sessionsInView: "{n} sessions",
isolatedToWorkspace: "this workspace only",
openPreview: "Open preview",
scanning: "Scanning…",
refresh: "Refresh",
refreshing: "Refreshing…",
refreshed: "Refreshed",
cancel: "Cancel",
confirmDeleteTitle: "Delete session forever?",
confirmDeleteSession:
"This cannot be undone. Prefer archive if you only want it out of the way.",
confirmBulkTitle: "Delete selected forever?",
confirmBulkDelete: "Permanently delete {n} sessions. This cannot be undone.",
confirmDeleteWorkspaceTitle: "Delete empty workspace?",
confirmDeleteWorkspace: "Only workspaces with no sessions can be removed.",
deleteForever: "Delete forever",
previewTitle: "Session preview",
previewHint:
"Roles and truncated text only — secrets and raw tool dumps are omitted.",
previewEmpty: "No previewable messages",
previewTruncated: "Preview truncated",
roleUser: "User",
roleAssistant: "Assistant",
roleSystem: "System",
// Heatmap
noData: "No data",
heatLess: "Less",
heatMore: "More",
requests: "Requests",
cacheHitRate: "Cache hit rate",
// Daily detail modal
dayDetail: "Daily usage detail",
close: "Close",
totalTokens: "Total tokens",
cost: "Cost",
modelDistribution: "Model distribution",
modalEscHint: "Press Esc or click outside to close",
doubleClickHint: "Double-click for details",
// Languages
language: "Language",
zh: "中文",