{"slug": "run-free-ai-shifts-with-three-named-roles", "title": "Run Free AI Shifts With Three Named Roles", "summary": "A developer outlined a three-role handoff playbook for free-tier AI work sessions, assigning a Driver, Scribe and Gatekeeper to keep context on a shared wiki run page rather than in chat. The approach pairs a short shift-smoke.sh script that records a last-green commit and timestamp with a fixed three-line exit note, and holds the promotion gate closed when no known-good state exists. The writeup was prepared as part of MonkeyCode's product outreach, and the author notes free-tier limits should be confirmed on vendor pricing pages.", "body_md": "Most free-tier AI work fails at handoff, not at the model. A shift ends, the context leaves with one person, and the next driver restarts from zero. Three named roles and one wiki page keep that state where the whole team can reach it.\n\nName the roles before the first prompt. The Driver holds the keyboard and the intent. The Scribe owns the run page and the exit note. The Gatekeeper runs the smoke suite and decides promotion.\n\nOwnership decays when it stays implied. An unnamed scribe is a conversation without a transcript. Named roles turn a session into a shift that someone can inherit on Monday.\n\nPaste this into the team wiki and fill it at the start of every shift.\n\n```\n# Shift Run - <date> - <shift_id>\nDriver:      <name>\nScribe:      <name>\nGatekeeper:  <name>\n\nEntry:       make bench-up\nLast green:  make test-smoke @ <utc timestamp> @ <short sha>\nGate:        open | held | blocked\nThreads:     max 2, each with an owner and one next command\nExit note:   one past-tense sentence naming the next action\n```\n\nTwo threads is a cap, not a target. Anything beyond two becomes a ticket and leaves the page. The page has to stay short enough to read once, out loud, during a handoff.\n\nThe Scribe writes the page, not the Driver. Separation matters because the person deep in a change cannot see which thread is still open. The Scribe asks one question per thread: who owns it and what is the next command.\n\nThe Driver runs this before touching the task. It proves the environment, not the change.\n\n``` bash\n#!/usr/bin/env bash\n# shift-smoke.sh - run at the start of every shift\nset -euo pipefail\n\nSHIFT_ID=\"${SHIFT_ID:-$(date -u +%Y%m%dT%H%MZ)}\"\nBRANCH=\"$(git rev-parse --abbrev-ref HEAD)\"\nSHA=\"$(git rev-parse --short HEAD)\"\n\nneed() { command -v \"$1\" >/dev/null || { echo \"missing: $1\"; exit 2; }; }\nneed git\nneed make\n\necho \"shift=$SHIFT_ID branch=$BRANCH sha=$SHA\"\nmake bench-up\nmake test-smoke 2>&1 | tail -n 5\necho \"last_green=$(date -u +%FT%TZ) sha=$SHA\"\n```\n\nThe final line is the contract. Copy it into the run page verbatim. A missing last-green line means the shift has no known-good state, so the Gatekeeper holds the gate closed.\n\nKeep the smoke target small. It should finish in a couple of minutes and touch only the paths a new driver needs. A smoke suite that takes twenty minutes gets skipped, and a skipped gate is worse than no gate.\n\nThe exit note is always the same shape. Three lines, past tense, no narrative.\n\n```\nexit:    driver passed 2 threads to the gatekeeper\nnext:    rerun make test-smoke after the lockfile change\nblocked: none\n```\n\nWrite it in the run page, not in chat. Chat scrolls away and the next shift never reads it. A wiki page survives the person who wrote it.\n\nThe Gatekeeper reads the exit note before reading any code. That order matters. A held gate explains itself in one line, and the next shift knows where to start.\n\nThe Driver drafts in free model sessions and the Gatekeeper re-runs the suite on the free server option. That split keeps review on a clean machine instead of the Driver's laptop. Both the free model access and the free server option are availability claims the vendor makes; confirm the current limits and specs on their pricing page before you build a rotation around them, because free-tier terms move.\n\nDisclosure: This article was prepared as part of MonkeyCode's product outreach.\n\nThe playbook stands without that tool. Swap in any provider and the roles, the run page, and the smoke contract still apply.\n\nProposed defaults, not vendor guidance. Tune the thresholds to your own week.\n\n| Signal | Threshold | Action | \n|---|---|---|\n| Threads without an owner | 2 or more per week | Add a Scribe, cut to one thread | \n| Gate held across two shifts | 48 hours | Shrink the change or split it | \n| Smoke flaky twice in a week | 2 failures | Fix the test before new work | \n| Secret pasted into a prompt | Any occurrence | Rotate the key, log it, hold the gate | \n| Run page stale over one day | 24 hours | Close it with an exit note | \n\nSlow rotation is cheaper than rework. A gate held two shifts usually means the change was too large, not that the reviewer was slow.\n\nThe playbook adds roughly ten minutes per shift. Solo developers will spend more on the page than they save. Teams with a working CI promotion lane already have the gate, so add roles only if handoff notes are missing.\n\nThe smoke suite still has to fit the free server's disclosed specs. If the suite needs heavy memory or a long build, run it elsewhere and keep only the fast checks on the shared box. Nothing here gives you an SLA, and free tiers can change with little notice.\n\nSkip this for regulated code where every prompt needs a retention policy. Skip it when no one on the team can review the output, because a Gatekeeper without authority just stamps approvals. Skip it if your only goal is throughput today; the roles pay off on the second shift, not the first.\n\nTry the shape once before inviting a second person. Spin a free server, run the smoke script, and paste the last-green line into an empty run page. If that single line is already useful, add the Scribe on the next shift and let the roles grow from evidence.", "url": "https://wpnews.pro/news/run-free-ai-shifts-with-three-named-roles", "canonical_source": "https://dev.to/techlab_7968/run-free-ai-shifts-with-three-named-roles-3jgb", "published_at": "2026-11-06 17:21:28+00:00", "updated_at": "2026-11-06 17:28:04.900657+00:00", "lang": "en", "topics": ["ai-tools", "developer-tools", "mlops"], "entities": ["MonkeyCode"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/run-free-ai-shifts-with-three-named-roles", "markdown": "https://wpnews.pro/news/run-free-ai-shifts-with-three-named-roles.md", "text": "https://wpnews.pro/news/run-free-ai-shifts-with-three-named-roles.txt", "jsonld": "https://wpnews.pro/news/run-free-ai-shifts-with-three-named-roles.jsonld"}}