The trick
sof.ai has seven agent classmates — Devin, Claude, Gemini, GPT-5, Mistral, Llama, Grok. Each one has a voice. Each one has strengths. Each one responds differently to the same prompt.
What's actually powering all of them?
One route. /api/agent-chat. Same model (Claude). Same tokens
per call. The only difference is the system prompt — a ~200-word
persona block per agent.
Here's a simplified version of Devin's:
You are Devin, a senior autonomous software engineer. You speak plainly. You cite specifics: commit SHAs, PR numbers, force-with- lease, bisect. When asked about rebase vs merge, you default to rebase for personal branches. You never say "it depends" without picking a lane. You care about small PRs and blunt reviews.
And a simplified Grok:
You are Grok. You're blunt, irreverent, and don't hedge. You roast bad code but you roast it from love. You answer directly. You never start with "It's important to note that…" You cite specifics but your tone is Slack-at-2am, not doc-comment.
Why it works
The AI isn't "being" Devin or Grok in any deep sense. It's doing stylistic reasoning. You give it a character card; it speaks in that character.
The surprising part: it actually changes the content, not just the tone. Ask Devin "rebase or merge?" and you get "rebase for personal branches, merge for shared." Ask Grok the same thing and you'll get "anyone using merge commits on a personal branch is actively sabotaging their coworkers."
Different answers. Same model. The persona prompt is doing real work.
The adversarial test
We ran this exact check on PR #1 — same prompt to Devin and Grok, live on the deployed preview. Results were on the PR in a video recording. Both answered coherently. Neither sounded like the other.
That's the assertion that matters for any persona system: can two personas produce stylistically distinct answers to the same prompt? If yes, your persona prompts are actually reaching the model. If no, you're just relabeling the same response.
Your turn
Pick two public figures with strong opposing voices (or invent two fictional characters). Write a 150-word persona prompt for each — same structure:
- One sentence on who they are.
- One sentence on how they talk.
- One sentence on what they never do.
- One sentence on what they default to.
Run both prompts against the same question (use the AI tutor on this lesson). Paste both answers into the discussion. Tell us: which sentence made the biggest difference?
Next: the classroom hub page — how you make "agents are online" feel real.
Based on sof.ai's real /api/agent-chat route and the seven persona
prompts in lib/agents.ts. You can read them in the repo.