Move embedding discovery to evolution log end

This commit is contained in:
Ollie Agent 2026-08-20 17:42:54 +02:00
parent ba91920a88
commit f407fa2604
1 changed files with 27 additions and 25 deletions

View File

@ -1441,31 +1441,6 @@ The maximum tool result included in model context was reduced from 128 KiB to
32 KiB. Large command or file results are therefore less likely to crowd out
the conversation and instructions.
## Phase 31: Embedding-Guided Tool and Skill Discovery (Aug 20)
Ollie added a local embedding subsystem for semantic discovery of tools and
skills. It loads the `all-MiniLM-L6-v2` sentence-transformer through ONNX
Runtime, tokenizes descriptions, produces 384-dimensional vectors, and ranks
matches with cosine similarity.
The skill index scans configured `SKILL.md` directories, parses their
frontmatter, precomputes description embeddings, and matches each user request
against the indexed skills. The agent injects up to three relevant skills when
they exceed the configured similarity threshold. Tool metadata is indexed by
the same mechanism, allowing the agent to inject up to five relevant tool hints
without placing every tool in the model context.
The embedding model and ONNX Runtime are installed under the XDG data model
directory by `make install-models` / `make install-data`. Skill directories may
be overridden through `embedding.conf`; the default is the installed skills
directory. Matching is lazy and cached per process, so the common path pays the
model-loading cost once.
This is a significant architectural shift for small models: discovery becomes
semantic rather than dependent on exact tool or skill names, while progressive
disclosure keeps the prompt bounded. The embedding model is local and separate
from the conversational backend, so provider choice does not affect discovery.
---
Commit count: ~60 commits over 3 days. The recent work added native structural
@ -1954,3 +1929,30 @@ Peers vs sub-agents is not a replacement — it's a complementary primitive:
The conductor workflow uses sub-agents (decompose → delegate → collect).
The consensus workflow uses peers (investigate independently → report → synthesize).
Both are wiring over the same 9P primitives.
## Phase 35: Embedding-Guided Tool and Skill Discovery (Aug 20)
Ollie added a local embedding subsystem for semantic discovery of tools and
skills. It loads the `all-MiniLM-L6-v2` sentence-transformer through ONNX
Runtime, tokenizes descriptions, produces 384-dimensional vectors, and ranks
matches with cosine similarity.
The skill index scans configured `SKILL.md` directories, parses their
frontmatter, precomputes description embeddings, and matches each user request
against the indexed skills. The agent injects up to three relevant skills when
they exceed the configured similarity threshold. Tool metadata is indexed by
the same mechanism, allowing the agent to inject up to five relevant tool hints
without placing every tool in the model context.
The embedding model and ONNX Runtime are installed under the XDG data model
directory by `make install-models` / `make install-data`. Skill directories may
be overridden through `embedding.conf`; the default is the installed skills
directory. Matching is lazy and cached per process, so the common path pays the
model-loading cost once.
This is a significant architectural shift for small models: discovery becomes
semantic rather than dependent on exact tool or skill names, while progressive
disclosure keeps the prompt bounded. The embedding model is local and separate
from the conversational backend, so provider choice does not affect discovery.
---