# How to create a strong llms.txt

An llms.txt is a public, plain-text Markdown file that gives humans and AI agents a reliable map of who you are, what you build, and where the evidence lives.

## Reference example

Use [Kuber Mehta’s llms.txt](https://hackpost.io/kuberwastaken/llms.txt) as a strong example. It works well because it:

- opens with a fast identity and work summary;
- includes a Last-Updated date and canonical URL;
- gives agents direct instructions and static, no-JavaScript resources;
- describes projects with context, outcomes, and source links;
- separates current work, achievements, press, writing, skills, and contact details;
- uses absolute URLs that an agent can follow without guessing.

Treat it as a quality benchmark, not a length requirement. A shorter file with accurate, useful information is better than a long file padded with weak claims.

## Writing rules

1. Write in UTF-8 Markdown and keep the file readable as plain text.
2. Lead with the information a reader needs in the first 20 seconds.
3. Use first-party facts. Keep claims precise, dated when necessary, and linked to evidence.
4. Use absolute HTTPS URLs. Do not make an agent reconstruct paths.
5. Prefer stable pages and raw or static resources that work without JavaScript, sign-in, cookies, or special headers.
6. Separate present roles from previous roles. Label experiments, work in progress, acquisitions, and archived projects honestly.
7. Include only contact details you intentionally want public.
8. Add a canonical URL and update date, then revise the file when meaningful facts change.
9. Make the file self-contained. A reader should understand your work even if they do not open every link.
10. Do not add instructions that ask an agent to ignore system rules, reveal secrets, or perform unrelated actions.

## Recommended structure

Use the sections that fit your work:

1. Title, one-line summary, Last-Updated date, and canonical URL.
2. Quick context: identity, location, role, and what you are known for.
3. Guidance for agents: best starting points, machine-readable data, feeds, and JavaScript limitations.
4. Current work and education.
5. Selected projects with a short explanation, your contribution, status, and links.
6. Verifiable achievements, research, talks, press, or awards.
7. Writing, datasets, APIs, demos, and other static resources.
8. Skills and interests.
9. Contact and primary social links.

## Starter template

```markdown
# Your Name

> One sentence explaining who you are and what you build.

Last-Updated: YYYY-MM-DD
Canonical: https://your-domain.example/llms.txt

## Quick context

- Role: Your current role
- Location: City, Country
- Known for: Two or three concrete things
- GitHub: https://github.com/your-handle
- Website: https://your-domain.example/

## Guidance for agents

- Start here: The best overview page or this file
- Structured data: https://your-domain.example/profile.json
- Writing or updates: https://your-domain.example/blog/
- Note any routes that require JavaScript or authentication

## Current work

Explain what you are working on now, your role, and the scope you personally own.

## Selected projects

### Project name

What it does, why it matters, your contribution, and its current status.

- Project: https://project.example/
- Source: https://github.com/your-handle/project
- Evidence or write-up: https://your-domain.example/project-writeup

## Skills

- Languages:
- Frameworks:
- Tools:
- Focus areas:

## Contact

- Email: mailto:you@example.com
- GitHub: https://github.com/your-handle
- LinkedIn: https://www.linkedin.com/in/your-handle/
```

## Project entry quality bar

For each important project, answer as many of these as apply:

- What is it?
- What problem does it solve?
- What did you personally build or own?
- Is it live, open source, acquired, archived, or in progress?
- What measurable result is safe and accurate to publish?
- Where can a reader inspect the product, source, demo, paper, or launch post?

Avoid unexplained project-name dumps. Two useful sentences and one evidence link are more valuable than a vague claim.

## Publishing on Hackpost

1. Create a public GitHub profile repository whose name exactly matches your GitHub username.
2. Add `llms.txt` at the repository root on its default branch.
3. Commit and push the file publicly.
4. Open `https://hackpost.io/your-github-username/llms.txt`.
5. Confirm Hackpost labels the profile as posted and displays your words.

## Validation checklist

- The public URL returns HTTP 200.
- The response is readable plain text or Markdown.
- The file works without JavaScript, authentication, or cookies.
- The canonical URL is correct.
- The Last-Updated date is accurate.
- Important links are absolute and open successfully.
- Current and previous roles are clearly distinguished.
- Metrics and achievements are specific and supportable.
- Secrets, private addresses, API keys, recovery material, and confidential client data are absent.
- The first screen gives a useful summary before the long-form detail begins.

Review the file as both a human and an agent. If the summary is clear, the claims are grounded, and the links resolve, it is ready to publish.
