2.2 KiB
Project memory — LexAI
Curated long-term knowledge that must survive sessions, compaction, and agent turnover. Loaded at every session start alongside
HANDOFF.md. Hard cap: 60 lines of entries. When full, thememory-syncskill consolidates or archives before adding. Facts only — state goes inHANDOFF.md, mistakes inLESSONS_LEARNED.md, choices inDECISIONS.md.
Verified facts
Durable, evidence-backed truths about this project (domain rules, invariants, external realities).
- No backend: the background service worker is the only context that calls provider APIs; the user's key never leaves the extension except to the chosen provider.
Conventions
How this codebase does things (naming, structure, patterns a new agent must follow).
- UI is inline style objects (dark Catppuccin-ish palette); Tailwind is installed but inactive.
- Each provider is duplicated as
callX+callXWithPrompt— change both until T-04 refactors the layer.
Environment quirks
Non-obvious facts about tooling, commands, CI, or the operator's machine that repeatedly cost time to rediscover.
node_modulesis gitignored and absent by default — runnpm installbefore anynpm run *.- CI is Gitea (
.gitea/workflows/), Node 22 pinned. Version must match inpackage.jsonandwxt.config.ts.
Key paths and entry points
| What | Where |
|---|---|
| Content script (selection, toolbar, replace) | entrypoints/content.ts |
| Background LLM proxy (providers, key decrypt) | entrypoints/background.ts |
| Options (provider/model/key + encrypt) | entrypoints/options/Options.tsx |
| Popup (standalone analyze) | entrypoints/popup/Popup.tsx |
| Task list (from RECOMMENDATIONS) | docs/TASKS.md |
Expiring notes
Short-lived knowledge with an explicit expiry; memory-sync deletes past-due entries.
- None yet. Format:
[YYYY-MM-DD expires] note
Consolidation log
| Date | Action | Reason |
|---|---|---|
| 2026-07-15 | Seeded initial facts, conventions, quirks, key paths | memory layer added |
Write rules: one line per entry, evidence-backed, no secrets/personal data/transcripts. Every entry must answer "would a fresh agent waste tokens rediscovering this?" — if no, it doesn't belong here.