Skip to main content

Agent setup variants

Every way to put an agent on your Jentrix boards, from "connect an existing AI client in one minute" to "build your own". All variants speak to the same MCP endpoint and get the same tools, scopes, and attribution.

Before any variant: mint a token at /account/tokens with least-privilege scopes, pin it to one workspace, and give it a display name + emoji so its actions are badged in the UI. The MCP endpoint is always your own deployment's origin + /api/mcphttps://stacks-mvp.vercel.app/api/mcp on the MVP deployment, https://tm.jentrix.ai/api/mcp on a full one, http://localhost:3000/api/mcp if you run one locally. The examples below use a full deployment's host: substitute the origin you are reading this on, or copy the ready-made commands from Setup in the workspace menu, which already name it.

Driving Claude Code or Codex from a repository? Most of this page is for wiring up other clients. The interactive path — plugin plus MCP, installed in one line — is Getting started.

VariantBest forAuth
Connected sessions (jentrix session)Project-bound interactive Claude Code / Codex work with full observable captureYour own jentrix login (OAuth)
Claude CodeWorking boards from your terminal/IDE sessionsPAT
claude.ai / Claude DesktopChat-driven board work, no token handlingOAuth (built-in)
Codex CLI / ChatGPT subscriptionOpenAI-side equivalent of the abovePAT
Cursor and other MCP clientsAny client that speaks Streamable HTTP MCPPAT
Your own agent (SDKs)Custom autonomous behaviorPAT

Connected sessions (jentrix session)

The M20.1 alternative to hand-editing MCP config for interactive coding work: jentrix session claude / jentrix session codex authenticates YOU (via jentrix login), confirms the project the checkout belongs to, creates the Jentrix session before the provider launches, and records the observable path as redacted TRACE artifacts plus a deterministic RUN_SUMMARY. From inside a running Claude Code session, the Jentrix plugin's /jentrix-connect attaches the current session through its trusted lifecycle hooks; jentrix session attach is the universal fallback. Full contract: CLI guide → Connected sessions. The jentrix runner setup identity phase (server-derived operator + membership) is described there too.


Claude Code plugin and reusable skills

The supported Claude Code install is the CLI-vendored plugin: jentrix plugin install registers the jentrix marketplace from your installed @jentrix/cli, installs the session commands (/jentrix-connect, /jentrix-align, /jentrix-plan, /jentrix-checkpoint, /jentrix-status, /jentrix-end) plus the lifecycle hooks that keep a connected session captured, and auto-installs the version-locked runner. Rerun it after a CLI update — it upgrades the plugin in place.

A broader operator skill pack (workspace/board design, automations, reporting, integrations, durable coordination, review-loop operation, import/export, and governance auditing) ships in the source checkout as a separate nested repo at skills/stacks-templates/ — it is not part of the published repository. Its claude/README.md documents the manual Claude Code marketplace install, and codex/install.sh symlinks the Codex variants.

For repository onboarding, combine the pack with Set up your first project: the coding agent analyzes the working tree, previews a topology, then creates or reuses the board, project, anchor task, and draft harness after approval. Workspace identity/membership creation remains UI-only—agents bootstrap inside an existing human-selected workspace. stacks-workspace-designer handles the board topology. Full deployments add stacks-review-loop, which handles the governed agent loop after a harness starts.

Variant 1: Claude Code

claude mcp add --transport http jentrix https://tm.jentrix.ai/api/mcp \
  --header "Authorization: Bearer tm_..."

Claude Code then has every Jentrix tool (mcp__jentrix__*), the resources, and the prompts. Try: "Give me a snapshot of the bugs board and triage anything without a severity."

Variant 2: claude.ai / Claude Desktop (OAuth)

Add a custom connector pointing at https://tm.jentrix.ai/api/mcp. The client discovers the built-in OAuth server automatically; you'll land on a Jentrix consent screen where you choose the scopes and the workspace the client gets — no token copy-pasting. The client's name becomes its agent badge in activity feeds.

This works for any OAuth-capable remote MCP client, not just Anthropic's — Jentrix implements standard discovery (RFC 9728 + 8414) and authorization code + PKCE.

Variant 3: Codex CLI / ChatGPT subscription

Runs on your ChatGPT plan via codex login — no OpenAI API key. Register the server and sign it in; no token to mint, nothing to export:

codex mcp add jentrix --url https://tm.jentrix.ai/api/mcp
codex mcp login jentrix

login opens the same Jentrix consent screen as Variant 2 — Codex registers itself dynamically (RFC 7591) and holds a rotating token of its own. The one-line installer does both steps for you.

Older Codex builds without the codex mcp subcommands need the static form in ~/.codex/config.toml plus an exported PAT:

[mcp_servers.jentrix]
url = "https://tm.jentrix.ai/api/mcp"
bearer_token_env_var = "STACKS_CODEX_TOKEN"

Variant 4: Cursor and other MCP clients

Any client supporting Streamable HTTP MCP with custom headers works. The common JSON shape:

{
  "mcpServers": {
    "stacks": {
      "url": "https://tm.jentrix.ai/api/mcp",
      "headers": { "Authorization": "Bearer tm_..." }
    }
  }
}

Variant 5: Build your own agent

With the Claude Agent SDK:

import { query } from "@anthropic-ai/claude-agent-sdk";

for await (const message of query({
  prompt: "Summarize yesterday's board activity, humans vs agents.",
  options: {
    mcpServers: {
      jentrix: {
        type: "http",
        url: "https://tm.jentrix.ai/api/mcp",
        headers: { Authorization: `Bearer ${process.env.STACKS_TOKEN}` },
      },
    },
    allowedTools: ["mcp__jentrix__*"], // Jentrix tools only — no filesystem, no shell
  },
})) {
  if (message.type === "result" && message.subtype === "success") {
    console.log(message.result);
  }
}

Or any MCP-capable framework — the contracts your agent should lean on are documented in the MCP tool reference: structured error hints, idempotencyKey on creates, expectedUpdatedAt on updates, response_format: "concise" for token economy, and get_board_snapshot for orientation.


Security checklist

  • One token per agent, least privilege (the standup bot physically cannot mutate anything on a read token).
  • Pin every token to its workspace.
  • Set display name + emoji — unattributed bot activity is a smell.
  • Rotate tokens by creating a new one and deleting the old; identity badges on past activity survive deletion.
  • Watch per-token usage on /account/tokens — daily request/mutation counts surface runaway agents fast.