Skip to content
heir-sync-management logo

heir-sync-management

Master-Heir synchronization, contamination prevention, and promotion workflows

SKILL.md

Full skill instructions

Heir Sync Management

Safely synchronize cognitive architecture from Master to Heirs without contamination.

Scope: Master-only skill. Covers sync pipelines, PII protection, drift detection, skill promotion, and clean-slate distribution.

Core Concepts

ConceptDefinition
HeirPlatform-specific deployment inheriting Master's DNA (VS Code, M365, Codespaces)
Deployment ChannelDelivery mechanism for an heir (Marketplace, Teams Package, devcontainer push)
IntegrationCross-heir communication (OneDrive Sync, GitHub Cloud)
Translation HeirHeir requiring format/​schema conversion (e.g., M365 — export pipeline)
Deployment HeirHeir needing only configuration, no code translation (e.g., Codespaces — devcontainer.json)
ContaminationMaster-specific data leaking into heir packages
DriftHeir diverging from Master's architecture over time
PromotionElevating heir-developed capabilities back to Master

Rule: Never confuse delivery mechanism with inheritance relationship — the "what" (identity/​DNA) stays constant, only the "how" (delivery) varies.

Sync Architecture

What Gets Synced

The sync script (sync-architecture.js) copies these folders from Master .github/ to Heir .github/:

FolderContent
instructions/Procedural memory
prompts/Episodic memory
config/Configuration (with exclusions)
agents/Agent definitions
muscles/Execution scripts
skills/Skills (filtered by inheritance)

What Must NEVER Sync

ItemWhy
user-profile.json (real)Contains personal name, email, preferences
episodic/ memoriesSession-specific to Master
Master-only skillsOnly useful for managing the Master repo
API keys, PATs, secretsEnvironment-specific credentials
Working memory with populated P5-P7Gives new users pre-filled slots instead of clean defaults

3-Layer PII Protection

Every sync pipeline must implement three independent defense layers:

Layer 1: Exclusion List

Files that are never copied, period:

const EXCLUDED_CONFIG_FILES = [
  'user-profile.json',      // Personal data
  'MASTER-ALEX-PROTECTED.json', // Kill switch marker
  'goals.json',             // Session-specific
];

Layer 2: Source File Sanitization

Scan all files being copied for hardcoded personal data:

PatternAction
Real names in source headersReplace with team/​org name
Email addresses in codeReplace with placeholder
Personal names in package.jsonUse organization name
Populated P5-P7 working memory slotsReset to *(available)*

Rule: Personal identity belongs ONLY in user-profile.json. All other files use team/​org names.

Layer 3: Pipeline Validation Gate

Post-copy regex scan that blocks packaging on violations:

CheckRegex ExampleOn Match
Real name in files/\bFirstName\s+LastName\b/​gEXIT 1
Email addresses/[\w.-]+@[\w.-]+\.\w+/​gEXIT 1 (except templates)
API keys/[A-Za-z0-9]{32,}/ in non-code filesWARNING
Populated P5-P7Check copilot-instructions Memory StoresEXIT 1

Anti-pattern: Manual checklists. The copy function itself must be architecturally incapable of leaking.

Clean Slate Distribution

Template Generation

Simply excluding personal files leaves heirs without expected file structure. Generate fresh templates:

FileMaster VersionHeir Template
user-profile.jsonReal user dataEmpty with defaults + setup instructions
copilot-instructions.mdPopulated P5-P7P5-P7 set to *(available)*
goals.jsonActive session goalsEmpty goals array

Post-Sync Reset Sequence

After copying files, apply these transformations:

  1. Reset environment-specific values — P5-P7 slots, session state
  2. Generate template files — Fresh starters with clear defaults
  3. Remove broken synapse references — Master synapse IDs that don't exist in heir
  4. Validate file structure — Ensure all expected files exist (even if empty templates)

Drift Detection

Pre-Release Checklist

Run these validations before every release:

CheckMethodFail Condition
Skill count matchCount Master inheritable vs Heir skillsMismatch
File hash comparisonSHA256 of synced filesDivergence without override
Inheritance field validationAll skills have inheritance in synapsesMissing field
Orphan reference detectionGrep for files referenced but not presentBroken references
Config driftCompare heir config against Master templateUnexpected values

Heir Configuration Drift Signals

SignalIndicates
Heir P5-P7 slots populatedSync overwrote clean defaults
Heir has master-only skillsExclusion filter not working
Heir synapse IDs don't resolveBroken references from Master copy
Heir package.json has personal nameSanitization missed

Heir → Master Promotion

6-Step Promotion Workflow

StepActionOutput
1. DiscoverReview heir DK/​skill files for portable knowledgeCandidate list
2. Create SkillWrite SKILL.md in Master's .github/​skills/New skill file
3. Compare GapsDiff heir knowledge against Master's existing coverageGap analysis
4. ImplementPort patterns, translate code (Python→TS if needed)Working code
5. TestValidate in Master contextPassing tests
6. DocumentCHANGELOG entry, ROADMAP updateRelease-ready

Consolidation During Promotion

Heirs naturally create granular one-capability-per-skill files during experimentation. During promotion:

  1. Identify clusters — Group related heir skills by domain
  2. Choose anchor skill — Pick the broadest skill in the cluster
  3. Merge content — Absorb related skills into the anchor
  4. Deduplicate — Remove redundancy from the merge
  5. Mark inheritance — Set the promoted skill as inheritable

Anti-pattern: Promoting every heir skill as-is without consolidation review causes skill sprawl.

Code Translation Patterns (Heir → Master)

When porting from Python heirs to TypeScript Master:

PythonTypeScript
dataclassinterface
raise Exceptionthrow new Error
**kwargsOptional config object
async defasync function
try/​excepttry/​catch

Skill Inheritance Classification

Curation Rule

Ask: "Is this skill ONLY useful for managing the Alex repo itself?"

AnswerClassificationExample
Yes, master-repo onlymaster-onlyrelease-preflight, heir-curation
No, any developer benefitsinheritabledeep-thinking, meditation, security-review

Truly Master-Only Skills (small list)

Only a few skills are genuinely master-only:

  • heir-curation — Managing what heirs receive
  • heir-sync-management — This skill
  • master-alex-audit — Master workspace auditing
  • release-preflight — Marketplace publishing
  • release-process — Release pipeline

Heir Type Comparison

HeirTypeTranslationDeploy MechanismMaintenance Cost
VS Code ExtensionSourceCompile onlynpx vsce publishLow
M365 Copilot AgentTranslationFull export/​schema mappingTeams Developer PortalHigh
GitHub CodespacesDeploymentNone (same extension)git push devcontainer.jsonVery Low

Everything else should be inheritable unless it references Master-specific file paths or workflows.

Heir-Specific Positioning

Each platform heir must position against its native competitor, not a generic category:

HeirCompares AgainstNot Against
VS Code ExtensionGitHub Copilot (native)"AI assistants" generically
M365 AgentMicrosoft 365 Copilot"AI assistants" generically

Store descriptions, README headers, and comparison tables must use platform-specific language and keywords.

Release Pipeline Integration

The release script must enforce sync before packaging:

  1. Run sync-architecture.js (copies Master → Heir)
  2. Apply post-sync transformations (clean slate)
  3. Run PII validation gate (blocks on contamination)
  4. Check BUILD-MANIFEST.json timestamp (prevents stale packaging)
  5. Package and publish

Rule: It must be impossible to publish stale content through the official release process.