This commit is contained in:
Rai (Michael Pokorny)
2025-06-24 20:40:10 -07:00
parent 1fb774909d
commit 2a015a2464
3 changed files with 16 additions and 0 deletions

View File

@@ -25,6 +25,13 @@ This file documents the changes introduced on the `agentydragon` branch
- Pressing `Esc` in feedback-entry mode now cancels feedback entry and returns to the select menu, preserving the partially entered feedback text.
- Added a unit test for the ESC cancellation behavior in `tui/src/user_approval_widget.rs`.
## codex-rs/tui: restore inline mount DSL and slash-command dispatch
- Reintroduced logic in `ChatComposer` to dispatch `AppEvent::InlineMountAdd` and `AppEvent::InlineMountRemove` when `/mount-add` or `/mount-remove` is entered with inline arguments.
- Restored dispatch of `AppEvent::DispatchCommand` for slash commands selected via the command popup, including proper cleanup of the composer input.
## codex-rs/tui: slash-command `/edit-prompt` opens external editor
- Fixed slash-command `/edit-prompt` to invoke the configured external editor for prompt drafting (in addition to Ctrl+E).
## Documentation tasks
Tasks live under `agentydragon/tasks/` as individual Markdown files. Please update each tasks **Status** and **Implementation** sections in place rather than maintaining a static list here.

View File

@@ -0,0 +1,3 @@
Read the full diff between HEAD and main and produce a list of everything that was added/removed.
Include examples of how to use the features, how to configure them, etc.
Use Markdown format. Write into $(git rev-parse --show-toplevel)/agentydragon/CHANGES.md. Delete it if it already exists.

View File

@@ -143,6 +143,12 @@ impl ChatComposer<'_> {
let mut parts = stripped.splitn(2, char::is_whitespace);
let _cmd_token = parts.next().unwrap_or("");
let args = parts.next().unwrap_or("").trim_start();
// Launch external editor for prompt drafting when slash command is /edit-prompt
if *cmd == SlashCommand::EditPrompt {
self.open_external_editor();
self.command_popup = None;
return (InputResult::None, true);
}
if !args.is_empty() && (*cmd == SlashCommand::MountAdd || *cmd == SlashCommand::MountRemove) {
let ev = if *cmd == SlashCommand::MountAdd {
AppEvent::InlineMountAdd(args.to_string())