Implement chat and markdown views, enhance status bar, and add workflow panel
- Added `chat.rs` for rendering chat messages with timestamps and roles. - Introduced `markdown.rs` for rendering markdown content with styling. - Created `status.rs` to display the application status bar with session and message counts. - Developed `workflow.rs` to show the current workflow status, including tool calls and active jobs. - Established a `theme.rs` for centralized color management across the UI. - Updated `mod.rs` to include new modules and manage rendering logic.
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub enum ScriptPrimitive {
|
||||
Agent(String),
|
||||
Parallel(Vec<ScriptPrimitive>),
|
||||
Pipeline(Vec<ScriptPrimitive>),
|
||||
Phase {
|
||||
name: String,
|
||||
script: Box<ScriptPrimitive>,
|
||||
},
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct ScriptOptions {
|
||||
pub max_concurrency: usize,
|
||||
pub continue_on_error: bool,
|
||||
pub timeout_ms: Option<u64>,
|
||||
}
|
||||
|
||||
impl Default for ScriptOptions {
|
||||
fn default() -> Self {
|
||||
ScriptOptions {
|
||||
max_concurrency: 5,
|
||||
continue_on_error: false,
|
||||
timeout_ms: None,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct WorkflowScript {
|
||||
pub name: String,
|
||||
pub description: String,
|
||||
pub script: ScriptPrimitive,
|
||||
pub options: ScriptOptions,
|
||||
}
|
||||
Reference in New Issue
Block a user