v0.1.0

moorcheh-ai/memantov0.1.0May 11, 2026by het0814

AI Summary

Significant API and architecture overhaul moving memory endpoints to structured POST request bodies, renaming session endpoints, and unifying session management under agent lifecycle.

Key Highlights

  • Memory read endpoints migrated from query parameters to structured POST bodies
  • Session management unified under agent lifecycle with new `/status` endpoint
  • Agent deletion gains optional remote wipe capability
  • Startup dependency validation for Moorcheh API key

Breaking Changes

  • Memory read endpoints are now `POST` instead of query parameters
  • `/session/current` renamed to `/status`
  • `/session/extend` removed
  • `/sessions` list endpoint removed
  • Authorization header no longer accepted for API key (MOORCHEH_API_KEY is server config only)
  • `X-Session-Token` header is now the only auth mechanism for memory operations
  • Legacy routes (/api/v1/namespaces, /api/v1/memory, /api/v2/context) removed

New Features

  • Structured request body models: RecallRequest, RecallAsOfRequest, RecallChangedSinceRequest, RecallRecentRequest
  • New endpoints: POST /{agent_id}/recall/recent, GET /{agent_id}/conflicts, POST /{agent_id}/conflicts/resolve
  • Date-only values for as_of and since with default end-of-day/start-of-day logic
  • Startup dependency validation for Moorcheh API key

Full Release Notes

# Release Notes for v0.1.0

  This release is a significant API and architecture overhaul: memory endpoints migrate from query-parameter style to **structured POST request bodies**, auth is simplified to server-side API key management, old v1 internal routes are retired, session management is unified under the agent lifecycle.

  ## Breaking Changes

  - **Memory read endpoints are now `POST`** — `recall`, `answer`, `recall/as-of`, `recall/changed-since` accept JSON request bodies instead of query parameters.
    - `memory_types` filter renamed to `type` (accepts a list of strings) across all
      recall endpoints and CLI recall commands.
  - **`/session/current` renamed to `/status`** — requires no session token; reads
    active session from local state.
  - **`/session/extend` removed** — session extension is no longer supported.
  - **`/sessions` list endpoint removed.**
  - **Authorization header no longer accepted for API key** — `MOORCHEH_API_KEY`
    is read from server config only; `Bearer` header auth is dropped.
  - **`X-Session-Token` header is the only auth mechanism for memory operations** `Authorization` header no longer accepted on per-request session auth.
  - **`/api/v1/namespaces`, `/api/v1/memory`, `/api/v2/context` routes removed** , moved to `memanto/app/legacy/`.

  ## Improvements

  - **Structured request body models** (`memory.py`)
    - `RecallRequest`, `RecallAsOfRequest`, `RecallChangedSinceRequest`,
      `RecallRecentRequest` Pydantic models with full field validation (bounds,
      min lengths, optional fields).
    - Date-only values for `as_of` default to end-of-day; `since` defaults to
      start-of-day — no need to supply full ISO datetimes for daily windows.

  - **New endpoints**
    - `POST /{agent_id}/recall/recent` — retrieves most recent memories without
      a query string (replaces `/recall/current`).
    - `GET /{agent_id}/conflicts` — lists detected memory contradictions.
    - `POST /{agent_id}/conflicts/resolve` — resolves a flagged contradiction.

  - **Agent deletion gains optional remote wipe** (`sessions.py`)
    - `DELETE /agents/{agent_id}?delete-backup-too=true` deletes the agent's
      Moorcheh namespace in addition to local metadata.

  - **Startup dependency validation** (`main.py`)
    - Server validates `MOORCHEH_API_KEY` on startup and refuses to start if the
      key is missing or authentication fails — fail-fast instead of silent errors
      at request time.

  - **Auth dependencies simplified** (`auth_deps.py`)
    - `get_moorcheh_api_key()` reads from server config only (no per-request
      header parsing).
    - `verify_moorcheh_api_key()` no longer makes a live API call — key validity
      is verified once at startup.

  - **Session service cleanup** (`session_service.py`)
    - `extend_session()` removed.
    - `moorcheh_api_key` parameter removed from `create_session()`,
      `validate_session()`, and `renew_session()` — key is owned by the server.

  - **Health check** (`health.py`)
    - `/health` no longer requires a client dependency injection.
    - Status reports `"unhealthy"` (was `"degraded"`) when Moorcheh is unreachable.

  - **CLI**
    - `memanto session extend` command removed.
    - "Session" terminology replaced with "activation" in `agent create`,
      `agent activate`, `agent deactivate`, and `memanto status` output panels.
    - `memanto status` panel renamed **Active Agent** (was "Active Session").


  ## Tests

  - Added `tests/test_e2e.py` with end-to-end API coverage.

  ## Full Changelog

  Full Changelog: https://github.com/moorcheh-ai/memanto/compare/v0.0.8...v0.1.0