Skip to content

The cookbook

The cookbook is a set of markdown recipes your agent retrieves on demand. Recipes are written by us — humans, working from real deploys — and applied with your agent’s judgment.

  • Topical recipesWORKFLOW-DEPLOY, WORKFLOW-DEBUG, WORKFLOW-OPS, SECRETS, APPS, DEPLOY-KEYS, REPO-DIGEST, WORKFLOW-VERIFY. These cover the cross-cutting flows your agent runs into on every project.
  • Stack-specific recipesnextjs.md, astro.md, fastapi-celery.md, compose-monorepo.md, gin.md, bun-hono.md, and growing. Each captures the gotchas of one runtime so your agent doesn’t relearn them.

When your agent calls nyx_deploy_start, we send back the topical workflow + the matching stack recipe. When it calls nyx_help, we send back whichever recipe addresses the specific question.

We don’t ask an LLM to write the recipe at runtime. Three reasons:

  • Predictability. A recipe that worked yesterday works today. No silent drift between deploys.
  • Debuggability. When something goes wrong, we can read the exact text the agent saw and reason about why.
  • Version-pinning. Recipes ship with the backend release. If we change the deploy flow, the recipe and the platform move together — no agent rebuild needed on your side.

The recipe is a suggestion shaped by experience, not a fixed sequence. When your agent sees something the recipe didn’t anticipate — a non-standard build config, a missing secret, a registry the recipe doesn’t know — it deviates. We never force a state machine.

That’s the trade-off: outputs aren’t byte-identical across runs, but they’re outcome-equivalent. Two deploys of the same repo by the same agent both end with App Available, Ingress reachable, docs present.

Recipes are agent-facing — written in the imperative second person, addressed to the agent reading them. You don’t browse them on this site.

If you want to see what your agent saw on a particular deploy, ask the agent — Nyxory shows the recipe content as part of nyx_help responses, and most clients let you inspect MCP tool results.

Next: Deploy a Next.js app →