Reachy Mini documentation
Apps
Apps
Core App Classes
Base class for Reachy Mini applications.
run
< source >( reachy_mini: ReachyMini stop_event: Event )
Run the main logic of the app.
Stop the app gracefully.
Wrap the run method with Reachy Mini context management.
class reachy_mini.apps.manager.AppManager
< source >( wireless_version: bool = False desktop_app_daemon: bool = False daemon: typing.Optional[ForwardRef('Daemon')] = None )
Manager for Reachy Mini apps.
Clean up the AppManager, stopping any running app.
Get the current status of the app.
Install a new app by name.
Check if an app is currently running or stopping.
List available apps (parallel async).
List available apps for given source kind.
Remove an installed app by name.
Restart the current app.
Start the app as a subprocess, raises RuntimeError if an app is already running.
Stop the current app subprocess.
update_app
< source >( app_name: str logger: Logger )
Update an installed app by reinstalling it from HuggingFace.
This preserves the original source info and reinstalls to get the latest version.
App Management
Status of a running app.
class reachy_mini.apps.manager.AppStatus
< source >( info: AppInfo state: AppState error: str | None = None )
Status of an app.
class reachy_mini.apps.manager.RunningApp
< source >( process: Process monitor_task: _asyncio.Task[None] status: AppStatus )
Information about a running app.
App Information
class reachy_mini.apps.AppInfo
< source >( name: str source_kind: SourceKind description: str = '' url: str | None = None extra: typing.Dict[str, typing.Any] = <factory> )
Metadata about an app.
Kinds of app source.
App Assistant
Assistant Functions
Validate the app name.
Check if the given path is inside a git repository.
Validate the location where to create the app project.
Validate the location where to create the app project, ensuring it’s not in a git repo.
reachy_mini.apps.assistant.create_cli
< source >( console: Console app_name: str | None app_path: pathlib.Path | None )
Create a new Reachy Mini app project using a CLI.
reachy_mini.apps.assistant.create
< source >( console: Console app_name: str app_path: Path ) → Path
Create a new Reachy Mini app project with the given name at the specified path.
reachy_mini.apps.assistant.install_app_with_progress
< source >( console: Console python_executable: str app_path: Path env: dict[str, str] | None = None )
Install the app in a temporary virtual environment with a progress spinner.
reachy_mini.apps.assistant.check
< source >( console: Console app_path: str )
Check an existing Reachy Mini app project.
Request to add the new app to the official Reachy Mini app store.
Try to push changes to the remote repository.
reachy_mini.apps.assistant.publish
< source >( console: Console app_path: str commit_message: str official: bool = False no_check: bool = False private: bool | None = None )
Parameters
- console (Console) — The console object for printing messages.
- app_path (str) — Local path to the app to publish.
- commit_message (str) — Commit message for the app publish.
- official (bool) — Request to publish the app as an official Reachy Mini app.
- no_check (bool) — Don’t run checks before publishing the app.
- private (bool | None) — If True, make private. If False, make public. If None, prompt.
Publish the app to the Reachy Mini app store.
App Sources
reachy_mini.apps.sources.hf_auth.save_hf_token
< source >( token: str ) → A dict containing
Save a HuggingFace access token securely.
Validates the token against the Hugging Face API and, if valid, stores it using the standard Hugging Face authentication mechanism for reuse across sessions.
Get stored HuggingFace token.
Delete stored HuggingFace token(s).
Note: logout() without arguments logs out from all saved access tokens.
Check if a token is stored and valid.
List apps available on Hugging Face Spaces.
List all apps available on Hugging Face Spaces (including unofficial ones).
reachy_mini.apps.sources.local_common_venv.get_app_site_packages
< source >( app_name: str wireless_version: bool = False desktop_app_daemon: bool = False )
Public API to get the site-packages directory for a given app’s venv.
For separate venvs: returns the app’s venv site-packages For shared environment (SDK mode): returns the current environment’s site-packages
reachy_mini.apps.sources.local_common_venv.get_app_python
< source >( app_name: str wireless_version: bool = False desktop_app_daemon: bool = False )
Get the Python executable path for an app (cross-platform).
For separate venvs: returns the app’s venv Python For shared environment: returns the current Python interpreter
reachy_mini.apps.sources.local_common_venv.list_available_apps
< source >( wireless_version: bool = False desktop_app_daemon: bool = False )
List apps available from entry points or separate venvs.
reachy_mini.apps.sources.local_common_venv.install_package
< source >( app: AppInfo logger: Logger wireless_version: bool = False desktop_app_daemon: bool = False force_reinstall: bool = False )
Install a package given an AppInfo object, streaming logs.
reachy_mini.apps.sources.local_common_venv.get_app_module
< source >( app_name: str wireless_version: bool = False desktop_app_daemon: bool = False )
Get the module name for an app without loading it (for subprocess execution).
reachy_mini.apps.sources.local_common_venv.uninstall_package
< source >( app_name: str logger: Logger wireless_version: bool = False desktop_app_daemon: bool = False )
Uninstall a package given an app name.
App Utilities
Run a shell command and stream its output to the provided logger.