Skip to main content

AI Client Plugins (agents)

OKT ships a single plugin that installs the six Open Knowledge Tree research agents into AI coding clients that support plugin packages. The agents are model-agnostic and talk to the OKT backend through the MCP server — no MCP URL is baked into the plugin.

AgentRoleMode
oktOrchestrator — entry point for research workflowsprimary
researchPlans + gathers evidence (graph exploration, ingestion)subagent
investigationCreates investigations, ingests sources, tracks drainsubagent
synthesizerStandalone research document on one scopesubagent
super-synthesizerMeta-synthesis across multiple sub-synthesessubagent
reviewerAudits a synthesis for epistemic correctness + neutralitysubagent

Clients with a first-class plugin package:

  • Claude Code — via this repo as a Claude plugin marketplace
  • GitHub Copilot in VS Code — via this repo as a Copilot plugin marketplace
  • OpenAI Codex CLI — via this repo as a Codex plugin marketplace

Any other MCP-speaking client can be wired by hand — see Other clients below.

After installing the plugin in your client, run the bundled okt-setup skill to write the right MCP config block, then authenticate with OAuth 2.1 on first use.

Install

Claude Code

Add this repo as a marketplace and install:

/plugin marketplace add openktree/open-knowledge-tree
/plugin install okt-agents@okt-agents-official

Or install directly from a local checkout:

/plugin install /path/to/open-knowledge-tree-go/ai-plugins

Then ask the okt agent:

Run the okt-setup skill to configure my OKT MCP server.

Restart Claude Code after the skill writes the config.

GitHub Copilot in VS Code

Install directly from the remote repo (no local checkout or marketplace config needed):

  1. Command Palette → Chat: Install Plugin From Source → enter: https://github.com/openktree/open-knowledge-tree
  2. Ask any agent to run the okt-setup skill (or run Chat: Run Skillokt-setup).

Restart VS Code after the skill writes .vscode/mcp.json.

Prefer a marketplace?

Add the repo as a marketplace and install from it:

  1. Open Settings and add the repo to chat.plugins.marketplaces: "openktree/open-knowledge-tree"
  2. Command Palette → Chat: Install Plugin → pick okt-agents
  3. Ask any agent to run the okt-setup skill (or run Chat: Run Skillokt-setup).

OpenAI Codex CLI

codex plugin marketplace add openktree/open-knowledge-tree
codex plugin install okt-agents@okt-agents-official

Then run the okt-setup skill (ask any Codex agent, or edit ~/.codex/config.toml directly):

[mcp_servers.okt]
url = "http://localhost:8080/api/v1/mcp"
# bearer_token_env_var = "OKT_TOKEN" # if your instance requires auth

Restart Codex after editing the config.

Other clients (no plugin package)

If your AI client speaks MCP but has no OKT plugin package (e.g. Claude Desktop, Cursor, Windsurf, Goose, Continue, a custom agent harness), you can wire it up by hand:

  1. Point your client at the OKT MCP server. Add an HTTP MCP server named okt pointing at http://localhost:8080/api/v1/mcp (or your remote OKT URL). See Getting Started with MCP for per-client snippets (Claude Desktop, Cursor, VS Code, MCP Inspector).
  2. Create the six agents manually from the prompt files below. Each client has its own "agent"/"custom instruction"/"prompt" mechanism — copy the body of the matching prompt file into a new agent named okt, research, investigation, synthesizer, super-synthesizer, and reviewer respectively. Set okt as primary/standalone and the other five as subagents/delegates if your client distinguishes.
  3. Authenticate via OAuth 2.1 on first call — your client drives the flow automatically; see Getting Started with MCP → How an MCP client authenticates.

Agent prompts

The canonical agent prompt files live in the repo under .opencode/agent/. Each file is a self-contained system prompt (frontmatter + body); copy the body into your client's agent/custom-instruction editor. The files are identical across clients — only the frontmatter shape differs, which your client ignores if it has its own agent config format.

AgentPrompt fileDescription
oktokt.mdOrchestrator — entry point for research workflows
researchresearch.mdPlans + gathers evidence (graph exploration, ingestion)
investigationinvestigation.mdCreates investigations, ingests sources, tracks drain
synthesizersynthesizer.mdStandalone research document on one scope
super-synthesizersuper-synthesizer.mdMeta-synthesis across multiple sub-syntheses
reviewerreviewer.mdAudits a synthesis for epistemic correctness + neutrality

The okt agent is the primary entry point — users invoke it directly and it delegates to the five subagents as needed. If your client only supports a single agent/prompt, start with okt.md; it can still call the MCP tools directly for lightweight workflows, it just can't spawn the specialized subagents.

Next steps

Once the plugin is installed and the okt-setup skill has written your MCP config:

  1. Restart your AI client so it picks up the okt MCP server.
  2. Invoke any OKT agent (e.g. @okt list my repositories). The first call triggers the OAuth 2.1 authorize flow — your client opens a browser to the OKT login + consent page, then caches the access token for subsequent calls.
  3. Follow the typical agent workflow described in MCP Overview, or browse the full MCP Tools Reference.

How it works

.opencode/agent/*.md ← single source of truth (5 agents, opencode format)

▼ ai-plugins/scripts/sync-agents.mjs
├─► ai-plugins/agents/<name>.md (Claude Code + VS Code Copilot)
├─► ai-plugins/agents/<name>.toml (Codex CLI)
└─► ai-plugins/opencode/agents/<name>.md (opencode-format copy)

The three plugin manifests at the root of ai-plugins/ let the same directory be installed as a plugin by all four clients:

  • .claude-plugin/plugin.json — Claude Code
  • .codex-plugin/plugin.json — Codex CLI
  • plugin.json (root) — VS Code / Copilot

The MCP server URL is not shipped in a .mcp.json. Each user's OKT backend URL differs (localhost in dev, a remote host in production), so a baked-in URL would be wrong for almost everyone. Instead the okt-setup skill walks the user through writing the right config block into their client's config file.

The source of truth for the plugin lives in ai-plugins/README.md in the repo.