OpenHands-CLI
Lightweight OpenHands CLI in a binary executable
File Explorer
Download Latest Version (.zip)- post-release-checklist.md
- SKILL.md
- SKILL.md
- bug_template.yml
- feature_request.yml
- auto-fix-low-hanging.md
- code-quality-analysis.md
- good-first-issue-labeler.md
- good_first_issue_labeler.py
- update_pr_description.sh
- bump-agent-sdk-version.yml
- bump-version.yml
- check-package-versions.yml
- cli-build-binary-and-optionally-release.yml
- good-first-issue-labeler.yml
- lint.yml
- pypi-release.yml
- qa-changes-by-openhands.yml
- stale.yml
- tests.yml
- type-checking-report.yml
- update-install-website.yml
- update-pr-description.yml
- on_stop.sh
- hooks.json
- rthook_profile_imports.py
- __init__.py
- base_agent.py
- launcher.py
- local_agent.py
- remote_agent.py
- util.py
- event.py
- shared_event_handler.py
- token_streamer.py
- tool_state.py
- utils.py
- __init__.py
- convert.py
- mcp.py
- resources.py
- __init__.py
- confirmation.py
- main.py
- README.md
- runner.py
- slash_commands.py
- test_utils.py
- acp_parser.py
- auth_parser.py
- cloud_parser.py
- main_parser.py
- mcp_parser.py
- serve_parser.py
- util.py
- view_parser.py
- web_parser.py
- api_client.py
- device_flow.py
- http_client.py
- login_command.py
- logout_command.py
- token_storage.py
- utils.py
- command.py
- conversation.py
- cloud.py
- local.py
- display.py
- models.py
- protocols.py
- viewer.py
- mcp_commands.py
- mcp_display_utils.py
- mcp_utils.py
- __init__.py
- conversation_summary.py
- delegate_formatter.py
- rich_utils.py
- slash_commands.py
- __init__.py
- agent_store.py
- cli_settings.py
- prompt_history.py
- __init__.py
- resources.py
- splash.py
- __init__.py
- commands.py
- confirmation_flow_controller.py
- confirmation_policy_service.py
- conversation_crud_controller.py
- conversation_manager.py
- conversation_runner.py
- conversation_switch_controller.py
- events.py
- refinement_controller.py
- runner_factory.py
- runner_registry.py
- state.py
- user_message_controller.py
- __init__.py
- cli_settings_tab.py
- critic_settings_tab.py
- settings_tab.py
- choices.py
- model_recommendations.py
- settings_screen.py
- settings_screen.tcss
- utils.py
- __init__.py
- confirmation_modal.py
- confirmation_modal.tcss
- exit_modal.py
- exit_modal.tcss
- history_search.py
- switch_conversation_modal.py
- __init__.py
- confirmation_panel.py
- confirmation_panel_style.py
- history_panel_style.py
- history_side_panel.py
- mcp_panel_style.py
- mcp_side_panel.py
- plan_panel_style.py
- plan_side_panel.py
- __init__.py
- feedback.py
- refinement.py
- visualization.py
- __init__.py
- autocomplete_dropdown.py
- input_field.py
- models.py
- single_line_input.py
- __init__.py
- collapsible.py
- input_area.py
- main_display.py
- richlog_visualizer.py
- splash.py
- status_line.py
- messages.py
- serve.py
- textual_app.py
- textual_app.tcss
- __init__.py
- types.py
- __init__.py
- deprecated_utils.py
- entrypoint.py
- gui_launcher.py
- locations.py
- setup.py
- terminal_compat.py
- theme.py
- utils.py
- version_check.py
- debug_client.py
- jsonrpc_cli.py
- run_watch.py
- test_event_subscriber.py
- test_event_utils.py
- test_streaming.py
- test_token_streamer.py
- test_tool_state.py
- __init__.py
- README.md
- test_acp_advanced.py
- test_agent.py
- test_agent_common.py
- test_base_agent.py
- test_cloud_agent.py
- test_cloud_agent_auth.py
- test_confirmation.py
- test_convert.py
- test_jsonrpc_integration.py
- test_launcher.py
- test_mode_switching.py
- test_resources.py
- test_slash_commands.py
- test_util.py
- __init__.py
- test_api_client.py
- test_device_flow.py
- test_http_client.py
- test_login_command.py
- test_logout_command.py
- test_token_storage.py
- start_task_error.json
- start_task_pending.json
- start_task_ready.json
- __init__.py
- test_api_client_transport.py
- test_conversation.py
- test_subcommand.py
- test_local_store.py
- test_display.py
- test_viewer.py
- __init__.py
- test_mcp_commands.py
- test_mcp_parser.py
- test_mcp_utils.py
- test_conversation_tools_preservation.py
- test_mcp_settings_reconciliation.py
- test_skills_loading.py
- __init__.py
- test_delegate_formatter.py
- TestExitModalSnapshots.test_exit_modal_initial_state.svg
- TestMCPSidePanelSnapshots.test_mcp_panel_empty_state.svg
- TestMCPSidePanelSnapshots.test_mcp_panel_with_mixed_servers.svg
- TestMCPSidePanelSnapshots.test_mcp_panel_with_remote_servers.svg
- TestMCPSidePanelSnapshots.test_mcp_panel_with_stdio_servers.svg
- TestModelRecommendationsSnapshots.test_model_recommendations_display.svg
- TestPlanSidePanelSnapshots.test_plan_panel_all_done.svg
- TestPlanSidePanelSnapshots.test_plan_panel_empty_state.svg
- TestPlanSidePanelSnapshots.test_plan_panel_with_tasks.svg
- TestAutocompleteDropdownSnapshots.test_dropdown_filtered_commands.svg
- TestAutocompleteDropdownSnapshots.test_dropdown_hidden_by_default.svg
- TestAutocompleteDropdownSnapshots.test_dropdown_not_occluded_by_input.svg
- TestAutocompleteDropdownSnapshots.test_dropdown_visible_with_slash.svg
- TestCriticFeedbackWidgetSnapshots.test_critic_feedback_widget_display.svg
- TestCriticSettingsTabSnapshots.test_critic_settings_tab_all_disabled.svg
- TestCriticSettingsTabSnapshots.test_critic_settings_tab_default_state.svg
- TestCriticSettingsTabSnapshots.test_critic_settings_tab_invalid_threshold.svg
- TestCriticSettingsTabSnapshots.test_critic_settings_tab_refinement_enabled.svg
- TestCriticSettingsTabSnapshots.test_critic_settings_tab_toggle_refinement.svg
- TestHistorySearchSnapshots.test_history_search_modal_filtered.svg
- TestHistorySearchSnapshots.test_history_search_modal_initial.svg
- TestVisualizerSnapshots.test_finish_action_padding.svg
- TestVisualizerSnapshots.test_multiple_actions_alignment.svg
- TestVisualizerSnapshots.test_think_action_padding.svg
- TestAppInitialState.test_app_initial_state.svg
- TestAppWithTypedInput.test_app_with_typed_input.svg
- TestAutoFocusPreservesCharacter.test_auto_focus_preserves_typed_character.svg
- TestConfirmationMode.test_phase1_initial_state[confirmation_mode].svg
- TestConfirmationMode.test_phase2_confirmation_panel_auto_low_med_highlighted[confirmation_mode].svg
- TestConfirmationMode.test_phase3_auto_low_med_selected[confirmation_mode].svg
- TestConfirmationMode.test_phase4_high_risk_confirmation_panel[confirmation_mode].svg
- TestConfirmationMode.test_phase5_high_risk_action_confirmed[confirmation_mode].svg
- TestConfirmationMode.test_phase6_low_risk_auto_proceeds[confirmation_mode].svg
- TestCreatingAgentPlan.test_creating_agent_plan_conversation[creating_agent_plan].svg
- TestEchoHelloWorld.test_echo_hello_world_conversation.svg
- TestHistoryPanelFlow.test_phase1_history_panel.svg
- TestHistoryPanelFlow.test_phase2_first_conversation.svg
- TestHistoryPanelFlow.test_phase3_new_conversation.svg
- TestHistoryPanelFlow.test_phase4_second_conversation.svg
- TestHistoryPanelFlow.test_phase5_click_previous_conversation.svg
- TestHistoryPanelFlow.test_phase6_conversation_loaded.svg
- TestInitialSetupCancelThenExit.test_phase1_settings_page.svg
- TestInitialSetupCancelThenExit.test_phase2_exit_page.svg
- TestInitialSetupCancelThenExit.test_phase3_exit_confirmed.svg
- TestInitialSetupCancelThenReturn.test_phase1_settings_page.svg
- TestInitialSetupCancelThenReturn.test_phase2_exit_page.svg
- TestInitialSetupCancelThenReturn.test_phase3_returned_to_settings.svg
- TestInitialSetupCancelThenReturn.test_phase4_form_filled.svg
- TestInitialSetupCancelThenReturn.test_phase5_landing_screen.svg
- TestIterativeRefinementCaseA.test_initial_state[cli447_hi_followup_iterative_case_a].svg
- TestIterativeRefinementCaseA.test_refinement_complete[cli447_hi_followup_iterative_case_a].svg
- TestIterativeRefinementCaseB.test_initial_state[cli447_hi_followup_iterative_case_b].svg
- TestIterativeRefinementCaseB.test_refinement_complete[cli447_hi_followup_iterative_case_b].svg
- TestMultilineModeSubmit.test_phase1_initial_state.svg
- TestMultilineModeSubmit.test_phase2_multiline_mode_toggled.svg
- TestMultilineModeSubmit.test_phase3_command_typed.svg
- TestMultilineModeSubmit.test_phase4_conversation_completed.svg
- TestSelectAllFunctionality.test_phase1_initial_state.svg
- TestSelectAllFunctionality.test_phase2_large_text_typed.svg
- TestSelectAllFunctionality.test_phase3_all_text_selected.svg
- TestSelectAllFunctionality.test_phase4_text_deleted.svg
- TestSkillsCommand.test_skills_command_with_skills.svg
- __init__.py
- conftest.py
- helpers.py
- test_app_initial_state.py
- test_app_with_typed_input.py
- test_auto_focus.py
- test_confirmation_mode.py
- test_creating_agent_plan.py
- test_echo_hello_world.py
- test_history_panel.py
- test_initial_setup_flow.py
- test_iterative_refinement_case_a.py
- test_iterative_refinement_case_b.py
- test_multiline_mode_submit.py
- test_select_all.py
- test_skills_command.py
- __init__.py
- test_app_snapshots.py
- test_autocomplete_dropdown_snapshots.py
- test_critic_feedback_snapshots.py
- test_critic_settings_tab_snapshots.py
- test_history_search_snapshots.py
- test_visualizer_snapshots.py
- test_env_llm_overrides.py
- test_prompt_history.py
- test_tool_resolution.py
- event-00000-12bead78-a27c-4319-a401-d358f4b8de7d.json
- event-00001-b19b86a5-1b66-4e08-8f65-10770b4b45cc.json
- event-00002-9a788fe8-1a9d-4232-8928-88f9aa721e06.json
- event-00003-d9dd0663-92d7-4018-8657-459f2998e5e6.json
- event-00004-07a5fb62-67a1-4fed-9209-269d3d4f9ea5.json
- event-00005-84edd40e-efd3-4008-b69f-bb06eccccc11.json
- event-00006-9e199f2e-3941-47a6-b145-4e920daeda14.json
- event-00007-5fa1e1c4-c5fd-4792-8522-23180aa00e35.json
- event-00008-0de97de1-f337-4cda-ab0b-05c630bcfd0f.json
- event-00009-c8326309-3a19-4370-af3a-887fc0c1201d.json
- event-00010-f57d0825-c9be-4a30-887b-9710f5372a7a.json
- event-00011-8cd84649-5ba5-415b-8c96-372e0aaf6d18.json
- event-00012-0881f83f-b543-43f3-9baa-4c9e190a1167.json
- event-00013-38cc901e-6e45-417c-ba54-e5633e2ba338.json
- event-00000-97aff6ee-348d-4b6e-82d6-e357e41fe692.json
- event-00001-491afe8b-46f8-4e13-9125-d5aa2ae47cf8.json
- event-00002-f0d5d9a0-edf7-4e82-a1fb-cc075147c4c1.json
- event-00003-d9ec6041-1764-4ecd-b2f1-aa4bcd177712.json
- event-00004-b5052a31-6bc8-4d0b-97dc-d58867cba1bc.json
- event-00000-06e06079-f1ce-41af-b119-961407f8502d.json
- event-00001-2ba3c14f-05c3-4d7f-b7a7-7a03a38702ac.json
- event-00002-42d4bb92-9e22-42a0-8499-1c250e1d7040.json
- event-00003-abf5b534-5c6f-4aa4-b01a-614602dead85.json
- event-00004-9f7dc9c6-8e3d-4f42-813d-b91a7e332ca0.json
- event-00005-8b636ad5-6dd7-4cf1-b707-3c548507bb30.json
- event-00006-e5e86d80-8247-479a-bf70-b8cc6a8b63e4.json
- event-00007-1090b35e-f09e-4221-879e-631f00f4ddb3.json
- event-00008-e4300a04-f0fb-4831-a9cf-fca53234b980.json
- event-00009-7d8eb804-218b-4c65-9fd5-acfe6fee4a19.json
- event-00010-fbb0c861-c673-4316-be8d-db1f5cf53539.json
- event-00011-b2d5d291-edca-4ef0-91ca-d2cd035bb05f.json
- event-00012-7e4eb1a3-a78f-4c03-8db7-a5f6d0baa4a7.json
- event-00000-4a85ce69-8df5-42b0-9987-a782f294f782.json
- event-00001-9fd0dd1f-b618-4a36-b5e8-0ef604038b11.json
- event-00002-fb26ede5-3d72-4ae1-9c59-027dea71f3df.json
- event-00003-dbe6e9d6-8f95-4b10-8e65-8631be296941.json
- event-00004-3a7e40e2-b4a5-406b-a346-7468cf8b0d82.json
- event-00005-02ca23f7-9843-4435-8891-ebf19fc7ff3d.json
- event-00006-d0c14df2-84c8-4ac8-b0f9-0a74bf93d440.json
- event-00000-65867a0d-6fc0-421d-bafc-7474d174aef8.json
- event-00001-0df665dd-b023-4473-9c48-80d35edbb4f5.json
- event-00002-3097395b-9d0e-40ea-9721-318280129892.json
- event-00003-275d84b1-3d58-49ce-b33e-50ec81dd847e.json
- event-00004-92787e69-7d71-4ad6-8c0f-67fe1b03e1b4.json
- __init__.py
- test_refinement_controller.py
- test_choices.py
- test_cli_settings.py
- test_cli_settings_tab.py
- test_critic_settings_tab.py
- test_settings_screen.py
- test_settings_tab.py
- test_settings_utils.py
- test_timeout_preservation.py
- __init__.py
- test_exit_modal.py
- __init__.py
- test_confirmation_panel.py
- test_history_side_panel_signals.py
- test_mcp_side_panel.py
- test_plan_side_panel.py
- __init__.py
- test_feedback.py
- test_refinement.py
- __init__.py
- test_autocomplete_dropdown.py
- test_collapsible.py
- test_input_field.py
- test_richlog_visualizer.py
- test_single_line_input.py
- test_status_line.py
- __init__.py
- test_auto_copy.py
- test_autocomplete_shutdown_crash.py
- test_commands.py
- test_conversation_manager.py
- test_headless_mode.py
- test_history_search.py
- test_hybrid_history_navigation.py
- test_loaded_resources.py
- test_splash.py
- test_textual_app.py
- test_theme.py
- __init__.py
- conftest.py
- test_agent_context_os_info.py
- test_cli_help.py
- test_directory_separation.py
- test_good_first_issue_labeler.py
- test_gui_launcher.py
- test_main.py
- test_terminal_compat.py
- test_utils.py
- test_version_check.py
- test_web_command.py
- __init__.py
- mock_critic.py
- mock_llm_server.py
- models.py
- README.md
- runner.py
- test_acp.py
- test_experimental_ui.py
- test_version.py
- trajectory.py
- utils.py
- .gitignore
- .pre-commit-config.yaml
- AGENTS.md
- build.py
- build.sh
- conftest.py
- CONTRIBUTING.md
- LICENSE
- Makefile
- openhands-cli.spec
- pyproject.toml
- README.md
- RELEASE_PROCEDURE.md
- uv.lock
// repository documentation
Was this content helpful?
(0 ratings)
