Skip to content

Releases: PatrickNoFilter/eling

v0.12.1 — 6 tiers → 8 layers terminology restructure

Choose a tag to compare

@PatrickNoFilter PatrickNoFilter released this 12 Jul 03:08

v0.12.1 — Terminology Restructure: 6 Tiers → 8 Layers

All documentation has been updated to match the 8-layer architecture:

Changes

  • README.md: 6-tier/5-tier → 8-layer throughout; tool counts corrected (71→73); layer diagram updated
  • docs/ARCHITECTURE.md: Tier→Layer terminology everywhere; markdownify module added to file tree; tool counts corrected
  • continuum/README.md: 5 memory tiers → 8 memory layers
  • pyproject.toml: Description updated; version → 0.12.1
  • src/eling/init.py: Docstring updated to 8-layer architecture; version → 0.12.1
  • GitHub repo description: 6-tier → 8-layer

v0.12.0 — markdownify MCP server + credits

Choose a tag to compare

@PatrickNoFilter PatrickNoFilter released this 12 Jul 02:55

v0.12.0 — markdownify MCP server

New: Markdownify MCP Server (5th MCP server, 9 tools)

New src/eling/markdownify/ module — a native Python MCP server that converts documents to Markdown using Microsoft's markitdown library.

  • 9 tools: markdownify_pdf, docx, xlsx, pptx, image, audio, webpage, file, get
  • CLI: eling markdownify mcp / eling-markdownify
  • Credits: adapted from markdownify-mcp by Zach Caceres (@zcaceres)
  • Optional dep: pip install eling[markdownify]

v0.11.2

Choose a tag to compare

@PatrickNoFilter PatrickNoFilter released this 12 Jul 02:26

v0.11.2 — 2026-07-12

Fixed

  • HRR activation bugFactsLayer.__init__() checked hrr._HAS_NUMPY which starts as None (lazy initialization) rather than False. Since not None is True, HRR was silently disabled even when numpy was installed, causing the hybrid search to fall back to BM25-only. Added an eager numpy import probe that resolves _HAS_NUMPY to True/False before the weight fallback check.

Affects

All users with numpy installed — HRR vectors were silently not being computed, reducing multi-entity reasoning quality.

v0.11.1 — httpx core dependency fix

Choose a tag to compare

@PatrickNoFilter PatrickNoFilter released this 12 Jul 02:07

v0.11.1 — httpx core dependency fix

Fixed

  • httpx missing from core dependencies — NotionLayer silently no-oped on a
    fresh pip install eling because httpx was not listed in pyproject.toml.
    Now shipped as a hard dependency (httpx>=0.27). Also exposed as eling[notion]
    extra for explicit pinning.

Changed

  • pyproject.toml: httpx>=0.27 added to dependencies
  • pyproject.toml: added notion optional-dependency alias, wired into all

v0.11.0 — Obsidian Layer 6

Choose a tag to compare

@PatrickNoFilter PatrickNoFilter released this 12 Jul 01:41

v0.11.0 — Obsidian Layer 6

New

  • Obsidian Layer 6 — local Markdown vault client (src/eling/layers/obsidian.py)
    • brain_obsidian_search — grep-style content search across vault .md files
    • brain_obsidian_read — read any vault file
    • brain_obsidian_write — create/overwrite vault notes with frontmatter
    • brain_obsidian_daily — timestamped daily notes at Daily/YYYY-MM-DD.md
    • brain_obsidian_list — list vault files by folder
    • Configurable via OBSIDIAN_VAULT_PATH env var (defaults to ~/Documents/Obsidian/Hermes-Agent/)
  • CREDITS.md — new full-attribution file

Changed

  • Layer stack: Obsidian=6, Notion=7, Continuum=8
  • Brain class: accepts obsidian_vault_path parameter
  • as_brain MCP server: 33 → 38 tools (5 new obsidian tools)
  • Docs: README, ARCHITECTURE.md, repo description all updated

Also in this release

  • v0.10.0 shipped Blackbox Layer 2, PyPI release, and Continuum renumbering

v0.10.0 — Blackbox Layer 2 + Continuum Layer 7

Choose a tag to compare

@PatrickNoFilter PatrickNoFilter released this 12 Jul 00:55

🎯 v0.10.0 — Blackbox Layer 2 Flight Recorder + Continuum Layer 7

🔎 New: Blackbox Flight Recorder (Layer 2)

A real-time observability layer that captures every agent telemetry event and scores context efficiency with 11 metrics.

  • 16 blackbox_* MCP tools — watch, ingest, score, timeline, baselines, handoff
  • 11 efficiency metrics — redundant reads, cache hit ratio, read amplification, retry waste, yield density, token efficiency, edit efficiency, test success, commit frequency, context window utilization, subagent overhead
  • Zero adapter — stream-JSON protocol parser + auto-telemetry plugin
  • Hermes adapter — session DB reader for importing past conversations
  • Efficiency baseline system — per-archetype baselines stored across runs

📡 Continuum promoted to Layer 7

Multi-agent orchestration hub elevated from Layer 6 to Layer 7 — the top of the stack.

📦 Full layer stack

Layer 1: Builtin   — MEMORY.md / USER.md (always-on)
Layer 2: Blackbox  — Flight recorder + 11-metric scoring ← NEW
Layer 3: Facts     — HRR + BM25 + Trust
Layer 4: Code      — AST/regex code index
Layer 5: KB        — FTS5 knowledge base
Layer 6: Notion    — Human-readable online backup
Layer 7: Continuum — Multi-agent orchestration hub

✅ Verification

  • Ruff: 0 errors after 27 fixes
  • Semgrep: 0 findings (p/python + p/default + p/security-audit)
  • All 16 MCP tools passing
  • 5 integration test categories passing

🙏 Credits

  • Agent-Blackbox by Nous Research (Taewoo Park)
  • Continuum by Pouya Hasanamreji

🧹 Housekeeping

  • Pre-commit ruff format applied across all blackbox files
  • Documentation updated (README, ARCHITECTURE.md)

v0.9.1

Choose a tag to compare

@PatrickNoFilter PatrickNoFilter released this 08 Jul 14:04

v0.9.1 — Notion full-markdown retrieval repair

  • now defaults to the endpoint, returning FULL, un-truncated content (complete API tokens) instead of the block-walk which Notion truncates to .
  • Falls back to the blocks walk only when the markdown endpoint fails.
  • MCP tool returns un-truncated content by default.
  • Fixes contradictory assertion in and adds tests for the full/block fallback behavior.

v0.9.0 — Continuum Layer 6 multi-agent orchestration hub

Choose a tag to compare

@PatrickNoFilter PatrickNoFilter released this 08 Jul 10:17

🚀 v0.9.0 — Continuum Layer 6: multi-agent orchestration hub

Eling is now a shared hub for every coding agent you run. A new third MCP server (continuum, 15 continuum_* tools) gives all agents one orchestration backend with isolated git worktrees, a shared registry, two-tier knowledge, and per-agent attribution.

✨ Highlights

  • One hub, six agents — wire Hermes, OpenCode, MiMo-Code, Zero, Claude Code, and Codex to a single continuum.db with continuum/install.sh
  • Agent auto-attribution — every memory entry and dispatch is stamped with the calling agent's MCP handshake name, so you always know who wrote what
  • Isolated worktreescontinuum_dispatch gives each agent its own git worktree with collision-checked reserved_paths (continuum_reservations)
  • Two-tier knowledgefundamental binding rules (loaded into every dispatch) vs situational semantic search
  • Canonical PLOT.md — mutated via unified diff so agents never overwrite each other wholesale

🧰 Scripts

  • continuum/install.sh — idempotent wiring, backs up configs to .bak-continuum
  • continuum/uninstall.sh — restores backups / strips the continuum block
  • continuum/healthcheck.sh — live handshake + per-agent wiring + DB stats (non-zero exit on failure)

📚 Docs

  • continuum/README.md — full guide
  • README.md, docs/ARCHITECTURE.md, docs/API.md — updated for the 3-server, 41-tool layout

✅ Full test suite

442 tests passing. Pure Python, no Node/NestJS/Astro, Termux/PRoot safe, no required numpy.

Install: pip install --upgrade eling
Wire agents: continuum/install.sh --eling-home /shared/eling

v0.8.1 — eling_get_page_full

Choose a tag to compare

@PatrickNoFilter PatrickNoFilter released this 08 Jul 02:42

🔍 v0.8.1 — eling_get_page_full: untruncated Notion retrieval

Companion to eling_get_page. The blocks API truncates secrets (tokens show only last few chars); eling_get_page_full uses the /v1/pages/<id>/markdown endpoint and returns the full, un-truncated content — so credential pages (such as the PyPI token) can be retrieved complete via MCP.

What's New

  • NotionLayer.get_page_full_markdown() — hits /v1/pages/<id>/markdown.
  • eling_get_page_full MCP tool (Notion-only eling server), returns truncated: false plus the full markdown body.
  • eling_get_page doc clarified: it truncates secrets; use _full for tokens.
  • Tool count: notion-only eling server now exposes 6 tools.

Tests

  • tests/test_universal_brain.py::TestElingGetPageFull (4 tests)
  • tests/test_export.py tool-count assertion updated 5 → 6

v0.8.0 — Universal Brain

Choose a tag to compare

@PatrickNoFilter PatrickNoFilter released this 08 Jul 01:58

🧠 v0.8.0 — Universal Brain

The as_brain MCP server becomes a universal brain for every connected agent.

What's New

  • Gap #1 — Auto agent source from MCP handshake: as_brain captures clientInfo.name from initialize and uses it as the default source for brain_remember. Each agent's memories auto-tag with its own identity (explicit source still overrides).
  • Gap #2 — ELING_HOME override: as_brain resolves ELING_HOME explicitly and passes it to Brain(home=...), making the data-dir override first-class and testable.
  • Gap #3 — Open verify-on-stop to all agents: new env ELING_VERIFY_ALL_AGENTS=1 keeps eling's verify-on-stop active for every agent incl. Hermes. Default preserves original behaviour (Hermes skips).

Tests & Docs

  • New tests/test_universal_brain.py (13 tests); full suite 422 passed.
  • README / API / ARCHITECTURE / RELEASE_NOTES updated.

Install

pip install eling==0.8.0