{
  "markdown": "# OloLand Plugins\n\n> The verifier stack for buy-side underwriting, as Claude plugins.\n\nThis repo is OloLand's plugin marketplace for **Claude Cowork** (Claude Desktop) and **Claude Code** (CLI). It hosts the OloLand plugins that augment Anthropic's first-party finance plugin lineup (`private-equity`, `financial-analysis`, `investment-banking`, `equity-research`, `wealth-management`).\n\n> *Anthropic ships breadth. OloLand ships depth.*\n> Same Cowork session. Deterministic computation. Defensible record.\n\n---\n\n## Plugins in this marketplace\n\n| Plugin | Status | What it does |\n|---|---|---|\n| [`ololand-dd`](./plugins/ololand-dd) | v1.24.2 | Institutional due diligence: deterministic financial engines, 311-factor risk taxonomy (67 diligence categories), analytical workbench tools, verified forensic screen workflow, war-game RL strategy simulation, and a flywheel that retrains from analyst corrections. |\n| [`ololand-forensic-qoe`](./plugins/ololand-forensic-qoe) | v0.6.3 | Forensic Quality-of-Earnings primitives as a standalone plugin: Beneish, Benford, EBITDA bridge, journal-entry testing, lapping detection, working-capital deep dive. The Pre-LOI Forensic Screen — $99 / 72-hour SLA, IC-defensible, with Full QoE at $999, vs Big-4 QoE at $150-500K / 4-8 weeks. |\n| [`ololand-compliance-hooks`](./plugins/ololand-compliance-hooks) | v0.2.3 | Drop-in compliance, citation, and provenance hooks for Anthropic's Claude Cowork finance plugins. PreToolUse MNPI guard, PostToolUse citation enforcer, audit-log writeback. Populates the empty `hooks/` scaffold Anthropic's verticals ship with. |\n| [`cim-generator`](./plugins/cim-generator) | v1.1.0 | 14-section CIM generator with provenance — sell-side memorandums built from your reconciled deal data (financial snapshots, risk insights, market research), not LLM prose. View, edit, and export the finished CIM (PDF, DOCX, PPTX) from the deal workspace. |\n\nThe plugins compose additively with each other and with Anthropic's first-party finance plugins.\n\n---\n\n## Maintainer workflow\n\nThis repository generates Claude and Codex plugin artifacts from canonical YAML\nmetadata. Edit `marketplace.yaml` and `plugins/*/plugin.yaml`, then run:\n\n```bash\npython3 -m pip install -r scripts/requirements.txt\npython3 scripts/generate-plugin-artifacts.py\n./scripts/check-plugin-artifacts.sh\n```\n\nSee [docs/plugin-publishing.md](./docs/plugin-publishing.md) for the full\nrelease process.\n\n---\n\n## Prerequisites\n\nThe only thing you need is a free OloLand account. **No env var setup, no manual API key creation.** The plugins handle authentication via OAuth automatically when you install them.\n\n### Two account rails\n\n| Rail | Cost | Access |\n|---|---|---|\n| **Developer (free)** | Sign up at https://app.ololand.ai/signup | Sandbox-only — full MCP tool access against the included sample deal (`Paragon Flight School (Sample)`). Unlimited calls. No payment, no credit card. |\n| **Platform (paid)** | Pro $199/mo, Team $499/mo (2 seats included, +$199/seat), Enterprise (custom) (see [pricing](https://ololand.ai/pricing)) | Access to your own deals + cross-deal memory + outcome flywheel + production volumes |\n\nYou can install the plugins on a free Developer account and explore everything against the sample deal — DCF, LBO, Monte Carlo, forensic QoE, risk taxonomy, war-game, all of it. When you're ready to run on your own data, upgrade to a paid plan.\n\n### What happens on first install (no env var setup needed)\n\n1. Add the marketplace and install a plugin (steps in the Install sections below)\n2. The plugin defines an `ololand` MCP connector that points at OloLand's backend\n3. On first invocation, your Cowork / Claude Code prompts you to **Authorize** the connector via OAuth\n4. Click Authorize — your browser opens to OloLand's auth page, you sign in, accept the scopes\n5. OloLand's backend auto-provisions a scoped agent key, bound to your OAuth client. Cowork / Claude Code stores it for you\n6. Subsequent calls use the stored credential. No env var, no manual setup.\n\nThat's it. The OAuth flow happens once and the connector is authenticated for that session and future ones.\n\n### Power user / headless setup (optional)\n\nIf you're running the plugins in a headless environment (CI, server-side automation, custom MCP client that can't run OAuth), you can bypass OAuth with a manual agent key:\n\n1. Sign in at https://app.ololand.ai\n2. Settings → Agent keys → Create new key\n3. Set the env var: `export OLOLAND_AGENT_KEY=olo_agent_sk_...`\n\nThe published `.mcp.json` files are OAuth-native and do not send an Authorization header. For headless use, add your own MCP server config with `Authorization: Bearer ${OLOLAND_AGENT_KEY}`. If OAuth and a custom header are both configured by your client, OAuth should be treated as the interactive default.\n\n---\n\n## Install — Claude Cowork (Claude Desktop)\n\nThe recommended path for analysts running deals through the Cowork UI.\n\n### Step 1 — Open the plugin manager\n\n1. Open **Claude Desktop**\n2. Switch to the **Cowork** tab (top of window)\n3. Click **Customize** in the left sidebar\n4. Click **Plugins** in the Customize submenu\n\n### Step 2 — Add the OloLand marketplace\n\n1. Click the **`+`** button next to \"Personal plugins\" (or the equivalent button in the Plugins panel header)\n2. Choose **Create plugin** → **Add marketplace**\n3. In the URL field, enter:\n   ```\n   ololand-ai/ololand-plugins\n   ```\n4. Click **Sync**\n5. After ~5-10 seconds, a new pill `ololand-plugins` appears with three plugin cards: `Ololand dd`, `Ololand forensic qoe`, `Ololand compliance hooks`.\n\n### Step 3 — Install the plugins\n\nClick the **`+`** button on each card to install. After all three installed, your Personal plugins sidebar should list:\n- Ololand dd\n- Ololand compliance hooks\n- Ololand forensic qoe\n\n### Step 4 — Verify\n\nClick `Ololand dd` in the sidebar. The detail view should show:\n\n| Field | Expected value |\n|---|---|\n| Source | Marketplace (`ololand-plugins`) |\n| Version | **1.20.4** or higher |\n| Author | OloLand |\n| Skills tab | ~18 skills including `/playbook-recall`, `/calibrate-vs-history` |\n| Agents tab | **3 agents**: `dd-analyst`, `forensic-screener`, `war-game-strategist` |\n| Connectors tab | 1 connector named `ololand` |\n\nIf Agents shows 1 instead of 3, you're on an older version. Remove the marketplace and re-add following Step 2.\n\n### Step 5 — Authorize the OloLand connector\n\nThe first time you invoke a command that calls OloLand's backend (e.g., `/ololand-dd:dd-analyze`), Cowork prompts you to authorize the `ololand` MCP connector. Click **Authorize** → sign in to OloLand if you haven't yet → accept the scopes. The connector stores the credential for subsequent calls. **No env var setup needed.**\n\nIf you're new to OloLand, signing in here also creates your free Developer account on the spot — you don't have to visit app.ololand.ai/signup separately.\n\n---\n\n## Install — Claude Code (CLI)\n\nFor developers, IT teams, and anyone running Claude Code locally.\n\n### Step 1 — Add the marketplace\n\nIn any Claude Code chat session:\n\n```\n/plugin marketplace add ololand-ai/ololand-plugins\n```\n\n### Step 2 — Install the plugins\n\n```\n/plugin install ololand-dd@ololand-plugins\n/plugin install ololand-forensic-qoe@ololand-plugins\n/plugin install ololand-compliance-hooks@ololand-plugins\n```\n\n### Step 3 — Reload to activate\n\n```\n/reload-plugins\n```\n\n### Step 4 — Verify\n\n```\n/plugin\n```\n\nThis opens the plugin manager TUI. Tab to the **Installed** tab and confirm all three OloLand plugins are listed and enabled. Open `ololand-dd` detail to verify version 1.20.4 and the three agents.\n\n### Step 5 — Authorize the OloLand connector\n\nThe first time you invoke a command that calls OloLand's backend (e.g., `/ololand-dd:dd-analyze`), Claude Code triggers the OAuth flow for the `ololand` MCP connector. Your browser opens to OloLand's auth page → sign in → accept the scopes. Claude Code stores the credential. Subsequent calls authenticate automatically.\n\nIf you're new to OloLand, the auth page lets you sign up on the spot — no separate trip to app.ololand.ai/signup.\n\n**For headless / CI use only**: set `OLOLAND_AGENT_KEY=olo_agent_sk_...` in your environment to bypass the OAuth flow. Get the key at app.ololand.ai → Settings → Agent keys → Create new key. OAuth takes precedence if both are configured.\n\n---\n\n## Usage — `ololand-dd`\n\nThe flagship due-diligence plugin. Skills are auto-fired when relevant; commands are explicit invocations.\n\n### Commands\n\nType `/` in any chat to see autocomplete. Plugin commands are namespaced as `/ololand-dd:<command>`.\n\n| Command | What it does |\n|---|---|\n| `/dd-analyze <deal_id>` | Run the deal extraction and risk-analysis pipeline; valuation reads or fresh model candidates are separate explicit `/valuation` actions |\n| `/new-deal <ticker_or_name>` | Create a new deal from a ticker (auto-fetches 10-K) or company name |\n| `/risk-matrix <deal_id>` | Render the risk taxonomy (67 categories / 311 risk factors) as an interactive tile |\n| `/risk-report <deal_id>` | Structured risk report — severity × likelihood × velocity, with $-impact |\n| `/valuation <deal_id> read [method]` | Read governed DCF / LBO and source-backed Comps. To create a fresh model candidate, explicitly use `/valuation <deal_id> run <method>` or `/valuation <deal_id> refresh <method>`; bare and legacy method-only calls are read-only. |\n| `/qoe-analysis <deal_id> [latest|run]` | Run or retrieve the deal-scoped QoE workbench; optional cross-document conflict scan |\n| `/verify <deal_id>` | Defend every number: verify an OloLand artifact against source docs + engine runs, or grade an externally-drafted memo (e.g. from Claude Cowork) per-claim against the deal corpus |\n| `/compliance-analysis <deal_id> [ofac|hsr|cfius|all]` | Run sanctions, HSR, and CFIUS analysis |\n| `/scenario-analysis <deal_id> [stress|market|real-options|all]` | Run stress tests, market simulation, and real-options valuation |\n| `/earnings-analysis <deal_id>` | Analyze earnings-call transcript segments for diligence signals |\n| `/verification-marketplace <deal_id> [status|list|request]` | Track or request human verification for a forensic screen |\n| `/ic-package <deal_id> [status|generate|approve]` | Generate or approve the canonical IC package with assumption and verifier blockers preserved |\n| `/value-impact <deal_id|company|preview>` | Review or preview the deal/firm value-impact ledger |\n| `/deal-health <deal_id> [actions|create-action]` | Summarize deal health, open actions, and meeting blockers |\n| `/workbook [list|get|create|templates|generate|excel-model|extraction] <deal_id|workbook_id>` | List, read, create, or template-populate deal-scoped workbooks; `excel-model` calls the persisted/downloadable live-formula LBO bridge directly (DCF generation not ready) |\n| `/company-discovery <query>` | Search the company-discovery surface from natural-language or structured criteria |\n| `/watchlist [list|create|matches|promote]` | Create and inspect continuous monitoring watchlists |\n| `/advisory <deal_id> [list|request]` | Request or inspect buyer-side advisory engagements |\n| `/financing <deal_id> [status|analyze|sourcing|lender-package]` | Acquisition-financing prep — deterministic analysis, provider-sourcing prep, lender pre-read packages |\n| `/managed-context-agent <deal_id> <agent_key>` | Launch a configured managed context agent when enabled |\n| `/okf-export <deal_id>` | Export a machine-readable OKF deal bundle |\n| `/war-game <deal_id> [scenarios]` | 16-quarter MaskablePPO competitive simulation across scenarios |\n| `/similar-deals <deal_id>` | Cross-deal memory: find similar past deals, accuracy patterns, valuation ranges |\n| `/playbook-recall <deal_id>` | What worked, what didn't, what was missed in similar past deals from your firm's history |\n| `/calibrate-vs-history <deal_id>` | Apply your firm's historical projection bias to recalibrate the deal's headline numbers |\n| `/talk-to-deal <deal_id>` | Conversational session: ask anything about the deal, voice-optimized output |\n| `/deal-search <deal_id>` | Full-text + semantic search across a deal's data room |\n| `/unit-economics <deal_id>` | SaaS cohort retention (NDR/GRR), LTV/CAC, payback, magic number, rule of 40 |\n| `/source <criteria>` | Source new M&A/PE deals from criteria; enrich with contact data; dedupe vs CRM |\n\n### Sub-agents\n\nIn Cowork, click an agent in the Agents tab and it loads as the lead agent for the conversation. In Claude Code CLI, agents auto-fire based on context, or invoke explicitly with `/agents` and pick one.\n\n| Agent | Use when |\n|---|---|\n| `dd-analyst` | Full DD workflows, IC memo prep, deep deal investigation. The general-purpose specialist. |\n| `forensic-screener` | Pre-LOI forensic deep-dive. Runs all 7 forensic primitives, reconciles findings against source hierarchy, produces an IC-defensible exclusion schedule with severity, $-impact, and citations. |\n| `war-game-strategist` | Stress-testing the deal thesis against competitor responses. Runs 4-scenario MaskablePPO simulation, calibrates vs. similar-deal outcomes, overlays on deterministic DCF, recommends bid adjustment. |\n\n### Example workflow — full Pre-LOI DD\n\nIn Cowork (or Claude Code), with a deal in your OloLand account:\n\n```\n/ololand-dd:new-deal ACME-Manufacturing\n```\n↓ creates the deal\n\n```\n/ololand-dd:dd-analyze deal_acme_2026\n```\n↓ runs the full multi-agent DD\n\nThen for forensic depth:\n\n```\n/ololand-dd:risk-matrix deal_acme_2026\n```\n↓ renders the risk-taxonomy tile\n\n```\n@forensic-screener run a Pre-LOI screen on deal_acme_2026\n```\n↓ delegates to the forensic specialist sub-agent\n\nFor thesis stress-test:\n\n```\n@war-game-strategist test the buyout thesis on deal_acme_2026 across all 4 scenarios\n```\n\n---\n\n## Usage — `ololand-forensic-qoe`\n\nThe standalone Pre-LOI Forensic Screen wedge. Use when you want forensic depth without the full DD plugin.\n\n### Commands\n\n| Command | What it does |\n|---|---|\n| `/forensic-screen <deal_id>` | Full battery: Beneish + Benford + EBITDA bridge + journal-entry + lapping + working-capital + revenue-quality. Returns severity-scored exclusion schedule. |\n| `/beneish <deal_id>` | Beneish M-Score (private-company adjusted). 8-variable earnings-manipulation probability. |\n| `/benford <deal_id>` | Benford's Law first-digit testing on GL transactions. χ² + MAD. |\n| `/ebitda-bridge <deal_id>` | EBITDA bridge with adjustment classifier. Tags every add-back as accepted / recurring / questionable. |\n| `/journal-test <deal_id>` | Journal-entry anomaly testing. Period-end concentration, round-numbers, posting authority, weekend entries. |\n| `/lapping-check <deal_id>` | AR-lapping fraud detection. Customer-to-cash trace, application gap detection. |\n| `/conflicts <deal_id>` | Cross-document conflict detector for mismatched figures, dates, ownership, terms, and obligations. |\n| `/verify <deal_id>` | Verify an externally drafted artifact against the ingested deal corpus. |\n\n### Required inputs\n\n- **Beneish**: 2+ years of income statement + balance sheet data\n- **Benford**: GL export with ≥1,000 line items\n- **EBITDA bridge**: management adjustment schedule + 2-3 years historicals\n- **Journal-entry tests**: GL with timestamps + posting user IDs\n- **Lapping**: AR aging + cash receipts journal with customer-level detail\n- **Full screen**: skip-and-report behavior — runs every primitive whose inputs are present, reports which were skipped and why\n\n### Example workflow — $50M EBITDA target screen\n\n```\n/ololand-forensic-qoe:forensic-screen deal_target_2026\n```\n\nReturns in 60-90s an IC-defensible exclusion schedule with:\n- Reported EBITDA $X.XM → defensible EBITDA $Y.YM (delta $Z.ZM)\n- Each forensic primitive's verdict (pass / warning / fail)\n- Adjustments table with $ impact and source citations\n- Severity-scored findings (low / medium / high / critical)\n- Recommendation: proceed / proceed with caveats / kill\n\n---\n\n## Usage — `ololand-compliance-hooks`\n\nThe drop-in hooks plugin. Most users don't invoke this directly — it runs automatically once installed.\n\n### What it does (passive)\n\n| Hook | Trigger | Action |\n|---|---|---|\n| **PreToolUse: MNPI guard** | Bash, Write, Edit, MultiEdit | Blocks tool calls referencing material non-public information patterns (\"material non-public\", \"insider trading window\", etc.) unless input contains `# mnpi:cleared` marker |\n| **PostToolUse: citation enforcer** | After CIM / IC memo / dossier generation | Scans for $-amounts, %, multiples without source citation. Warns by default. |\n| **PostToolUse: provenance writeback** | After every generative output | Appends NDJSON to `~/.ololand/provenance/YYYY-MM-DD.ndjson` + optional API mirror |\n| **Pre + PostToolUse: audit log** | Every `mcp__ololand__*` call | Mirrors invocations to `~/.ololand/audit/YYYY-MM-DD.ndjson` |\n| **SessionStart: banner** | New session | Confirms hooks armed |\n\n### Configuration via env vars\n\n| Variable | Default | Purpose |\n|---|---|---|\n| `OLOLAND_CITATION_BLOCK` | `0` | Set to `1` to upgrade citation enforcer from warn to deny |\n| `OLOLAND_AGENT_KEY` | unset | Mirror provenance + audit lines to OloLand's API |\n| `OLOLAND_API_URL` | `https://app.ololand.ai` | Override for self-hosted OloLand deployments |\n\n### Local logs\n\nInspect provenance + audit ledgers any time:\n\n```bash\njq -c '.' ~/.ololand/provenance/$(date -u +%Y-%m-%d).ndjson\njq -c '.' ~/.ololand/audit/$(date -u +%Y-%m-%d).ndjson\n```\n\nThese ledgers are append-only NDJSON. Rotate or compress per-day as needed.\n\n---\n\n## Troubleshooting\n\n### Cowork: \"Marketplace sync failed. Check the repository URL and try again.\"\n\nMost common cause: cached marketplace from a prior install attempt. Click `...` on the failing pill → Remove. Then re-add.\n\nIf still failing, fall back to the **Upload plugin** path (zip upload). Per [Cowork issue #38429](https://github.com/anthropics/claude-code/issues/38429), `source: \"manual\"` plugins are protected from the auto-removal bug that affects `source: \"github\"` plugins.\n\n### Cowork: plugin disappears after restart\n\nKnown [issue #38429](https://github.com/anthropics/claude-code/issues/38429) and [#39274](https://github.com/anthropics/claude-code/issues/39274). RemotePluginManager removes 3rd-party github-sourced plugins on restart. Workarounds:\n- Reinstall via \"Upload plugin\" (zip path) instead of \"Add marketplace\"\n- Or wait for Anthropic to ship the fix\n\n### Cowork: chat says \"Unknown skill: plugin\"\n\nCowork chat does NOT support `/plugin` slash commands. Plugin management is UI-only:\n- Customize → Plugins → Browse / Add marketplace / Upload plugin\n\nThe `/plugin` command set works in **Claude Code CLI** only.\n\n### Cowork: showing old version (1.4.x) instead of 1.5.x\n\nLikely cached install from before the marketplace rename (was `ololand-dd-plugin`, now `ololand-plugins`). Remove the old marketplace pill, add `ololand-ai/ololand-plugins` fresh, install.\n\nVerify v1.20.4 by clicking the plugin → Agents tab should show 3 agents (dd-analyst, forensic-screener, war-game-strategist).\n\n### CLI: `/plugin install` fails with \"marketplace not found\"\n\n```\n/plugin marketplace update ololand-plugins\n```\n\nOr if that fails:\n\n```\n/plugin marketplace remove ololand-plugins\n/plugin marketplace add ololand-ai/ololand-plugins\n```\n\n### Tools fail with auth errors (\"OLOLAND_AGENT_KEY not set\", \"401 Unauthorized\", etc.)\n\nMost common cause: you skipped or canceled the OAuth flow on first invocation.\n\n**Fix in Cowork**: Customize → Connectors → click the `ololand` connector → click **Reconnect** (or **Disconnect** then click the connector again to retrigger OAuth). Sign in to OloLand and accept scopes.\n\n**Fix in Claude Code CLI**: run any `/ololand-dd:` command — Claude Code retriggers the OAuth flow when it detects an unauthenticated connector. Sign in in the browser when prompted.\n\n**Headless / CI fallback**: if OAuth isn't possible (CI, scripts), generate an agent key at app.ololand.ai → Settings → Agent keys, then `export OLOLAND_AGENT_KEY=olo_agent_sk_...` in your environment.\n\n### Plugin skills not appearing after install\n\nRun:\n```\n/reload-plugins\n```\n\nIf still missing, clear the plugin cache:\n```bash\nrm -rf ~/.claude/plugins/cache\n```\nThen re-install. Restart Claude Code / Claude Desktop after the cache clear.\n\n---\n\n## Why this exists\n\nOloLand's thesis: Anthropic's finance plugins are *\"reference templates — they get better when you tune them to how your firm works\"* (their own README). That is exactly what we are: the institutional tuning.\n\nAnthropic ships breadth — five vertical plugins, ten named agents, eleven read-only data connectors. We ship depth — deterministic computation, structured taxonomy, persistent memory, and the compliance hooks Anthropic's first-party plugins ship empty.\n\nFor the full positioning, see [the comparison page](https://ololand.ai/compare/vs-anthropic-plugins).\n\n---\n\n## Contributing\n\nEach plugin lives under `plugins/<name>/` with its own `.claude-plugin/plugin.json`, README, and contents. The marketplace catalog at `.claude-plugin/marketplace.json` is the single source of truth for what's published.\n\nBranch from `origin/main`, open a PR into `main` (operator ruling 2026-07-14: this repo is **main-only** — it has no staging environment, so unlike `ololand-ai/olo5` there is no staging branch in the flow; the old `staging` branch is retired and stale). The repo allows **merge commits only** (rebase/squash disabled).\n\nTo bump a plugin version, update both the plugin's `plugin.json` AND the marketplace.json entry — `scripts/check-version-sync.sh` (run pre-commit) will fail the commit if they drift.\n\n## Support\n\n- Email: support@ololand.ai\n- Issues: https://github.com/ololand-ai/ololand-plugins/issues\n- Docs: https://ololand.ai\n\n## License\n\nApache-2.0. See [LICENSE](./LICENSE).\n",
  "bytes": 21770,
  "sha": "ba6c12259503583111673e0006563393c1f9ec2f09dd2d98ea36e0babcc406df",
  "repo_slug": "ololand-ai/ololand-plugins",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_ololand_ai_ololand_plugins_ololand_foren_59f8d401/readme"
}