feat: add CliStreamMonitor and related components for CLI output streaming

- Implemented CliStreamMonitor component for real-time CLI output monitoring with multi-execution support.
- Created JsonFormatter component for displaying JSON content in various formats (text, card, inline).
- Added utility functions for JSON detection and formatting in jsonUtils.ts.
- Introduced LogBlock utility functions for styling CLI output lines.
- Developed a new Collapsible component for better UI interactions.
- Created IssueHubPage for managing issues, queue, and discovery with tab navigation.
This commit is contained in:
catlog22
2026-01-31 23:12:39 +08:00
parent 2f10305945
commit a2206df50f
43 changed files with 5843 additions and 466 deletions

View File

@@ -1,6 +1,6 @@
{
"title": "CLI Stream Monitor",
"searchPlaceholder": "Search output...",
"searchPlaceholder": "Search logs...",
"noExecutions": "No active CLI executions",
"noExecutionsHint": "Start a CLI command to see streaming output",
"selectExecution": "Select an execution to view output",
@@ -14,5 +14,36 @@
"autoScroll": "Auto-scroll",
"scrollToBottom": "Scroll to bottom",
"close": "Close",
"refresh": "Refresh"
"refresh": "Refresh",
"refreshing": "Refreshing...",
"live": "Live",
"executions": "{count} execution{count, plural, =1 {} other {s}}",
"active": "{count} active",
"filter": {
"all": "All",
"errors": "Errors",
"content": "Content",
"system": "System"
},
"view": {
"preview": "Preview",
"json": "JSON",
"raw": "Raw"
},
"viewMode": "View Mode",
"settings": "Settings",
"noMessages": "Waiting for messages...",
"noMatch": "No matching messages found",
"statusBar": "{total} executions | {active} active | {error} error | {lines} lines",
"copy": "Copy",
"copied": "Copied",
"rawJson": "Raw JSON",
"retry": "Retry",
"dismiss": "Dismiss",
"thinking": "Thinking...",
"streaming": "Streaming...",
"tokens": "Tokens: {count}",
"duration": "Duration: {value}",
"model": "Model: {name}",
"user": "User"
}

View File

@@ -89,6 +89,14 @@
"title": "Discovery",
"pageTitle": "Issue Discovery",
"description": "View and manage issue discovery sessions",
"totalSessions": "Total Sessions",
"completedSessions": "Completed",
"runningSessions": "Running",
"totalFindings": "Findings",
"sessionList": "Session List",
"noSessions": "No sessions found",
"noSessionsDescription": "Start a new discovery session to begin",
"findingsDetail": "Findings Detail",
"stats": {
"totalSessions": "Total Sessions",
"completed": "Completed",
@@ -135,5 +143,14 @@
"export": "Export Findings",
"refresh": "Refresh"
}
},
"hub": {
"title": "Issue Hub",
"description": "Unified management for issues, queues, and discoveries",
"tabs": {
"issues": "Issues",
"queue": "Queue",
"discovery": "Discovery"
}
}
}

View File

@@ -41,5 +41,42 @@
"sessions": "Sessions",
"detail": "Details",
"settings": "Settings"
},
"cliMonitor": {
"title": "CLI Stream Monitor",
"live": "Live",
"executions": "executions",
"active": "active",
"errors": "errors",
"lines": "lines",
"refresh": "Refresh",
"refreshing": "Refreshing...",
"searchPlaceholder": "Search logs...",
"clear": "Clear",
"filterAll": "All",
"filterErrors": "Errors",
"filterContent": "Content",
"filterSystem": "System",
"viewPreview": "Preview",
"viewJson": "JSON",
"viewRaw": "Raw",
"settings": "Settings",
"noExecutions": "No active CLI executions",
"noExecutionsHint": "Start a CLI command to see streaming output",
"noMessages": "Waiting for messages...",
"noMatch": "No matching messages found",
"statusBar": "{total} executions | {active} active | {errors} error | {lines} lines",
"copy": "Copy",
"copied": "Copied!",
"rawJson": "Raw JSON",
"expand": "Expand",
"collapse": "Collapse",
"retry": "Retry",
"dismiss": "Dismiss",
"thinking": "Thinking...",
"completed": "Completed",
"tokens": "Tokens",
"duration": "Duration",
"model": "Model"
}
}