{
  "schema": "leumas.docs.page/1",
  "id": "adapter:domain/a-generator",
  "slug": "adapters/domain/a-generator",
  "kind": "capabilities",
  "bucket": "package",
  "title": "a-generator (adapter system)",
  "name": "a-generator",
  "eyebrow": "adapter system",
  "chip": null,
  "summary": "LLM prompt-spec generators: 20 structured generators (API/database/CI-CD/microservice/schema scaffolds, docs, release notes, SLOs, postmortems, roadmaps, meal/workout plans...",
  "keywords": [
    "a-generator",
    "prompt-spec",
    "user-story",
    "generators",
    "meal",
    "a generator api",
    "leumas a generator",
    "workout"
  ],
  "audience": "both",
  "funnel": {
    "product": null,
    "cta": null
  },
  "body": "# a-generator (adapter system)\n\nLLM prompt-spec **generators**. Ported from `leumas-middleware/lib/a.generator` — 20 structured\ngenerators. Stripped: express `server.js`/`router.js`, `public/`, `data/`, `docs/`.\n\nEach source spec (`export default { id, model, temperature, inputSchema (zod), fields, prompt }`) is\npreserved under [`./adapters`](./adapters). A tool call validates `args` against the spec's zod\n`inputSchema` (when present) and returns the **resolved prompt spec** —\n`{ id, name, model, temperature, system, fields, input, prompt }` — leaving actual inference to the\ncaller / LLM runtime (Leviathan / `@leumas/chatbots`). This keeps the port lightweight (no model\nweights, no ollama runtime bundled).\n\nSpecs are imported **lazily** (dynamic import per tool) because they depend on `zod`, so the system\nloads and lists its tools even before zod is installed; the dependency is only needed when a generator\nis invoked.\n\n> Dependency: `zod`.\n\n## Tools (`adapters`)\n\nab-test-idea-generator, api-endpoint-generator, cicd-pipeline-generator, cloud-cost-estimator,\ndatabase-schema-generator, documentation-writer, hiring-test-generator, incident-postmortem-draft,\nmeal-plan, microservice-idea-generator, on-call-schedule-generator, product-roadmap-draft,\nrelease-notes-generator, slo-generator, social-media-post-generator, startup-idea, tshirt-idea,\nunit-test-generator, user-story-generator, workout-plan.\n\nExample — `adapters['meal-plan']({ diet: 'Vegan', calories: 2200 })` returns\n`{ id, model, temperature, system, fields, input, prompt }` where `prompt` is the fully-built prompt\nstring ready to send to the model.\n",
  "source": {
    "path": "shared/engines/adapters/domain/a-generator/README.md",
    "blobSha": "",
    "commit": "",
    "committedAt": "",
    "provenance": "no-git",
    "bytes": 1829,
    "hash": "46b706566527cbf116f97be0c769a1ef92be88d0"
  },
  "urls": {
    "html": "/p/adapters/domain/a-generator",
    "json": "/docs/adapters/domain/a-generator.json",
    "md": "/docs/adapters/domain/a-generator.md"
  },
  "links": {
    "composes": [],
    "usedBy": [],
    "product": [],
    "howTo": [],
    "skills": []
  }
}
