ras_agent/domain/
agent_output.rs1use ras_types::ActionName;
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Clone, Serialize, Deserialize)]
5pub struct AgentBrain {
6 pub evaluation_previous_goal: String,
7 pub memory: String,
8 pub next_goal: String,
9}
10
11#[derive(Debug, Clone, Serialize, Deserialize)]
12pub struct PlanItem {
13 pub step: u32,
14 pub description: String,
15 pub completed: bool,
16}
17
18#[derive(Debug, Clone, Serialize, Deserialize)]
19pub struct AgentOutput {
20 pub current_state: AgentBrain,
21 pub action: Vec<ActionInvocation>,
22 pub plan: Option<Vec<PlanItem>>,
23 pub current_plan_item: Option<u32>,
24}
25
26#[derive(Debug, Clone, Serialize, Deserialize)]
27pub struct ActionInvocation {
28 pub name: ActionName,
29 pub parameters: serde_json::Value,
30}