Publish harness and TUI open-source

initial sync from the monorepo
This commit is contained in:
grokkybara[bot] 2026-07-16 06:46:02 +01:00
commit c68e39f604
2734 changed files with 1437016 additions and 0 deletions

View file

@ -0,0 +1,33 @@
//! `/recap` -- summarize the session so far ("where was I").
//!
//! Returns `CommandResult::Action(Action::SendRecap { auto: false })` so the
//! dispatch layer fires it as an ACP ext method (`x.ai/recap`) that bypasses
//! the prompt queue. The recap arrives asynchronously as a scrollback line and
//! is never added to the model conversation.
use crate::app::actions::Action;
use crate::slash::command::{CommandExecCtx, CommandResult, SlashCommand};
pub struct RecapCommand;
impl SlashCommand for RecapCommand {
fn name(&self) -> &str {
"recap"
}
fn description(&self) -> &str {
"Summarize the session so far"
}
fn session_scoped(&self) -> bool {
true
}
fn usage(&self) -> &str {
"/recap"
}
fn run(&self, _ctx: &mut CommandExecCtx, _args: &str) -> CommandResult {
CommandResult::Action(Action::SendRecap { auto: false })
}
}