← Back to the workshopTechnical & setup guide

TEAM6-KIT · v1.2.0 “LOCAL PREPROCESSING ADAPTER”

A governed team.
From one agent engine.

The reusable layer that turns a single agent engine into a disciplined multi-agent team — identity archetypes, orchestration choreography, governance rules, knowledge routing, and a generator that assembles them. v1.1.0 added the supervised operating layer (Erlang/OTP-style supervision, durable append-only state, served-truth verification); v1.2.0 adds a vendor-neutral local preprocessing adapter contract — Redact, Gist, and Title as a bounded, optional preprocessing layer, never a provider/router replacement.

Open core · built on Hermes (MIT) · Apache-2.0 kits layer

WHAT IT IS

Not a plugin. Not a fork. An operating layer.

Hermes is the engine you install — profiles, skills, memory, plugins. Team6-kit is what you instantiate on top: a crew and a playbook that turn one agent into a disciplined multi-agent team. Different axis, not a feature add-on.

Comparison of Hermes (the engine) and Team6-kit (the operating layer)
Hermes Team6-kit
What it is The engine The operating layer
What you install A binary + profiles A parameter file + the kit
What you get Profiles, skills, plugins, memory, hermes setup Persona archetypes, choreography, governance, generator, identity-onboarding
Unit of work One agent in one room Multiple agents in a workflow, with contracts between them
Question it answers “How do I run an agent?” “How should a team of agents actually work together?”

THE CREW

Six archetypes. Strict lanes.

Six persona archetypes with a tested orchestration contract — each with a lane and an explicit boundary. The boundary is what prevents both overengineering and under-delivery. Below, the archetypes as the fleet that built this page.

LUGIA

Director

Orchestration, decisions, summaries

NOT · Hands-on coding

Shipped this page via the kit’s pipeline.

SHEIKH AL-JABR

Researcher

Evidence, prior art, market scan

NOT · Architecture decisions

Shipped this page via the kit’s pipeline.

AZARAKI

Architect

Analysis, design, thinking

NOT · Writing code

Shipped this page via the kit’s pipeline.

SHAYBA

UX

Human experience, interface design

NOT · Backend logic

Shipped this page via the kit’s pipeline.

KODEKOOT

Coder

Software development (sole)

NOT · Strategy prose

Shipped this page via the kit’s pipeline.

HALAKUKHAN

QA

Verification, adversarial review, scope-cut

NOT · Feature expansion

Shipped this page via the kit’s pipeline.

These six — the running fleet that shipped this page through the kit’s pipeline — are the live instance of the six archetypes. The roles and lanes are the product claim; the names are this instance.

HOW IT WORKS

The choreography is the product.

A task moves through the team in a fixed, single-pass role sequence — frame, research, architecture, design, build, QA, report. Each stage carries a Definition-of-Done gate; a stage is not dispatched until the prior gate passes. The interaction contract is what turns six persona cards into a supervised team.

  1. 1. DirectorFrame: orchestration, decisionsNOT · Hands-on coding
  2. 2. ResearcherEvidence, prior art, constraintsNOT · Architecture decisions
  3. 3. ArchitectAnalysis, design (thinking only)NOT · Writing code
  4. 4. UXHuman experience, interface designNOT · Backend logic
  5. 5. CoderSoftware development (sole)NOT · Strategy prose
  6. 6. QAAdversarial verify, scope-cutNOT · Feature expansion
  7. 7. DirectorIntegrate, summarize, reportNOT · Hands-on coding

Deliverables return via verifiable handles — a child’s self-report is not verification. Corrected in v1.1.0: UX is a single design lane, not two slots.

WHY THIS

What the kit ships that the engine doesn’t.

Four deliverables Hermes does not provide, plus one flagship intent gated ahead.

01 / GOVERNANCE AS CODE

The viability funnel, spin-off SoP, structured verdicts, and read-back receipts — a process you commit as a file, not a policy you maintain.

“Hermes has no equivalent.” — WHY.md

02 / INSTANTIATION — THE ONLY ASSEMBLY PATH

generate.py --params turns one parameter file into a configured, governed team. A kit that cannot be built by the generator does not exist.

“The generator is the only assembly path.” — README.md

03 / KNOWLEDGE ROUTER (MOE-STYLE)

A tiny always-on router loads only the knowledge modules the task needs — a lean memory footprint on bounded-context models.

“MoE-style activation for persistent memory.” — README.md

04 / ZERO-CONTEXT PRESERVATION

Preservation dumps + mechanical fleet work run in the shell at zero context cost; the orchestrator preserves agent identity verbatim.

“Extracted from running a real six-agent fleet on bounded-context local models.” — WHY.md

05 / SETUP AGENT — FLAGSHIP INTENT, GATE OPEN

Identity-onboarding that captures who you are and emits a parameter file — MIT-relensed back to Hermes so every Hermes user benefits.

🔲 Gate open upstream PR not yet shipped.

“The flagship upstream PR.” — WHY.md

WHAT CHANGED · v1.1.0 OPERATING UPGRADES

A supervised, durable, provenance-aware operating layer.

v1.1.0 encodes the operating doctrine the running fleet converged on — each item is a shape of failure the team actually hit, turned into a load-bearing rule. Full doctrine lives in the repo: choreography/orchestration.md and choreography/governance.md.

01 / SUPERVISION

Workers do work; the orchestrator supervises and restarts under an explicit per-role task contract — restart type, intensity/period budget, shutdown policy, verification bar. Budget exhaustion escalates; nothing retries forever. Modeled on Erlang/OTP supervision trees (concept, not code).

02 / SUPERVISED RESEARCH LOOPS

Long research runs as a ledgered, check-pointed loop — one mutable input, a frozen evaluator, keep/discard/crash advancement — that pauses, checkpoints, and surfaces for review. Never silent, never indefinite.

03 / DURABLE STATE & LEDGERS

Correctness as a pure function of append-only on-disk state. A respawned worker resumes from disk, never from dead context. Saved records help a new session reconstruct the project after a break.

04 / PRODUCER ≠ VERIFIER

The agent that produces an artifact never passes it. Gates ground in read-back receipts and served bytes — never a producer’s “done” self-report. Staging first; user approves; then promote.

05 / ADVERSARIAL QA GATE

Mechanical gate first, then an independent judge. Simplicity criterion, explicit retry caps, and plateau detection stop unbounded polish. QA owns scope-cut and loops back to the owning role.

06 / CORRECTED PIPELINE

A single-pass, phase-gated sequence — Director → Researcher → Architect → UX → Coder → QA → Director. UX is one design lane (no duplication); the architect never codes; the coder is the sole developer.

Each rule is traceable to a dated internal operating record or to a public conceptual source (Erlang/OTP supervision, autoresearch / autonovel phase machines — principles with attribution, never copied code or prose). See CHANGELOG.md for the per-item “why” and evidence class. Cross-profile fleet spawning is documented as verified in practice; its formal spec remains proposed / pending and is not presented as shipped doctrine.

WHAT CHANGED · v1.2.0 LOCAL PREPROCESSING ADAPTER

A bounded, local preprocessing layer — documented, not bundled.

v1.2.0 documents a vendor-neutral adapter contract (choreography/local-preprocessing.md): cheap local preprocessing run automatically, when the policy matches, before approved outbound work leaves the device. It is not a provider/router replacement and it never handles high-stakes judgment. Generated installations implement it only as an explicit operator policy — the kit never edits a user’s Hermes profile.

REDACT

A guarded local first-pass filter before approved outbound text and durable external logs. Address, numeric, or uncertain findings hold for review before anything is transmitted. A filter — not legal anonymization.

GIST

Cheap topic grouping for bulk notes, transcripts, and intake. A routing hint only — never the sole authority for a decision.

TITLE

Draft metadata — titles and short descriptions for artifacts, transcripts, and research captures. Read before exposing to a user.

BOUNDED BY DESIGN

Ordinary conversation, final synthesis, and legal/financial/security/architecture judgment are excluded by policy. Media models are opt-in only and never pull weights automatically during active work.

The contract requires any implementation to be local, guarded, log no raw PII, check model availability before use and exit-code + JSON parse after use, and record provenance when a result becomes durable. Desert Ant is one optional implementation on macOS — not a required dependency; its models carry a separate source-available vendor license distinct from the Apache-2.0 kit. Expected benefits are stated as intended outcomes; no performance or cost figures are invented. See CHANGELOG.md.

STATUS · SHIPPED VS. PROOF GATES

Open core today. Proof gates ahead — stated plainly.

The kit asserts value and says so. v1.1.0 ships the operating doctrine; v1.2.0 ships a vendor-neutral local preprocessing adapter contract — both documented and reviewed, not yet proven by an external instance. What turns these claims true remains the first vertical pack and a working setup-agent install — not the claims themselves.

SHIPPED

  • Open core public (Apache-2.0) on GitHub — renamed airefea-kit → Team6-kit
  • Licensing coherent (MIT provenance + Apache-2.0 kits + proprietary-by-contract packs)
  • 8-surface hygiene gate — including network-egress, no-telemetry by construction
  • Knowledge router skill (MoE-style activation) — shipped in templates/
  • Zero-context preservation skill (direct-execution pivot) — shipped in templates/
  • Open-core assembly gated (sweep + review + generate) + instantiation proof-point (demo/, examples/)
  • v1.1.0 operating doctrine shipped — supervision, phase-gated pipeline + corrected single-pass role sequence, durable ledgers, adversarial QA gate, license/provenance gate, designed for recovery + served-truth axioms (README, WHY, choreography, CHANGELOG)
  • Website reflects v1.1.0 — corrected 7-stage pipeline + “What changed” section (this page)
  • v1.2.0 local preprocessing adapter contract shipped — vendor-neutral Redact/Gist/Title + opt-in media policy, hold-for-review rule, adapter requirements, Desert Ant framed as one optional implementation with a separate vendor license (choreography/local-preprocessing.md, README, WHY, CHANGELOG, LICENSING)
  • Website reflects v1.2.0 — local preprocessing capability section + version markers (this page)

OPEN GATES

  • 🔲Setup agent authored and passing the 8-surface gate
  • 🔲Upstream PR for the setup agent
  • 🔲First vertical pack shipped (instance + service)
  • 🔲Formal cross-profile fleet-orchestration spec (practice verified; spec proposed/pending)

GET STARTED

One parameter file in. A configured, governed team out. Gated end to end.

Clone the repo, run the generator against a parameter file, get a configured, governed team — gated at every step.

The parameter file is a plain YAML of 9 declared keys — team name, director, agent role, model provider. That’s the whole input.

$ python3 build/generate.py --params examples/demo-consulting.yaml --out /tmp/demo-team

It proves the contract end-to-end — it does not yet prove that a team instantiated this way ships a real product. That is the next proof-point.

SET UP, CONFIGURE & USE TEAM6

Set up, configure, and use Team6.

Everything a Hermes user needs to stand the kit up: prerequisites, getting the code, editing the one parameter file, running the gates in order, placing the generated team into a Hermes environment, operating it, and updating it safely. The build gates, generator, templates and doctrine below ship today and run now.

SHIPPED VS. NOT-YET-SHIPPED — READ THIS FIRST

✅ SHIPPED — runnable now the build/ gates (sweep-gate.py, review-gate.py, generate.py), the persona & skill templates, the choreography/ and governance doctrine, the frozen-manifest instantiation proof point, and this site.

🔲 NOT SHIPPED — open gate the setup agent (identity-onboarding that interviews you and writes the parameter file for you). It is an open proof gate, not a feature. There is also no shipped one-command installer: the kit install <registry>/<team> contract in registry/kit.yaml is a declared distribution target today, not a working command.

STEP 1 / PREREQUISITES

Engine, Python, environment, model choice.

  • Hermes engine — installed and running. Team6 is a layer on top of Hermes, not a fork of it; the engine stays upstream (MIT).
  • Python 3.8+ with the standard library only — the gates and generator import nothing outside stdlib (verified on 3.9–3.13).
  • Git + a POSIX shell (macOS/Linux, or WSL on Windows).
  • Model / provider decision — the parameter file declares MODEL_PROVIDER and MODEL_NAME. The open-core default is the Hermes/Nous provider; you may point it at any provider your engine supports, including a local model endpoint.
  • Local vs. hosted — decide where the Hermes runtime and the model run. A fully local deployment keeps data on-premise; a hosted provider trades that for convenience and needs network access plus API credentials.
  • Hardware / network / security — size hardware to the model you choose (CPU/RAM/VRAM). The kit itself makes no network calls and ships no telemetry by construction, so it adds no egress of its own; if you use a hosted provider, review data-egress and provider terms. Air-gapped operation is possible when the model runs locally.
STEP 2 / GET THE KIT

Clone the repository.

$ git clone https://github.com/ahrazzle/team6-kit.git
$ cd team6-kit

Read README.md first, then choreography/orchestration.md and choreography/governance.md — the two files that carry the operating doctrine. A fresh clone is self-contained: it ships a frozen manifest and review so the build runs without your local profile fleet.

STEP 3 / INSPECT & EDIT THE PARAMETER FILE

Nine keys is the whole input.

The parameter file is a plain YAML of declared keys. Start from the shipped example and edit the values for your team:

$ cat examples/demo-consulting.yaml

Keys: TEAM_NAME, DIRECTOR_NAME, AGENT_NAME, PROFILE_NAME, ROLE_NAME, ROLE_MISSION, ROLE_PURPOSE, MODEL_PROVIDER, MODEL_NAME, plus an optional BASE_URL for a local or custom endpoint. Copy it, edit it, and keep it — this file is the vertical pack, and it never goes into the public repo.

STEP 4 / RUN THE GATES, IN ORDER

Fail-closed: nothing assembles on a failed gate.

$ python3 build/sweep-gate.py      # PASS(0) → continue; FAIL(1) → stop
$ python3 build/review-gate.py     # 4/4 checkboxes on every shipping row
$ python3 build/generate.py --params examples/demo-consulting.yaml --out /tmp/demo-team

sweep-gate proves the extraction source is clean and fully classified. review-gate enforces the semantic sign-off. generate.py re-runs both as preconditions, then assembles. On a fresh clone the gates run in self-contained frozen mode against the committed manifest/review (the generator selects this automatically); when you maintain a live extraction source, add --strict to make an unresolved placeholder a hard failure.

STEP 5 / WHAT COMES OUT & WHERE IT GOES

A configured team, plus an honest audit trail.

/tmp/demo-team/
├── AUDIT.md     # rows shipped, reconciled to what's on disk
├── personas/    # instantiated identity (SOUL + profile config)
├── skills/      # the skills the roles run with
└── keep-review/ # signed KEEP-REVIEW rows, when present

Place them into a Hermes profile: copy the generated persona files into ~/.hermes/profiles/<PROFILE_NAME>/ (identity plus profile.yaml config) and the generated skills/ into that profile's skills directory, then set the required environment (MODEL_PROVIDER, MODEL_NAME).

Honesty note: the generator produces the artifacts; the copy-into-profile step is currently manual. No shipped installer performs it for you — that is the open setup-agent gate. Treat the placement above as the documented mapping, not an automated command.

STEP 6 / OPERATE IT

Roles, choreography, governance, state, QA, recovery.

  • Roles & choreography — a single-pass pipeline Director → Researcher → Architect → UX → Coder → QA → Director, each lane with an explicit boundary and a Definition-of-Done gate. See choreography/orchestration.md.
  • Governance — viability funnel, spin-off SoP, structured verdicts and read-back receipts; the rules that keep the team honest live in choreography/governance.md.
  • Durable state & ledgers — correctness as a pure function of append-only on-disk state (for example a results.tsv ledger with keep/discard/crash and frontier tracking). A respawned worker resumes from disk, never from dead context.
  • QA — producer ≠ verifier: a mechanical gate first, then an independent adversarial judge; the adversarial-review skill ships in templates/skills/adversarial-review/.
  • Recovery — Erlang/OTP-style supervision: bounded restarts per role, escalation on budget exhaustion, five-minute check-ins, and JIT forwarding of stable partials so a stall is never silent.
STEP 7 / UPDATE, REBUILD & VERIFY

Re-run the gates; verify what is served.

$ git pull
$ python3 build/sweep-gate.py
$ python3 build/review-gate.py
$ python3 build/generate.py --params <your-pack.yaml> --out /tmp/team-v2

Regenerate into a fresh --out directory and diff the new AUDIT.md against the previous one before promoting. If you serve a site or artifact from the output, verify the served bytes with a cache-busted fetch — never announce a change from local files alone. Staging first, then promote.

STEP 8 / TROUBLESHOOTING

Common failures and what they mean.

  • sweep-gate: UNCLASSIFIED SOURCE — a new source file has no manifest verdict. Run build/build-manifest.py, then sign the row in REVIEW.md.
  • review-gate: UNSIGNED REVIEW — a shipping row's 4/4 soft-leak checklist is not fully ticked. Complete the semantic pass before assembling.
  • generate: DECLARED PLACEHOLDER(S) NOT RESOLVED — the pack promised a placeholder the parameter file did not supply (usually a typo). Fix the YAML key.
  • generate: UNRESOLVED PLACEHOLDERS (warning) — expected in open-core mode, which ships generic by design; becomes a failure under --strict, so a paid pack cannot ship mangled.
  • FileNotFoundError: REVIEW.md — you are on an older checkout; a current clone's gates fall back to the committed frozen artifacts automatically.

Support: open an issue at github.com/ahrazzle/team6-kit, or for the ASKA Team6 service email info@askaconsult.com. Public Team6 site: team6.askaconsult.com (source mirror: ahrazzle.github.io/team6-kit).

LICENSE

Three zones. Honest provenance.

ZONE 1 · BUILT ON HERMES (MIT)

The engine is Nous Research’s, MIT-licensed. This repo is NOT a git-fork of Hermes; it is a standalone product with a generated kits layer.

ZONE 2 · KITS LAYER (APACHE-2.0)

Identity archetypes, orchestration, governance, knowledge routing, and build tooling — Apache-2.0. See LICENSE.

ZONE 3 · VERTICAL PACKS (PROPRIETARY BY CONTRACT)

Parameter files + service — never committed to this repo, never a fork of the engine.

v1.2.0 boundary: optional local preprocessing models (e.g. Desert Ant) carry a separate source-available vendor license distinct from this Apache-2.0 kit layer — the kit documents the adapter contract and bundles no implementation, model files, or license text. See choreography/local-preprocessing.md and LICENSING.md.