Skip to content →
Getting startedHow Praxis works
GitHub
Getting started

How Praxis works

Understand the living world, its simulation clock, and the substrate behind side effects.

The world

Praxis models a business as a living network, not a load-test script. Actors have roles, relationships, location, movement, care context, temperament, trust, stress, and a memory of work that is still waiting.

Organizations supply the business context around those actors: services, staff, locations, branding, and a description of how each business uses its system of record.

The clock

Each tick advances simulated time by speedMinutes. During a tick, Praxis can generate and deliver messages, request decisions, age unanswered work, schedule local appointments, progress due appointments, move actors, and emit events.

FieldMeaning
clock.nowCurrent simulated ISO timestamp
clock.tickNumber of completed simulation steps
clock.runningWhether the panel should continue stepping automatically
config.speedMinutesMinutes added by each step, from 5 to 240

The substrate

Every external side effect goes through the same execution layer. Booking, outbound messaging, and cancellation each select a transport independently:

  • local-sim resolves the action inside the engine.
  • mock-random deliberately mixes success and failure for recovery testing.
  • A connector id prepares and executes a request against a real system of record.

The feedback loop

01
Observe

Actors, appointments, messages, and events create context.

02
Decide

A deterministic, human, or AI evaluator chooses an action.

03
Act

The substrate carries the action through the selected transport.

04
Remember

Operations, tasks, events, stress, trust, and relationships preserve the result.

This feedback loop is why a connector error is more than a failed HTTP request. The person who needed the action becomes more stressed, may lose trust, and can eventually leave the relationship.