Files
mcpctl/CLAUDE.md
Michal 6d38953a96 docs(agentic-teams): document the new resources, and make the webhook reachable
Five resources shipped with no documentation and one documented lie:
docs/inference-tasks.md still told people `mcpctl get tasks` lists the
inference queue. Work items own that name now.

Adds docs/epics.md (the Epic -> EpicTask -> Task hierarchy, the state machine,
risk-scaled review gates, the accept-merges gate, and reconciliation),
docs/gitproviders.md (forge registration, discovery/import, merge-on-accept,
post-merge reopen) and docs/agent-authority.md (the three run modes, and
plainly which two are not implemented).

Two things found while writing them, both fixed rather than filed:

- `webhookSecretKey` was read by the webhook route but writable from NOWHERE
  -- absent from the create schema, update schema, service, CLI and apply
  spec. Since the endpoint fails closed on a null key, post-merge CI failures
  could never reopen their task; the board would keep claiming `merged` for
  work that broke the build. Adds --webhook-secret-key, the schema fields and
  the apply key, with tests covering persist / omit / explicit-null /
  reject-empty. Omission deliberately does not clear the column, so an
  unrelated edit cannot silently disarm the webhook.

- src/cli/src/commands/create.ts contained a literal NUL byte inside a string
  literal (a binary-file check written with the raw character rather than an escape). Identical behaviour, but it made the whole file read as
  binary, so `grep -I` skipped it entirely and 1120 lines of CLI were
  invisible to every text search. Replaced with the escape.

The Epic write path (criteria/status/tradeoffs) is API-only -- documented as
such rather than papered over, and filed as task 180.

Full suite 2612 green; lint at baseline 794/77.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N4wNHWf7xSwnZCWpJcyv9p
2026-08-16 00:14:58 +01:00

3.0 KiB

Claude Code Instructions

Task Master AI Instructions

Import Task Master's development workflow commands and guidelines, treat as if import is in the main CLAUDE.md file. @./.taskmaster/CLAUDE.md

Skill routing

When the user's request matches an available skill, ALWAYS invoke it using the Skill tool as your FIRST action. Do NOT answer directly, do NOT use other tools first. The skill has specialized workflows that produce better results than ad-hoc answers.

Key routing rules:

  • Product ideas, "is this worth building", brainstorming → invoke office-hours
  • Bugs, errors, "why is this broken", 500 errors → invoke investigate
  • Ship, deploy, push, create PR → invoke ship
  • QA, test the site, find bugs → invoke qa
  • Code review, check my diff → invoke review
  • Update docs after shipping → invoke document-release
  • Weekly retro → invoke retro
  • Design system, brand → invoke design-consultation
  • Visual audit, design polish → invoke design-review
  • Architecture review → invoke plan-eng-review
  • Save progress, checkpoint, resume → invoke checkpoint
  • Code quality, health check → invoke health

Resource types

mcpctl resource cheatsheet:

  • server — MCP server definition
  • instance — running container (immutable, replicas-managed)
  • secret / secretbackend — credentials
  • template — reusable server blueprint
  • project — workspace grouping servers, prompts, agents
  • llm — server-managed LLM provider (api key + endpoint)
  • agent — LLM persona pinned to one Llm; project attach surfaces project Prompts as system context, project MCP servers as tools, and exposes the agent itself as an MCP virtual server (agent-<name>/chat). See docs/agents.md, docs/chat.md. Tool access is bounded by whoever invoked the run, not by the agent's memberships — knowledge travels, action is gated. See docs/agent-authority.md.
  • prompt / promptrequest — curated content / legacy pending proposal (use proposal for new work).
  • skill — Claude Code skill bundle (SKILL.md + files + typed metadata). Materialised onto disk by mcpctl skills sync. See docs/skills.md.
  • proposal — generic pending proposal queue, replaces promptrequest. Covers both prompts and skills. See docs/proposals.md. Triage via mcpctl review.
  • revision — append-only audit + diff log shared by prompts and skills. Auto-bumps semver on save. See docs/revisions.md.
  • epic / epictask / task — the work tracker: vision → roadmap node → work item. Tasks carry a risk level that decides which review gates they must pass, and accepting one merges its PR. See docs/epics.md. tasks = work items; the inference queue is inference-tasks / itasks.
  • gitprovider / repo — git forge connection + attached repositories. Discovery and import via mcpctl repos discover|import; a forge connection is what makes merge-on-accept possible. See docs/gitproviders.md.
  • rbac — access control bindings
  • mcptoken — bearer credentials for HTTP-mode mcplocal