Class: Rubino::Commands::Handlers::Status
- Inherits:
-
Object
- Object
- Rubino::Commands::Handlers::Status
- Defined in:
- lib/rubino/commands/handlers/status.rb
Overview
The โ/status` at-a-glance state panel, extracted from Commands::Executor (batch B). Assembles the model/mode/session lines plus approval policy, provider/connection, and the tool/mcp/memory/skills rosters over the same services (Modes, Session::Repository, Memory backend, BackgroundTasks, Skills::Registry). A plain collaborator given the live `ui`/`runner`.
Instance Method Summary collapse
-
#initialize(ui:, runner:) ⇒ Status
constructor
A new instance of Status.
-
#show_status ⇒ Object
Labels dim, values plain, cyan only on the actionable pointers (P8).
Constructor Details
#initialize(ui:, runner:) ⇒ Status
Returns a new instance of Status.
12 13 14 15 |
# File 'lib/rubino/commands/handlers/status.rb', line 12 def initialize(ui:, runner:) @ui = ui @runner = runner end |
Instance Method Details
#show_status ⇒ Object
Labels dim, values plain, cyan only on the actionable pointers (P8).
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/rubino/commands/handlers/status.rb', line 18 def show_status @ui.separator @ui.panel_line("model", status_model) @ui.panel_line("provider", status_provider_line) @ui.panel_line("mode", "#{Rubino::Modes.current} โ #{Rubino::Modes.description}") @ui.panel_line("display", status_display_line, pointer: "(use /reasoning ยท /think)") @ui.panel_line("approvals", status_approvals_line) @ui.panel_line("session", status_session_line) @ui.panel_line("tools", status_tools_line) # MCP only when servers are configured (#182/#186) โ a non-MCP user's # /status stays exactly as before, and MCP tools stop being invisibly # mixed into the truncated tools line as the only trace of MCP. @ui.panel_line("mcp", status_mcp_line, pointer: "(use /mcp)") if Rubino::MCP.enabled? if (dirs = status_dirs_line) @ui.panel_line("dirs", dirs, pointer: "(use /dirs)") end @ui.panel_line("memory", status_memory_line, pointer: "(use /memory)") @ui.panel_line("skills", status_skills_line, pointer: "(use /skills)") @ui.panel_line("background", status_background_line, pointer: "(use /agents)") if (jobs = status_jobs_line) @ui.panel_line("jobs", jobs, pointer: "(use /jobs)") end @ui.separator end |