Context Engineering

Your project is its context,
not its files

Remb is not a codebase indexer. It's a context engineering platform. The difference: indexing extracts what exists from source files. Context engineering captures what matters — decisions, patterns, gotchas, open problems — built up over time through every session.

You don't need a scan to start. You don't need a GitHub repo. Context starts accumulating from the first memory your AI saves, and compounds with every conversation. By session three, your AI knows more about your project than most teammates do after a month.

The context flywheel

Work

Your AI helps you build, debug, and decide. It reads existing context to arrive informed.

Save

As it works, your AI saves memories and feature notes. You can save manually too with `remb save`.

Compound

Next session starts with richer context. Less re-explaining. More shipping.

Three pillars of project context

Every piece of context fits into one of three categories. Together they give your AI a complete, living model of your project.

01

Memories

The why that doesn't live in code

Decisions, patterns, gotchas, architecture choices — the reasoning behind your codebase. Core memories persist forever. Active memories are in-flight. Archive memories fade but are searchable. Your AI promotes and demotes them automatically.

remb__memory_create({
  title: "Auth token strategy",
  content: "RS256 JWT, 15m access / Redis refresh. Changed from HS256 to RS256 in March 2024 because of multi-service verification.",
  category: "decision",
  tier: "active"
})
02

Context Entries

Feature-level documentation that grows as you work

Each feature in your project can have a context entry — a structured note about what it does, how it works, key files, open problems. Entries are saved by you, by your AI, or bootstrapped from a scan. They never go stale because they're updated every time the AI touches that feature.

remb__context_save({
  feature: "payments",
  content: "Stripe Checkout v3. Webhook handler at /api/webhooks/stripe. idempotency_key on every charge. Known issue: refund delay 3-5 days.",
  type: "feature_note"
})
03

Conversation Logs

What was done, not just what exists

At the end of every session, your AI logs what was asked, what was accomplished, and key decisions made. The next session loads this history first — so it can pick up exactly where you left off, without re-reading the codebase or re-explaining the problem.

remb__conversation_log({
  summary: "Implemented rate limiting on /api/chat. Used Redis sliding window. 60 req/min per user. Added tests.",
  accomplishments: ["chat-rate-limit.ts", "tests/rate-limit.test.ts"],
  decisions: ["sliding window over fixed window for smoother UX"]
})

Where scanning fits in

Scanning is one way to bootstrap context — not the foundation of it.

What scanning gives you

  • → Structural map of your repo (folders, files, layer detection)
  • → Feature list bootstrapped from code analysis
  • → Tech stack, dependencies, import graph
  • → A starting point for large existing codebases

What scanning can't give you

  • → Why a decision was made
  • → What was tried and failed
  • → Open problems and known workarounds
  • → The conventions your team actually follows

For new projects, start without scanning — the context you build from the first session will be more valuable than anything extracted from an empty repo. For large existing codebases, scan to bootstrap structure, then layer rich context on top.