Skip to main content

Solomon's Mise en Place banner

Solomon's Mise en Place

Mise en place for agent memory.

Public-safe workspace bootstrap, memory handoffs, and publish guards for real agent setups.

CI status Python 3.10+ MIT license 4 harnesses

solo-mise is the installable starter kit behind Solomon's Guide to Cookin' with Gas. It gives you the workspace skeleton, handoff inbox, conservative ingester, and publish guard that make a multi-agent setup usable without leaking private junk into public repos.

What this is

Mise en place means "everything in its place before the work starts." In a kitchen, that is chopped mirepoix, clean pans, labels, and a station that does not make you hunt for salt & butter mid-service. For agents, it is the same idea: rules, memory, tools, handoff inboxes, publish guards, and boring verification already laid out before the session gets expensive.

This package lays down a clean starting point for an agent workspace or a repo that needs durable memory handoffs. It is meant for people running real tools, real docs, and real automation across OpenClaw, Claude Code, Codex, Hermes, or a similar harness.

The cookbook explains the why. This package gives you the kitchen.

What you get

  • sanitized bootstrap files for agent behavior, safety, tools, identity, and memory
  • a canonical memory layout where one configured owner holds durable knowledge
  • a shared .claude/memory-handoffs/ inbox for Claude Code, Codex, and other side harnesses
  • starter memory cards and routing rules
  • multi-workspace handoff patterns for people administering more than one agent setup
  • memory-care staleness checks so durable cards do not quietly rot
  • TokenJuice output-compaction guidance for Claude Code and Codex, including wrapper notes and savings expectations
  • content-guard publish gates so private infrastructure does not leak into public docs
  • adapter fragments for OpenClaw (tested), Hermes (stubbed), and generic harnesses
  • doctor checks that prove the system is wired before you trust it

What you do not get

  • private hostnames, IPs, account IDs, or personal details
  • live auth profiles or OAuth tokens
  • cron jobs that post publicly by default
  • destructive automation or write-enabled integrations without explicit opt-in

Install

pipx install solo-mise

Or, to track main:

pipx install git+https://github.com/solomonneas/solo-mise

Quick path

Run solo-mise init with no flags for the interactive picker:

solo-mise init --target ~/agent-kitchen

For CI or scripts, pass flags directly:

solo-mise init --target ~/agent-kitchen --depth workspace --harnesses claude,codex,openclaw
solo-mise init --target ./repo --depth repo --harnesses codex
solo-mise init --target ./repo --harnesses none           # generic install

Two axes: depth + harnesses

solo-mise installs material on two independent axes:

Depth, how much shared baseline you want:

Depth Installs
repo (default) AGENTS.md, SAFETY_RULES.md, INSTALL_FOR_AGENTS.md, hooks/pre-push, .solo-mise/policies/public-repo.json
workspace repo + MEMORY.md, TOOLS.md, USER.md, SOUL.md, IDENTITY.md, HEARTBEAT.md, memory/cards/, starter cards

Harnesses, which tools you actually use:

Harness Role Adds
claude writer CLAUDE.md + .claude/memory-handoffs/ inbox
codex writer .codex/memory-handoffs/ inbox (AGENTS.md is in the baseline)
openclaw reader .solo-mise/openclaw/ config fragments + cron stubs
hermes reader .solo-mise/hermes/ adapter fragments (experimental)

Includes, optional add-ons:

Include Adds
publisher .solo-mise/policies/public-content.json + content-safety memory card + scrub-cache

Picking your harnesses

Four common combos:

  • Claude Code only: --harnesses claude, the lightest setup, just one writer.
  • Claude Code + OpenClaw: --harnesses claude,openclaw, durable memory owner (OpenClaw) plus side writer (Claude Code).
  • Claude Code + Codex + OpenClaw: --harnesses claude,codex,openclaw, both writers feed into OpenClaw as the canonical owner.
  • Codex + OpenClaw: --harnesses codex,openclaw, Codex-first user with OpenClaw as the canonical store.

The canonical memory owner is picked automatically by priority (openclaw > hermes > claude > codex > this-repo). Override with --owner.

Re-running solo-mise init against an existing target is safe. It refuses to overwrite tracked files without --force, and the .gitignore block it manages is replaced between its markers without touching the rest of your file.

See QUICKSTART.md for setup, verification, and the ingest flow.

What a green doctor looks like

solo-mise doctor: target /home/you/agent-kitchen (generic)
  [ok]   bootstrap: AGENTS.md              /home/you/agent-kitchen/AGENTS.md
  [ok]   bootstrap: CLAUDE.md              /home/you/agent-kitchen/CLAUDE.md
  [ok]   bootstrap: MEMORY.md              /home/you/agent-kitchen/MEMORY.md
  [ok]   bootstrap: TOOLS.md               /home/you/agent-kitchen/TOOLS.md
  [ok]   bootstrap: USER.md                /home/you/agent-kitchen/USER.md
  [ok]   bootstrap: SAFETY_RULES.md        /home/you/agent-kitchen/SAFETY_RULES.md
  [ok]   bootstrap: INSTALL_FOR_AGENTS.md  /home/you/agent-kitchen/INSTALL_FOR_AGENTS.md
  [ok]   handoff: inbox                    /home/you/agent-kitchen/.claude/memory-handoffs
  [ok]   handoff: TEMPLATE.md              /home/you/agent-kitchen/.claude/memory-handoffs/TEMPLATE.md
  [ok]   handoff: processed/               /home/you/agent-kitchen/.claude/memory-handoffs/processed
  [ok]   memory: cards/                    /home/you/agent-kitchen/memory/cards
  [ok]   publish: hooks/pre-push           /home/you/agent-kitchen/hooks/pre-push
  [ok]   publish: content-guard            /home/you/repos/content-guard

summary: 14 checks, 0 failed, 0 manual

Anything [warn] is fine; [fail] means the install is incomplete. The openclaw and hermes harnesses add their own checks on top.

Privacy

solo-mise makes no network calls. It does not phone home, collect telemetry, or sync anything to a server. Everything happens on your local filesystem against the templates packaged with the install. The only file that touches the network is the pre-push hook, and it runs the local content-guard scanner against your own commits before they leave the machine.

The design

One memory owner stays canonical (typically OpenClaw or Hermes when present, otherwise this-repo). Writer harnesses drop handoffs into their own inboxes; the ingester scans all of them.

Claude Code              Codex
     |                     |
     v                     v
.claude/memory-handoffs/ .codex/memory-handoffs/
     \                   /
      \                 /
       v               v
      solo-mise ingest
              |
              v
  memory/cards/*.md, TOOLS.md, USER.md,
  rules/*.md, .learnings/*.md

The ingester is intentionally conservative. Safe card handoffs become cards. Targeted updates append to the right file. Ambiguous material gets kicked out for review instead of being trusted automatically.

For users running multiple agent homes, treat the owner workspace as the hub. Remote or secondary workspaces can write handoffs into their own per-harness inboxes, then a trusted sync pulls those files into a staging inbox on the owner. That keeps agents informed about what happened elsewhere without creating multiple canonical memories.

Token-heavy terminal work gets the same treatment: make the wrapper explicit, make the escape hatch obvious, and tell every harness what is happening. The TokenJuice starter card documents Claude Code's PreToolUse wrapper path, Codex's hook setup, and the savings model.

License

MIT

Metadata

Release files for solo-mise 0.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for solo-mise 0.4.0
File Size Uploaded
solo_mise-0.4.0.tar.gz 79.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for solo-mise 0.4.0
File Interpreter ABI Platform
solo_mise-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 168.2 kB

Release files / solo_mise-0.4.0.tar.gz

Download URL solo_mise-0.4.0.tar.gz
Size 79.6 kB
Tags Source
SHA-256 checksum
How to use checksums
adb4cf45dfe838ef61373d397494d6f85aeeae35be09c739b3fdff9e01c9001e
BLAKE2b-256 checksum
How to use checksums
afac8e810a2de8939ab2244f196a3c648382cf9b91b65f9ba9568415939c500a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release files / solo_mise-0.4.0-py3-none-any.whl

Download URL solo_mise-0.4.0-py3-none-any.whl
Size 88.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
46b5f2b17c69a466ca8685246ec00c680af49509a2c78eb72c19511b5a8d95f6
BLAKE2b-256 checksum
How to use checksums
24efad97bad29f8e49ae1da91ba2eb55b182a0b622d1039a529146d4fab9ea8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.13

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page