AI & RAG

Nightly postmortem indexer for runbook retrieval

On a nightly schedule, pulls new and updated incident postmortems from Confluence, chunks and embeds them.

CategoryAI & RAG
Enginesim
Difficultyintermediate
Triggerschedule
Steps5
Setup~15 min

How it runs

The automated pipeline, trigger to output.

  • TriggerNightly schedule fires
  • ActionQuery Confluence for postmortems modified since last syncConfluenceConfluence
  • ActionChunk pages and generate embeddingsOpenAI
  • ActionUpsert vectors and citation metadata into PostgresPostgreSQLPostgres
  • OutputPost indexing summary to Slack ops channelSlack

What it does

Keeps the knowledge base behind your on-call RAG assistant current. Each night it ingests postmortems edited or created since the last run, splits them into retrievable chunks, generates embeddings, and upserts them into the pgvector store — with metadata for citation links.

When to use it

Run this as the foundation under any postmortem-RAG workflow. Use it when postmortems live in Confluence and get written continuously, so manual re-indexing isn't realistic. It is the upstream job the answer bots depend on.

How it works

  1. 1A nightly schedule triggers the run.
  2. 2The workflow queries Confluence for postmortem pages modified since the last successful sync timestamp.
  3. 3Each page is cleaned, chunked, and passed through an embedding model.
  4. 4Vectors plus source metadata (page ID, title, URL) are upserted into Postgres, replacing stale chunks for updated pages.
  5. 5A short summary of pages indexed and skipped is posted to a Slack ops channel for an audit trail.

Set it up

What you configure once, before turning it on.

  1. 1
    Connect ConfluenceSpaces, pages, blueprints.
  2. 2
    Connect OpenAIModels, embeddings, files.
  3. 3
    Connect PostgresAny Postgres URL — query, write, migrate.
  4. 4
    Connect SlackChannels, DMs, threads, mentions.
  5. 5
    Set each agent's modelWe leave models unset so you pick the tier — fast + cheap, or top-quality.
  6. 6
    Tune it to your dataEdit the prompts, filters, and field mappings so it matches how your team works.
  7. 7
    Test, then turn it onRun once against a sample, confirm the output, then enable the trigger.

Run this workflow in your colony.

14-day trial. No DevOps. No Sales call. Provisioned in under a minute.