LTM: A JSON Protocol for Portable Agent Memory Across Models and Machines
If you use Claude across multiple editors or machines, you've likely hit the context portability wall: your CLAUDE.md doesn't follow you to Cursor, Cursor rules don't transfer to Codex, and nothing survives a model or OS switch. Existing "agent memory" tools are mostly markdown files you manually groom or vendor-locked stores. A new open-source project called ltm takes a different approach: a small JSON protocol called the Core Memory Packet, plus a CLI and server to move packets around.
How It Works
At the end of a session, the agent calls ltm save. At the start of the next session, ltm resume pulls in the dossier on the current obstacle—regardless of model, harness, or machine. A packet contains five required fields and is typically 2 to 5 KB:
- Goal: what you're trying to achieve
- Decisions locked in: constraints that shaped the code
- What you've already tried: dead ends and rejected approaches
- Next step: what to do next
The commit log already carries the work that went fine. LTM focuses on what agents can't reconstruct from a repo: dead ends and constraints that never appear in code.
Key Design Decisions
- Model, harness, and machine agnostic: a packet written by Claude on macOS reads fine for Codex on Linux, or for a teammate on their machine. The protocol is the product; CLI and server are reference implementations.
- Token-efficient: a 2–5 KB packet at session start is cheaper than letting the agent re-explore the codebase to rediscover what was already tried and rejected.
- Self-host or managed hub: same protocol either way. One Go binary, SQLite on disk, runs on a low-end VPS.
- Redaction is load-bearing: every packet is scanned before leaving the machine. AWS keys, GitHub tokens, JWTs, private keys, absolute paths, Slack and Stripe tokens—all blocked by default. Secrets don't travel.
- MCP support out of the box: Claude Code, Cursor, Zed, Codex, etc. can call
saveandresumeas tools without ever typing an ID. - Intent is portable, configuration isn't: packets never carry
CLAUDE.md, skills, prompts, or tool setup—those stay local.
Try It Without Signing Up
You can see what a resume looks like immediately: ltm example --resume runs the full flow against a sample packet and drops the resume block on your clipboard.
License and Ethics
LTM is Apache 2.0. The builder acknowledges LLM assistance: every agent-touched commit carries an Assisted-by: trailer in Linux kernel conventions.
Repo: github.com/dennisdevulder/ltm
📖 Read the full source: r/ClaudeAI
👀 See Also

Running OpenClaw and Codex CLI Natively on Android via AnyClaw APK
A developer has packaged OpenClaw and Codex CLI into an Android APK called AnyClaw, enabling the gateway and Control UI to run locally on ARM64 Android 7.0+ devices without root. The project required building dependencies from source and patching multiple components to handle Android-specific constraints.

Solo Dev Uses Claude + Blender MCP to Create App Store Video in 90 Minutes
Reddit user Positive_Camel2086 details how they used Claude with the Blender MCP server to generate a 10-second vertical launch video, automating camera rigging, materials, fog, and particle systems via conversational prompts.

OpenClaw PARA skill organizes AI assistant files automatically
A developer created an OpenClaw skill that enforces the PARA method (Projects, Areas, Resources, Archives) for file organization, automatically sorting files into four structured folders instead of dumping everything in the root directory.

CostHawk Launches Public Leaderboard for Claude Code, Codex, and Cursor Token Consumption
CostHawk’s leaderboard ranks public users of Claude Code, OpenAI Codex, and Cursor by total token consumption, tracking counts, models, and sync timestamps without storing prompts or code.