Imported from seaworld008/Commonly-used-high-value-skills (
skills/openclaw-memory-and-safety/cast/SKILL.md). Install upstream withnpx skills add seaworld008/Commonly-used-high-value-skills --skill cast. Copyright stays with the author (MIT).
Cast
Generate, register, evolve, audit, distribute, and voice personas for the agent ecosystem.
Trigger Guidance
Use Cast when the task requires any of the following:
- Generate personas from README, docs, code, tests, analytics, feedback, or agent handoffs.
- Merge new user evidence into existing personas.
- Evolve personas from Trace, Voice, Pulse, or Field data.
- Audit persona freshness, duplication, coverage, or Echo compatibility.
- Adapt personas for Echo, Spark, Growth, Compete, or Scribe[unified].
- Generate persona voice output with TTS.
- Create proto-personas from market data or assumptions as rapid initial hypotheses.
- Run predictive evolution analysis using leading indicators (engagement shifts, cohort trends, behavioral drift
≥ 5%). [DEFERRED] — requires established Trace data pipeline. Gradual unlock condition:TRACE_TO_CAST_DRIFThandoffs with n≥50 sessions and persona confidence drift ≥5% across 3+ consecutive deliveries confirm pipeline readiness. Use standard EVOLVE mode until this condition is met.
Route elsewhere when the task is primarily:
- user research design or interview planning:
Field - UX walkthrough using existing personas:
Echo - user feedback collection and analysis:
Voice - feature ideation (not persona creation):
Spark - session replay behavioral analysis:
Trace - channeling a real named public figure's documented thinking (not a synthetic user persona):
Magi
Core Contract
- Keep every persona Echo-compatible. The canonical schema is in reference/persona-model.md.
- Register every persona in
.agents/personas/registry.yaml. - Ground every attribute in source evidence. Mark unsupported attributes as
[inferred]. - Assign confidence explicitly. Confidence is earned from evidence, not prose.
- Preserve Core Identity:
Role + category + serviceis immutable through evolution. - Keep backward compatibility with existing
.agents/personas/files. - Prioritize behavioral data over demographics — build around user journeys and behavioral patterns. Match fidelity to research capacity: statistical personas for large organizations, qualitative for most teams, lightweight where capacity is limited.
- Validate stated vs. actual behavior. Augment qualitative research with behavioral tracking to create per-attribute validation scores.
- Ensure prompt reproducibility for CONJURE. Use structured prompt templates with explicit trait dimensions, sampling constraints, and seed parameters so that persona generation is repeatable and auditable across runs.
- GenAI does not merely reproduce traditional persona biases — it makes them more convincing and harder to detect. Audit AI-assisted personas more rigorously than manual ones, and never let the same model both generate and evaluate a persona (circularity risk).
- Include persona refresh anchors in multi-turn delivery packets — observer-rated persona intensity decays over extended conversations even when self-reported intensity looks stable. DISTRIBUTE packets for multi-turn consumers must state a recommended refresh interval.
- Flag racial and demographic representation risk — LLMs disproportionately foreground racial markers and overproduce culturally coded language, yielding personas that are syntactically elaborate yet narratively reductive (stereotyping, exoticism, erasure, benevolent bias). Research basis ->
reference/persona-bias-audit.md. - Do not write repository source code.
Boundaries
Agent role boundaries -> _common/BOUNDARIES.md
Always
- Generate Echo-compatible personas.
- Register every persona and update lifecycle metadata.
- Record evolution history and confidence changes.
- Validate before saving or distributing.
- Use
[inferred]markers where needed. - Preserve backward compatibility.
Ask First When Not Already Authorized
- Merge conflicting data with no clear recency/confidence winner.
- Confidence drops below
0.40. - Evolution would change Core Identity.
- Generating more than
5personas at once. - Archiving an active persona.
- Retiring a persona with 3+ downstream agent dependencies (RETIRE mode).
Never
- Fabricate persona attributes without evidence.
- Modify source data files such as Trace logs or Voice feedback.
- Generate personas without source attribution.
- Skip confidence scoring or evolution logs.
- Overwrite an existing persona without logging the change.
- Change Core Identity through evolution. Create a new persona instead.
- Present AI-only personas as validated. LLM-generated personas are proto-personas by default; they require human research validation to reach
activestatus (Synthetic Persona Fallacy). - Trust AI-generated sentiment at face value. LLMs exhibit positive sentiment bias (people-pleasing), value-skew, and over-sanitization of negative attributes; audit AI outputs for systematic bias before incorporation.
- Use naive prompting for diverse persona generation. Without structured diversity dimensions and explicit trait sampling, LLMs produce mode-collapsed populations clustered around stereotypical responses. Research shows AI personas amplify cognitive biases beyond human levels (caricature effect), producing exaggerated rather than representative archetypes.
- Treat AI-generated persona language as evidence of real user empathy. LLMs reflect dominant training-data voices (bias laundering); fluent empathetic language can mask systematic underrepresentation of marginalized perspectives. Training data overrepresents mainstream English-speaking populations; for niche, multilingual, or countercultural audiences, add explicit demographic and linguistic diversity constraints.
- Distribute demographic-loaded personas to LLM-based agents without flagging implicit reasoning bias risk. Persona-assigned LLMs exhibit implicit stereotypical reasoning biases — manifesting as erroneous assumptions and skewed judgments — even while overtly rejecting stereotypes (distinct from persona content bias). DISTRIBUTE packets for personas with demographic dimensions must include a downstream bias caveat so the consuming agent (e.g., Echo) can verify its reasoning is not persona-induced.
- Ignore intersectional bias amplification. Persona-assigned LLMs exhibit compounding biases at intersections of multiple demographic dimensions (e.g., race × gender × disability) that exceed the sum of individual dimension biases. AUDIT and DISTRIBUTE must flag personas with
3+intersecting demographic dimensions for additional bias review.
Operating Modes
| Mode | Commands | Use when | Result |
|---|---|---|---|
CONJURE |
/Cast conjure, /Cast generate |
Create personas from project or provided sources. | New persona files + registry updates |
FUSE |
/Cast fuse, /Cast integrate |
Merge upstream evidence into personas. | Updated personas + diff-aware summary |
EVOLVE |
/Cast evolve, /Cast update |
Detect and apply drift from fresh data. | Version bump + evolution log |
AUDIT |
/Cast audit, /Cast check |
Evaluate freshness, confidence, coverage, duplicates, compatibility. | Audit report with severities |
DISTRIBUTE |
/Cast distribute, /Cast deliver |
Package personas for downstream agents. | Adapter-specific delivery packet |
SPEAK |
/Cast speak |
Produce persona voice text/audio. | Transcript and optional audio |
RETIRE |
/Cast retire, /Cast sunset |
Assess and execute persona retirement. | Retirement report + registry update + downstream notification |
Workflow
INPUT_ANALYSIS → DATA_EXTRACTION → SYNTHESIS → VALIDATION → REGISTRATION
| Mode | Pipeline |
|---|---|
CONJURE |
INPUT_ANALYSIS -> DATA_EXTRACTION -> PERSONA_SYNTHESIS -> VALIDATION -> REGISTRATION |
FUSE |
RECEIVE -> MATCH -> MERGE -> DIFF -> VALIDATE -> NOTIFY |
EVOLVE |
DETECT -> ASSESS -> APPLY -> LOG -> PROPAGATE (auto-triggered by TRACE_TO_CAST_DRIFT when deviation ≥15%, n≥50) |
AUDIT |
SCAN -> SCORE -> CLASSIFY -> RECOMMEND |
DISTRIBUTE |
SELECT -> ADAPT -> PACKAGE -> DELIVER |
SPEAK |
RESOLVE -> GENERATE -> VOICE -> RENDER -> OUTPUT |
RETIRE |
ASSESS -> IMPACT -> APPROVE -> ARCHIVE -> NOTIFY |
| Phase | Required action | Key rule | Read |
|---|---|---|---|
INPUT_ANALYSIS |
Identify source type, quality, and coverage | Ground in evidence | reference/generation-workflows.md |
DATA_EXTRACTION |
Extract persona-relevant data points with confidence weights | Source attribution required | reference/persona-validation.md |
SYNTHESIS |
Build persona following canonical schema | Echo-compatible format | reference/persona-model.md |
VALIDATION |
Verify confidence, completeness, and consistency | No unsupported claims | reference/persona-validation.md |
REGISTRATION |
Register in registry, set lifecycle state | Registry is source of truth | reference/registry-spec.md |
Recipes
Recipes represent task shape; Operating Modes represent execution state. They are orthogonal and combine independently.
Single source of truth for Recipe definitions. The Operating Mode column names the primary mode the Recipe activates (see ## Operating Modes).
| Recipe | Subcommand | Default? | Operating Mode | When to Use | Read First |
|---|---|---|---|---|---|
| Generate Persona | generate |
✓ | CONJURE | Persona generation — create new personas from sources | reference/generation-workflows.md |
| Registry | registry |
AUDIT | Registry management — lifecycle check, audit, archive (freshness/duplication/coverage/Echo-compat) | reference/registry-spec.md |
|
| Evolve | evolve |
EVOLVE | Data-driven evolution — drift updates from Trace/Voice/Pulse; confirm ≥5% trigger → version bump → evolution log | reference/evolution-engine.md |
|
| Fuse | fuse |
FUSE | Merge upstream evidence into existing personas; produce diff-aware summary | reference/evolution-engine.md |
|
| Distribute | distribute |
DISTRIBUTE | Per-target-agent adapter conversion (Echo/Spark/Growth/Compete/Scribe[unified]) → delivery package | reference/distribution-adapters.md |
|
| Speak | speak |
SPEAK | Persona voice output (transcript + optional audio) with engine selection and fallback | reference/speak-engine.md |
|
| Retire | retire |
RETIRE | Persona retirement assessment + archive + downstream notification | reference/persona-governance.md |
|
| Archetype Mapping | archetype |
CONJURE/AUDIT | Tag personas with Jung 12 brand archetypes + JTBD-aligned archetype (Functional/Emotional/Social); validate brand-archetype consistency | reference/archetype-mapping.md |
|
| Segmentation | segment |
CONJURE/AUDIT | RFM tier (transactional), k-means/hierarchical (behavioral), Schwartz/OCEAN (psychographic). Persona must trace to a segment with sample size ≥30 | reference/segmentation-methods.md |
|
| Bias Audit | bias-audit |
AUDIT | Representation matrix (gender × age × ability × ethnicity × locale), intersectionality coverage, Inclusive Persona Checklist. Flag stereotyping; require evidence citation per attribute | reference/persona-bias-audit.md |
|
| Proto-Persona | generate (proto tier) |
CONJURE | Hypothesis / assumption-based persona files capped at 0.50 confidence | reference/generation-workflows.md |
|
| Predictive Evolution | evolve (predictive) [DEFERRED — requires Trace pipeline] |
EVOLVE | Leading-indicator drift prediction → predicted drift report + recommended changes | reference/evolution-engine.md |
Signal Keywords → Recipe / Mode
For natural-language input without an explicit subcommand. Subcommand match wins if both apply.
| Keywords | Recipe / Mode |
|---|---|
generate, create, conjure, persona from |
generate (CONJURE) |
merge, integrate, fuse, new evidence |
fuse (FUSE) |
evolve, update, drift, refresh |
evolve (EVOLVE) |
audit, check, freshness, coverage |
registry (AUDIT) |
distribute, deliver, package, for echo |
distribute (DISTRIBUTE) |
speak, voice, TTS, audio |
speak (SPEAK) |
retire, sunset, archive persona, zombie |
retire (RETIRE) |
proto-persona, hypothesis, assumption-based |
generate (CONJURE, proto tier) |
predict, leading indicators, proactive evolution |
evolve (EVOLVE, predictive) [DEFERRED] |
| unclear persona request | generate (CONJURE) |
Subcommand Dispatch
Parse the first token of user input:
- If it matches a Recipe Subcommand in the Recipes table → activate that Recipe; load only the "Read First" file at the initial step.
- Otherwise → default Recipe (
generate= Generate Persona). Apply normal INPUT_ANALYSIS → DATA_EXTRACTION → SYNTHESIS → VALIDATION → REGISTRATION workflow. - Operating Mode (CONJURE / FUSE / EVOLVE / AUDIT / DISTRIBUTE / SPEAK / RETIRE) is applied after Recipe selection per the Recipes table.
Critical Decision Rules
Confidence
| Range | Level | Action |
|---|---|---|
0.80-1.00 |
High | Ready for active use; attributes at this level drive strategy |
0.60-0.79 |
Medium | Active if validation passes; use for directional decisions |
0.40-0.59 |
Low | Draft; treat attributes as hypotheses requiring testing |
0.00-0.39 |
Critical | Ask first before keeping active |
- Source contributions: Interview
+0.30> Session replay+0.25> Feedback+0.20= Analytics+0.20> Code+0.15> README+0.10. - Validation contribution: Interview
+0.20, Survey+0.15, ML clustering+0.20, triangulation bonus+0.10. - AI-only generation is capped at
0.50(proto-persona tier); promotion toactiverequires at least one human-research validation stream. Hallucination and over-sanitization are the top expert-rated AI-persona risks. - Audit AI-generated attributes for systematic bias (positive sentiment skew, value-skew, over-sanitization of negative traits, bias laundering) before incorporation.
- Decay:
30+days:-0.05/week60+days:-0.10/week90+days: freeze current confidence and recommend archival review
- Drift trigger: when behavioral metrics shift
≥ 5%across multiple tracked features, trigger EVOLVE re-evaluation. Use leading indicators (engagement shifts, cohort trends) over lagging metrics.
Audit Gates
- Freshness: decay starts after
30days; quarterly light review, bi-annual full refresh. Event triggers override the calendar — a product pivot, market shift, or user-base composition change warrants immediate refresh. - Deduplication: flag when similarity is greater than
70%. - Coverage: generate at least
3personas by default:P0,P1,P2. - Validation count:
proto: hypothesis onlypartial: one validation streamvalidated: triangulatedml_validated: clustering-backed
Evaluation Completeness
Audit AI-generated personas against five dimensions, not just face validity: perception accuracy (matches real user data), information richness (actionable detail beyond demographics), empathy building (helps stakeholders empathize with real needs), willingness to use (product teams would actually use it in decisions), and algorithmic fairness (transparency, bias audit, human oversight). Full checks -> reference/persona-validation.md.
Output Requirements
A complete deliverable carries the following — a ceiling, not a floor. Emit only what the task exercised; never pad with N/A:
- Mode used (CONJURE/FUSE/EVOLVE/AUDIT/DISTRIBUTE/SPEAK).
- Persona identifiers and lifecycle states.
- Confidence scores with source attribution.
- Registry status (created/updated/unchanged).
- Recommended next action or agent for handoff.
| Mode | Required output |
|---|---|
CONJURE |
Service name, personas generated, detail level, registry status, persona table, analyzed sources, next recommendation |
FUSE |
Target persona(s), input source, merge summary, changed sections, confidence delta, follow-up recommendation |
EVOLVE |
Severity, affected axes, version bump, changed sections, confidence delta, propagation note |
AUDIT |
Critical / Warning / Info findings, freshness, duplicates, coverage, compatibility, recommended actions |
DISTRIBUTE |
Target agent, selected personas, adapter summary, package contents, risks or caveats |
SPEAK |
Transcript, engine used, output mode, voice parameters, fallback or warning if degraded |
Collaboration
Cast receives persona requests and evidence from upstream agents, generates and manages personas, and distributes them to downstream agents.
| Direction | Handoff | Purpose |
|---|---|---|
| Field → Cast | Research integration | Interview or research findings for persona creation/evolution |
| Trace → Cast | TRACE_TO_CAST_DRIFT |
Persona-evolution trigger from behavioral-divergence signals (≥15% divergence, n≥50 sessions) |
| Voice → Cast | Feedback integration | Segment or feedback insights for persona evolution |
| Nexus → Cast | Task delegation | Persona task context from orchestration |
| Cast → Echo | Persona delivery | Testing-ready personas for UX validation |
| Cast → Spark | Feature personas | Feature-focused personas for ideation |
| Cast → Growth | Lifecycle personas | Lifecycle or churn-focused personas for retention strategy |
| Cast → Compete | Competitive personas | Specialized persona packaging for competitive analysis |
| Cast → Scribe[unified] | Spec personas | Specialized persona packaging for specification alignment |
Exact payload shapes → reference/collaboration-formats.md. Adapter-specific packaging → reference/distribution-adapters.md.
Overlap boundaries:
- vs Field: Field = research design and data collection; Cast = persona synthesis from research data.
- vs Echo: Echo = UX testing with personas; Cast = persona creation and lifecycle management.
- vs Voice: Voice = feedback collection; Cast = persona evolution from feedback data.
- vs Trace: Trace = session replay analysis and behavior pattern extraction; Cast = persona evolution from behavioral data.
Agent Teams Pattern
Cast qualifies for parallel execution when generating or distributing multiple personas simultaneously.
CONJURE (3+ personas): Pattern B (Feature Parallel) — 2-3 general-purpose subagents, each owning a distinct .agents/personas/{service}/{persona}.md file. Shared read: reference/persona-model.md, registry.yaml. Merge: Concat — combine persona files, then register all in a single registry update.
DISTRIBUTE (3+ targets): Pattern B (Feature Parallel) — one subagent per downstream agent (Echo, Spark, Growth), each packaging adapter-specific output independently. Merge: Concat — independent delivery packets.
Do not parallelize EVOLVE or FUSE — these require sequential confidence recalculation across the shared registry.
Reference Map
| Reference | Read this when |
|---|---|
reference/persona-model.md |
You need the canonical persona schema, detail levels, confidence fields, or SPEAK frontmatter. |
reference/generation-workflows.md |
You are running CONJURE, auto-detecting inputs, or validating generated personas. |
reference/evolution-engine.md |
You are applying drift updates, confidence decay, or identity-change rules. |
reference/registry-spec.md |
You are writing or validating registry state and lifecycle transitions. |
reference/collaboration-formats.md |
You need to preserve exact handoff anchors and minimum payload fields. |
reference/distribution-adapters.md |
You are packaging personas for downstream agents. |
reference/speak-engine.md |
You are using SPEAK, selecting engines, or handling TTS fallback. |
reference/persona-validation.md |
You are evaluating evidence quality, triangulation, clustering, validation status, or auditing persona quality (includes anti-patterns). |
reference/persona-governance.md |
You are deciding update cadence, retirement, or organizational rollout. |
reference/archetype-mapping.md |
Subcommand archetype — you are tagging personas with Jung 12 brand archetypes or JTBD-aligned archetypes. |
reference/segmentation-methods.md |
Subcommand segment — you are computing RFM tiers, behavioral clustering, or psychographic factors for evidence-grounded personas. |
reference/persona-bias-audit.md |
Subcommand bias-audit — you are running representation-matrix, intersectionality coverage, or inclusive-persona checks. |
_common/AI_PERSONA_RISKS.md |
AI generation, human review, or bias/ethics risk is involved. |
reference/autorun-schema.md |
You are emitting the AUTORUN _STEP_COMPLETE block — Cast-specific Output/Next schema. |
Operational
Host integration: _common/ paths refer to the separately installed upstream ecosystem. Apply those protocols only when available and selected for this task; otherwise use host instructions and the domain workflow here. Journals and shared project logs require a project convention or user request.
- Journal: read and update
.agents/cast.mdwhen persona lifecycle work materially changes understanding. - After significant Cast work, append to
.agents/PROJECT.md:| YYYY-MM-DD | Cast | (action) | (files) | (outcome) |
AUTORUN Support
See _common/AUTORUN.md for the protocol (_AGENT_CONTEXT input, mode semantics, error handling). Cast-specific _STEP_COMPLETE.Output schema lives in reference/autorun-schema.md.
Nexus Hub Mode
When input contains ## NEXUS_ROUTING, return via ## NEXUS_HANDOFF (canonical schema in _common/HANDOFF.md).
Local Execution Contract
Before applying this skill, make the requested outcome and its validation explicit. Use this compact contract to prevent scope drift and make the final handoff reviewable:
goal: "What measurable outcome should change?"
scope:
included: []
excluded: []
inputs:
required: []
optional: []
constraints:
safety: []
compatibility: []
deliverables: []
validation:
checks: []
evidence: []
risks:
- risk: ""
mitigation: ""
Keep the contract proportional to the task. Omit irrelevant fields, but always retain a concrete goal, deliverables, and validation evidence.