Architecture
GenAI Generation

GenAI Generation

Post generation, canvas iteration, and auto-proofreading are all powered by Amazon Bedrock (eu.anthropic.claude-sonnet-4-6, per customer_specs.yaml). Although Bedrock and the shared client library support token-by-token streaming, none of the GenAI endpoints use it: API Gateway's HTTP API doesn't support Lambda response streaming, so common.bedrock.generate always blocks until Bedrock finishes and returns the full text in a single buffered response.

Generation inputs

When an editor generates a post from an idea, the GenAI handler assembles a prompt from:

  • the idea (title, description, tags);
  • a prompt template chosen for the workspace (or the default);
  • the workspace's target audience and language settings;
  • a selection of example posts that ground the output in your voice and best-performing style.

Example selection

Rather than sending every example, the handler selects a relevant subset of example posts to keep the prompt focused and within context limits. Examples act as few-shot references so generated drafts match the tone and structure that performs well for the workspace.

Streaming protocol

Generation and iteration are not streamed to the client. Each call blocks until Bedrock returns the complete text, then the full result comes back in a single JSON response — there is no incremental/partial rendering while the model is still generating. See GenAI § Streaming is not wired up for the product-facing description of this same behavior.

Canvas iteration

Inside the canvas editor, the GenAI side panel lets an author iterate on the current post: give an instruction ("make it punchier", "add a hook", "shorten to 3 lines") and Bedrock rewrites the content. Each accepted iteration is captured as a post version.

Auto-proofreading

Auto-proofreading runs the current draft through Bedrock to surface grammar, clarity, and tone issues with suggested fixes. Suggestions are presented inline; the author's text is only changed when a suggestion is accepted.