Skip to main content

Overview

This example shows how to scaffold a Pluxx plugin from Sumble’s remote MCP, generate workflow-oriented skills and commands, and validate the resulting project across the core four targets:
  • Claude Code
  • Cursor
  • Codex
  • OpenCode
Repository example:

Prerequisites

  • a Sumble API key exposed as SUMBLE_API_KEY
  • Node 18+
  • Pluxx installed or available via npx @orchid-labs/pluxx

Scaffold Command

SUMBLE_API_KEY=... \
npx @orchid-labs/pluxx init \
  --from-mcp https://mcp.sumble.com \
  --yes \
  --name sumble-plugin \
  --display-name "Sumble" \
  --author "Orchid Labs" \
  --targets claude-code,cursor,codex,opencode \
  --grouping workflow \
  --hooks safe \
  --auth-env SUMBLE_API_KEY \
  --auth-type bearer

Validation Commands

npx @orchid-labs/pluxx doctor
npx @orchid-labs/pluxx lint
npx @orchid-labs/pluxx build
npx @orchid-labs/pluxx test --target claude-code cursor codex opencode

Generated Source Project

The maintained source project committed in the repository looks like this:
example/sumble-plugin/
  pluxx.config.ts
  INSTRUCTIONS.md
  skills/
    account-research/SKILL.md
    contact-discovery/SKILL.md
    general-research/SKILL.md
    hiring-signals/SKILL.md
    log-out/SKILL.md
    table-operations/SKILL.md
    technographics/SKILL.md
  commands/
    account-research.md
    contact-discovery.md
    general-research.md
    hiring-signals.md
    log-out.md
    table-operations.md
    technographics.md
  scripts/
    check-env.sh
    confirm-mutation.sh
  .pluxx/
    mcp.json
    taxonomy.json
    agent/
      context.md
      plan.json
      instructions-prompt.md
      review-prompt.md

Workflow Grouping

The import grouped Sumble’s raw MCP tools into these workflows:
  • account-research
  • contact-discovery
  • hiring-signals
  • technographics
  • table-operations
  • general-research
  • log-out

Key Generated Files

pluxx.config.ts

export default definePlugin({
  name: "sumble-plugin",
  instructions: './INSTRUCTIONS.md',
  skills: './skills/',
  commands: "./commands/",
  scripts: "./scripts/",
  mcp: {
    "sumble": {
      url: "https://mcp.sumble.com/",
      auth: {
        type: "bearer",
        envVar: "SUMBLE_API_KEY"
      }
    },
  },
  targets: ["claude-code", "cursor", "codex", "opencode"],
})

Generated INSTRUCTIONS.md Structure

# Sumble

Use Sumble for account intelligence, buyer discovery, technographic research, and hiring-based timing signals.

## Setup And Boundaries

- Claude Code and Cursor use platform-managed auth. Codex and OpenCode require `SUMBLE_API_KEY`.
- If access, credits, territory context, or your company positioning is unclear, start with `/account-research`.

## Route By Workflow

- `account-research`
- `technographics`
- `general-research`
- `contact-discovery`
- `hiring-signals`
- `table-operations`
- `log-out`

Generated Skill Frontmatter

---
name: "account-research"
description: "Research companies, organizations, and account context before taking action."
---

Observed Build Outputs

These outputs were generated during a real pluxx build run. They are intentionally not committed in the repository, but they were produced successfully:
dist/claude-code/.claude-plugin/plugin.json
dist/claude-code/.mcp.json
dist/claude-code/CLAUDE.md
dist/claude-code/commands/*
dist/claude-code/hooks/hooks.json

dist/cursor/.cursor-plugin/plugin.json
dist/cursor/AGENTS.md
dist/cursor/commands/*
dist/cursor/hooks/hooks.json
dist/cursor/mcp.json

dist/codex/.codex-plugin/plugin.json
dist/codex/.mcp.json
dist/codex/AGENTS.md

dist/opencode/index.ts
dist/opencode/package.json
dist/opencode/commands/*

Validation Result

Observed result from the real run:
  • doctor: 0 error(s), 1 warning(s), 2 info message(s)
  • lint: 0 error(s), 1 warning(s)
  • build: generated all four core bundles
  • test: passed on Claude Code, Cursor, Codex, and OpenCode

Current Caveats

Install trust for generated hooks

doctor reports that local hook commands require explicit trust at install time:
WARNING hooks-trust-required [pluxx.config.ts] Hook commands require install trust
Fix: Review the commands carefully. Users will need to opt in with pluxx install --trust.
This is expected:
  • Pluxx generated local shell hooks under scripts/
  • users should explicitly opt in before those commands run

Codex hooks are bundled but may still be feature-gated

build also reports the current Codex hook activation caveat when the source scaffold declares Codex hooks without the host feature flag:
WARN codex-hooks-external-config [Codex] pluxx.config.ts:
Pluxx now bundles Codex hooks at hooks/hooks.json, but Codex hook loading may
still require plugin_hooks = true under [features] in the host runtime.
The general hooks flag covers non-plugin hook config, and older docs or configs
may still refer to deprecated codex_hooks.
What this means:
  • Claude Code, Cursor, and Codex all receive packaged hook output from this scaffold
  • Codex plugin-bundled hooks require [features].plugin_hooks = true; [features].hooks = true is the general non-plugin hook flag
  • the Codex plugin still built and tested successfully
  • the caveat is about runtime activation, not hook packaging parity

Next Steps

After scaffolding, the next typical commands are:
npx @orchid-labs/pluxx install --target claude-code --trust
npx @orchid-labs/pluxx agent run taxonomy --runner codex
npx @orchid-labs/pluxx agent run instructions --runner codex
Related examples: