Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Claude Code plugin

The recommended way to use ohara from Claude Code is the official plugin. It registers the ohara-mcp server, ships two skills that teach the model when to reach for lineage queries, and auto-downloads the binary on first use.

For other MCP clients (Cursor, Codex CLI, OpenCode, etc.) see Wiring into MCP clients.

Install

/plugin marketplace add vss96/ohara
/plugin install ohara@vss96
/reload-plugins

That’s it. The plugin’s wrapper (bin/ohara-mcp) downloads the matching ohara-mcp release tarball for your platform on first invocation and caches it at ~/.cache/ohara-plugin/v<version>/. Subsequent starts skip the download.

What the plugin ships

ComponentPurpose
ohara MCP serverRegisters find_pattern and explain_change as MCP tools.
ohara:lineage skillTells Claude when to use find_pattern / explain_change vs Grep — triggers on “how did we do X before?”, “why does this code look this way?”, and prior-art questions.
ohara:indexing skillIndex lifecycle guidance — --incremental vs --force vs --rebuild, and how to recover from each compatibility verdict.

Prerequisites

  • Node.js 18+ — the wrapper that downloads the binary is a small Node script. macOS and most Linux distros ship Node 18+ by default.

  • tar with xz support — default on macOS and Linux. Used to extract the release tarball.

  • An indexed repo. The plugin only ships the MCP server; you index with the ohara CLI separately:

    ohara index <repo-path>
    

Supported platforms

The plugin’s binary download matches the ohara release matrix:

  • macOS aarch64 (Apple Silicon)
  • macOS x86_64 (Intel)
  • Linux x86_64
  • Linux aarch64

Windows is not shipped as a release binary (ort_sys link issue; WSL users can use the Linux x86_64 binary). Other targets need to build ohara-mcp from source and put it on PATH — but at that point you don’t need the plugin’s downloader; manual MCP wiring works just as well.

Updating

When ohara cuts a new release, refresh the marketplace and reinstall:

/plugin marketplace update vss96
/plugin install ohara@vss96

The wrapper’s hard-coded version determines which release tarball gets fetched, so plugin updates and ohara releases stay in lock-step.

Uninstall

/plugin uninstall ohara@vss96
/plugin marketplace remove vss96

The cached binary at ~/.cache/ohara-plugin/ is not removed automatically — rm -rf ~/.cache/ohara-plugin to clean up.

Troubleshooting

“ohara MCP server didn’t start”

Most likely the binary download failed silently. Run the wrapper manually to see the download log:

~/.claude/plugins/marketplaces/vss96/plugins/ohara/bin/ohara-mcp <<< ''

Common causes:

  • No network access on the MCP host
  • Firewall blocking https://github.com/vss96/ohara/releases/...
  • Cached binary corrupted — rm -rf ~/.cache/ohara-plugin/

“find_pattern returns errors mentioning rebuild”

The index was built with an embedder that doesn’t match the binary the plugin just downloaded. Run:

ohara index --rebuild --yes <repo-path>

See index compatibility for the full verdict table — the ohara:indexing skill teaches Claude to surface this command when it happens.

“Plugin loaded but skills don’t trigger”

/reload-plugins after install. Skills are namespaced as /ohara:lineage and /ohara:indexing/help should list them.

What’s in the repo

The plugin lives inside the ohara repository at plugins/ohara/:

plugins/ohara/
├── .claude-plugin/plugin.json
├── .mcp.json                 # registers the ohara stdio MCP server
├── bin/ohara-mcp             # Node wrapper that fetches the binary
├── skills/
│   ├── lineage/SKILL.md
│   └── indexing/SKILL.md
├── package.json
└── README.md

The marketplace catalog at .claude-plugin/marketplace.json makes the ohara repo itself act as a single-plugin marketplace.