letta-code AGENTS.md

A set of working rules for contributors and coding agents in the letta-code project. It covers repository workflow, code checks, runtime differences, and restrictions on importing files from parent directories.

In plain words
What is it for?
Planning code changes, choosing where to work, running validation, handling Bun and Node builds, and checking behavior across the project's interfaces.
Why use it?
It gives agents the project-specific rules needed to make changes that pass checks and work in the supported environments. It also helps avoid mixing unrelated changes or testing only one runtime.

Instructions file for CodexOpenCode

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/letta-ai/letta-code/agents-md
Clone the repo
git clone --depth 1 https://github.com/letta-ai/letta-code

Made for: Codex, OpenCode.

Per session 10,832 This file is loaded in full into every session.
When invoked 10,832 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.10832 $0.10832
Opus 5 $0.05416 $0.05416
Sonnet 5 $0.02166 $0.02166
Haiku 4.5 $0.01083 $0.01083

Measured 3d ago against content hash f1db6b58e260, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

letta-code AGENTS.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

AGENTS.md · 948 lines

How it starts

The opening of the file, as written. The whole thing — 948 lines — stays where its author put it; the contents beside it link to each section on GitHub.

letta-code — Agent Guide

This file explains how to work effectively in this repo. It covers the rules enforced by CI, why each rule exists, and the workflow conventions that keep the codebase healthy and agent-navigable.


Workflow

  1. Create a worktree for any non-trivial change — especially if another agent may be working concurrently.
  2. Make your change, then run bun run check and fix all failures before opening a PR.
  3. One PR per logical change. Don't bundle unrelated changes — harder to revert if something breaks.
  4. Never amend commits. Always create a new commit.
  5. Check the current branch before editing files. If in doubt, ask.

Runtime Validation

Development and distribution use different runtimes. bun run dev runs the TypeScript source with Bun, while the published package exposes a Node-targeted letta.js bundle and requires Node 22.19 or newer. When behavior depends on the runtime, test both the Bun source path and the built Node artifact.

The interactive TUI, headless mode, and websocket listener also have separate orchestration paths. Changes to shared turn, tool, approval, permission, or transcript behavior must identify and run the focused tests for every affected path. bun run check is always required, but it does not replace those behavior tests.


Rules and Why They Exist

These are the rules enforced by CI and the pre-commit hook, with the reasoning behind each. Understanding the why lets you make good decisions in ambiguous cases the rules don't explicitly cover.

No ../ parent imports — use @/

Rule: All cross-directory imports must use the @/ alias (@/ maps to src/). Relative parent paths (../) are banned and blocked by pre-commit.

Why: Agents navigate codebases by searching. import { getBackend } from "@/backend" is immediately grep-discoverable anywhere in the repo. import { getBackend } from "../../backend" requires resolving the path from the current file's location — fragile to moves and opaque to search. Consistent absolute paths also make codemods reliable: a rename script can find all import sites with a simple grep.

Read the full file on GitHub · 948 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 948 lines · 10,832 tokens per session scan A f1db6b58e260

Subscribe to this mod's changes

letta-code AGENTS.md is an instructions file published in the GitHub repository letta-ai/letta-code (3,178 stars, last pushed yesterday), licensed Apache-2.0. It adds 10,832 tokens to every session, about $0.0542 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other instructions, from other repositories