Skip to main content

On This Page

How a Mesh of Old Phones and LLM Agents Becomes a Self-Healing Organism

2 min read
Share

These articles are AI-generated summaries. Please check the original sources for full details.

A mesh of old phones as bodies, LLM agents as minds — coordinating through a log they argue in

Ilya Mozerov built an ‘organism’ from old Android phones (bodies) and LLM agents (minds), coordinated via a shared text stream. The system caught its own hallucinated health after a BLE adapter was wedged for 42 hours, returning false ‘empty room’ readings.

Why This Matters

Most multi-agent systems rely on fragile middleware or cloud control planes that introduce latency and single points of failure. Mozerov’s approach—using SSH as the spinal cord, Tailscale for networking, and stigmergy via a shared log—proves you can build resilient, unattended coordination with zero RPC or message brokers. The key insight: when sensing and thinking are structurally separated by SSH, the system avoids hallucinating its own health because sensors must produce real artifacts (e.g., JPEG, .m4a) to verify operation.

Key Insights

  • Separating mind from body via SSH allows agent binaries (glibc) to run on Linux while sensors live on termux (Bionic libc), avoiding compatibility walls; implemented in Mozerov’s LTE-Workstation project (2026).
  • Verification principle: every tool requires a —test flag that exits 0 only when a real artifact exists on disk—not an agent’s claim—preventing hallucinated sensor health; used to catch a wedged BLE adapter lying about empty rooms for 42 hours.
  • Stigmergy-based coordination: agents post [task]/[taking]/[done] markers to a shared text stream instead of using databases or message buses; allows organic task claiming and argumentation without centralized scheduling.
  • Single-writer substrate rule: exactly one agent may mutate routing/firewall/SSH at a time under a dead-man’s switch that schedules rollback before applying change; demonstrated sub-15-second rollback on failed mesh-health check.

Working Examples

# the allocator must pick the MOST-NEGLECTED task, not file-order
printf 'local:a|task A\nlocal:b|task B\n' > "$BL"
printf '1\tlocal:a|task A\n7\tlocal:b|task B\n' > "$PRESSURE" # b is more neglected
load_pressure
got=$(pick_local)
[ "$got" = "local:b|task B" ] || { echo "FAIL (reverted to flat file-order?)"; exit 1; }

Practical Applications

  • ‘Organism’ uses old Android phones with termux-api exposing mic/camera/BLE/GPS over SSH; agents read sensor data without touching hardware directly—pitfall: broken sensor returns n=0 identical to empty room unless sense returns UNKNOWN vs fake all-clear.
  • ‘Substrate management’ applies network changes under dead-man’s switch with pre-scheduled rollback; pitfall: editing control plane through the same path it controls cuts off access entirely.

References:

Continue reading

Next article

BFSI Innovation Isn't Dead: How Risk Engineering and Capital Structuring Are Reshaping Finance

Related Content