Skip to main content

Requirements Markup Language

An LLM-first (but human readable) software requirements format that captures your intent and turns it into long-term project context.

RQML is the missing piece in your LLM workflow.

RQML workflow illustrating goals, requirements, and verification

RQML is requirements engineering done properly - benefiting LLMs and humans alike.

RQML features illustration

Start right now

  1. Create one .rqml file in your project root (by convention requirements.rqml, or a descriptive name like myapp.rqml)

  2. Download AGENTS.md to your project root—it tells your LLMs to follow spec-first development

  3. Develop with your coding agent of choice and it will use RQML as the source of truth for system intent

Start minimal. Grow as the system grows. Let the structure do the hard work.

Hello world RQML example

<rqml xmlns="https://rqml.org/schema/2.1.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="https://rqml.org/schema/2.1.0
      https://rqml.org/schema/rqml-2.1.0.xsd"
    version="2.1.0" docId="DOC-HELLO-001" status="draft">
<meta>
  <title>Hello World CLI</title>
  <system>hello</system>
</meta>
<requirements>
  <req id="REQ-HELLO-001" type="FR" title="Print greeting"
       status="draft" priority="must">
    <statement>
      The program MUST print "Hello, world!" to standard output
      and exit with status code 0.
    </statement>
  </req>
</requirements>
</rqml>

Try RQML on your next project.

Put your intent in the repo. Make LLM output calmer, cleaner, and easier to trust. And finally start doing requirements right.