Search Before
You Build

Team knowledge, findable at session start

A new session starts blind to what your team already built

Your team has shipped real capabilities any Amplifier session could reuse — but that work lives in individual heads, so each new session rebuilds solved problems from scratch.

The fix isn't a better memory. It's making that prior work findable at the moment you'd reuse it.

"A shared team knowledge base for Amplifier — every session starts aware of what the team has built and searches existing capabilities before building anything new."

README.md line 3 · microsoft/amplifier-bundle-team-knowledge-base

This is a real, battle-tested Microsoft bundle

The team-knowledge-base bundle isn't a sketch. It's a shipped Microsoft Amplifier bundle with ~3.3 months of active development and heavy test coverage.

So what exactly does it promise to do? Its thesis is written into the README.

71
commits, 2026-03-19 → 2026-06-28 (~3.3 months)
git rev-list --count HEAD
1,049
test functions across 63 test files
grep -rh 'def test_' | wc -l

The thesis is baked into README line 3

The bundle's core promise is stated up front: every session starts aware of what the team has built, and searches existing capabilities before building anything new.

Two mechanisms deliver that promise. First: awareness, handed to you automatically.

"every session starts aware of what the team has built and searches existing capabilities before building anything new"

README.md line 3 · head -5 README.md

A session-start hook hands you the team summary before you act

A lifecycle hook fires at session start and injects a summary of team work — and it's on by default, so awareness happens without you remembering to ask.

Awareness alone isn't enough. The next mechanism makes searching non-optional.

on
Context injection is on by default (enabled: true)
behaviors/team-knowledge.yaml line 31; README line 85
start
on_session_start injects the context summary
hooks .../__init__.py lines 666, 860

A hard-coded rule forces a search before you build

A PROACTIVE rule is injected as behavioral text at session start: before building, designing, or brainstorming anything, the agent must call team_knowledge(search) first. You can't skip it.

But an enforced search only helps if the search actually finds the right thing.

# PROACTIVE KNOWLEDGE BASE RULES Before building, creating, designing, brainstorming, or implementing anything, call team_knowledge(operation="search", query="...") first. # Do not start brainstorming, designing, # or building without searching first.

hooks-team-knowledge-context/__init__.py lines 83–91

It's semantic search, not keyword matching

Search runs on all-MiniLM-L6-v2 embeddings over a sqlite-vec index, ranked by embedding distance and merged across every configured team — so one query finds meaning, not just literal keyword hits.

That's why a single enforced search is enough to surface real reuse.

One enforced query walks the capability → owner graph

Because search is enforced and semantic, a single query surfaces existing pieces owned by different teammates — then layered discovery walks from a capability to its owner to more capabilities. Build-from-scratch becomes compose-from-existing.

The pattern generalizes past this one bundle.

0
Search / list
Semantic search surfaces matching capabilities across teams.
1
Lookup details
Capability → owner, and owner → their other capabilities.
2
Artifacts
Navigate dependencies and person ownership to reusable pieces.

context/instructions-tool.md lines 213–273 (Layered Discovery)

The Takeaway

Make discovery the default

Surface team work automatically and require a search first — so knowledge stops living only in heads, and every session composes on what the team already built.

Research Methodology

Data as of: latest local commit 2026-06-28

Feature status: Active — bundle v0.4.0, behavior v0.3.0

Repo: microsoft/amplifier-bundle-team-knowledge-base

Primary contributor: Samuel Lee (59 commits); also Sam Schillace, Sam, Salil Das

Gaps: "23 PRs" is a lower bound from local commit subjects (not queried via gh); the "three teammates" framing is illustrative, not a counted metric.

More Amplifier Stories