- Added module-level documentation for memory tools (`remember`, `recall`, `forget`) to clarify their purpose. - Improved documentation in `recall.rs` and `remember.rs` to describe the functionality and flow of memory entry operations. - Updated `mod.rs` to include descriptions for the tool trait and execution context. - Enhanced `plan.rs` with detailed comments on plan-mode signaling tools. - Documented text search tools in `search.rs` to explain their functionality. - Improved sequential-thinking tool documentation in `seqthink.rs`. - Added safety filter documentation in `shell_filter` for credential and git operations. - Enhanced utility tools documentation, including `cd`, `dir_cache_update`, and `todowrite`. - Improved rendering documentation in view modules (`chat`, `markdown`, `status`, `workflow`) to clarify rendering flows and purposes.
20 lines
758 B
Rust
20 lines
758 B
Rust
//! Bash mode: handles submitting a shell command from the bash input panel.
|
|
|
|
use crate::app::state::rest::AppStateRest;
|
|
|
|
/// Launch a background bash job for the submitted command.
|
|
///
|
|
/// Flow: ignore empty input → spawn the job (fire-and-forget, the job's
|
|
/// output is polled elsewhere via `bgbash::control`) → mark state dirty
|
|
/// so the TUI re-renders.
|
|
///
|
|
/// Why: the returned `BashJob` handle is intentionally dropped — this
|
|
/// function only needs to kick the job off; the job registers itself in
|
|
/// the shared jobs map for later polling.
|
|
pub fn handle_bash_submit(state: &mut AppStateRest, command: String) {
|
|
if !command.is_empty() {
|
|
let _ = crate::app::bgbash::job::spawn_bash_job(command);
|
|
state.dirty = true;
|
|
}
|
|
}
|