From 007e80ee0f5d8892f07d88fa248e723bd2b5da8c Mon Sep 17 00:00:00 2001 From: teknium1 <127238744+teknium1@users.noreply.github.com> Date: Fri, 18 Sep 2026 23:50:38 -0700 Subject: [PATCH] Revert "docs(catalog): restore native browsing and install guidance" This reverts commit 8b551a1ab36afd1df208da0b90e0287846c80e68. --- website/docs/user-guide/desktop.md | 47 ++++--------------- .../user-guide/features/plugin-catalog.md | 40 +--------------- website/docs/user-guide/features/plugins.md | 44 ++--------------- website/docs/user-guide/features/skills.md | 46 ------------------ 4 files changed, 15 insertions(+), 162 deletions(-) diff --git a/website/docs/user-guide/desktop.md b/website/docs/user-guide/desktop.md index bd5e003c9f..077dad71ff 100644 --- a/website/docs/user-guide/desktop.md +++ b/website/docs/user-guide/desktop.md @@ -221,39 +221,13 @@ When you have two or more [profiles](./profiles.md), the config-backed settings The app also surfaces the broader Hermes management surface so you don't have to drop to a terminal: -- **Skills** — open **Capabilities → Skills** to manage [skills](./features/skills.md). **Installed** shows the selected profile's actual skills and enable/disable state. **Browse** searches the same full published catalog as the public Skills Hub, with native list and detail views. -- **Plugins** — **Capabilities → Plugins** uses the same **Installed / Browse** layout. Installed combines actual app-level desktop plugins with agent plugins from the selected profile; Browse shows the public [Plugin Catalog](./features/plugin-catalog.md). Search stays at the top, and the tab switch and actions share one row on both pages. +- **Skills** — browse, install, and manage [skills](./features/skills.md). The Skills tab lists your installed skills with enable/disable toggles, and below them the full built-in optional-skills catalog that ships with Hermes — each entry has a one-click **Install** button that flips the row into the installed list once it finishes. - **Memory graph (Star Map)** — type `/journey` (aliases `/learning`, `/memory-graph`) in chat to open an interactive constellation of learned skills and memories over time, with a playback scrubber. Nodes can be edited or deleted right from the panel (skills are archived, memories removed). See [Learning Journey](./features/memory.md#learning-journey-journey). - **Cron** — view and manage [scheduled jobs](../reference/cli-commands.md#hermes-cron). - **Profiles** — switch between [Hermes profiles](./profiles.md) (isolated config/skills/sessions). - **Messaging** — set up gateway channels. Telegram has a **Quick setup** card: click **Create with QR**, scan the code (or open the link) in Telegram, and Hermes creates the bot, detects your user ID for the allowlist, saves the credentials, and restarts the gateway for you. Any credential save, clear, or enable toggle keeps a **Restart now** banner on the page until the gateway has actually restarted; if a restart fails, the banner stays so you can retry or restart manually. - **Agents** and **Command Center** — orchestration surfaces for multi-agent work. -#### Where Browse gets its data - -These are native Desktop views, **not embedded website pages**. Desktop and -the public website consume the same generated CDN snapshots: - -| Catalog | Public docs alias | Desktop fetch URL | -|---|---|---| -| Skills | [`/docs/api/skills.json`](https://hermes-agent.nousresearch.com/docs/api/skills.json) | `https://nousresearch.github.io/hermes-agent/docs/api/skills.json` | -| Plugins | [`/docs/api/plugins.json`](https://hermes-agent.nousresearch.com/docs/api/plugins.json) | `https://nousresearch.github.io/hermes-agent/docs/api/plugins.json` | - -The skills snapshot combines `skills/`, `optional-skills/`, and the centralized -skills index. The plugin snapshot comes from `plugin-catalog/*.yaml` and cached star -counts; the same publish supplies the installer's removed-entry list. Browsing does not make live -GitHub API calls or fetch plugin/skill source repositories. **Installed** is -separate: its state comes from the selected profile's backend and the app's -desktop-plugin registry, not those public snapshots. - -The public hubs' **Install in Hermes** buttons open `hermes://skill/install` -or `hermes://plugin/install` links and require confirmation in Desktop. Use -an updated Desktop build for the skill route and plugin catalog parameters; -the cards retain copyable CLI commands if the app is missing or too old. See -[skill links](./features/skills.md#install-from-the-website) and -[plugin links](./features/plugins.md#one-click-install-links-desktop) for the -parameters and review flow. - ### Bot Mode (built in) **Bot Mode** ships with the app and is on by default: a "one chat per agent" @@ -504,8 +478,8 @@ hot-reloads every save. Manage installed plugins live in **Capabilities → Plug See [Desktop Plugin SDK](../developer-guide/desktop-plugin-sdk.md) for the full reference. (This is separate from the [web dashboard plugin system](./features/extending-the-dashboard.md).) -**Capabilities → Plugins → Installed** shows the actual installed state: -**one list entry per plugin**, with Desktop and Agent controls in its detail pane. +**Capabilities → Plugins** is the one place for everything that extends +Hermes: **one row per plugin**, with two switch columns. - A plugin can extend **this app**, **the agent**, or **both** — the badge on each row says which, inferred from what the package contains (`plugin.yaml` @@ -532,14 +506,13 @@ reference. (This is separate from the [web dashboard plugin system](./features/e [Accent Picker](https://github.com/NousResearch/hermes-desktop-accent-picker) install from their own repos via **Install from Git**. -Switch to **Browse** for the native [Plugin Catalog](./features/plugin-catalog.md). -Both Browse and **Install from Git** open the review-then-install dialog. For -an agent-plugin catalog install, the backend resolves the catalog name to its -reviewed pin; a link's `sha` is display metadata, not an override. This does -not guarantee a pinned standalone desktop-plugin install. **Install from Git** -also offers **Pin to commit** for agent-plugin installs (a full 40-character -SHA, including private repositories); pinned agent plugins show a -`pinned @ ` badge. Old `Settings → Plugins` links redirect here. +Discovery sits underneath: the live [Plugin Catalog](./features/plugin-catalog.md) +picker installs reviewed entries at their pinned commit into the selected +profile, and **Install from Git** takes any other repository through the same +review-then-install dialog; its optional **Pin to commit** field installs one +exact 40-character commit SHA (private repos included), and pinned plugins +carry a `pinned @ ` badge in the list. Old `Settings → Plugins` links +redirect here. ## Troubleshooting diff --git a/website/docs/user-guide/features/plugin-catalog.md b/website/docs/user-guide/features/plugin-catalog.md index bcf0f86571..a7ba395ff2 100644 --- a/website/docs/user-guide/features/plugin-catalog.md +++ b/website/docs/user-guide/features/plugin-catalog.md @@ -17,33 +17,13 @@ hermes plugins install Browse it visually at **[/docs/plugins](/plugins)** — entries are shelved by category (Memory, Desktop, Platforms, Web & Browser, Tools, Voice, Automation, Models), with search, tier filters (Official / Community), capability chips, and -**Install in Hermes** buttons and copyable CLI commands for every entry. - -In Desktop, open **Capabilities → Plugins → Browse** for the native catalog -view. It is not an embedded website. **Installed** is a separate tab backed -by the app's desktop-plugin registry and the selected profile's agent-plugin -state, rather than catalog metadata. Skills uses the same **Installed / Browse** -layout; search stays at the top and the tab switch and actions share one row. +copyable install commands for every entry. The catalog complements — it does not replace — the existing [plugin system](plugins.md). Anything you can install from the catalog is a normal plugin under the hood; the catalog just adds discovery and a review layer on top. -### Published browse data - -The website and Desktop read the same generated CDN snapshot: -[`https://hermes-agent.nousresearch.com/docs/api/plugins.json`](https://hermes-agent.nousresearch.com/docs/api/plugins.json). -Desktop fetches it through -`https://nousresearch.github.io/hermes-agent/docs/api/plugins.json`; the public -docs alias serves the same data. The docs build reads `plugin-catalog/*.yaml` -and adds cached repository star counts. It also publishes the installer's -removed-entry list. Neither -Browse view crawls source repositories or queries the GitHub API live. - -This browse snapshot is distinct from the installer's -[`plugin-catalog.json`](#live-refresh), which resolves catalog names and pins. - ## What's in an entry Each catalog entry is a small YAML file in the @@ -101,24 +81,6 @@ repository. Review the code of anything you give credentials to. ## Installing from the catalog -On the website, **Install in Hermes** opens a protocol link of this form: - -```text -hermes://plugin/install?repo=owner%2Frepo&catalog_name=example-plugin&sha=0123456789abcdef0123456789abcdef01234567 -``` - -`repo` is URL-encoded, including any `#subdir`. Desktop asks you to review the -source, destination and components before confirming; the link does not -auto-install. For the agent-plugin component, the backend resolves -`catalog_name` to its reviewed pin. The link's `sha` is **display metadata -only**, not authority to choose or override a commit, and it is not a pin -guarantee for a standalone desktop plugin. - -Use an updated Desktop build for the catalog parameters (and for the public -Skills Hub's new `hermes://skill/install?identifier=...` route). Older builds -may only understand repository-only plugin links. The expanded cards retain -CLI commands, so you can install by catalog name without Desktop: - ```bash # Install a reviewed catalog entry by name (checks out the pinned SHA) hermes plugins install diff --git a/website/docs/user-guide/features/plugins.md b/website/docs/user-guide/features/plugins.md index 09400508e1..9ccabad476 100644 --- a/website/docs/user-guide/features/plugins.md +++ b/website/docs/user-guide/features/plugins.md @@ -191,11 +191,10 @@ plugin; choose a new exact commit explicitly with profile-local install metadata contains no config values, environment values, secrets, or capability grants. -The same agent-plugin pin is available in Hermes Desktop: **Capabilities → -Plugins → Install from Git** has a *Pin to commit* field that takes the full -40-character SHA, and **Installed** shows a `pinned @ ` badge on pinned -agent plugins. This does not guarantee a pinned standalone desktop-plugin -install. `hermes plugins list` prints +The same pin is available in Hermes Desktop: **Skills → Plugins → Install from +Git** has a *Pin to commit* field that takes the full 40-character SHA, and the +plugins list shows a `pinned @ ` badge on every pinned install so a team +can confirm everyone is running the same commit. `hermes plugins list` prints the pin in its Source column (`git pinned@`). Pins work for private repositories too, through the same stored credentials described below. @@ -381,24 +380,6 @@ hermes plugins disable my-plugin # remove from allow-list + add to d hermes plugins capabilities [my-plugin] # declared vs granted capabilities ``` -### Installed and Browse in Desktop - -Open **Capabilities → Plugins**. **Installed** reads the app's desktop-plugin -registry and the selected profile's actual agent-plugin state, combining both -halves in one row where appropriate. It is not a list of catalog entries -assumed to be installed. **Browse** is a native catalog view, not an embedded -website; it uses the same **Installed / Browse** tabs as Skills, with search -at the top and the tab switch and actions on one row. - -Desktop and the public [Plugin Catalog](/plugins) consume the same CDN -snapshot, [`/docs/api/plugins.json`](https://hermes-agent.nousresearch.com/docs/api/plugins.json). -The public alias serves the same data as Desktop's fetch URL, -`https://nousresearch.github.io/hermes-agent/docs/api/plugins.json`. The docs -build generates it from `plugin-catalog/*.yaml` and cached star counts. The -same publish also supplies the removed-entry list used by the installer. -Browsing does not query GitHub live or fetch source repos; -the installer retrieves code only as part of the separate install flow. - ### One-click install links (Desktop) Hermes Desktop registers the `hermes://` URL scheme, so a website, README, or @@ -425,23 +406,6 @@ Plugins → Install from Git**. Legacy `hermes://plugin-agent/…` and `hermes://plugin-desktop/…` URLs route into the same dialog. In dev builds (`npm run dev`) the scheme is `hermes-dev://`. -The public [Plugin Catalog](/plugins) includes **Install in Hermes** on every -card. Catalog links carry `catalog_name`, a URL-encoded `repo` (including -`#subdir` when present), and `sha`: - -```text -hermes://plugin/install?repo=owner%2Frepo&catalog_name=example-plugin&sha=0123456789abcdef0123456789abcdef01234567 -``` - -The SHA parameter is display metadata only. For the agent-plugin install, -the backend resolves `catalog_name` to its reviewed pin when you confirm; -the link cannot override that pin. Do not treat the displayed SHA as a pin -guarantee for a standalone desktop plugin. These catalog parameters require -an updated Desktop build; older builds may only understand the repository -link. If the app is missing or too old, update Desktop or use the copyable -`hermes plugins install ` command in the expanded card to retain -catalog resolution. - Websites need no SDK — a normal anchor works: ```html diff --git a/website/docs/user-guide/features/skills.md b/website/docs/user-guide/features/skills.md index 5ebc743cd4..3f6662e530 100644 --- a/website/docs/user-guide/features/skills.md +++ b/website/docs/user-guide/features/skills.md @@ -17,52 +17,6 @@ See also: - [Bundled Skills Catalog](../../reference/skills-catalog.md) - [Official Optional Skills Catalog](../../reference/optional-skills-catalog.md) -## Browse and install in Desktop - -Open **Capabilities → Skills** and switch between **Installed** and **Browse**. -Search stays at the top; the tab switch and actions share one row. -**Installed** reads the selected profile's actual skills and enabled state; -it is not inferred from the public catalog. **Browse** is a native catalog UI, -not an embedded website or a second, smaller catalog. - -Desktop and the public [Skills Hub](/skills) read the same published CDN -snapshot: [`/docs/api/skills.json`](https://hermes-agent.nousresearch.com/docs/api/skills.json). -The public docs alias serves the same snapshot as Desktop's fetch URL, -`https://nousresearch.github.io/hermes-agent/docs/api/skills.json`. The docs -build generates it from bundled `skills/`, `optional-skills/`, and the -centralized skills index. Browsing does not crawl GitHub or query upstream -marketplaces live; installation still retrieves the selected skill through -its source's installer. - -### Install from the website - -The Skills Hub has an **Install in Hermes** button on each installable card. It opens the -installed Hermes Desktop app with a URL-encoded, source-qualified skill target: -for example, `official/...` for optional skills or `clawhub/...` for ClawHub. -Bundled skills use an explicit repository path rather than an ambiguous bare -name. When an older snapshot lacks that explicit bundled target, the website -omits its install link and native Browse disables installation rather than -resolving an ambiguous name. The next docs publish supplies those targets. -The same target is used by native Browse and the card's CLI fallback: - -```text -hermes://skill/install?identifier=official%2Fsecurity%2F1password -``` - -Hermes shows **Install “skill-name”?** with separate **Source** and **Install to** -rows. Cancel makes no changes. After confirmation, the same dialog shows -**Installing…**, then **Installed** and a completion notification. Errors stay -in the dialog so you can read them and retry. Installation uses the existing -Skills Hub pipeline, including security scanning, action logs, and installed-list -refresh. If you switch profile or connection while the confirmation is open, -reopen the link for the new destination. Changes apply to -new sessions; a link cannot bypass scanning or select a different profile. - -The public links use `hermes://`, not the development-only `hermes-dev://` -scheme. The `skill/install` route requires an updated Desktop build. If the -app is missing or the link is not recognized, update Desktop or expand the -card to copy its CLI install command instead. - ## Starting with a blank slate By default every profile is seeded with the bundled skill catalog, and each `hermes update` adds any newly bundled skills. If you want a profile with **no bundled skills** — and that stays empty across updates — you have two paths: