v0.0.6
moorcheh-ai/memantov0.0.6Apr 30, 2026by het0814
AI Summary
Hardens Moorcheh API key verification and introduces configurable summary models while masking the API key in the UI.
Key Highlights
- API key verification across CLI first-run, server health check, and request auth
- Configurable summary model via SUMMARY_MODEL setting
- UI no longer exposes raw API key
New Features
- First-run verification uses documents.get against a sentinel namespace
- Server health check uses documents-based ping
- Configurable SUMMARY_MODEL (default anthropic.claude-sonnet-4-6) for daily summary and conflict report
- UI config endpoint returns masked preview instead of raw key
Full Release Notes
# Release Notes for v0.0.6
This release hardens **Moorcheh API key verification** across the CLI first-run, server health check, and request auth, makes the **summary model configurable from
`~/.memanto/config.yaml`**, and **stops exposing the raw API key in the UI**.
## Improvements
- **API key verification**
- First-run `memanto` setup now actively verifies the key against Moorcheh before saving — invalid keys are rejected, and transient network issues surface as a warning rather
than blocking setup.
- Switched the verification call from `client.namespaces.list()` to `client.documents.get(...)` against a sentinel namespace — a lighter, more deterministic auth ping.
- `NamespaceNotFound` is treated as success (the key authenticated, the sentinel namespace just doesn't exist), removing false negatives.
- **Server**
- `/health` uses the same documents-based ping, so health reflects real auth state.
- Auth dependency returns **401** only on true `AuthenticationError`, and **500** on unexpected errors — clearer separation between bad key and infra failure.
- **Configurable summary model**
- New **`SUMMARY_MODEL`** setting (default `anthropic.claude-sonnet-4-6`) used for the daily summary and conflict report.
- `~/.memanto/config.yaml` now supports `memanto.summary.model` (and `memanto.answer.model` / `temperature` / `answer_limit`) — loaded at startup so you can swap models
without code changes.
- **UI**
- `/api/ui/config` and the API-key update endpoint now return a **masked preview** (`••••••••<last6>`) instead of the raw key. The plaintext key is no longer sent to the
browser.
## Tests
- Test suite passes locally: **`54 passed`**.
## Behavioral changes
- **`memanto` first run** now blocks setup on an invalid Moorcheh API key instead of saving it and failing later.
- **`/health`** and **request auth** no longer call `namespaces.list()`; they ping `documents.get` against a sentinel namespace.
- **Daily summary & conflict report** pick their model from `SUMMARY_MODEL` / `memanto.summary.model` rather than `ANSWER_MODEL`.
- **UI config endpoint** no longer returns the raw API key — only a masked preview. Any client reading `api_key` expecting plaintext must adapt.
## Full Changelog
Full Changelog: https://github.com/moorcheh-ai/memanto/compare/v0.0.5...v0.0.6