pub struct PromptContext<'a> {Show 13 fields
pub status: &'a str,
pub phase: Option<&'a str>,
pub states_config: &'a StatesConfig,
pub phases_config: &'a PhasesConfig,
pub task_id: Option<&'a str>,
pub task_title: Option<&'a str>,
pub task_priority: Option<i32>,
pub task_tags: Option<&'a [String]>,
pub agent_id: Option<&'a str>,
pub agent_role: Option<&'a str>,
pub agent_tags: Option<&'a [String]>,
pub task_level: Option<&'a str>,
pub child_count: Option<usize>,
}Expand description
Context for expanding template variables in prompts.
Provides both workflow context (status, phase, valid transitions) and situational context (task metadata, agent identity) for rich prompt template expansion.
Fields§
§status: &'a strCurrent status of the task
phase: Option<&'a str>Current phase of the task (if any)
states_config: &'a StatesConfigStates configuration for looking up valid transitions
phases_config: &'a PhasesConfigPhases configuration for listing valid phases
task_id: Option<&'a str>Task ID (if available)
task_title: Option<&'a str>Task title (if available)
task_priority: Option<i32>Task priority (if available)
Task tags (if available)
agent_id: Option<&'a str>Agent/worker ID (if available)
agent_role: Option<&'a str>Agent’s matched role name (if available)
Agent’s tags (if available)
task_level: Option<&'a str>Task’s hierarchy level extracted from level:* tags (if available)
child_count: Option<usize>Number of direct children (contains deps) of the task (if available)
Implementations§
Source§impl<'a> PromptContext<'a>
impl<'a> PromptContext<'a>
Sourcepub fn new(
status: &'a str,
phase: Option<&'a str>,
states_config: &'a StatesConfig,
phases_config: &'a PhasesConfig,
) -> Self
pub fn new( status: &'a str, phase: Option<&'a str>, states_config: &'a StatesConfig, phases_config: &'a PhasesConfig, ) -> Self
Create a new prompt context with workflow information only.
For backwards compatibility – callers that don’t have task/agent
info can use this constructor. Use with_task() and with_agent()
to add situational context.
Sourcepub fn with_task(
self,
id: &'a str,
title: &'a str,
priority: i32,
tags: &'a [String],
) -> Self
pub fn with_task( self, id: &'a str, title: &'a str, priority: i32, tags: &'a [String], ) -> Self
Add task context to the prompt context.
Trait Implementations§
Source§impl<'a> Clone for PromptContext<'a>
impl<'a> Clone for PromptContext<'a>
Source§fn clone(&self) -> PromptContext<'a>
fn clone(&self) -> PromptContext<'a>
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl<'a> Freeze for PromptContext<'a>
impl<'a> RefUnwindSafe for PromptContext<'a>
impl<'a> Send for PromptContext<'a>
impl<'a> Sync for PromptContext<'a>
impl<'a> Unpin for PromptContext<'a>
impl<'a> UnsafeUnpin for PromptContext<'a>
impl<'a> UnwindSafe for PromptContext<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more