Keep the facts a fresh session needs
Begin with a small brief: what the project does, where its important pieces live, how to run a relevant check, and the constraints on the current task. Add a decision when forgetting it would cause the next session to make a different choice.
Prefer a source path and a reason over a long transcript. ‘Use the API wrapper because it refreshes the session token’ is useful; a pasted discussion about three abandoned wrapper implementations is harder to act on.
- Current state: the branch, outstanding changes, and what is working.
- Decisions: the choice, its reason, and a source or date when useful.
- Known failures: how to reproduce them and whether they predate this task.
- Next step: one concrete action with a way to check the result.
Separate current facts from proposals
Label a plan as a plan. A note saying ‘move the worker to a queue’ can otherwise be mistaken for a description of an existing queue. Keep unresolved questions close to the decision they affect.
This example is a format you can adapt, not a required Lattice configuration file. Replace the paths and commands with ones that exist in your repository.
# Project brief
## Current state
The worker runs in-process. Queue migration is not implemented.
## Decision
Keep job IDs stable across retries so the UI can reconcile progress.
Source: src/jobs/retry.ts
## Verify
Run the retry integration check before changing job ownership.
## Next
Reproduce the interrupted-upload case; record the observed state.Review memory as the project changes
A confident outdated note is worse than a missing note. When a deployment changes, update its entry. When a workaround is removed, remove the instruction that preserves it. Keep completed task history out of the short current-state brief.
Store credentials in the appropriate credential store, not in project notes. Record that a secret is needed and where the application expects it without copying its value. Review notes before sharing them outside the project.
For a larger repository, keep a short entry point and link to focused notes about deployment, architecture, or a difficult subsystem. The entry point should remain quick to scan.
Check what your agent actually receives
Lattice keeps project notes as editable Markdown on your computer and brings relevant context into supported sessions. Claude Code has full memory support. Codex needs a one-time hook approval; Gemini and Cursor have partial support.
Try a small task after setup: ask the session to identify a current project constraint and its source. If the answer is missing or outdated, fix the note or integration before trusting a longer task to it. Memory helps the agent start informed; you still review the result.
Keep the workflow in one place.
Explore Lattice’s desktop workspace, supported integrations, and platform details.
View Lattice