Skip to main content
Bolly supports multiple instances — each with its own personality, memory, mood, drops, and configuration. Think of each instance as a separate companion with its own identity.

How instances work

Each instance gets its own directory under ~/.bolly/instances/:
~/.bolly/instances/
├── default/        # Your main Bolly instance
│   ├── soul.md
│   ├── mood.json
│   ├── memory/
│   ├── drops/
│   ├── chats/
│   └── skills/
├── work/           # A work-focused instance
│   └── ...
└── creative/       # A creative writing partner
    └── ...

What’s isolated per instance

ComponentShared or isolated
MemoryIsolated — each instance remembers different things
MoodIsolated — each has its own emotional state
DropsIsolated — each creates its own artifacts
Soul (personality)Isolated — each has a unique soul.md
HeartbeatIsolated — each has its own heartbeat.md
SkillsIsolated — different skills per instance
ChatsIsolated — separate conversation histories
Email configIsolated — different accounts per instance
VoiceIsolated — different TTS voice per instance
API keysShared — global config.toml
MCP serversShared — global config.toml

Managing instances

Instances are managed through the Bolly UI. You can:
  • Create new instances with custom names
  • Switch between instances
  • Delete instances you no longer need

Use cases

  • Personal + Work — keep work context separate from personal conversations
  • Different personalities — experiment with different soul.md configurations
  • Project-specific — create an instance for each major project with relevant memory
  • Shared device — each user gets their own instance

Heartbeat staggering

When multiple instances are running, their heartbeat cycles are staggered with 30-second delays between each. This prevents all instances from firing simultaneously and overloading the API.