Skip to content

Growth System

GhostFrame edited this page May 25, 2026 · 2 revisions

Growth System

Growth is how personas learn locally. Each installed persona accumulates a structured log of observations -- things learned, mistakes caught, patterns discovered -- that persists across sessions.

How it works

  1. On session start, the agent reads the growth log.
  2. During the session, the agent appends observations as they emerge.
  3. On the next session, the new observations are available as context.

Growth is local-only. It never leaves your machine. It never flows upstream to the marketplace. It stays in your project context.

Storage format

Growth entries are stored as JSONL (one JSON object per line) in the project's central store:

$XDG_DATA_HOME/frameshift/projects/<project-id>/personas/<name>/growth.jsonl

Each entry carries:

  • Timestamp
  • Session attribution
  • Task context
  • Intent classification
  • The observation text

Scopes

Growth entries have two scopes:

  • Project-scope -- stays with one project. "This codebase uses thiserror 2.x, not 1.x."
  • Global-scope -- applies everywhere. "Always check the migration order before running diesel."

The engine summarizes recent growth by deduplicating near-identical entries and picking the most recent per intent category.

CLI

# Append a growth entry:
frameshift grow append rust "orphan rules prevent implementing foreign traits on foreign types"

Migration from legacy format

Older personas used a freeform growth.md file. The engine migrates these to JSONL:

frameshift migrate

Growth vs. memory

Growth and memory serve different purposes:

Growth Memory
Scope Per-persona, per-project Cross-persona, cross-project
Storage Local JSONL Pluggable backend (HTTP, SQLite)
Visibility Only the persona that wrote it Any persona that searches for it
Persistence Always local Depends on backend
Purpose Session-to-session learning Long-term knowledge retrieval

Growth is the persona's private notebook. Memory is the shared knowledge base.

Clone this wiki locally