The approach
Constitution first. Agents second. Hooks enforce the rest.
A single rule file — twenty-five rules — loads at every session start. No agent can override it. Each agent is scoped to one concern and loads only the playbook and source files it needs. Hooks run between sessions to stamp state, trace sources, and surface drift.
The model runs locally via Claude Code on a Max plan. MCP extends the tool surface — file reads, script calls, renders, all within one session. No API tokens, no external calls, no data leaving the machine.
Rule constitution
Twenty-five rules load at every session start. No agent can override them. Behavioral rules are always on; domain rules activate per agent.
Source-trace
Every claim in the CV traces to a file on disk. Unsourced lines get flagged — the engine ships, but the flag becomes a ticket to resolve.
Facts only. No invention. Ever.
Every claim must trace to a source on disk. If a claim has no source, it does not appear. No exceptions.
Rule 1 — loaded every session
Hook enforcement
Hooks run between sessions — stamping state on commit, scanning for drift on write, promoting stale questions into the ticket tree.
ATS-safe render
Every PDF uses embedded fonts and real text — no flattened images. Page-count cap and extraction check enforced at build time.
Scoped agents
Each agent loads one playbook and reads only the source files it needs. No agent sees the full system — only its concern.
Agentic architecture
Specialised agents, shared rules.
Each agent is scoped to one concern. It loads its own playbook, reads only the source files it needs, and hands off to the next agent via structured output. The rules constitution loads at every session start — no agent can override it. Hooks enforce by side-effect between sessions.
The pipeline
JD in, eight PDFs out.
A job description enters the system. The engine triages, tailors, validates, and renders. Every PDF is ATS-friendly — real embedded text, no flattened images, machine-readable section headers. The model only fills values the schema allows, with content the source corpus already contains.
The interface — Triage
Every JD gets scored before anything else runs.
The triage step applies an HR rubric — location, salary floor, lane fit, applicant pool, disqualifiers — and emits a FIT, STRETCH, or SKIP verdict. Only FIT and STRETCH proceed to the tailoring pass. SKIPs auto-log with the verdict reasons.
Triages
7 decisions logged
| Employer | Role | Date | Verdict |
|---|---|---|---|
| Centro CX | Product Owner Digital CX (m/w/d) | 2026-05-23 | FIT |
| Alpine Fintech | Business Analyst Claims | 2026-05-23 | FIT |
| Solaris AG | Senior Product Manager (100%) | 2026-05-22 | SKIP |
| Neura Consulting | AI Domain Lead | 2026-05-22 | STRETCH |
| Pragma Engineering | Business Solution Architect – AI & UX | 2026-05-21 | STRETCH |
summit re
Senior Product Owner
The interface — Variant
Language toggle. Status tracking. PDF on the fly.
Each variant shows the tailored content with a DE/EN toggle. Status moves from draft through applied. The PDF renders on download — page-count cap and ATS extraction enforced at render time. If either check fails, the build fails.
Enforcement
What happens when a claim can't be traced.
Every fact in the CV has to link back to a source file. Sometimes the model produces a line that doesn't. Two options: refuse to generate the PDF, or generate it but flag the ungrounded line.
The engine flags. The flagged line becomes a ticket the operator has to resolve before the next run. Over time this makes the system sharper — every near-miss is logged, not silently swallowed.
What this proves
Not a side project. A way of working.
The engine solved my problem. The method behind it is what I'd bring to a client engagement.
Business problem first, technology second.
The starting point was "applications take too long and drift" — not "let's use Claude." Identify the pain, then design the solution.
Rules first, system second.
The constitution existed before the first line of code. Guardrails are designed in, not patched on after an incident.
Teachable, not bespoke.
The pattern is a methodology, not a one-off. A team can learn it, adapt it, and run it independently.