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.

init.md is designed to be run by anyone — you read it, follow the six stages, and adapt what applies to the target. There is no fixed scaffold to install and no tool to run. The procedure itself is the instruction: inspect what exists, determine what is needed, create and configure only what applies, validate the result, and report the operational state.

How to use init.md

1

Identify the target

Name what is being initialized, where it lives, what operational means for it, and any constraints. Record the target’s intended function, its current location or environment, its expected users or operators, its desired operational result, and any explicit constraints supplied by the user, project, or environment. A clear target description prevents unnecessary work in later stages.
2

Choose the closest template

Use init.md for the general method when no specific template fits. Use a complete template when the target has a clear type. The five canonical templates cover the most common target categories — pick the one that best matches what you are initializing.

Minimal

Smallest reasonable initialization for a narrow operational gap. Use when one missing artifact or setting may be enough.

Dry Run

No-change inspection and proposed initialization plan. Use when you want to understand required work before making changes.

Development Project

Software projects, repositories, apps, packages, CLIs, websites, and monorepos. Use for codebases.

Agent

Agent instructions, tools, prompts, state, and startup validation. Use when the target is operated by an AI agent.

Server

Server, service host, infrastructure, and deployment readiness. Use for host or deployment targets.
3

Copy or adapt the template

Copy the Markdown body of the selected template, then adapt it to the actual target. Remove sections that do not apply. The resulting instructions should be specific to this target — not a generic checklist that will be copied forward unchanged.
4

Run the procedure

Inspect what exists, decide what is missing, create or configure only what applies, then validate it. Follow the six stages in order: INSPECT, DETERMINE, CREATE, CONFIGURE, VALIDATE, REPORT. Do not skip validation and do not declare success without a relevant check connected to the target.
5

Review the validation result

Check the result state reported at the end of the procedure. The root protocol defines four result states:
  • OPERATIONAL — the target is ready with no outstanding issues
  • OPERATIONAL_WITH_WARNINGS — the target is ready but some issues remain noted
  • BLOCKED — initialization could not complete due to a missing requirement
  • DRY_RUN_COMPLETE — the procedure ran in dry-run mode; no changes were made
6

Keep the result specific

The resulting instructions should explain this target, not be a generic checklist copied forever. A useful init result is one that a future reader or operator can use to understand and reproduce the operational state of this specific target.

Template selection guide

Choose the template whose description most closely matches the target. When in doubt, use the minimal template or the root init.md protocol.
TemplateUse when
MinimalThe target has one clear gap — a missing file, setting, or instruction is likely enough
Dry runYou need a no-change planning pass — inspect and propose without modifying anything
Development projectThe target is a codebase — a repository, app, package, CLI, website, or monorepo
AgentThe target needs agent instructions, tools, prompts, or state
ServerThe target is a host, service, or deployment that requires infrastructure readiness checks
None fitsCopy init.md itself and write a short target-specific initialization plan before making changes

Example instructions

These example instructions can be given directly to another person or to an AI agent to initiate the procedure:
Use the complete init.md procedure to inspect this target, initialize what applies, validate it, and report status.
Use the complete development project init template to initialize this repository and validate the developer workflow.
Use the complete dry-run init template to inspect this target and report proposed init work without changing files.
Use the complete agent init template only if this target needs agent instructions, tools, prompts, or state.

Completion review

Before calling a target operational, confirm the final report answers all six questions:
  1. What target was initialized?
  2. What was inspected?
  3. What was created or configured?
  4. What validation was run?
  5. What remains incomplete or blocked?
  6. Where are the important outputs?
If any question cannot be answered from the report, the procedure is not complete.
Keep only what applies to this specific target. The resulting init.md should explain this target, not repeat a boilerplate checklist.

Build docs developers (and LLMs) love