Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/bitwikiorg/init.md/llms.txt

Use this file to discover all available pages before exploring further.

Templates are complete, concrete initialization procedures for recognized target categories. Where the root init.md stays target-neutral — identifying the target, choosing a pattern, applying what applies, and validating the result — templates make those decisions explicit for a specific kind of thing. Use a template when the target has a recognizable type and the generic protocol would require extensive on-the-spot adaptation.

How templates relate to the root protocol

The root init.md defines the general six-stage procedure: inspect, determine, create, configure, validate, report. It makes no assumptions about what the target is, what files it needs, or what commands prove it is operational. That generality is intentional — the same procedure covers a local directory, a running service, an AI agent workspace, and a multi-package monorepo. Templates specialize the procedure for common target categories. They describe what to inspect, what artifacts are conditionally appropriate, what configuration applies, and what validation proves readiness — all scoped to one recognizable class of target. A template is not a mandatory output bundle. It is a concrete initialization pattern that you copy, adapt, and run.

Template structure

Every template file contains two parts: a frontmatter metadata block and a protocol body. The frontmatter declares:
FieldDescription
nameHuman-readable name of the template
targetThe type of target this template fits
purposeWhat the template accomplishes
modeSupported execution modes (active, dry run, repair, reinitialize)
createsArtifacts conditionally created by the procedure
configuresElements the procedure configures
validatesChecks that prove readiness
optional_outputsAdditional outputs that may apply
The protocol body defines each stage — INSPECT, DETERMINE, CREATE, CONFIGURE, VALIDATE, REPORT — with target-category-specific guidance. Outputs listed in the template are conditional: the procedure decides whether each one applies to the actual target.

How to use a template

  1. Identify the target and confirm it matches the template’s target description.
  2. Copy the template body (everything after the frontmatter).
  3. Adapt it to the specific target — remove inapplicable stages or conditions, add target-specific constraints.
  4. Run the six-stage procedure in the appropriate mode.
  5. Review the validation result and keep the resulting init.md with the target.
Example instructions:
Initialize this repository using the development-project template.
Inspect this server using the server template in dry-run mode.
Determine what this agent workspace needs to become operational.

Available templates

Minimal

Smallest reasonable initialization for targets with a narrow operational gap. Applies one missing requirement, validates it, and reports.

Dry Run

No-change inspection and planning. Produces a proposed initialization plan without creating files, touching services, or writing configuration.

Development Project

Software projects, repositories, applications, packages, CLIs, websites, and monorepos. Initializes the developer workflow from manifest to validation command.

Agent

AI agents, agent workspaces, tool-using assistant environments, and automation workers. Creates only the instruction and context artifacts the agent target actually needs.

Server

Servers, service hosts, production infrastructure, and deployment environments. Inspects host state, services, networking, secrets, and deployment readiness.
A template may be used directly, adapted, or combined with compatible sections from another template when the target requires it.
If no template fits, copy init.md itself and write a short target-specific init plan before making changes.

Build docs developers (and LLMs) love