feat(plugin): Add installed plugins management utilities#2031
Draft
feat(plugin): Add installed plugins management utilities#2031
Conversation
Add support for managing plugins installed in ~/.openhands/skills/installed/: - install_plugin(): Install plugins from GitHub repos, git URLs, or local paths - uninstall_plugin(): Remove installed plugins by name - list_installed_plugins(): List all installed plugins with metadata - load_installed_plugins(): Load all installed plugins as Plugin objects - get_installed_plugin(): Get info about a specific installed plugin - update_plugin(): Update an installed plugin to the latest version This follows the Claude Code plugin pattern where plugins can be installed from various sources and managed in a user-specific directory. Includes comprehensive tests for all functionality. Co-authored-by: openhands <openhands@all-hands.dev>
Contributor
xingyaoww
pushed a commit
to OpenHands/OpenHands-CLI
that referenced
this pull request
Feb 13, 2026
Add support for managing plugins installed in ~/.openhands/skills/installed/: TUI Command: - /plugin - Shows installed plugins and usage instructions CLI Subcommand: - openhands plugin list [--json] - List installed plugins - openhands plugin install <source> [--ref] [--repo-path] [--force] - Install plugin - openhands plugin uninstall <name> - Uninstall plugin - openhands plugin update <name> - Update plugin to latest version Supported sources: - github:owner/repo - GitHub repository shorthand - https://github.com/owner/repo - Full git URL - /local/path - Local directory path This uses the new installed plugins management utilities from SDK PR #2031: OpenHands/software-agent-sdk#2031 Closes #405 Co-authored-by: openhands <openhands@all-hands.dev>
|
Looks like there are a few issues preventing this PR from being merged!
If you'd like me to help, just leave a comment, like Feel free to include any additional details that might help me get this PR into a better state. You can manage your notification settings |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds utilities for managing plugins installed in the user's home directory (
~/.openhands/skills/installed/), similar to how Claude Code manages plugins in~/.claude/plugins/.New Functions
install_plugin(source, ref, repo_path, installed_dir, force): Install plugins from GitHub repos (github:owner/repo), git URLs, or local pathsuninstall_plugin(name, installed_dir): Remove installed plugins by namelist_installed_plugins(installed_dir): List all installed plugins with metadataload_installed_plugins(installed_dir): Load all installed plugins as Plugin objectsget_installed_plugin(name, installed_dir): Get info about a specific installed pluginupdate_plugin(name, installed_dir): Update an installed plugin to the latest versionNew Models
InstalledPluginInfo: Tracks metadata about a plugin installation (name, version, source, resolved_ref, install_path, installed_at)InstalledPluginsMetadata: Metadata file for tracking all installed pluginsUsage Example
This is part of the effort to support
/plugin install {github_repo}command in OpenHands CLI (see OpenHands/OpenHands-CLI#405).Checklist
@xingyaoww can click here to continue refining the PR
Agent Server images for this PR
• GHCR package: https://github.com/OpenHands/agent-sdk/pkgs/container/agent-server
Variants & Base Images
eclipse-temurin:17-jdknikolaik/python-nodejs:python3.12-nodejs22golang:1.21-bookwormPull (multi-arch manifest)
# Each variant is a multi-arch manifest supporting both amd64 and arm64 docker pull ghcr.io/openhands/agent-server:722065a-pythonRun
All tags pushed for this build
About Multi-Architecture Support
722065a-python) is a multi-arch manifest supporting both amd64 and arm64722065a-python-amd64) are also available if needed