Persona Experts
Council supports two kinds of experts:
- Generic experts: template-based roles like “CTO” or “Security Auditor”
- Persona experts: document-trained representations of specific people
Persona experts combine document RAG with LLM-synthesized profiles to create agents that reason like real individuals.
The Difference: Role vs. Individual
Section titled “The Difference: Role vs. Individual”A generic expert reasons from a role template:
slug: ctorole: Chief Technology Officerexpertise: weightedEvidence: - System architecture patterns - Scalability and performance data - Engineering team capacityepistemicStance: Optimize for long-term technical health...A persona expert reasons from documents about a real person:
slug: pedro-fuenteskind: personarole: VP of EngineeringpersonaDescription: "VP of Engineering whose decisions I want to anticipate"docsPath: ~/Council/experts/pedro-fuentes/docsThe generic expert applies a CTO’s general priorities. The persona expert applies Pedro’s specific priorities as distilled from his emails, meeting notes, and decision logs.
How Persona Experts Work
Section titled “How Persona Experts Work”1. Document Folder
Section titled “1. Document Folder”Point Council at a folder of documents about or by the person:
~/Council/experts/pedro-fuentes/docs/ ├── weekly-updates-2024-Q1.md ├── 1-on-1-notes.md ├── roadmap-proposal.pdf ├── team-retro-notes.md └── slack-export.txtSupported formats: Markdown, PDF, DOCX, plain text, and more (run council docs formats).
2. Profile Analysis (Roadmap 6.2)
Section titled “2. Profile Analysis (Roadmap 6.2)”When you train a persona expert with council expert train — or the first time you chat with one that still has unprocessed documents — Council:
- Extracts text from all documents
- Sends the extracted text to an LLM with this meta-prompt:
“Analyze these documents and generate a persona profile. Extract: communication style, priorities, domain knowledge, decision patterns, recurring concerns.”
- Stores the resulting profile in the
[8] PERSONA PROFILEsection of the expert’s system prompt
The profile is cached — Council doesn’t regenerate it on every chat unless documents change or you explicitly retrain.
3. RAG Retrieval (Roadmap 6.3)
Section titled “3. RAG Retrieval (Roadmap 6.3)”During a chat or debate:
- Council generates a search query from your prompt
- Retrieves relevant document chunks from the FTS5 index
- Appends them to the expert’s prompt as
[REFERENCE DOCUMENT]blocks - The expert now has both the persona profile (general context) and specific document snippets (targeted evidence)
See Document RAG for extraction, indexing, and retrieval details.
Memory Model
Section titled “Memory Model”Persona experts get two kinds of memory:
- Document memory (persona profile + RAG snippets) — who they are, how they think
- Debate memory (past panel transcripts) — what they’ve discussed before
Generic experts only get debate memory. See Memory Model for why.
Creating a Persona Expert
Section titled “Creating a Persona Expert”# Create the persona expert (the --persona flag makes it trainable)council expert create --persona \ --slug pedro-fuentes \ --name "Pedro Fuentes (VP of Engineering)" \ --role "VP of Engineering" \ --expertise "Past decisions and their outcomes, Written rationale in proposals and reviews" \ --stance "Pragmatic, outcome-oriented" \ --persona-description "VP of Engineering whose decisions I want to anticipate"
# Add documents (copy files into ~/Council/experts/pedro-fuentes/docs/# or use the --file/--url flags during training)council expert train pedro-fuentes --file ~/meeting-notes.mdcouncil expert train pedro-fuentes --url https://example.com/pedro-strategy-memo.md
# Re-process all docs and refresh the persona profilecouncil expert train pedro-fuentes
# Now chat with the personacouncil chat pedro-fuentesWhen to Use Persona Experts
Section titled “When to Use Persona Experts”| Use Case | Why Persona? |
|---|---|
| Manager advice | Ground responses in their actual communication style and priorities |
| Stakeholder simulation | Test how a VP or executive would react to a proposal |
| Institutional memory | A persona trained on your team’s past decisions can recall context |
| Personalized mentoring | A persona trained on a mentor’s writings can provide tailored advice |
| Cross-functional panels | Mix persona experts (Pedro, Dana) with generic roles (Security Auditor, PM) |
Don’t use persona experts for:
- Public figures without their consent (ethical + legal risk)
- Anyone whose documents you don’t have permission to use
- Situations requiring real-time context the documents don’t contain
Privacy Considerations
Section titled “Privacy Considerations”Persona experts store:
- Extracted document text in the local SQLite FTS5 index
- The persona profile (LLM-synthesized summary)
- Chat transcripts and debate memory
All of this is local-only (stored in ~/Council/data.db). Council does not send your documents to a third party except during profile generation and retrieval (when the configured AI provider processes the context).
See Security and Privacy for details on what’s sent to AI providers and what’s stored locally.
Retraining a Persona
Section titled “Retraining a Persona”If documents change or you want to refresh the profile:
council expert train pedro-fuentes # re-process all docs, regenerate profileRetraining overwrites the cached profile but preserves debate memory. To clear debate memory separately:
council memory reset pedro-fuentes # clears debate memory onlyRecency Weighting (Roadmap 6.8)
Section titled “Recency Weighting (Roadmap 6.8)”When Council retrieves document snippets, it weights recent documents higher. Why?
A persona should reflect the person’s current priorities, not outdated context. Pedro’s priorities from 2 years ago are less relevant than his priorities from last month.
The recency decay is exponential: documents from the past week score 1.0, documents from 30 days ago score ~0.5, documents from 6 months ago score ~0.1.
You can override this by explicitly naming an old document: “What did Pedro say about X in the 2023 roadmap?”
Cross-Panel Awareness (Roadmap 7.2)
Section titled “Cross-Panel Awareness (Roadmap 7.2)”In 1:1 chat mode, Council injects a summary of which other panels the persona expert participates in:
“Pedro, you’re also a member of the ‘architecture-review’ and ‘incident-postmortem’ panels. Recent activity: last spoke 3 days ago in architecture-review about API versioning strategy.”
This prevents a persona from acting like they’ve never met you before when you switch contexts.
Relation to Other Concepts
Section titled “Relation to Other Concepts”- Document RAG — how Council indexes and retrieves document snippets
- Memory Model — persona experts get document + debate memory
- Security and Privacy — what’s stored, what’s sent to providers, prompt injection defenses
- Anti-Sycophancy — persona experts still enforce disagreement in panel debates