Files
LexAI/docs/MEMORY.md
john kevin asprec efdae32ae1
All checks were successful
CI — Website / Website — typecheck, build (pull_request) Successful in 1m1s
fix: serve the website dist so Coolify answers GET /
Nixpacks built Vite but had no production start command, so Coolify returned Cannot GET /.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-17 22:27:25 +08:00

49 lines
2.1 KiB
Markdown

# Project memory
> Curated long-term knowledge. **Hard cap: 60 lines of entries.**
## Verified facts
- LexAI monorepo: `packages/{chrome,vscode,cli,website}`; shared `src/lib`.
- Portable core: `providers.ts`, `actions.ts`, `types.ts`. Chrome-only: `crypto.ts`, `messaging.ts`.
- Providers: OpenAI, Anthropic, Groq, OpenRouter — `callProvider` / `PROVIDER_SPECS`.
- VS Code: Secret Storage; Code Assist; prefs `lexai.*`.
- CLI: `lexai prompt`; `LEXAI_API_KEY` required; optional `LEXAI_PROVIDER` / `LEXAI_MODEL`; `~/.lexai/config.json` never holds apiKey.
- Chrome entrypoints: `packages/chrome/entrypoints/`; build → `packages/chrome/.output/chrome-mv3/`.
- Selection minimum: `MIN_SELECTION_LENGTH` (10). Chrome `onMessage` must `return true`; snapshot before `await`.
## Conventions
- Style Chrome UI with inline styles (Tailwind not wired).
- Prefer encrypted Chrome key path; keep plaintext `apiKey` fallback until migration.
- VS Code / CLI must not import `@lib/crypto` or `@lib/messaging`.
- Root scripts: `install:all`, `chrome:*`, `vscode:*`, `cli:*`, `website:*`.
## Environment quirks
- Node 22 pinned in CI; `npx wxt prepare` required before Chrome typecheck on fresh clone.
- PowerShell may not accept `&&` — chain with `; if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }`.
## Key paths and entry points
| What | Where |
| --- | --- |
| Chrome entrypoints | `packages/chrome/entrypoints/` |
| Shared lib | `src/lib/` |
| VS Code | `packages/vscode/` |
| CLI | `packages/cli/` |
| Website | `packages/website/` (Vite React; Home, Docs, Contribute, Community). Production: `npm start` → `server.mjs`, or `Dockerfile` (nginx :80). Coolify base `packages/website`, static site off. |
| OSS meta | root `README.md`, `LICENSE`, `CONTRIBUTING.md`, `CODE_OF_CONDUCT.md` |
| Issue/PR templates | `.gitea/ISSUE_TEMPLATE/`, `.gitea/PULL_REQUEST_TEMPLATE.md` |
| CI workflows | `.gitea/workflows/ci-{chrome,vscode,cli,website}.yml` (no deploy/release yet) |
## Expiring notes
- _None yet._
## Consolidation log
| Date | Action | Reason |
| --- | --- | --- |
| 2026-08-13 | Seeded after VS Code v1 | `/project-init` stubs + port |