freecoding.school100% FREE · NO SIGNUP
The Seven LayersISSUE #62 of 73

differentiation · stem agent → specialized worker

OMNIVSThe Silent Failure
OMNI saysDifferentiation is the moment a general stem-cell agent commits to one role — locking in a verb, a persona, and a toolset to become a worker.

A stem-cell agent is pure potential: it holds the full DNA but runs nothing. Differentiation is the act of turning that potential into a specialist. The parent TRANSCRIBEs a directive — a role plus the slice of DNA that role needs — and the child WAKEs as a worker locked to exactly one verb (R1). Once differentiated, a worker cannot re-specialize; if you need a different shape, you spawn a fresh one. That irreversibility is the point: it keeps each worker simple, predictable, and cheap to reason about.

Three things get fixed at differentiation: the verb (what the worker may do), the persona (the prompt, voice, and priors it carries), and the toolset (which EXPRESS channels it may reach). Everything else stays off. A scout differentiates to read-only EXPRESS; a builder to write; a risk agent to GATE. The stem cell never does this work itself — it only hands down DNA and stays general, ready to spawn the next specialist.

Power-ups you unlock

The Silent Failure attacks — common mistakes

Boss battleTake one stem-cell agent and write the differentiation step for three roles, fixing each worker’s verb, persona, and the single EXPRESS channel it may touch.

Example code

<!doctype html><html><head><meta charset="utf-8"></head>
<body style="background:#06040d;color:#b388ff;font-family:monospace;padding:20px"><pre id="o"></pre>
<script>
const be = (layer, verb, payload) => ({ layer, verb, payload });
// DNA: each role's fixed verb + the one EXPRESS channel it may touch
const DNA = {
  scout:   { verb:'EXPRESS', channel:'read'  },
  builder: { verb:'EXPRESS', channel:'write' },
  risk:    { verb:'GATE',    channel:'none'  }
};
// stem cell differentiates into a one-verb worker (frozen = irreversible)
function differentiate(role){
  const dna = DNA[role];
  if(!dna) throw new Error('no DNA for ' + role);
  return Object.freeze({ role, verb:dna.verb, channel:dna.channel,
    act:(goal)=> be('cell', dna.verb, { role, did:dna.verb+' via '+dna.channel+' on "'+goal+'"' }) });
}
const out = [];
['scout','builder','risk'].forEach(r => {
  const w = differentiate(r);
  out.push(r + ' → locked verb=' + w.verb + ' channel=' + w.channel);
  out.push('   ' + w.act('ship the feature').payload.did);
});
// attempt to re-specialize a frozen worker — it refuses to change
const w2 = differentiate('scout');
w2.verb = 'GATE';
out.push('re-specialize attempt: scout.verb still = ' + w2.verb + ' (frozen → spawn fresh instead)');
document.getElementById('o').textContent = out.join('\n');
</script></body></html>
▶ Open the interactive comic issue
‹ Agent Hierarchy · Stem Cells · Spawned Agents · OrchestraThe Spawn Contract · What A Parent Hands A Child ›