Releases: Nonanti/Alaz
Releases · Nonanti/Alaz
v2.0.0 — Active Intelligence
[2.0.0] — Active Intelligence
Major release: Alaz graduates from a passive knowledge store to an active collaborator that observes, learns, and proactively surfaces the right context.
Added
- CLAUDE.md generator —
alaz generate-claude-mdemits a project-specific guide synthesized from the knowledge base; auto-refreshes on session start when stale (>24h). - Smart PostToolUse hook — triggers on errors and file events with selective FTS; minimises noise while maximising signal.
- Dual LLM backend — Ollama native API (
think:falsefast path) with OpenAI-compatible fallback. Run fully local, fully remote, or mix and match. - Git integration — post-commit hook ingests diffs; new MCP tools
alaz_git_hot_files,alaz_git_coupled_files,alaz_git_timeline. - v2 MCP surface — 76 tools total. New capabilities:
- Alerts (
alaz_create_alert,alaz_list_alerts,alaz_alert_history,alaz_delete_alert) - Error groups (
alaz_error_groups,alaz_error_group_detail,alaz_resolve_error) - Logs (
alaz_logs_query,alaz_logs_stats) - Work units (
alaz_create_work_unit,alaz_list_work_units,alaz_update_work_unit,alaz_link_session_work_unit) - Project health (
alaz_project_health), impact analysis (alaz_impact) - Advanced retrieval (
alaz_rag_fusion,alaz_agentic_search) - Analytics (
alaz_learning_analytics,alaz_search_analytics,alaz_record_usage)
- Alerts (
- Spaced repetition — Migration 016 adds
sr_interval_days,sr_easiness,sr_next_review,sr_repetitionstoknowledge_items(SM-2 style). - Learning analytics — Migration 018 exposes pipeline health and extraction outcomes.
- Related files extraction — learning pipeline now captures co-changed files per episode.
- Implicit click tracking — signal-weight learning consumes real usage, no manual feedback required.
Changed
- Lower cross-project promotion thresholds — patterns cross over to other projects faster.
- Hard-delete superseded items after a 7-day grace period instead of indefinite retention.
- Tighter extraction limits + minimum quality gates for higher-signal outputs.
- ColBERT & MCP refactor — MCP module split from a 1455-line monolith into per-domain handler sub-modules.
- FTS tokenization — OR-keyword expansion in PostToolUse hook for broader recall.
- LLM client — flexible JSON deserialization, reflection foreign-key guard.
Fixed
- Project name → ID resolution before repo queries.
- PostgreSQL
AVG()NUMERIC cast tofloat8for sqlxf64compatibility. - 21+ individual issues and 5 architectural improvements across the codebase.
Removed
- Internal deploy-specific references and migration artifacts from public history.
v1.0.0 — Initial Release
Alaz v1.0.0
Long-term memory for AI coding agents.
Highlights
- 6-signal hybrid search — FTS + Dense Vector + ColBERT MaxSim + Graph Expansion + RAPTOR + Memory Decay, fused via Reciprocal Rank Fusion
- Autonomous learning pipeline — Extracts patterns, episodes, procedures, and core memories from session transcripts automatically
- Knowledge graph — Polymorphic graph with 14+ relation types, causal chains, cross-project promotion
- 22 MCP tools via StreamableHTTP for seamless Claude Code integration
- RAPTOR clustering — Hierarchical K-Means++ with LLM-generated summaries for conceptual search
- ColBERT token-level search — Jina-ColBERT-v2 for precise multi-vector retrieval
- Contradiction detection — Automatically detects and supersedes outdated knowledge
- Encrypted vault — AES-256-GCM secret storage with per-owner isolation
- Session checkpointing — Save and restore arbitrary session state
- HyDE — Hypothetical Document Embeddings for improved recall
- Circuit breaker — Graceful degradation when external services are unavailable
Tech Stack
- Rust (2024 edition) — Single binary, 9 crates, ~31K lines
- Axum — HTTP REST + MCP server
- SQLx — PostgreSQL with 18 migrations
- Qdrant — Dense (4096-dim) + ColBERT (128-dim) vectors
- Tokio — Async runtime, all search signals concurrent
Quick Start
git clone https://github.com/Nonanti/Alaz.git
cd Alaz
docker compose up -d
cp .env.example .env
cargo run -- migrate
cargo run -- serveSee README for full documentation.