Installs a plugin from a marketplace, GitHub repo, URL, or local path.\n\nArgs:\n params: Plugin source and optional working directory for relative-path resolution.\n\nReturns:\n Result of installing a plugin.
(self, params: PluginsInstallRequest, *, timeout: float | None = None)
| 25237 | return PluginListResult.from_dict(await self._client.request("plugins.list", {}, **_timeout_kwargs(timeout))) |
| 25238 | |
| 25239 | async def install(self, params: PluginsInstallRequest, *, timeout: float | None = None) -> PluginInstallResult: |
| 25240 | "Installs a plugin from a marketplace, GitHub repo, URL, or local path.\n\nArgs:\n params: Plugin source and optional working directory for relative-path resolution.\n\nReturns:\n Result of installing a plugin." |
| 25241 | params_dict = {k: v for k, v in params.to_dict().items() if v is not None} |
| 25242 | return PluginInstallResult.from_dict(await self._client.request("plugins.install", params_dict, **_timeout_kwargs(timeout))) |
| 25243 | |
| 25244 | async def uninstall(self, params: PluginsUninstallRequest, *, timeout: float | None = None) -> None: |
| 25245 | "Uninstalls an installed plugin.\n\nArgs:\n params: Name (or spec) of the plugin to uninstall." |