← Back to The Holocron
Mastering the Digital Force

Why Markdown Files Matter for AI

A practical guide to .md files: what Markdown is, how it gives projects clearer context, and where README.md, AGENTS.md, and SKILL.md fit into working with AI.

Published Last updated ·8 min read·Jed Langer

A lot of the conversation around AI focuses on the model. Which one writes better code? Which one reasons better? Which one has the newest tools?

There is another question worth asking: what information are we giving it to work with?

An agent can have access to a project and still miss what matters. It might see the files without knowing which commands to run, which business definitions to use, or what a finished result should look like.

A well-written Markdown file gives you a simple place to capture that context. You can read it, edit it, share it, and keep it alongside the work.

What Is a Markdown File?

Markdown is a way to structure plain text using a few familiar characters. Files commonly use the .md extension. Open one in a text editor and you see the text itself; open it in a Markdown preview and you see formatted headings, lists, links, and code examples.

For example, a file named project-notes.md could contain:

# Customer Support Agent

## Purpose
Help employees find answers in approved policy documents.

## Source material
- Employee handbook
- Benefits guide
- Leave policy

## Expected behavior
Answer clearly and identify the policy that supports the response.

The # creates a main heading. ## introduces a section. The dashes create a list. You can also use **bold text**, links, and code blocks. The CommonMark reference provides a short guide to these basics.

The useful part is how little gets between you and the information. You do not need a special document editor to make a meaningful change.

Why It Fits So Well With AI Work

Working with AI often involves explaining the same things repeatedly: what the project does, where the important files live, what rules apply, and how to check the result.

Putting stable context in a file makes that information easier to reuse and maintain. Instead of reconstructing an explanation from an old conversation, you can point to the current document.

That also helps the people working on the project. A teammate can review the same guidance, question an assumption, or propose a change. In Git, those edits can be tracked alongside the code they describe.

The file does need to reach the agent. A document sitting somewhere on your computer is not automatically available to every AI tool. You may need to attach it, explicitly ask the agent to read it, or use a filename and location that the tool recognizes.

README.md, AGENTS.md, and SKILL.md

These files can all use Markdown, but they serve different purposes.

README.md: Explain the Project

A README.md usually introduces a project to someone opening it for the first time. It can explain what the project does, how to set it up, and where to start.

Think of it as the front door. A useful README helps someone get oriented before they make changes.

AGENTS.md: Give Project Guidance

For tools that support it, an AGENTS.md file supplies instructions for working in a repository. In Codex, it can hold recurring guidance such as build commands, test expectations, and project conventions. OpenAI recommends keeping it focused and updating it when recurring feedback reveals a missing instruction. See the official customization documentation.

A small example might look like this:

# Project Guidance

## Where things live
- Pages are in src/app.
- Shared components are in src/components.
- Blog articles are in content/blog.

## When editing content
- Preserve existing URLs unless a redirect is included.
- Match the site's existing article metadata.
- Check the rendered page after editing.

## Before finishing
- Run the relevant project checks.
- Summarize the change and any unresolved issues.

Those are example conventions, not universal rules. The commands and paths should reflect the actual project.

SKILL.md: Describe a Repeatable Workflow

A skill packages a procedure an agent can reuse. In Codex, a skill includes a SKILL.md file with a name, description, and instructions; it can also include supporting references, scripts, or assets. The description helps the agent determine when the skill applies. The official skills overview explains how this works.

For example, a simplified business-brief skill could begin with:

---
name: create-business-brief
description: Turn available analytical results into a clear business brief. Use when someone needs a summary of metrics and findings.
---

1. Confirm the audience, reporting period, and question the brief should answer.
2. Use the supplied results; identify missing data and check the totals.
3. Select the key metrics and suitable charts or tables.
4. Write a summary supported by those results.
5. Apply the agreed layout and include the data's effective date.
6. Deliver the brief in the requested format, then revise from feedback.

That is an example of the document's contents. To use it as a skill, it must also be placed and configured according to the agent tool's supported conventions. Renaming an ordinary note SKILL.md does not make every application discover it.

Example: A Reusable Business Brief

Consider a hypothetical weekly operations brief. An agent could organize supplied metrics, analysis, and an executive summary into an HTML report using a reusable set of instructions.

The skill could specify the sections, KPI tiles, chart conventions, and presentation rules. The workflow would also need a clear definition of its inputs and a way to identify missing or inconsistent data.

Refinements belong in the instructions: choosing a more readable chart, clarifying a data check, or testing the layout in the intended delivery format. Saving those changes in the skill gives the next run a consistent starting point.

An agent with access to that skill could apply it to analytical results already in the conversation. The same procedure can be reused across reporting requests.

What a Brief Generator Can Capture

A generic browser-based brief generator makes the idea concrete. It can give the agent a repeatable procedure for:

  • Understanding the request: Establish the reader, reporting period, and main question. An executive may need a concise overview; an analyst may need supporting detail.
  • Working with available results: Use data already returned by a query, supplied by the user, or produced in the agent's analysis. Retrieving new data is a separate step that needs the appropriate connected tools.
  • Checking the inputs: Reconcile totals, identify missing information, and distinguish the date the data represents from the date the brief is generated.
  • Choosing the presentation: Put the important metrics in KPI tiles, use charts suited to the comparison, and include tables where readers need the detail.
  • Explaining the findings: Write an executive summary that reflects the supplied results and gives the reader a clear account of what changed.
  • Delivering and refining the output: Produce the agreed report format, then revise the emphasis, charts, or layout using the reader's feedback.

For example, someone could ask for a weekly operations brief for a department manager. The agent could take the available results, highlight the main changes, organize the supporting charts, and return an HTML document for browser viewing. The next request might change the period or audience while reusing the same presentation rules.

The delivery format matters. A browser report can include interactive charts; an email brief needs a layout and visuals that work in the email client. An email workflow should include checks in its intended email client. State those requirements in the relevant skill rather than assuming one HTML layout will work everywhere.

I think of a skill as a reusable capability the agent can reach for. A formatting skill can work entirely from data already in the conversation. If the wider workflow queries a warehouse or sends a brief, connected tools perform those actions. The Markdown file describes the procedure; it does not execute the actions or grant access itself.

Continue saving and refining the instructions as improvements are identified. That iteration is the useful part: a correction to a graph, a missing data check, or a clearer layout becomes guidance for the next brief.

Write Instructions Someone Can Actually Follow

The quality of the writing matters more than the extension.

“Make the answer good” leaves a lot open to interpretation. “Answer the question, identify the supporting policy, and say when the source does not contain an answer” gives the agent a clearer target.

A useful instruction file answers a few concrete questions:

  • What is this work meant to accomplish?
  • Which sources should it rely on?
  • What steps or conventions matter?
  • How will we check the result?

Keep it focused. Link to detailed reference material when needed, and revise instructions when the process changes. Conflicting or outdated guidance can create extra work even when it is neatly formatted.

Markdown provides structure; the surrounding tools and workflow determine how that structure is used. Writing a rule in a file does not retrain a model or guarantee that it follows the rule. Checks and review still matter.

Start With One File

You do not need a large documentation system to begin.

Pick one task you repeat. Write down its purpose, the information it needs, the steps involved, and what a successful result looks like. Save that as a Markdown file. Give it to your agent deliberately, try the workflow, and improve the instructions based on what happens.

That is the value I see in Markdown: it makes useful knowledge easy to put into words, keep close to the work, and improve over time. As agents take on more of the work inside our projects, giving them clear context becomes part of the engineering itself.

MarkdownAI AgentsProject DocumentationAgent Skills