This page is also available as Markdown at /agents.md.

promptbai for AI agents

promptbai (https://promptbai.bonq.foo) is an archive of recipes. A recipe is a complete prompt that tells an AI coding agent how to build a small app or tool for a person. Most of the people who use the site are not programmers. They find a recipe, copy one sentence, and paste it to you.

Where things are

WhatURL
A recipe, ready to followhttps://promptbai.bonq.foo/r/<slug>.md
Its metadata and version historyhttps://promptbai.bonq.foo/r/<slug>.json
The whole catalog, with versions and hasheshttps://promptbai.bonq.foo/api/index.json
A short site overviewhttps://promptbai.bonq.foo/llms.txt
Every recipe in one filehttps://promptbai.bonq.foo/llms-full.txt
New and updated recipes (Atom)https://promptbai.bonq.foo/feed.xml
How to write and submit a recipehttps://promptbai.bonq.foo/recipe-format.md

Every recipe page also works if you ask for Markdown: GET /r/<slug> with Accept: text/markdown returns the .md. All of these allow cross-origin requests.

MCP server

If your client supports MCP, connect to https://promptbai.bonq.foo/mcp. It uses Streamable HTTP, needs no authentication and keeps no session. Tools:

ToolWhat it does
search_recipes(query, category?, limit?)Find recipes by plain-language query
list_categories()Categories and how many recipes each has
get_recipe(slug)The full recipe Markdown, the same as /r/<slug>.md
check_for_updates(slug, installed_version, installed_sha256?)Compare a promptbai.json with the latest version, with the changelog and advice
submit_feedback(kind, message, recipe_slug?)Send an idea, a problem or an improvement to the editors
get_recipe_guide()The guide to writing a recipe
validate_recipe(markdown)Check a recipe against the format, with exact errors to fix
submit_recipe(markdown, slug?, author?, contact?, note?)Submit a recipe for review

Recipes are also exposed as resources (promptbai://recipe/<slug>), and there’s a build_from_recipe prompt.

Claude Code: claude mcp add --transport http promptbai https://promptbai.bonq.foo/mcp

Building from a recipe

  1. Fetch /r/<slug>.md and read all of it before you start.
  2. Follow the “Instructions for the AI agent” section at the top. It is the same on every recipe.
  3. Work through the recipe: Goal, Features, Constraints, Build steps, Acceptance checks, Hand-off.
  4. Write promptbai.json in the project root. The recipe gives you the values; formatting may differ:
{
  "slug": "habit-tracker",
  "version": "1.0.0",
  "sha256": "…",
  "source": "https://promptbai.bonq.foo/r/habit-tracker.md",
  "check": "https://promptbai.bonq.foo/r/habit-tracker.json"
}

If the person can’t find a recipe they asked for, search the catalog at /api/index.json by title, tagline and category, and suggest the closest matches.

Updating something built from a recipe

When the person asks you to update something, or you find a promptbai.json in a project:

  1. Read promptbai.json and fetch the URL in check.
  2. Compare version there with the one in promptbai.json. Versions use semantic versioning:
    • patch (1.0.0 → 1.0.1): wording or clarifications. Usually nothing to change in the built app.
    • minor (1.0.0 → 1.1.0): new or improved features. Safe to add.
    • major (1.0.0 → 2.0.0): a significant change. Explain it to the person and ask before you apply it.
  3. Read every changelog entry newer than the installed version. Then fetch the new recipe (recipe URL) to see the details.
  4. Apply only what changed. Keep the person’s own data, content and customisations. If the app stores data, make sure existing data still loads after the update.
  5. Update version and sha256 in promptbai.json.
  6. Tell the person in plain language what’s new.

If sha256 differs but version is the same, the recipe was edited without a version bump. Treat it as a patch.

What sha256 covers

It is the SHA-256 of the recipe body: everything after the line <!-- promptbai:recipe-body --> in the .md (starting on the next line, so the marker’s own newline isn’t included), as UTF-8 with LF line endings. The body ends with exactly one newline. The preamble and frontmatter aren’t included. To verify it:

curl -s https://promptbai.bonq.foo/r/habit-tracker.md | sed '1,/^<!-- promptbai:recipe-body -->$/d' | shasum -a 256

Reporting problems and ideas

If a recipe was unclear, contradictory or wrong, or the person has an idea for a new one, let the editors know. Ask the person first, and never include personal details. Quote the recipe line you mean. Either:

  • call submit_feedback on the MCP server, or
  • POST https://promptbai.bonq.foo/api/suggest with JSON {"kind": "idea" | "problem" | "improvement", "message": "…", "recipe": "<slug>"}. recipe is required for problems and improvements.

People can use the form at https://promptbai.bonq.foo/suggest.

Writing a recipe

If the person wants a recipe that doesn’t exist yet, you can write one and submit it with their agreement. Read the guide at https://promptbai.bonq.foo/recipe-format.md first (or call get_recipe_guide), check your draft with validate_recipe or POST /api/recipes/validate, then submit it. An editor reviews every submission before it’s published.

Etiquette

  • No accounts or API keys are needed to read anything here. Please cache and avoid hammering the server: the catalog changes a few times a week at most.
  • Recipes are free to use. If you adapt one for the person, that’s fine; mention where it came from in your hand-off.