1pub mod pending_queue;
2pub mod socket_client;
3pub mod socket_server;
4
5use serde::{Deserialize, Serialize};
6
7use crate::decision::{Decision, DecisionMetadata};
8
9#[derive(Debug, Clone, Serialize, Deserialize)]
11pub struct IpcRequest {
12 pub session_id: String,
13 pub tool_name: String,
14 pub tool_input: String,
15 pub role: String,
16 pub file_path: Option<String>,
17 pub task_description: Option<String>,
18 pub prompt_path: Option<String>,
19 pub cwd: String,
20}
21
22#[derive(Debug, Clone, Serialize, Deserialize)]
24pub struct IpcResponse {
25 pub decision: Decision,
26 pub metadata: DecisionMetadata,
27}