Repository navigation
blog: four things to build with Vercel Eve and Hindsight - #5699
Merged
Merged
Conversation
hindsight-eve v0.3 is built on eve's memory provider contract, which closes the two gaps the July v0.2 post documented: recall now runs on the live user message instead of a fixed broad query, and every locked scope gets its own bank instead of one bank for everyone. One authored file replaces two. Cover pairs eve's own mark (.github/assets/eve.svg) with the Hindsight glyph.
Same release, different angle. Instead of a changelog of what v0.3 changed, teach the contract itself — recall / capture / tools, the locked scope key, the operation id — with the Hindsight provider as the worked example. Covers the three rules that are easy to get wrong: partition inside the query rather than filtering after, treat operationId as an idempotency key, and never let recall throw, since a throwing recall fails the turn before the model call.
Open on the gap in eve's own tutorial — it stores the team's metric glossary in defineState, which lives for one session — then four things that change when the memory outlives it: a team-scoped glossary, one customer across every channel, tenant isolation that is a scope rather than a filter, and pointing a slot at a bank the team's coding agents already wrote.
Review feedback: the preamble assumed you had read eve's tutorial, so the first four sentences critiqued a doc the reader cannot picture, introduced defineState unexplained, and never said what the post was about. Opens on the concrete situation instead. The defineState observation moves into use case 1, where it has context and reads as evidence rather than as the premise.
This was referenced Oct 20, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A use-case post rather than a release note.
Eve's own tutorial teaches the analytics agent the team's metric glossary using
defineState, which their doc describes as surviving "across step and turn boundaries within a session." Right instinct, container one size too small — the glossary is a fact about the team, not the conversation. The post opens there and covers four things that change once the memory outlives the session:byPrincipalkeys on principal type, authenticator, issuer and ID, so two channels share memory only when one identity provider says they are the same person.bankIdpins every scope to one bank, which is right for an internal agent and wrong for a customer-facing one.Scope, visibility and null-resolver behaviour are taken from
docs/patterns/multi-tenant-memory.mdanddocs/memory/overview.mdxonvercel/eve@main;byPrincipal's key composition frompackages/eve/src/shared/principal-scope.ts. Our own behaviour is verified againstorigin/main, and the quick-start was built end to end on eve 0.80.1 + hindsight-eve 0.3.1.Cover pairs eve's own mark from
vercel/eve.github/assets/eve.svgwith the Hindsight glyph.Two files: post + cover.
🤖 Generated with Claude Code