Aiwg soul-blend

Merge multiple SOUL.md files into a composite persona for team-level agents or multi-perspective characters

install
source · Clone the upstream repo
git clone https://github.com/jmagly/aiwg
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/jmagly/aiwg "$T" && mkdir -p ~/.claude/skills && cp -r "$T/agentic/code/addons/aiwg-utils/skills/soul-blend" ~/.claude/skills/jmagly-aiwg-soul-blend-76ab9f && rm -rf "$T"
manifest: agentic/code/addons/aiwg-utils/skills/soul-blend/SKILL.md
source content

soul-blend

Merge multiple SOUL.md files into a composite persona — for team-level agents or multi-perspective characters.

Triggers

Alternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):

  • "blend souls" → multi-SOUL.md synthesis
  • "merge voice profiles" → soul blending

Behavior

When triggered, this skill takes two or more SOUL.md files and produces a unified composite that preserves distinctive elements from each while resolving conflicts coherently.

Blending Process

  1. Load source souls — read all input SOUL.md files
  2. Identify overlaps — shared beliefs, vocabulary, boundaries
  3. Identify conflicts — contradictory opinions, incompatible boundaries
  4. Resolve conflicts using a configurable strategy
  5. Merge non-conflicting sections — union of vocabulary, interests, influences
  6. Generate composite — new SOUL.md with attribution for each element
  7. Validate result — run soul-validate on the output

Conflict Resolution Strategies

StrategyBehaviorUse When
weighted
(default)
Primary soul takes precedence on conflictsOne soul is dominant, others add flavor
union
Include both sides of each conflict as a TensionBuilding a deliberately complex persona
consensus
Keep only opinions both souls shareBuilding a team consensus persona
interactive
Ask user to resolve each conflictPrecision matters

Section Merging Rules

SectionMerge Strategy
Who I AmCombine backgrounds into composite narrative
WorldviewUnion non-conflicting beliefs; conflicts → strategy
OpinionsUnion non-conflicting; conflicts → strategy
VocabularyUnion all terms; flag conflicting definitions
BoundariesUnion all (strictest boundary wins)
InterestsUnion all
InfluencesUnion all, deduplicate
TensionsUnion all + add new tensions from resolved conflicts
Pet PeevesUnion all

Output Format

The blended SOUL.md includes attribution comments:

## Worldview

- Simplicity beats cleverness <!-- from: engineer.soul.md -->
- Security is not optional <!-- from: auditor.soul.md -->
- Both agreed: test what matters, not everything <!-- shared -->

## Tensions

- Values moving fast (engineer) but also thorough review (auditor) <!-- blend tension -->

Parameters

FlagDescription
<files...>
Two or more SOUL.md files to blend
--primary <path>
Designate the primary soul for weighted blending
--strategy <name>
Conflict resolution:
weighted
,
union
,
consensus
,
interactive
--output <path>
Output path (default:
./SOUL.md
)
--strip-attribution
Remove
<!-- from: -->
comments from output

Examples

# Blend two agent souls
/soul-blend .claude/agents/test-engineer.soul.md .claude/agents/security-auditor.soul.md

# Weighted blend with primary
/soul-blend --primary engineer.soul.md engineer.soul.md designer.soul.md

# Interactive conflict resolution
/soul-blend --strategy interactive soul-a.md soul-b.md soul-c.md

# Team consensus
/soul-blend --strategy consensus team-member-*.soul.md --output team-soul.md

Integration

With voice-blend

Parallel to

/voice-blend
which merges voice profiles. If both voice profiles and soul files exist for the same sources, consider blending both and running
/soul-to-voice
to keep them synchronized.

With SDLC Agent Souls

Blend SDLC agent souls to create cross-functional agents:

# Create a "security-aware test engineer"
/soul-blend \
  --primary .claude/agents/test-engineer.soul.md \
  .claude/agents/test-engineer.soul.md \
  .claude/agents/security-auditor.soul.md \
  --output .claude/agents/security-test-engineer.soul.md

References

  • @$AIWG_ROOT/agentic/code/addons/voice-framework/skills/voice-blend/SKILL.md — Voice blending (parallel pattern)
  • @$AIWG_ROOT/agentic/code/addons/aiwg-utils/skills/soul-create/SKILL.md — Soul creation
  • @$AIWG_ROOT/docs/soul-md-guide.md — Integration guide
  • #437 — SOUL.md compatibility issue (Phase 3)