The frontend communicates with the Rust backend exclusively through Tauri IPC commands using invoke(). All commands are registered in src-tauri/src/lib.rs inside tauri::generate_handler!.
Commands for spawning, managing, and interacting with AI agent sessions.
| Command | Description |
|---|
create_agent_session | Spawn a new agent process for a given provider/model/working directory |
send_agent_message | Send a prompt message to a running agent session |
send_bash_command | Send a raw bash command to a running agent session |
kill_agent_session | Terminate an agent session by session ID |
fork_agent_session | Fork an existing session into a new branch |
get_active_sessions | Return all currently running sessions |
check_session_process | Check whether a session’s backing process is still alive |
kill_external_session | Kill an externally-started session (by PID) |
kill_process_by_pid | Kill an arbitrary process by PID |
get_git_branch | Get the current git branch for a working directory |
resolve_permission | Resolve a pending tool-use permission request |
Commands for scanning the filesystem and cache for sessions and projects.
| Command | Description |
|---|
discover_projects | Full scan: return all projects from the session cache |
discover_projects_paginated | Paginated scan for the dashboard |
discover_recent_sessions | Return recently active sessions |
get_cached_recent_sessions | Return recently active sessions from in-memory cache (fast) |
refresh_sessions | Trigger a full incremental session cache sync |
refresh_single_session | Re-index a single session by path |
invalidate_project_cache | Mark the project cache stale so the next read re-scans |
discover_sessions | List all sessions for a given project path |
get_current_session | Return the currently active session for a given process |
discover_repos | Detect git repositories under a given root directory |
read_stats_cache | Read cost/token stats for a project |
read_memory_files | Read memory (CLAUDE.md) files for a project |
write_memory_file | Write a memory file for a project |
discover_observations | List AI observation files for a project |
read_observation | Read the content of an observation file |
read_session_tasks | Read the task list embedded in a session transcript |
rename_claude_session | Rename a session (sets title in the session cache) |
pid_cwd | Look up the working directory for a given PID |
watch_sessions | Subscribe to filesystem events for a project directory |
unwatch_sessions | Remove a filesystem watch subscription |
Commands for reading session transcripts.
| Command | Description |
|---|
read_session_transcript | Read the full transcript for a session |
read_transcript_incremental | Read new events appended since a given offset |
read_transcript_tail | Read the last N events from a transcript |
read_transcript_range | Read events in a line-number range |
read_history_incremental | Read historical events from a finalized session |
search_sessions | Full-text search across all session transcripts |
read_gemini_transcript | Read a Gemini session transcript |
read_codex_transcript | Read a Codex session transcript |
| Command | Description |
|---|
load_settings | Load settings from settings.json on disk |
save_settings | Persist current settings to settings.json |
| Command | Description |
|---|
detect_installed_llm_clis | Detect all installed LLM CLI tools (claude, gemini, codex) |
detect_installed_providers | Detect which providers are installed and ready |
get_provider_models | List available models for a provider |
get_provider_capabilities | Get capability flags for a provider |
get_provider_metadata | Get metadata (name, icon) for a provider |
get_provider_session_paths | Get the session storage directories for a provider |
check_provider_readiness | Full readiness check (binary, auth, hooks) |
detect_binary_path | Resolve the binary path for a given provider |
clear_binary_cache | Clear the resolved-binary-path cache for a provider |
ask_side_question | Make a lightweight LLM call for internal use (e.g. title generation) |
detect_cli_agents | Return list of installed CLI agent IDs |
get_default_effort | Get the default Claude effort level from config |
| Command | Description |
|---|
activate_provider | Enable a provider and inject hooks |
deactivate_provider | Disable a provider |
purge_provider_data | Remove all data associated with a provider |
remove_provider_hooks | Remove hook configuration for a provider |
get_active_providers | Return currently enabled provider IDs |
check_new_providers | Detect providers that have been installed since last check |
| Command | Description |
|---|
get_provider_accounts | List all configured provider accounts |
upsert_provider_account | Create or update a provider account |
delete_provider_account | Remove a provider account |
set_workspace_provider_account | Associate an account with a workspace |
get_resolved_config_dir | Resolve the config directory for a provider account |
check_provider_auth_status | Check whether a provider account is authenticated |
provider_auth_login | Trigger the CLI authentication flow for a provider |
| Command | Description |
|---|
get_provider_permissions | Read tool permissions for a provider |
save_provider_permissions | Write tool permissions for a provider |
apply_provider_preset | Apply a permission preset (e.g. acceptEdits, bypassPermissions) |
reset_provider_permissions | Reset permissions to defaults |
| Command | Description |
|---|
configure_hooks | Inject Magia hook configuration into Claude Code settings |
unconfigure_hooks | Remove Magia hook configuration |
check_hooks_configured | Return whether hooks are configured |
check_hooks_outdated | Return whether hooks need updating |
configure_statusline | Configure the status-line hook |
unconfigure_statusline | Remove the status-line hook |
get_live_sessions | Return map of all currently running sessions |
| Command | Description |
|---|
create_pty | Spawn a new pseudo-terminal process |
write_pty | Write data to a PTY (keyboard input) |
resize_pty | Resize a PTY to a new column/row count |
kill_pty | Terminate a PTY process |
get_default_shell | Return the user’s default shell path |
| Command | Description |
|---|
list_directory | List directory contents |
open_file | Open a file via the OS default handler |
read_file_content | Read a file’s text content |
write_file | Write content to a file |
rename_file | Rename or move a file |
delete_file | Delete a file |
create_directory | Create a directory (including parents) |
delete_directory | Recursively delete a directory |
reveal_in_finder | Reveal a path in Finder (macOS) / file manager |
pick_directory | Show an OS directory-picker dialog |
open_in_editor | Open a file in the configured external editor |
detect_installed_editors | Detect which external editors are installed |
| Command | Description |
|---|
search_in_files | Ripgrep-powered content search across a directory |
replace_in_files | Multi-file find-and-replace |
| Command | Description |
|---|
git_status | Get git status for a repository |
git_file_diff | Get the diff for a specific file |
git_blame_line | Get git blame for a specific line |
git_file_status | Get the status of a specific file |
git_remote_url | Get the remote URL for a repository |
git_worktree_root | Get the root of the current git worktree |
git_create_snapshot | Create a snapshot commit (for session history) |
git_create_worktree | Create a new git worktree |
git_remove_worktree | Remove a git worktree |
git_list_worktrees | List all git worktrees for a repository |
git_show_file | Show file content at a specific git commit |
| Command | Description |
|---|
lsp_start | Start an LSP server for a language/workspace |
lsp_stop | Stop a running LSP server |
lsp_hover | Request hover information at a position |
lsp_definition | Go to definition for a symbol |
lsp_completion | Request code completions at a position |
lsp_status | Get the running status of an LSP server |
| Command | Description |
|---|
transcribe_audio | Transcribe an audio buffer using Whisper or Parakeet |
get_stt_engine_info | Return info about the active STT engine and loaded model |
| Command | Description |
|---|
list_available_models | List downloadable Whisper model variants |
get_installed_models | List locally installed Whisper models |
download_whisper_model | Download a Whisper model to the cache |
get_download_progress | Poll download progress for a model |
delete_whisper_model | Delete a locally installed Whisper model |
download_parakeet_model | Download the Parakeet STT model |
delete_parakeet_model | Delete the locally installed Parakeet model |
get_parakeet_model_status | Check whether the Parakeet model is downloaded |
| Command | Description |
|---|
aggregate_project_costs | Aggregate token cost data for a project |
get_session_jsonl_metrics | Read token/cost metrics from a session JSONL file |
get_batch_session_metrics | Read metrics for multiple sessions at once |
estimate_session_cost | Estimate cost for a session given a model |
get_session_metrics | Get OTel-collected metrics for a session |
get_otel_status | Return the OTel collector status and port |
get_session_db_metrics | Read persisted metrics from SQLite |
| Command | Description |
|---|
configure_otel_global | Inject OTel env vars into all Claude Code accounts |
unconfigure_otel_global | Remove OTel env vars from all Claude Code accounts |
configure_otel | Inject OTel env vars for a specific account config dir |
unconfigure_otel | Remove OTel env vars for a specific account config dir |
check_otel_configured | Check whether OTel env vars are set for an account |
| Command | Description |
|---|
get_dashboard_stats | Return overview stats for the dashboard |
get_analytics_data | Return time-series analytics data |
get_provider_usage_windows | Return rolling usage windows by provider |
get_project_stats | Return stats for a specific project |
get_all_dashboard_data | Return all dashboard data in one call |
get_cached_dashboard_data | Return cached dashboard data (avoids re-compute) |
refresh_dashboard_data | Invalidate and re-compute dashboard data |
| Command | Description |
|---|
upsert_session | Insert or update a session in the cache |
load_and_check_sessions | Load sessions and verify process liveness |
load_all_sessions | Return all sessions from the cache |
remove_session | Remove a session from the cache |
set_session_view | Update the view state for a session |
batch_upsert_sessions | Bulk insert/update sessions |
pin_session | Pin a session to the top of the list |
unpin_session | Unpin a session |
| Command | Description |
|---|
get_projects | Return all projects from SQLite |
save_project | Insert or update a project in SQLite |
delete_project | Delete a project from SQLite |
get_all_project_metrics | Return metrics for all projects |
get_dashboard_daily_metrics | Return daily aggregated metrics |
get_project_daily_metrics | Return daily metrics for a specific project |
| Command | Description |
|---|
get_workspaces | Return all configured workspaces |
save_workspace | Create or update a workspace |
delete_workspace | Delete a workspace |
merge_workspace_paths | Merge additional paths into an existing workspace |
find_workspace_for_path | Find the workspace that contains a given path |
auto_create_workspace | Automatically create a workspace from a directory |
resolve_workspace_for_session | Resolve the workspace for a specific session |
resolve_workspaces_batch | Resolve workspaces for multiple sessions at once |
detect_git_repos | Detect git repos under a set of workspace paths |
resolve_git_common_dirs | Resolve the git common dir for a list of paths |
| Command | Description |
|---|
list_mcp_servers | List configured MCP servers for a provider account |
add_mcp_server | Add an MCP server to a provider account |
remove_mcp_server | Remove an MCP server |
update_mcp_server | Update MCP server configuration |
add_global_mcp_server | Add a global MCP server (all accounts) |
remove_global_mcp_server | Remove a global MCP server |
update_global_mcp_server | Update a global MCP server |
list_skills | List available slash-command skills |
get_skill_content | Read the content of a skill file |
add_skill | Create a new skill |
update_skill | Update a skill |
delete_skill | Delete a skill |
list_hooks | List configured hooks |
add_hook | Add a hook |
remove_hook | Remove a hook |
update_hook | Update a hook |
list_agents | List available sub-agent definitions |
get_agent_content | Read a sub-agent definition file |
add_agent | Create a sub-agent definition |
update_agent | Update a sub-agent definition |
delete_agent | Delete a sub-agent definition |
| Command | Description |
|---|
list_marketplaces | List configured plugin marketplaces |
browse_marketplace | Browse plugins from a marketplace |
list_installed_plugins | List locally installed plugins |
get_plugin_details | Get details for a specific plugin |
add_marketplace | Add a new marketplace source |
remove_marketplace | Remove a marketplace source |
install_plugin | Install a plugin from a marketplace |
uninstall_plugin | Uninstall a plugin |
enable_plugin | Enable an installed plugin |
disable_plugin | Disable a plugin |
update_plugin | Update a plugin to a newer version |
| Command | Description |
|---|
read_claude_md | Read a CLAUDE.md instruction file |
write_claude_md | Write a CLAUDE.md instruction file |
list_claude_md_files | List all CLAUDE.md files in scope |
| Command | Description |
|---|
read_claude_settings | Read ~/.claude/settings.json |
update_claude_settings | Update fields in ~/.claude/settings.json |
read_gemini_settings | Read Gemini configuration |
inject_gemini_hooks | Configure Magia hooks in Gemini settings |
detect_gemini_hooks_configured | Check whether Gemini hooks are set up |
remove_gemini_hooks_command | Remove Magia hooks from Gemini settings |
read_codex_config | Read Codex configuration |
get_claude_usage | Read Claude account usage data |
get_claude_profile | Read Claude account profile |
list_claude_ai_mcps | List MCP servers configured in Claude.ai |
| Command | Description |
|---|
get_observation_stats | Return stats about observations for a project |
cleanup_old_observations | Remove observations older than retention policy |
get_default_observation_prompt | Return the default system prompt used for observations |
get_default_reflection_prompt | Return the default system prompt used for reflections |
| Command | Description |
|---|
get_memory_calls | Return log of memory tool calls |
clear_memory_calls | Clear the memory audit log |
| Command | Description |
|---|
load_external_themes | Load user-installed themes from ~/.magia/themes/ |
get_themes_dir | Return the path to the themes directory |
| Command | Description |
|---|
load_keybindings | Load custom keybinding overrides from disk |
save_keybindings | Persist keybinding overrides to disk |
| Command | Description |
|---|
is_tray_available | Return whether the system tray is available |
get_tray_theme | Return the current tray icon theme |
notify_tray_theme | Push a theme update to the tray icon |
focus_main_window | Bring the main window to the foreground |
toggle_tray_panel | Show or hide the tray panel |
hide_tray_panel | Hide the tray panel |
set_tray_panel_height | Set the height of the tray panel |
get_tray_usage | Return current token usage for tray display |
get_tray_sessions | Return session list for tray display |
get_tray_memory_activity | Return recent memory activity for tray display |
get_tray_sync_status | Return last sync time and status |
force_tray_sync | Force a tray data refresh |
| Command | Description |
|---|
ide_diff_response | Send a diff-accept/reject response to the IDE server |
ide_resolve_request | Resolve an IDE file-content request |
ide_push_selection | Push the current editor selection to the agent |
ide_add_workspace_folder | Add a folder to the IDE workspace |
ide_get_port | Return the IDE WebSocket server port |
ide_get_status | Return the IDE server connection status |
| Command | Description |
|---|
send_session_notification | Show a native OS notification tied to a session |
| Command | Description |
|---|
store_auth_token | Persist a cloud auth token in the OS keychain |
get_auth_token | Retrieve the stored cloud auth token |
clear_auth_token | Remove the cloud auth token from the keychain |
get_current_user | Return the authenticated cloud user profile |
validate_license | Validate the active license with the cloud API |
api_get | Authenticated GET to the Magia API |
api_get_public | Unauthenticated GET to the Magia API |
api_request | Authenticated request (any method) to the Magia API |
get_api_url | Return the compile-time API base URL |
get_cloud_url | Return the compile-time cloud web UI URL |
is_cloud_build | Return whether this build has cloud features enabled |
| Command | Description |
|---|
resolve_home_dir | Return the user’s home directory path |
get_default_shell | Return the user’s default shell |
get_dashboard_daily_metrics | (also under Database) |
get_resource_usage | Return current CPU/memory usage |
get_system_fonts | Return a list of system-installed font families |
get_changelog | Return the parsed changelog entries |
get_third_party_licenses | Return bundled third-party license text |
get_claude_status | Return the Claude API status page summary |
find_symbol_definition | Find source symbol definition via LSP or ctags |
get_autostart_enabled | Return whether launch-at-login is enabled |
set_autostart_enabled | Enable or disable launch-at-login |
is_first_launch | Return whether settings.json is absent (fresh install) |
start_background_sync | Start all background services after onboarding |
| Command | Description |
|---|
factory_reset | Delete all app data, unconfigure hooks, restart to onboarding |
reset_cache | Delete sessions-cache.json |
reset_notification_settings | Reset notification settings to defaults |
launch_react_devtools | Spawn npx react-devtools (developer mode only) |
kill_react_devtools | Terminate React DevTools |
check_react_devtools | Return whether React DevTools is running |
check_cli_installed | Check whether the magia CLI is installed in $PATH |
install_cli | Install the magia CLI symlink |
uninstall_cli | Remove the magia CLI symlink |
| Command | Description |
|---|
get_project_profiles | Return all project profiles (legacy) |
save_project_profile | Save a project profile |
delete_project_profile | Delete a project profile |