İskele
Docs

Kit manifest — what each piece contains

Mirrored from the skill package. This is the canonical English text that Claude actually loads, published here so it can be read next to its Turkish mirror instead of only on GitHub. Edit the source above, not this page; the Turkish mirror is docs/tr/kit-manifesti.md.

Kit manifest — what each piece contains, and why it exists

The templates live under assets/templates/. This document gives each piece’s purpose and its filling rules; the templates give the skeleton.

On a small project you may skip a piece — but write down in 00 that you skipped it, and why.

File names below follow the templates and are examples. Produce the kit in the user’s language; keep the order and the fields unchanged.


00 — Guide (00-BASLA-rehber.md) · required

The map of the kit. Contains: the file table (what each file is for, when it is used), the recommended reading order, and the working-discipline rules.

Discipline items (at least these):


01 — Architecture and data model · required

See domain-model.md. Contains: the domain split and its rationale, entities and relationships (preferably DDL), the technology choices and why they were chosen, deliberate trade-offs.

Rule: every technology choice must be tied to a constraint (“because it is on-prem and AD is mandatory, …”). A choice that cannot be tied to a constraint is a preference; mark it as one.


02 — Roadmap · required

Phases, gates, dependency chain.

Per phase: purpose, scope, out-of-scope (explicit), exit criterion, rough effort. Per gate: the milestone name and a pointer to its go/no-go.

Rule: phases are a dependency order, not a calendar. Apply the test “the next phase’s data to record comes from the previous one”.

When giving effort: state the basis (a bottom-up sum of tasks, or a top-down estimate), mark that it is uncalibrated, and write that you will recalibrate after the first phase.


03 — Backlog (03-gorev-listesi.md) · required

Format (the generator depends on it — see tracking.md):

### Epic F1.2 — Process & steps
- [ ] **F1-BE-04** (M) Process CRUD API. **Dep.:** F1-BE-02, F1-BE-03
  - *Acceptance:* Creating and editing a process works with the permission
    check; it starts as a draft.

Required fields: ID, estimate (S|M|L), title, dependency, acceptance criterion.

The acceptance-criterion test: can I verify this by running it? If not, rewrite it.

Bad Good
“Search works well” “Searching by a word in the title returns results; results from an unauthorised unit do not appear”
“Security is added” “An unauthorised request gets 403; a request with no token gets 401”

Estimate scale (default): S≈0.75, M≈1.5, L≈4 work-days. It can change per project, but it must be the same in the backlog, the tracker and the generator.


04 — Quality gates · required

Two sections:

Definition of Done (DoD) — applies to every task. Core items:

Phase go/no-go — concrete, individually checkable items per gate. Every gate must include the domain model’s critical invariant (e.g. the freezing test).


05 — Dev setup · optional (but needed on most projects)

Prerequisites with versions, folder structure, step-by-step setup commands, a verification command (“run this, you should see that”), common problems.


06 — Risks and decisions · required

Risk register: risk, impact, likelihood, mitigation, status. Live for the whole project.

ADR (decision record): for each architectural decision, status → context → options considered → decision → rationale → consequence. When you change a decision, do not delete the old one: a new ADR is written and the old one’s status becomes superseded → ADR-x. When a route is blocked, write an ADR saying “tried it, it did not work, because…” — an unrecorded negative finding means walking into the same wall a second time.

The status vocabulary is fixed — proposed · accepted · rejected · deprecated · superseded → ADR-x. An open-ended status field becomes a field where everyone writes their own word and nothing can be compared. accepted is immutable in practice: if a live ADR can be quietly edited, the reader six months from now cannot tell which decision was taken when, and the collection’s only claim to trustworthiness is gone.

Options considered is its own section, not a clause inside the rationale. The most expensive part of a decision is the road not taken, and folded into “rationale” it is the first thing trimmed. Doing nothing is on the list — it is often the real competitor.

scripts/check_adr.py enforces the mechanical half: the vocabulary, forward pointers that actually resolve, a superseded chain that does not loop or end with nothing in force, and at least two options per decision. It cannot tell whether a decision was right — no script can — which is exactly why the parts it can check should not be left to prose.


07 — Progress report (.html) · required

The high-level view. Numeric regions sit between GEN:...:BEGIN/END markers; the generator touches only those. Sections: summary indicators, phase cards, effort-weighted epic bars, the gate/phase timeline, risks, the ADR list.

Rule: the report is a derivative of the tracker. If they contradict, the tracker is right and the report is corrected. Every number in the report is either computed or marked as an estimate.


08 — Tracker (tracker.xlsx) · required

The backlog row by row, plus Status/Owner/Date/Note. The Ozet (summary) sheet computes with formulas — do not type numbers into it. Schema: tracking.md.


09 — Onboarding (08-onboarding.md) · optional

Fifteen minutes of context for someone joining: what we are doing, the single most important idea to understand (the domain split), the stack, the critical rules, the reading order, and a “which question lives in which file” table.


10 — Recovery ramps (09-kurtarma-rampalari.md) · required

The counterpart of piece 04. The quality gates define “done”; this defines what happens when done does not arrive — a task that will not close, a passed gate that stopped holding, a finding with no task, an intent that moved mid-build.

It is required for the same reason 04 is: without it, the answer to “it isn’t working” is improvised by whoever is at the keyboard, and the most common improvisation is the cheapest one — loosen the criterion, mark it done, move on. That is not a discipline problem, it is a missing document.

Contents: a coded ramp table (RR-nn, so a ramp is quotable in a commit message rather than being a paragraph nobody cites), long-form entries for the two or three most often misapplied, and the phase-close process scorecard that sits beside the go/no-go.

Adapt it; do not paste it. Drop the ramps that cannot occur on this project and add the ones this domain forces — and write down which were dropped and why, the same rule the manifest applies to skipped pieces. Every ramp names an output artifact: a ramp with no output is advice, and this kit is not an advice document.

Written at step 5, next to the quality gates. Procedure and the full ramp set: references/recovery.md.


11 — Agent signpost (AGENTS.md) · required

The machine-facing entry point. 00 is the human’s map of the kit; this is the agent’s, and they are not the same document — an agent needs the build command, the boundaries and the definition of done, not a reading order.

It is a signpost, not a rule store. Every rule already lives in a kit file; this points at it. That matters because a second copy of a rule is a second copy that can go stale, and the one an agent reads first is the one that wins. So the file carries the conflict rule explicitly: if this contradicts the kit, the kit wins — and report the contradiction. Silently obeying one of two conflicting sources makes both wrong.

AGENTS.md is a cross-tool convention rather than this project’s invention: the format came out of work by several agent-tool teams and is now stewarded by the Agentic AI Foundation. Emitting it means the kit is legible to whichever agent the team actually uses, not only the one that produced it. In a monorepo the closest AGENTS.md wins, so a sub-package that needs different rules gets its own.

Keep it short — start at 30-50 lines and add a section only when an agent repeatedly makes the same mistake. A long signpost is a rule store wearing a different name, and it will drift from the kit it was supposed to point at.


Quality control — before the kit is handed over