Claude Toolkit

Four pillars, one standard underneath them all. The quickest way to tell them apart:

Pillar What it is Think of it as FT example

agents

A delegated worker that runs a sub-task in its own context window and hands back a result.

a specialist you give a self-contained brief — they go away, do the job, return the answer.

ft-java-coding-agent

skills

A procedure + knowledge loaded on demand into the running agent — no separate context.

a playbook on the shelf the agent opens only when the task matches its description.

ft-java-standards

MCP servers

A live connection to external tools & data an agent can query mid-task.

a wall socket the agent plugs into for real-time data (tickets, code search, docs).

Qdrant · JIRA · Context7

automation

Scripts + CI that install, wire, and guard all of the above — runs with no human in the loop.

the plumbing and guardrails behind the walls: nobody sees it, everything depends on it.

install.sh · component-map CI

One sentence: an agent does the work, skills tell it the rules, MCP feeds it live data, automation wires it all up and keeps it honest.

Toolkit at a glance

toolkit-map

Who runs whom

fleet

Which agent do I use?

Start from the situation, not the agent. In almost every case the entry point is ft-developer — it grades the task and delegates to the coding agents / doc writers / audit, so you rarely call those directly.

I want to… Agent Invoke with

Build a feature / idea end-to-end (code + tests + docs)

ft-developer (or /ft-dev)

Use ft-developer. <task>; … — or the /ft-dev <task> skill shim, a thin entry point that launches the same orchestrator.

Refactor / clean up code (behavior unchanged)

refactor-agent (or /ft-refactor)

Use refactor-agent on <class/package/area>. — or the /ft-refactor <target> skill shim. Safety-net-first, behavior-preserving, FT-standard-driven.

Fix a bug from a JIRA ticket

bugfix-agent

Use bugfix-agent for DEV-1234.

Fix a MAJOR/CRITICAL bug with independent multi-verifier gating

/ft-fix (skill)

/ft-fix DEV-1234 — orchestrates bugfix-agent + parallel adversarial verification of the plan and the diff.

Just check conformance — no changes

ft-architecture-audit

Use ft-architecture-audit on the current branch diff. Report file:line.

Write/update docs only

ft-doc-writer-agent

Use ft-doc-writer-agent to document <feature>.

A protocol envelope / spec question

cwmp-xml / oma-lwm2m-expert (skills)

Use cwmp-xml to build a GetParameterValues for Device.WiFi.* …

ft-java-coding-agent, ft-angular-coding-agent, and tr-doc-writer are delegated to by ft-developer (or ft-doc-writer-agent) — you normally don’t invoke them by hand. bugfix-agent is the shortcut when the work is a ticket-scoped fix rather than a planned feature. Full prompt set: Deployment / deploy/prompts/example-prompts.md.

Agents

Agent Model Role

ft-developer

Opus

Quality-gated feature orchestrator. Capability preflight → grades the task (architecture-led / TDD-led / simple-addition) → elicits every blocking requirement → SDD → adversarial design verification (verifier lenses, checkpoint D) → the user’s explicit approval gate → delegates implementation → mandatory test-adequacy adversary (ft-test-adversary) → baseline gate + adversarial diff verification (checkpoint F). Never writes code itself.

ft-java-coding-agent

Opus

Implements backend code and tests in one pass (Java/Spring). TDD mode for TDD-led tasks. Enforces ft-java-standards (records, package placement, greppable logging, real *IT, DB contract).

ft-angular-coding-agent

Opus

Implements frontend code and tests in one pass (Angular/TS). Enforces ft-angular-standards (feature folders + barrels, OnPush/NgRx, logging, kept style).

ft-doc-writer-agent

Sonnet

AsciiDoc/Antora docs. Audits existing docs first (EXTEND / REVISE / NEW / NO-OP). Delegates protocol-flow diagrams to tr-doc-writer. Shared doc leaf of both pipelines: ft-developer (Stage 8, always) and the bugfix pipeline (conditionally, only on a behavior-visible fix — most fixes make the code match existing docs → NO-OP).

ft-architecture-audit

Sonnet

New. Read-only conformance auditor. Reports boundary / naming / DI / DTO / logging / DB / protocol violations with file:line. Complements the bundled /code-review.

bugfix-agent

Opus

Flagship bug fixer (any FT repo, stack auto-detected). Reproduce-first (failing repro test before any production edit), N-cycle self-verification on fresh evidence, explicit outcome classification (incl. CANNOT_REPRODUCE/EXTERNAL_GAP), siblings sweep + a red-green-proven guard against the bug class. Reference-parity mode only when the repo declares a reference implementation. A diagnosed bug that is really a feature-sized change escalates to ft-developer with the diagnosis dossier (SCOPE_IS_FEATURE), rather than forcing a feature through the bugfix gates.

refactor-agent

Opus

New. Behavior-preserving refactoring (any FT repo, stack auto-detected). Safety-net-first (a green characterization net that is shown to catch a behavior change before the first edit), small verified steps (Fowler catalog), the design-principles thresholds + ft-*-standards as the objective smell basis, a consistency sweep + a baseline-preserving gate. Three modes: targeted / audit-driven / standard-violation. Behavior changes route to ft-developer, bugs to bugfix-agent. Standalone; does not touch the verifier canon.

tr-doc-writer

Sonnet

TR-069/TR-181 device-flow docs with PlantUML.

ft-test-adversary

Sonnet

New — shared canon of BOTH pipelines. Adversarial test-adequacy reviewer — read-only on production code (it never writes the fix). Spawned by ft-developer (feature checkpoint F) and by ft-fix / standalone bugfix-agent (bugfix Gate B) after the fix author reports green, to PROVE the delivered tests are insufficient: honest-RED, negative/observability assertions, regression-guard, seam composition, challenged design assumptions, emulator-leniency, and that the tests actually ran (skip-gate). Returns ranked missing-test briefs that are re-delegated until it finds nothing new. Complements /code-review (reviews the diff, not test adequacy) and the verifier Test-plan-adequacy lens (plan-coverage mapping only — no overlap).

verifier

Opus

Adversarial verifier shared by ft-fix (checkpoints 1/2) and ft-developer (checkpoints D/F). One lens per launch; attacks a fix plan, an SDD, or a diff from fresh evidence; verdicts SOUND / REFUTED / NEEDS_EVIDENCE / NEEDS_HUMAN; only the single executor role runs tests, in its own worktree.

Model tiering is conservative — Opus for code/orchestration/bugfix, Sonnet for docs and the read-only audit. Use Haiku as a habit for read-only exploration sub-agents.

Skills

Skill Kind Use

ft-java-standards

⭐ authoritative

The backend standard (Java doc). Read by ft-java-coding-agent / audit; overrides any other Java coding-standard skill on conflict.

ft-angular-standards

⭐ authoritative

The frontend standard (Angular doc). Read by ft-angular-coding-agent / audit; overrides any other Angular coding-standard skill on conflict.

cwmp-xml

protocol

Write/parse/validate CWMP (TR-069 SOAP) envelopes.

oma-lwm2m-expert

protocol

OMA LwM2M spec expert (v1.0–v2.0), CoAP/DTLS, FOTA, bootstrap. (extras stripped; trigger narrowed)

tr69hostif-issue-triage

domain

Triage tr69hostif/RDK device issues from logs.

iot-fleet-engineer

domain

Fleet provisioning, X.509 identity, staged OTA, telemetry budget.

emil-design-eng

design

UI polish & animation canon (easing/duration, transform-origin, reduced-motion, perf). Read JIT by ft-angular-coding-agent on any visual work; pairs with the impeccable plugin’s design-QA skills. Registry-managed: npx -y skills add emilkowalski/skill --skill emil-design-eng -g -a claude-code -y installs AND updates it, non-interactively (not vendored in this repo).

clickhouse-io

db

ClickHouse engines, ORDER BY indexes, batch inserts.

performance-engineer

perf

Observability, profiling, load testing, caching.

springboot-tdd

tests

TDD loop (JUnit5/Mockito/Testcontainers). FT-override banner applied.

springboot-verification

tests

Pre-PR build → static analysis → coverage → security scan. FT-override banner.

ft-fix

orchestration

Quality-gated bug fixing: drives bugfix-agent + parallel adversarial verification of the plan and the diff at two checkpoints. User-invoked only (/ft-fix, disable-model-invocation).

autoreview

review

External-engine final review. User-invoked only (/autoreview, disable-model-invocation).

receiving-code-review

review

How to act on incoming review feedback (verify, don’t blindly agree).

Skills we deliberately did NOT install (and why)
  • code-reviewer, requesting-code-review — redundant with the bundled /code-review; risk double-firing with autoreview.

  • security-review (library) — name-collides with the bundled /security-review (would silently disable it) and is wrong-stack (Next.js/Supabase/Solana).

  • brainstorming — its hard "no code until approved spec" gate fights plan-mode and the autonomous ft-developer flow.

  • java-coding-standards, springboot-patterns — superseded by ft-java-standards; no competing standards.

  • Skipped: java-pro (broken), performance-investigation (Svelte), coding-agent (needs openclaw), coding-standards (JS/TS only).

We also rely on Claude Code’s bundled skills: /code-review, /security-review, /verify, /simplify, /review.

MCP servers — the live data the agents reach

Skills are procedures; MCP servers are data sources. Agents query them at runtime for grounding.

Server What it gives Key tools Who · when

qdrant-vector-db

The FT vector knowledge base — docs, code, protocol params/specs, bugs, UI map (full breakdown in Knowledge Base).

semantic_search, list_sources, count_points, get_collection_info

all agents · ground before writing, validate a protocol path, find an analogue

jira-mcp

Implementation-ready ticket context — brief, logs, and an emulator seed from a Jira issue.

get_issue_brief (always first), get_issue_logs, get_issue_emulator

bugfix-agent, ft-developer · a ticket-driven task (e.g. DEV-1234)

context7

Up-to-date external library/framework docs (Spring, Angular, NgRx, Netty, Paho…).

resolve-library-idquery-docs

coding agents, ft-developer · an unfamiliar/external library API

tr069-emulator

Drives an emulated TR-069 device — reproduce device state and run CWMP sessions.

mcptr069-emulator* (seed the device tree via jira-mcp get_issue_emulator)

bugfix-agent, tr-doc-writer, coding agents · reproduce / verify a device-level flow

mcp-obsidian

Read/write access to the team’s shared Obsidian Knowledge Vault — the agents' cross-session memory (full breakdown in Knowledge Vault).

obsidian_simple_search, note read/write

all pipelines (ft-fix, ft-developer, bugfix-agent) · search prior knowledge at task start, persist the root cause / decision at task end

Two more MCP servers are installed as native stdio processes (no Docker) — sequential-thinking (structured reasoning) and memory (a local knowledge graph). See Deployment § MCP servers.
  • Qdrant vs context7: Qdrant holds FT-specific knowledge (our docs/code/specs/bugs); context7 holds external library docs. Don’t confuse them.

  • jira-mcp: always call get_issue_brief first; pull logs / emulator only if the brief says they’re available and you need them.

Connecting them: install.sh registers all four at user scope (claude mcp add). Endpoints, transports, and the network prerequisite are in Deployment & Usage § MCP servers.

How skills fire (and how to keep them quiet)

Fact Consequence

Model-invoked by description

Keep descriptions narrow & action-first (< ~150 chars). Broad ones over-fire.

No tie-break; not concurrency-safe

Avoid overlapping triggers across skills.

~/.claude/skills/<name> overrides a bundled skill of the same name — silently

❌ Never name a skill code-review, security-review, verify, simplify, run, review

disable-model-invocation: true

Makes a side-effect skill user-only (e.g. autoreview).

Hooks register only via plugin.json / frontmatter hooks:

Strip stray .claude/ from downloaded skills (done for oma-lwm2m-expert).

Next → Knowledge Base (the Qdrant collections in depth) · Deployment & Usage to install these and see example prompts.