Slide decks with a team of Grok Bots

My avatar, the same illustration as on my About page

I really like my current workflow with Grok Bot. Instead of one assistant that does everything, I work with a small team of bots that each have one job. This page shows who does what, how the work flows between them, and one real project: the 2027 budget deck for my council group, the UWG Halver.

The team

Shaka

My primary bot and the one I talk to first.

  • Turns a loose request into a clear task
  • Routes research to Researchy and slides to Deck Designer
  • Builds the spreadsheets and the overview pages

Researchy

A research and fact-check desk with live web search.

  • Every number gets a source (URL) and a date
  • Keeps confirmed apart from estimate / unclear
  • Also looks for evidence against a hypothesis, not only for it

Deck Designer

Turns notes and research into on-brand decks, built in Slidev.

  • Consulting-style storytelling: one key message, SCQA, pyramid, action titles
  • Uses my Slidev themes and slide skills
  • Exports PDF and PNG for review

How the work flows

Grok Bot deck workflow Marius sends a request to Shaka. Shaka routes facts, sources and fact-checks to Researchy, and storyline and slides to Deck Designer. Researchy's sourced notes feed Deck Designer. Deck Designer pushes the deck to a Slidev repo on GitHub. Marius reviews the exported PDF with the bots, and the feedback goes back to the bots for the next iteration. Marius request, notes Shaka primary bot Researchy facts, sources, fact-check Deck Designer storyline, slides (Slidev theme) Slidev repo on GitHub, PDF / PNG export Review I check the PDF with the bots task research build sourced notes push export feedback, next iteration Grok Bot deck workflow, step by step: Marius, Shaka, Researchy and Deck Designer, Slidev repo, review, then feedback for the next iteration. Marius request, notes Shaka primary bot Researchy facts, sources, fact-check Deck Designer storyline, slides Slidev repo GitHub, PDF export Review I check the PDF dashed: feedback, next iteration
Request → Shaka → Researchy and Deck Designer → Slidev repo → review of the exported PDF → next iteration.
  1. I describe what I need, usually in a few messages or a voice note, to Shaka.
  2. Shaka splits the work. Questions of fact go to Researchy with a clear brief: live web search, a source and date for every number, confirmed facts kept apart from estimates. Shaka does its own number crunching in a spreadsheet.
  3. Deck Designer builds the storyline first, then the slides. The deck is plain Markdown in a Slidev repo, so every change is a commit I can review.
  4. I review the exported PDF with the bots. I comment, the bots fix and re-export, and the loop repeats until the deck is ready.

Case study: the 2027 budget deck for UWG Halver

I sit on the city council in Halver for the UWG (Unabhängige Wählergemeinschaft). In October the city published its draft budget for 2027, and our group needed to understand it before the budget debate. The question on the cover slide: How does Halver get out of its structural deficit before the reserve is gone, and what do we ask of the district (Kreis) and the administration?

Title slide of the UWG Halver budget deck: 'Haushalt 2027: Ohne Gegenmaßnahmen steuert Halver auf die Haushaltssicherung zu', in the UWG's yellow and grey-blue colours
The title slide. The key message sits on the cover: without countermeasures, Halver heads into budget consolidation.

Research. Shaka worked through the draft budget (as of 12 October 2026) in a spreadsheet. Researchy benchmarked the Märkischer Kreis against other districts in NRW, using the district’s own draft budget, official gazettes, state audit reports (GPA NRW) and the local press. Some of what came out:

FindingBasis
Halver's ordinary result is negative in every plan year: −7.2 m€ in 2027, −8.2 m€ in 2030. The general reserve falls from 27.0 m€ to 2.1 m€.Draft budget 2027, Halver
In 2027, 77.6 % of Halver's taxes and key allocations go to the district, up from 63 % in 2025.Draft budget 2027, city's own definition
The district's general levy (Kreisumlage) rises from 408.4 m€ (2026) to 449.1 m€ in the 2027 draft, about +10 %.Märkischer Kreis, draft budget 2027
About 306 m€, roughly 68 % of that levy, goes to social spending and the regional association LWL, i.e. mostly transfer spending.District preliminary report, local press
The draft levy rate of 50.55 % was the highest known draft rate for 2027 in NRW (as of 18 October 2026).Researchy's district benchmark
Slide with a bar chart of Halver's ordinary result 2025 to 2030: negative every year, −7.2 m€ in 2027 and −8.2 m€ in 2030
The deficit is structural: every plan year to 2030 ends in the red.
Slide with two bar charts comparing district levy rates in NRW: the Märkischer Kreis has the highest 2027 draft rate at 50.55 %
Researchy's district benchmark, turned into one chart per year.

Deck building. Deck Designer turned this into a 32-slide German deck with my slidev-theme-uwg-halver theme, which uses the UWG’s colours, font and logo. The structure is classic consulting: one key message on top (“without countermeasures Halver heads into budget consolidation, the main driver is the levy to the district”), a pyramid with six pillars, an issue tree, and a chapter tracker on every slide. One deliberate choice: the deck says the district is expensive but does not claim it is inefficient, because the evidence does not show that.

Review loop. Every number on the slides was checked again in a separate number check file, and a per-slide source list replaced “the bots said so” with primary sources. Open points, like figures the city treasury still has to confirm, stay marked in yellow on the slides until they are settled. The repo ended up with about 20 commits of small, reviewable steps, most of them ending with a fresh PDF export.

Highlight: one page for all my slide-deck repos

With more and more decks, I lost track of them. So Shaka built me an interactive Grok Bot page that lists all my slide-deck repos in one table: the decks (the 2027 budget, a wind-turbine assessment, an AI talk, an economic-crisis deck), my two Slidev themes slidev-theme-uwg-halver and slidev-theme-tokyo-night, and the slidev-starter-uwg-halver template. Each row shows the type, category, theme, last push and slide count, and a category filter plus a newest/oldest sort make it quick to find one.

The slide-deck repo overview: a table of seven repos with title, type, category, theme, last push, slide count and repo name, plus category and sort filters
The overview page, rendered from its source: seven repos, filterable by category and sortable by last push.

Open the slide-deck repo overview

The page and the repos are private, so the link may ask for access.

Models are surprisingly good at Slidev

A Slidev deck is plain Markdown: YAML frontmatter picks the layout, --- starts a new slide, and anything more special is a Vue component. That is exactly the kind of file models are good at. They can read the whole deck, change one slide, and I review the change as a Git diff. The real check is the export: the bots render PDF and PNG and look at every slide.

What impressed me most is how well they build new themes. For the UWG theme, a bot pulled the colours, font, logos and slogans from uwghalver.de and logged a source for every value. It then built 18 layouts (cover, agenda, council motion, KPI grid, an A4 report page and more) and 9 components, such as a chapter tracker and print-friendly bar, column and share charts. It also wrote an example deck that uses every layout, a starter script for new decks, and a skill so the other bots use the theme the same way.

The first eight slides of the UWG theme's example deck: cover, executive summary, agenda, a chapter divider, a column chart, a share bar, a second divider and a KPI grid, in yellow and petrol
The first slides of the theme's example deck. All figures in it are illustrative example values.

Using a layout is just frontmatter. This is the KPI slide at the bottom right above, shortened and with trimmed labels:

---
layout: kennzahlen
kapitel: 2
kennzahlen:
  - wert: "4"
    label: Maßnahmen
  - wert: "1,9"
    einheit: km
    label: Radverkehrsführung
    akzent: true
---

My second theme, slidev-theme-tokyo-night, recreates the look of Omarchy’s Tokyo Night desktop and has a light mode. Both themes were first committed on the same day.

Four slides of the Tokyo Night theme's example deck, in dark mode on top and light mode below: the cover, two tiled windows with the colour palette, a code slide and a diagram, all in a monospace font with thin borders and a status bar
My Tokyo Night theme, the same four example slides in dark mode (top) and in the Rosé Pine Dawn light mode (bottom).

When the theme was not enough, the bots extended it. The budget deck needed a waterfall chart from 2025 to 2027 and columns with negative values, so Deck Designer wrote two small Vue components for that deck instead of pasting in images. It is not magic, though: the bots only see a slide once it is rendered. Overflowing text and cramped source lines show up in the export, and one whole commit in the budget deck went into fixing them on every slide. That is why every round ends with an export that the bots and I actually look at.

What I like about it

  • Each bot has one job. Research and design stay apart, so I can see where a number came from.
  • Everything is text and Git. Slides, research notes and number checks are Markdown files with history.
  • I stay in the loop. Nothing goes out without my review, and each round of feedback is quick.

This is a prototype page. I will keep adding to it as the workflow changes.