diff --git a/AGENTS.md b/AGENTS.md index e1ba6cb..9fcb0ff 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,18 +1,25 @@ # Agent notes -This repository packages the Mainframe Cursor, Codex, and Claude Code plugins. Keep it focused on -the Cursor, Codex, and Claude Code manifests, hosted MCP wiring, the `share-video` skill, and the -stop hooks. +This repository packages the Mainframe Cursor, Codex, and Claude Code plugins and documents Hermes +setup. Keep it focused on the Cursor, Codex, and Claude Code manifests, hosted MCP wiring, the +`share-video` skill, the stop hooks, and the Hermes setup docs in `README.md`. ## Repository boundaries - User-visible copy should say "Mainframe", not legacy product names. - Do not add secrets, customer data, private URLs, or private business context. -- Cursor, Codex, and Claude Code are the supported hosts. All three plugins share the repo root, - the `share-video` skill, the `./.mcp.json` wiring, and the `hooks/core` runtime. Codex and Claude - Code share the same Stop hook contract, so they both use `hooks/core/stop-hook.ts`; only the - transcript parser differs per host. Do not add other host surfaces unless the product task - explicitly asks for them. +- Cursor, Codex, Claude Code, and Hermes are the supported hosts. Cursor, Codex, and Claude Code + share the repo root, the `share-video` skill, the `./.mcp.json` wiring, and the `hooks/core` + stop-hook runtime. Codex and Claude Code share the same Stop hook contract, so they both use + `hooks/core/stop-hook.ts`; only the transcript parser differs per host. Hermes is config-driven and + ships no generated manifest; its support lives in `README.md` — install the shared `share-video` + skill (`hermes skills install …`) and add the Mainframe MCP server to `~/.hermes/config.yaml` with + `auth: oauth` (Hermes only runs the OAuth flow for a hosted MCP server when the entry opts in; it + does not auto-negotiate from a bare URL like the marketplace hosts). Hermes ships no stop hook: no + Hermes stop event's return value can re-engage the agent (`post_llm_call`, `on_session_end`, and + friends are observers; shell hooks — the `hooks/core` analog — only act on `pre_tool_call` and a + turn-start `pre_llm_call`), so there is nothing for the `hooks/core` runtime to drive. Do not add + other host surfaces unless the product task explicitly asks for them. - Run `bun run verify` before considering changes ready. - Generated Cursor, Codex, and Claude Code manifest and marketplace files come from `tooling/generate.ts`; edit the config there, then run `bun run generate`. diff --git a/README.md b/README.md index c99e9ac..f398a68 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Mainframe plugins Mainframe is the video sharing platform for agents. This repository ships the `share-video` skill -and Mainframe plugins for Cursor, Codex, and Claude Code. +and Mainframe plugins for Cursor, Codex, Claude Code, and Hermes. ## Install @@ -47,6 +47,30 @@ claude The Claude Code plugin gives Claude the same `share-video` skill and Mainframe tools as the Cursor and Codex plugins. +### Hermes + +Hermes installs Mainframe through its skill and config flows: install the `share-video` skill, then +add the Mainframe MCP server. + +1. Install the `share-video` skill: + + ```sh + hermes skills install mainframecomputer/mainframe-plugins/skills/share-video + ``` + +2. Add the Mainframe MCP server to `~/.hermes/config.yaml`: + + ```yaml + mcp_servers: + mainframe: + url: https://mcp.mainframe.app/mcp + auth: oauth + ``` + + On first use, Hermes opens your browser (or prints an authorize URL) to authorize Mainframe. + +This gives Hermes the same `share-video` skill and Mainframe tools as the other hosts. + ## Included skill - `share-video` — share a short video that explains what the agent did, useful for demos,