Private
Public Access
0
0

docs(command_palette): fix command count (11->33) and expand table with actual source-derived actions

This commit is contained in:
2026-06-10 23:22:06 -04:00
parent 28172135f2
commit 81e8824170
+40 -12
View File
@@ -193,21 +193,49 @@ Query: `"fld"` against titles:
## Built-in Commands ## Built-in Commands
The 11 commands currently shipped in `src/commands.py`: The 33 commands currently shipped in `src/commands.py` (the source file is the source of truth; this table is regenerated from `@registry.register` decorators and the leading docstring of each function):
| ID | Title | Category | Action | | ID | Title | Category | Action |
|---|---|---|---| |---|---|---|---|
| `reset_session` | Reset Session | AI | Calls `ai_client.reset_session()` and the App's reset handler | | `reset_session` | Reset Session | AI | Calls `ai_client.reset_session()` + clears comms/tool logs + `app._handle_reset_session()` |
| `clear_discussion` | Clear Discussion | AI | Empties `app.discussion_history` | | `clear_discussion` | Clear Discussion | AI | Empties `app.discussion_history` |
| `toggle_diagnostics` | Toggle Diagnostics | View | Toggles `app.show_diagnostics` | | `add_all_files_to_context` | Add All Files To Context | AI | Calls `app._add_all_files_to_context()` |
| `add_all_files_to_context` | Add All Files To Context | AI | Calls `app._add_all_files_to_context()` | | `generate_md_only` | Generate MD Only | AI | Runs `_do_generate()` and stores `app.last_md` / `app.last_md_path` (no chat send) |
| `open_project` | Open Project | Project | Calls `app._show_project_picker()` | | `open_project` | Open Project | Project | Calls `app._show_project_picker()` |
| `save_project` | Save Project | Project | Calls `app._save_project_state()` | | `save_project` | Save Project | Project | Calls `app._save_project_state()` |
| `trigger_hot_reload` | Hot Reload | Tools | Calls `HotReloader.reload("src.gui_2", app)` | | `save_all` | Save All | Project | Flushes project + config + calls `app.save_config()` |
| `show_documentation` | Show Documentation | Help | Opens the project URL in the browser | | `toggle_text_viewer` | Toggle Text Viewer | View | `_toggle_window(app, "Text Viewer")` |
| `switch_to_dark_theme` | Switch To Dark Theme | View | `theme_2.apply("10x Dark")` | | `toggle_diagnostics` | Toggle Diagnostics | View | `_toggle_window(app, "Diagnostics")` |
| `switch_to_light_theme` | Switch To Light Theme | View | `theme_2.apply("ImGui Light")` | | `toggle_usage_analytics` | Toggle Usage Analytics | View | `_toggle_window(app, "Usage Analytics")` |
| `switch_to_nerv_theme` | Switch To Nerv Theme | View | `theme_2.apply("NERV")` | | `toggle_context_preview` | Toggle Context Preview | View | `_toggle_window(app, "Context Preview")` |
| `toggle_tier1_strategy` | Toggle Tier 1 Strategy | View | `_toggle_window(app, "Tier 1: Strategy")` |
| `toggle_tier2_tech_lead` | Toggle Tier 2 Tech Lead | View | `_toggle_window(app, "Tier 2: Tech Lead")` |
| `toggle_tier3_workers` | Toggle Tier 3 Workers | View | `_toggle_window(app, "Tier 3: Workers")` |
| `toggle_tier4_qa` | Toggle Tier 4 QA | View | `_toggle_window(app, "Tier 4: QA")` |
| `toggle_external_tools` | Toggle External Tools | View | `_toggle_window(app, "External Tools")` |
| `toggle_shader_editor` | Toggle Shader Editor | View | `_toggle_window(app, "Shader Editor")` |
| `toggle_undo_redo_history` | Toggle Undo/Redo History | View | `_toggle_window(app, "Undo/Redo History")` |
| `toggle_command_palette` | Toggle Command Palette | View | `_toggle_attr(app, "show_command_palette")` |
| `show_all_panels` | Show All Panels | View | Sets every key of `app.show_windows` to `True` |
| `hide_all_panels` | Hide All Panels | View | Sets every key of `app.show_windows` to `False` |
| `reset_layout` | Reset Layout | View | Forces all `show_windows` to `True` and deletes `manualslop_layout.ini` (and the test-artifact copy) so hello_imgui regenerates the dock layout on the next process startup |
| `save_workspace_profile` | Save Workspace Profile | Layout | Opens the save-profile modal |
| `show_workspace_manager` | Show Workspace Manager | Layout | Sets `app.show_windows["Workspace Manager"] = True` |
| `trigger_hot_reload` | Hot Reload | Tools | Calls `HotReloader.reload("src.gui_2", app)` |
| `undo` | Undo | Edit | Calls `app._handle_undo()` |
| `redo` | Redo | Edit | Calls `app._handle_redo()` |
| `switch_to_dark_theme` | Switch To Dark Theme | Theme | `theme_2.apply("10x Dark")` |
| `switch_to_light_theme` | Switch To Light Theme | Theme | `theme_2.apply("ImGui Light")` |
| `switch_to_nerv_theme` | Switch To NERV Theme | Theme | `theme_2.apply("NERV")` |
| `cycle_theme` | Cycle Theme | Theme | Cycles through `["10x Dark", "ImGui Light", "NERV"]` based on `theme_2.get_current_palette()` |
| `show_documentation` | Show Documentation | Help | Opens `https://git.cozyair.dev/ed/manual_slop/` in the default browser |
| `show_command_palette_help` | Show Command Palette Help | Help | Loads `docs/Readme.md` into `app.readme_text` and opens the Text Viewer |
Notes:
- All command bodies are wrapped in defensive `hasattr` / `try/except` so a missing App attribute or a buggy action never breaks the modal's end_child/end pairing (which would surface as the `IM_ASSERT: Must call EndChild() and not End()!` crash).
- The `cycle_theme` order is hard-coded; a new theme added to `themes/*.toml` will not appear in the cycle without an edit to `cycle_theme`.
- The `_toggle_window(app, "<window name>")` calls are case-sensitive against the keys of `app.show_windows` (the per-window visibility dict on the App).
- The category column is editorial — the registry stores no category; the title is what's actually searched in the palette.
### Defensive Action Calls ### Defensive Action Calls