Inspiration
This probably isn't your first personal system. It wasn't mine: Emacs Org mode, then Roam, then Notion, then whatever came next. Each promised to be the last one. Each migration quietly left another archive behind—the goals we set, the plans that failed, and the decisions and their reasons.
Vibe coding changed the economics of personal software. A new interface can now be built in an afternoon, but it still starts with an empty database. I wanted the personal system itself to be evolvable: its apps, workflows, schemas, and models should be able to change while its history carries forward.
That is why I called it Lamarck.
What it does
Lamarck keeps one owned, local timeline of your life and work. Connectors bring events into it; installed, hand-built, or vibe-coded apps build on the same history.
Tools can be created, replaced, or regenerated without resetting the system underneath. Each new app starts with the context already there and contributes new activity and corrections for whatever comes next.
The current macOS desktop can capture and inspect events, materialize Markdown documents and structured state, and run sandboxed workspace apps against the same substrate.
Memory for the person, not the agent.
The design challenge
The deepest challenge was deciding where Lamarck ends.
A personal system can absorb endless opinions about goals, tasks, memory, and self-improvement. Every abstraction placed in the substrate becomes a contract that future tools must inherit.
The rule became: if something can safely live in a replaceable app, it should. Lamarck keeps only the pieces that need continuity—history, identity, permissions, provenance, and runtime boundaries. Apps own interfaces, workflows, and opinions. Connectors define how the outside world enters the system. AI can help observe, review, and improve the system, but the person defines what “better” means.
The App Capsule came from applying that rule. Apps should remain ordinary JavaScript and TypeScript with enough freedom to be useful, while identity, data access, network access, and lifecycle remain under the personal system's control.
How we built it
Lamarck uses an append-only event log for durable history, Markdown for human-editable documents, SQLite for structured state, and Guard as the managed write boundary. The storage is deliberately boring and inspectable.
Lamarck was already underway when OpenAI Build Week came along. I used the week to turn the App Capsule from a design into a working macOS runtime.
I guided the design from Lamarck's product philosophy and sandbox requirements. Codex with GPT-5.6 carried it across TypeScript, a Swift Virtualization.framework host, a verified Buildroot Linux Guest, runc workloads, the Host-bound System SDK, tests, and release automation.
GPT-5.6 also helped harden transactional migrations, Markdown reconciliation, connector execution, and coding-agent transcript ingestion.
That was far more low-level plumbing than I expected to finish in a week. GPT-5.6 is a big reason it got done.
What we learned
Evolvability comes from a small, stable core with explicit authority. Everything else should be allowed to change.
I also learned that AI coding agents work best once those boundaries are clear. GPT-5.6 could then carry the same decisions through languages and layers that would otherwise take far longer to implement by hand.
What's next
The vision is a personal system that evolves with one person for decades, without turning self-improvement into another job.
Lamarck provides the continuity that makes this possible. Over time, AI should take on more of the work of reviewing and adapting the system, allowing its apps and workflows to evolve around the person using them.
Log in or sign up for Devpost to join the conversation.