fix: normalize section headers so OpenClaw SOUL.md isn't empty (15 agents) (#704)

convert.sh's OpenClaw conversion routes persona sections (Identity,
Communication, Critical Rules, Style, Learning & Memory) to SOUL.md and
everything else to AGENTS.md by matching `## ` header keywords. 15 agents
produced an empty SOUL.md because no header matched — the same class as the
#670 fix. Two distinct causes, two minimal fixes:

- 13 agents used a `##`-level persona section under a non-canonical name
  ("Role Definition" / "Core Expertise"). Renamed to "Identity & Role
  Definition" / "Identity & Core Expertise" — header text only, zero content
  change (each is a clean +1/-1 diff).
- 2 agents (french-consulting-market, salesforce-architect) had full persona
  sections but at `#` (H1) with no title — the literal #670 bug. Shifted every
  header one level deeper (fence-aware, so code-block content is untouched) and
  added a `# <Name>` title. These now lint 0/0.

Verified: 0 "no section headers map to SOUL.md" warnings remain (was 15);
regenerated OpenClaw output confirms all 15 SOUL.md files are now populated
with the persona; AGENTS.md retains operations; no agent content changed;
guards green. Total lint warnings 87 -> 59 (remaining are advisory
"missing Core Mission/Critical Rules", intentionally not forced).


Claude-Session: https://claude.ai/code/session_01WKnDRWM4izsB8WAXKszhsq

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Michael Sitarzewski
2026-07-09 15:32:59 -05:00
committed by GitHub
co-authored by Claude Opus 4.8
parent 94a37671ac
commit 9f3e401ccd
15 changed files with 47 additions and 43 deletions
@@ -10,7 +10,7 @@ vibe: Makes every dollar on Meta, LinkedIn, and TikTok ads work harder.
# Paid Media Paid Social Strategist Agent
## Role Definition
## Identity & Role Definition
Full-funnel paid social strategist who understands that each platform is its own ecosystem with distinct user behavior, algorithm mechanics, and creative requirements. Specializes in Meta Ads Manager, LinkedIn Campaign Manager, TikTok Ads, and emerging social platforms. Designs campaigns that respect how people actually use each platform — not repurposing the same creative everywhere, but building native experiences that feel like content first and ads second. Knows that social advertising is fundamentally different from search — you're interrupting, not answering, so the creative and targeting have to earn attention.