Morpheus is not trying to become another review bot.
The product direction is:
First verify. Then learn.
Morpheus builds a verified learning layer for coding agents. It classifies project knowledge, proves what is source-backed, excludes unsafe or stale claims, and distills stable project truth into local model memory experiments.
The truth layer is the data-quality gate. The learning layer is the long-term product.
v0.2.0b2 documents the current beta loop:
project sources -> source-backed state -> morpheus check
-> strict accepted candidates -> dataset -> local adapter lab -> eval report
It can compile state, check agent claims, expose MCP truth tools, generate source-backed datasets, run local MLX adapter experiments, and report whether learning helped or hurt. Adapter activation remains explicit and eval-gated.
Goal: turn source-backed extraction into a useful project-knowledge classifier.
Claim classes:
- architecture facts
- implementation facts
- product identity facts
- security and safety rules
- command and CLI facts
- integration facts
- stale claims
- team conventions
- open tasks
- temporary facts
Verified acceptance criteria:
- every candidate has a class, source span, confidence, and trainability status,
- classifier output is deterministic enough for review diffs,
- stale and temporary facts are never promoted as stable training facts,
-
morpheus checkcan report class-specific results.
Goal: show what Morpheus believes is trainable, retrievable, stale, unsafe, or review-blocked.
Dashboard surfaces:
- trainable claims
- retrievable state
- stale claims
- unsafe or secret-like candidates
- needs-review candidates
- negative examples
- eval-only examples
- source coverage and missing evidence
Verified acceptance criteria:
- dataset manifests record class, trainability, and route counts for eligible reviewed candidates,
- the shared quality report computes per-candidate routing and trainability reasons
plus aggregate
top_blockers, - CLI and API expose the shared report; the browser dashboard renders aggregate quality counts, gates, and blockers
from
/learning/quality, not per-claim reasons.
Goal: prove adapter memory by category, not only with a single pass-rate number.
Benchmark categories:
- product identity
- commands and CLI behavior
- architecture
- safety rules
- team conventions
- stale claim correction
- unsupported claim refusal
Verified acceptance criteria:
- base vs adapter reports pass-rate and hallucination-rate deltas per category,
- all regressions are tracked per category and critical regressions are a separate subset,
- no adapter can be activation-ready with critical stale/safety/refusal regressions,
- activation and rollback-to-adapter use the same live adapter-bound readiness/eval gate; force cannot bypass it, while rollback-to-none remains the fail-safe,
- activation authority binds a registered trained weight artifact by exact path, size, and SHA-256; preview-only manifests remain ineligible.
Canonical schema: morpheus-benchmark-categories/1.
Canonical coverage IDs are exactly product_identity,
commands_and_cli_behavior, architecture, safety_rules,
team_conventions, stale_claim_correction, and
unsupported_claim_refusal. Diagnostic project_recall does not satisfy
coverage. Security/safety and convention/team-convention coverage are
independent requirements.
The dataset manifest and both eval sides must bind the current category schema and exact dataset authority. A legacy or mismatched manifest, eval, or category schema requires rebuilding the dataset and rerunning base and adapter evals. Editing old artifacts cannot create activation authority.
Goal: route each fact to the right memory channel.
Routes:
- prompt context
- retrieval/RAG
- LoRA or QLoRA adapter training
- eval-only
- negative example
- stale archive
- human review
Verified foundation:
- normal review acceptance and rejection recompute a route,
- routing decisions expose policy version, source span, route, and reason,
- dataset validation excludes raw Markdown, rejected, pending, inferred, secret-like, and route-inconsistent candidates from adapter training.
Verified acceptance hardening:
- every persisted lifecycle transition, including lab auto-accept and source invalidation, recomputes and stores the canonical route,
- signed compiled active-state input is either defined and enforced as explicit review authority or excluded by the same no-unreviewed-input rule.
Goal: turn team corrections into continual project memory.
Inputs:
- PR comments
- rejected agent claims
- human corrections
- accepted review candidates
- check results
- stale claim corrections
Verified acceptance criteria:
- corrections become pending candidates, not silent training data,
- accepted corrections can become negative or correction examples,
- rejected or unresolved corrections never enter training,
- the loop can run repeatedly without activating adapters automatically.
- one strict, idempotent input path covers all six documented sources,
- every accepted input receives an immutable content-addressed receipt; verified and unknown check results remain audit-only,
- accepted-candidate references revalidate review authority, live source span, projection integrity, and an optional digest without automatic apply,
- receipts, candidate artifacts, the shared candidate store, and reports commit as one recoverable transition before any other shared review mutation.
The completion labels above describe the current beta implementation and its repository tests, not stable maturity or broad proof across real repositories. No milestone after v0.7 is currently defined.
Morpheus should not be sold as:
We fine-tune an AI model on your codebase.
That framing is generic and unsafe. It skips the important questions: source grounding, secrets, stale knowledge, overfitting, eval, rollback, and changing repositories.
The stronger framing is:
Morpheus builds a verified learning layer for your agents.
It classifies project knowledge, proves what is source-backed,
and distills stable truth into local model memory.
- No accepted source span -> no training example.
- No exact source-authority/artifact match -> no dataset execution.
- No eval pass -> no adapter activation.
- No rollback means no production activation.
- No cloud calls by default.
- No raw Markdown training.
- No adapter output as source of truth.