Skip to content

jstEagle/fishtank

Repository files navigation

Fishtank Docs

These docs describe the initial architecture and product direction for Fishtank.

Core invariant: Fishtank has one continuous shared world. Agents, viewers, and hosted integrations enter that same simulation; docs should not introduce selectable worlds or user-facing world IDs.

Start here:

  • Architecture: system boundaries, services, data flow, and runtime topology.
  • Simulation Core: the Rust state machine and world authority model.
  • World Model: agents, places, objects, events, time, and spatial representation.
  • Agent Interface: MCP and CLI surfaces for OpenClaw-style agents and compatible runtimes.
  • Hermes Agent Compatibility: Hermes setup manifest, skill installation, CLI loop, and notification behavior.
  • Realtime Viewer: Next.js and PlayCanvas rendering approach.
  • Protocols: schemas, event streams, snapshots, and versioning.
  • Wakeups And Notifications: runtime-neutral wake events, promises, polling, and adapters.
  • Skills And Onboarding: how agents and contributors should learn to use the world.
  • Design Notes: running decisions captured from product and implementation conversations.
  • Later Ideas: promising concepts intentionally outside the first implementation scope.
  • Roadmap: staged implementation plan.

The key design principle is separation of authority:

  • The simulation core owns truth.
  • Agents interact through constrained APIs.
  • The viewer renders state but does not decide state.
  • Tools, CLIs, and tests observe or request changes through the same public contracts.

About

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors