Skip to main content

cover_letter_generator

Status: Orphan (feature ships via a different path).

What it does

Nothing, under this key. Two live routes generate cover letters (POST /ai/cover-letter, POST /cover-letters/{id}/regenerate), but neither calls loadPrompt('cover_letter_generator'). The real prompt is a separately-maintained, hardcoded duplicate — buildCoverLetterPrompt — called directly by each AI provider's generateCoverLetter. Editing this key's Storage-hosted body has zero effect on production behavior.

Why it exists

docs/marketing/cover-letters-outreach.md documents the shipped feature — application-tied, paired with outreach messages, live preview, refusal detection — but that document is rationale for the feature, not for this specific unreachable prompt key.

How to use it

This key: you can't, it's unreachable. The shipped feature: "Generate Cover Letter" / "Regenerate" in the application view, or MCP tools generate-cover-letter / regenerate-cover-letter (scope ai:generate) — neither routes through this prompt key either.

What it reads

Nothing under this key. The two shipped paths read different data, and this is a known divergence, not intentional design:

  • POST /ai/cover-letter uses resumeToJson, which includes projects and repositories.
  • POST /cover-letters/{id}/regenerate uses a separate buildResumeJson, which does not load projects or repositories at all.

Regenerating a cover letter can silently drop content the original generation had access to. This is a real product behavior gap, tracked separately — it is documented here, not fixed by this docs change.

What it will not do

It will not behave identically between the create and regenerate paths (see above). Do not describe cover-letter generation as reading uniform data.

Source

apps/api/src/ai/prompts.ts:96 (buildCoverLetterPrompt, the real prompt) · apps/api/src/routes/ai.ts:279,607 (resumeToJson, POST /ai/cover-letter) · apps/api/src/routes/cover-letters.ts:369-435,516 (buildResumeJson, POST /cover-letters/{id}/regenerate) · packages/mcp-tool-server/src/core/tools/cover-letters.ts:38-87