# State ## Current focus Read-only TypeScript wrapper around KeePass `.kdbx` databases through a Python JSON bridge. ## Current API - `openKeePassDatabase(path, options)` - `listEntries()` - `findEntries(query)` - `listGroups()` - `close()` is a no-op ## Runtime model - TypeScript spawns Python per request - Python uses `pykeepass` - JSON is exchanged over stdin/stdout - Errors from the bridge, missing files, invalid JSON, and backend exceptions are surfaced to TypeScript - Python defaults to `.venv/bin/python3`, overridable with `PYTHON_PATH` ## Current fixture/test status - Bundled fixtures: `tests/fixtures/data.kdbx` and `tests/fixtures/empty.kdbx` - `tests/fixtures/data.kdbx.json` stores the password and expected tree/content - Unit tests mock `node:child_process.spawn` - Integration tests validate entries, groups, partial search, and OTP/TOTP output for `data.kdbx` - Integration tests skip when `pykeepass` is unavailable ## Next step Keep tightening failure-path coverage and keep the API minimal unless a concrete need appears.