pub struct Talk {
pub allow_write: bool,
pub personas: Vec<PersonaSpec>,
}Expand description
Policy for crate::talk, the standing conversation.
Fields§
§allow_write: boolLet the conversation’s agent edit files in the repository instead of
filing a task for one. Off by default - see
crate::talk’s module doc for why an edit made mid-conversation is
an edit no run and no review can be attributed to, which is exactly
the property a repository entered in a competition depends on. A
repository that is never judged - dotfiles, a personal config
checkout - has nothing to lose by turning this on in its own
magi.toml, and a one-line fix stops costing a queued task to get.
personas: Vec<PersonaSpec>Extra chat personas, [[talk.personas]]. They add to the built-ins in
crate::persona; an entry with a built-in’s id replaces it. Like every
array outside [array_merge_policy]’s append list, declaring it in two
layers is refused.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Talk
impl<'de> Deserialize<'de> for Talk
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for Talk
impl RefUnwindSafe for Talk
impl Send for Talk
impl Sync for Talk
impl Unpin for Talk
impl UnsafeUnpin for Talk
impl UnwindSafe for Talk
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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