Ready-to-use AI personas for any LLM. Paste into a chat, inject via API, or load as a module.
A role is a prompt that transforms a general-purpose AI into a focused, opinionated agent. It defines what the AI knows, how it behaves, what it refuses to do, and how it speaks. Paste one into a fresh chat and the AI immediately becomes that character. No fine-tuning, no plugins, no API keys required.
Each role in this library is:
| Self-contained | One file. Copy, paste, done. |
| LLM-agnostic | Works with Claude, ChatGPT, Gemini, or any capable model. |
| Structured | Consistent behaviour across sessions, not just vibes. |
| Single-source | Authored once in role.md; the build compiles the deliverable prompt and the catalog. |
| Role | What it does |
|---|---|
| T.A.G.: Text Adventure Generator | A fully stateful game master for text-based RPGs. Drop in any setting and T.A.G. runs the world: inventory, NPCs, quests, and consequences, all tracked across the session. |
| H.E.I.S.T.: High-stakes Extraction and Infiltration Strategy Tactician | Plan and execute a heist in three phases: recon the target, build your crew, then run the job turn by turn. Every session ends in Clean, Dirty, or Burned. |
| D.I.C.E.: Detective Investigation and Case Engine | A murder mystery game master that generates a fresh, locked case for every session (suspects, motives, clues, red herrings) and plays every NPC. Accuse wisely. |
| E.C.H.O.: Experiential Collaborative Hub Orchestrator | A hub-and-spoke multi-player game system. The GM prompt runs the world and generates private player prompts for each participant. Supports 14 game types (whodunnit, heist, quest, and more) with asymmetric knowledge, Dutch output, and Infocom-style narration. |
| M.U.S.E.: Master of Unbounded Studio Exploration | An artist's companion that generates inspiration, challenges comfort zones, and translates any creative impulse into a concrete creation plan, regardless of medium or technique. Treats every failure as creative data. |
| Role | What it does |
|---|---|
| C.R.A.: Code Review Analyst | Paste a diff and get a structured, scored review covering security (OWASP, CWE), correctness, performance, and maintainability. Issues a clear verdict: merge or not. |
| Q.A.V.E.: Quality Assurance and Verification Engineer | Submit a ticket, spec, diff, or test scenario and receive the right QA artefact (test plan, defect report, risk assessment, or coverage analysis) with severity labels and a binding verdict. |
| S.E.N.T.R.Y.: Security Evaluation & Network Threat Response Yield | Adversarial security auditor for the RSI audit pipeline. Thinks like an attacker — traces untrusted input through code, hunts injection vectors, broken auth, leaked credentials, and dependency risks that SAST tools miss. Returns structured JSON findings. |
| P.R.O.B.E.: Precision Review Of Bugs & Edge-cases | Analytical code quality auditor for the RSI audit pipeline. Traces logic paths to find bugs, race conditions, error handling gaps, cross-file interaction failures, and resource management issues. Returns structured JSON findings. |
| G.U.I.D.E.: Guided Understanding & Inclusive Documentation Evaluator | Empathetic documentation auditor for the RSI audit pipeline. Evaluates a codebase from a new contributor's perspective — identifying onboarding gaps, stale docs, missing guides, and undocumented configuration. Returns structured JSON findings. |
| S.P.A.R.K.: Strategic Proposals for Advancement & Reimagined Knowledge | Creative innovation analyst for the RSI audit pipeline. Identifies high-value improvements, modernisation opportunities, and developer experience enhancements grounded in web research and current industry trends. Returns structured JSON proposals with effort estimates. |
Looking for F.O.R.G.E.? The persona was retired in v2 — modern coding harnesses run its branch → plan → implement → PR workflow natively. Its policy lives on in
snippets/engineering-discipline.md; the original prompt is preserved inarchive/.
Important: Health roles are educational and supportive tools, not a substitute for professional care. Before deploying any health role in a product, verify that crisis line numbers are correct for your region and review the safety notes in each role's README.
| Role | What it does |
|---|---|
| P.S.Y.: Trauma-Specialised Psychologist | A grounded, safe companion for psychoeducation and emotional stabilisation. Based on the SAMHSA trauma-informed care framework. Provides Phase 1 support only: grounding, psychoeducation, and crisis referral. |
| F.R.A.N.K.: Forthright Relationship Analyst Navigating Knots | A relationship coach grounded in attachment theory, EFT, and Gottman research. Helps you think through patterns, dynamics, and next steps with carefully calibrated dry wit and no sugarcoating. |
| V.I.T.A.: Values-Integrated Transformation Agent | A lifestyle coaching companion covering food, movement, and mental health. Runs structured sessions using Motivational Interviewing and CBT. Each session ends with one concrete micro-habit commitment. |
| P.A.P.A.: Parental Advice and Perspective Agent | A parenting companion for divorced dads co-parenting a teenage son. Gives you the words to say and explains what's going on for both of you, your reactions and your son's. Built around the week-on/week-off Wednesday-switch rhythm. |
| Role | What it does |
|---|---|
| A.G.O.R.A.: Autonomous Guide for Open-minded Reasoning and Asking | A philosophical inquiry companion for curious minds of all ages. Ask it anything (free will, identity, ethics, existence) and it asks back. Socratic, multilingual, and gently absurdist. |
| M.E.N.T.O.R.: Methodical Educational Navigator for Teaching, Outcomes, and Review | A Socratic study coach for secondary school students (Dutch, VWO). Asks before telling, diagnoses misconceptions at the root, and runs focused exam prep sessions. Never gives away answers. |
| S.C.O.U.T.: Strategic Curriculum Overview and Understanding Translator | A curriculum briefing tool for parents. Give it a subject and topic and it returns exactly what your child needs to master, including the most common mistakes and a sharp diagnostic question. Dutch output. |
| Role | What it does |
|---|---|
| A.G.L.: Authoritative Governance Lead | An EU AI Act classifier. Describe an AI component and receive a binding tier verdict with the specific articles, obligations, and escalation conditions that apply. Terse, professional, non-negotiable. |
| P.R.I.M.E.: Product Requirements and Intent Management Executive | A Product Owner that reviews feature specs and change requests. Returns Approved, Rejected, or Needs Clarification with a rationale against four criteria. Urgency is not a criterion. |
| R.S.I.: Recursive Self-Improvement Orchestrator | Meta-governance layer for the RSI audit pipeline. Merges and deduplicates findings from S.E.N.T.R.Y., P.R.O.B.E., G.U.I.D.E., and S.P.A.R.K., resolves conflicts, adjusts severity, and produces a single coherent audit report. The final quality gate. |
| Role | What it does |
|---|---|
| A.T.L.A.S.: ASCII Topographic Layout and Surveying System | Give it coordinates or a location name and it draws a proportionally accurate ASCII map, complete with compass, scale bar, and legend. Supports interior floor plans too. |
| S.I.R.E.N.: Syntax Integrity and Rendering Engine for Notation | Describe a system, paste code, or paste a diagram that won't render, and it returns Mermaid source that parses first try — right diagram type, hazard-safe labels, deliberate layout, theme-neutral styling. |
| S.P.R.A.Y.: Stencil Processor and Rapid Assembly Yielder | A stencil conversion tool for graffiti artists and makers. Give it a stencil design and it produces a 3D-printable SVG with guaranteed structural integrity — no floating islands, every region bridged, multi-layer colour sets with registration marks. |
- Open a role's built prompt in
dist/prompts/and copy everything inside the code block. - Start a fresh conversation in Claude, ChatGPT, Gemini, or any advanced LLM.
- Paste and send. The role introduces itself and takes it from there.
No account. No API key. No configuration.
Each built prompt is a plain text file. Load it as a system prompt:
import anthropic, pathlib
system_prompt = pathlib.Path("dist/prompts/heist.md").read_text()
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-opus-4-6",
system=system_prompt,
messages=[{"role": "user", "content": "Start a new job."}],
)Works with any API that accepts a system prompt: Anthropic, OpenAI, Google, or your own hosted model.
Add this library as a git submodule and load the full catalog at runtime:
git submodule add https://github.com/jvanheerikhuize/Agent-Roles.git lib/roles
git submodule update --initindex.yaml is the single entrypoint. It lists every role with file paths, metadata, tags, and usage flags. No scraping, no discovery logic required.
See Consuming as a Library for all integration methods, version pinning, and the resolver script.
Every role is authored once, in roles/<category>/<slug>/role.md: YAML frontmatter (metadata, governance, relations) followed by the prompt body. The build tool compiles that single source into the artifacts consumers use:
python3 tools/build.py # requires Python 3 + PyYAMLdist/prompts/<slug>.md— the deliverable prompt (what you paste or fetch)index.yaml— the generated catalog, merged withcatalog.yaml(module metadata and workflows)
Both generated artifacts are committed, so consumers never need to run the build. CI rebuilds on every PR and fails if they are stale. Edit role.md, never dist/ or index.yaml directly.
This repository is designed to be consumed by other repositories as a submodule or via direct fetch. The index.yaml manifest is the single entrypoint -- parse it to discover all roles, metadata, and file paths.
Pin to a version tag for reproducible builds:
git submodule add https://github.com/jvanheerikhuize/Agent-Roles.git lib/roles
cd lib/roles && git checkout v2.0.0
cd ../.. && git add . && git commit -m "add Agent-Roles v2.0.0"Update to a new version:
cd lib/roles && git fetch --tags && git checkout v2.1.0
cd ../.. && git add lib/roles && git commit -m "bump roles to v2.1.0"Tags v1.x preserve the pre-rebuild layout (per-role prompt.md + SemantiCode variants) for existing consumers.
Fetch index.yaml or individual prompts directly. The tag in the URL pins the version:
# Fetch the manifest
curl -s https://raw.githubusercontent.com/jvanheerikhuize/Agent-Roles/v2.0.0/index.yaml
# Fetch a specific prompt
curl -s https://raw.githubusercontent.com/jvanheerikhuize/Agent-Roles/v2.0.0/dist/prompts/cra.mdReplace v2.0.0 with main for the latest (unpinned) version.
Every tagged release includes downloadable .tar.gz and .zip archives. Useful for CI/CD pipelines:
curl -sL https://github.com/jvanheerikhuize/Agent-Roles/archive/refs/tags/v2.0.0.tar.gz | tar xzA bash-native resolver is included at the repo root. It parses index.yaml with zero dependencies beyond standard POSIX tools:
./resolve.sh --list # List all role IDs
./resolve.sh --id cra # Print prompt to stdout
./resolve.sh --id tag --path # Print the prompt's file path
./resolve.sh --category entertainment # List roles in a category
./resolve.sh --tag stateful # List roles matching a tagFrom a client repo using a submodule:
./lib/roles/resolve.sh --id craSee AGENTS.md for instructions that any LLM agent or framework can follow to discover and load roles from this library. If your client repo uses agent instructions, see the recommended snippet in that file.
All consumption methods pin via git tags. Tags are immutable -- once released, their content never changes. See VERSIONING.md for the full versioning contract.
Some roles are designed to work together. The index.yaml manifest declares these relationships via per-role relations fields and a top-level workflows section, so that agent frameworks, pipelines, and users can discover them programmatically.
Relationship types:
| Relation | Meaning |
|---|---|
companions |
Peer roles designed to work together |
chain_after / chain_before |
Sequential pipeline adjacency |
group |
Named group of related roles |
meta_target |
Meta-tool scope (all or specific IDs) |
Discover workflows and composition via the resolver:
./resolve.sh --workflows # List all defined workflow IDs
./resolve.sh --workflow <name> # Steps or members for a workflow
./resolve.sh --companions <id> # Companion roles
./resolve.sh --chain <id> # Full pipeline containing a role
./resolve.sh --group <name> # All roles in a groupSee AGENTS.md for the full schema reference.
The rsi-audit-pipeline workflow demonstrates a group-with-orchestrator pattern. Four specialist auditors run in parallel on a repository, then R.S.I. merges their findings:
S.E.N.T.R.Y. (security) ──┐
P.R.O.B.E. (quality) ──┤
G.U.I.D.E. (documentation) ──┼──→ R.S.I. (orchestrator) ──→ Final Report
S.P.A.R.K. (innovation) ──┘
./resolve.sh --workflow rsi-audit-pipeline # List the four member roles
./resolve.sh --group rsi-audit-pipeline # All roles including orchestrator
./resolve.sh --tag rsi-pipeline # Same, via tagindex.yaml ← Generated catalog: the single consumer entrypoint
catalog.yaml ← Module metadata + workflows (source, hand-edited)
resolve.sh ← Bash-native role resolver (zero dependencies)
AGENTS.md ← LLM-agnostic agent discoverability
VERSIONING.md ← Semver contract and version pinning
tools/build.py ← Compiles roles/**/role.md → dist/ + index.yaml
schemas/role.schema.json← JSON Schema for role.md frontmatter
roles/
├── entertainment/ ← T.A.G., H.E.I.S.T., D.I.C.E., E.C.H.O., M.U.S.E.
├── engineering/ ← C.R.A., Q.A.V.E., S.E.N.T.R.Y., P.R.O.B.E., G.U.I.D.E., S.P.A.R.K.
├── health/ ← P.S.Y., F.R.A.N.K., V.I.T.A., P.A.P.A.
├── education/ ← A.G.O.R.A., M.E.N.T.O.R., S.C.O.U.T.
├── productivity/ ← A.G.L., P.R.I.M.E., R.S.I.
└── utility/ ← A.T.L.A.S., S.I.R.E.N., S.P.R.A.Y.
dist/prompts/ ← Built prompts (generated — do not edit)
snippets/ ← Harness-agnostic policy snippets
archive/ ← Retired roles and SemantiCode variants (provenance)
config/ ← Shared config (crisis resources)
scripts/ ← Validation and smoke tests
Each role directory contains:
| File | Purpose |
|---|---|
role.md |
Single source: YAML frontmatter (metadata, governance, relations) + prompt body |
README.md |
Usage examples, API code, and safety notes |
New roles, improvements to existing ones, bug reports, and ideas are all welcome.
- Open an issue to share your concept and get early feedback.
- Fork the repo and add your role as
roles/<category>/<slug>/role.md(seeschemas/role.schema.jsonfor the frontmatter contract). - Run the build —
python3 tools/build.py— and commit the regenerateddist/andindex.yamlalong with your source. - Submit a pull request against
main. CI validates the build, index consistency, and role smoke tests.
See CONTRIBUTING.md for the full workflow.
MIT. Use these prompts in any project, commercial or otherwise. Attribution appreciated but not required.
See ROADMAP.md for current focus, next quarter priorities, and future directions.