Enkaidu::SessionRenderer
Inherits Reference < Object
SessionRenderer defines the interface for rendering session output and user prompts within the Enkaidu application. These are callbacks from the app session so that we can implement different rendering systems.
Instance methods
llm_error(err, message : String | Nil = nil)
Sourcellm_image_url(url)
Sourcellm_text(text, reasoning : Bool, starting : Bool = false, ending : Bool = false)
Sourcellm_text_block(text, reasoning : Bool)
Sourcellm_tool_call(name, args)
Sourcemcp_calling_tool(uri, name, args)
Sourcemcp_calling_tool_result(uri, name, result)
Sourcemcp_error(ex)
Sourcemcp_initialized(uri)
Sourcemcp_prompt_ask_input(prompt : MCPPrompt) : Hash(String, String)
Sourcemcp_prompt_ready(prompt)
Sourcemcp_prompts_found(count)
Sourcemcp_tool_ready(function)
Sourcemcp_tools_found(count)
Sourcesession_popped(depth)
Sourcesession_pushed(depth, keep_tools, keep_prompts, keep_history)
Sourcesession_reset
Sourcesession_stack_changed(name)
Sourcesession_stack_new(name)
Sourcetime_elapsed(duration : Time::Span, label : String | Nil = nil)
Sourceuser_confirm_security_question?(description, subject : String | Array(String)) : Bool
Prompt the user with a confirmation request for security confirmation
by presenting the description followed by the subject of the question.
The renderer should further emphasize the subject when presenting the question.
@return True to confirm, false otherwise.
user_confirm_shell_command?(command)
Sourceuser_prompt_ask_input(prompt : TemplatePrompt, params : Hash | Nil = nil) : Hash(String, String)
Present prompt and ask for inputs if arguments are defined and no values are
present in params.