Library
The Christensen Engine Has No Twin — But It Has Relatives in Surprising Places · 10 of 12
The Christensen Engine Has No Twin — But It Has Relatives in Surprising Places
technology MEDIUM

Platform and Framework Implementations

Key Principle

Three platform/framework products — Rasa CALM, Salesforce Agentforce, and XState/Stately Agent — implement the dual-system architecture as reusable infrastructure. Each independently codified the same pattern, and Microsoft Research's StateFlow paper provides academic validation (13-28% higher success rates than ReAct at 3-5x lower cost).

Why This Matters

These frameworks represent the "infrastructure layer" of the thick-deterministic-core pattern. They serve as architecture validators: when Salesforce ($500M+ ARR), Rasa, and XState independently arrive at the same solution, it confirms the pattern is a structural necessity. Their specific implementation choices — and failures — reveal design decisions that any custom implementation must address.

Good Examples

Rasa CALM (Composite 7/10):

  • Process Calling: long-running stateful workflows persisting across turns, fundamentally different from atomic tool calling. (p. 3, chunk 004)
  • Fixed Command Grammar: StartFlow, SetSlot, CancelFlow, SkipQuestion, Clarify, ChitChat, HumanHandoff. LLM can ONLY output these commands. (p. 3, chunk 004)
  • Dialogue Stack (LIFO): new flows push, completed flows pop, "digressions are free." (p. 4, chunk 004)
  • ~15 built-in conversation repair patterns: correction, cancellation, resume, clarification, chitchat, handoff, skip. (pp. 3-4, chunk 004)
  • Known limitations: list slots can't be filled via flow steps; conditions limited to slot-based expressions; prompt size scales with flow count requiring embedding-based retrieval for large systems. Not open source — requires paid license. (p. 3, chunk 004)

Salesforce Agentforce ($500M+ ARR, 9,500+ deals):

  • Agent Script DSL with dual syntax: arrow syntax for deterministic code, pipe syntax for LLM prompt text. Prompt rewritten fresh each turn. (p. 4, chunk 004)
  • "Available When" pattern: conditions completely remove tools from LLM visibility — "not just discouraged, but invisible." (pp. 4-5, chunk 004)
  • Two distinct action types: deterministic-run (required validations, data fetching) vs. LLM-tool actions (user-initiated, context-dependent). (p. 5, chunk 004)
  • Chain-of-Thought abandoned: prior Einstein Copilot used CoT but errors propagated irreparably. Now uses 8-12 specialized language models per query. (p. 4, chunk 004)
  • Adoption reality: only 8,000 deals by mid-2025 against a target of 1 billion agents. (p. 4, chunk 004)

XState / Stately Agent (~27K GitHub stars):

  • Two-bridge-tool pattern: get_current_state and take_action — the minimal viable interface. An earlier single-tool attempt "fell over in short order." (p. 5, chunk 004)
  • Dynamic prompt/tool swapping on state transition. Guards are pure synchronous functions. (p. 5, chunk 004)
  • Warning: @statelyai/agent framework appears semi-abandoned (last release September 2024, docs 404). The pattern is validated; the specific framework is not production-ready. (p. 5, chunk 004)

Microsoft Research StateFlow: State-specific focused prompts yielded 13-28% higher success rates than ReAct and 3-5x lower cost. SF_Agent variant uses separate LLM agents per state. (p. 5, chunk 004)

Counterpoints

  • Framework Lock-in: Rasa requires paid license. Salesforce is a full platform commitment. XState's agent framework is abandoned. Building custom may be more maintainable than adopting a framework that constrains your architecture.
  • The Instruction Bloat Lesson (Salesforce): "We had more faith in the LLM as an industry." Even the largest AI platform had to learn empirically that instruction-based control fails. (p. 5, chunk 004)

Key Quotes

"Deterministic Core, Agentic Shell" (p. 5, chunk 004) — Dave Mosher's named pattern

"don't tell the LLM not to use a tool — remove the tool from its prompt entirely" (p. 5, chunk 004) — Salesforce

"we had more faith in the LLM as an industry" (p. 5, chunk 004) — Salesforce

Rules of Thumb

  • Two bridge tools (get state, take action) is the empirically validated minimal interface.
  • Process calling > tool calling for multi-turn workflows.
  • Use the dialogue stack pattern: push for new flows, pop on completion.
  • Build conversation repair as a parallel system with ~15 meta-handlers.
  • Evaluate frameworks for lock-in risk before adopting.

Related References