diff --git a/content/docs/memory-benchmark/beam.mdx b/content/docs/memory-benchmark/beam.mdx index 8794ce2..3b6b177 100644 --- a/content/docs/memory-benchmark/beam.mdx +++ b/content/docs/memory-benchmark/beam.mdx @@ -71,8 +71,9 @@ of the 35 conversations (300 probes), uniform 96k budget. | abstention | 9/30 (30%) | | **overall** | **198/300 (66.0%)** | -- **66.0% edges mem0's self-reported 62% at the matched bucket.** Caveats in - [How Kimetsu compares](/docs/memory-benchmark/comparison). +- **Kimetsu scores 66.0%; mem0 reports 64.1% in the 1M bucket.** The readers + and conversation samples differ. Sources and test differences are recorded + in [How Kimetsu compares](/docs/memory-benchmark/comparison). - **Global and temporal abilities degrade with scale, as expected.** When the conversation is ~10x the budget, whole-arc tasks lose ground that local-fact tasks keep. diff --git a/content/docs/memory-benchmark/comparison.mdx b/content/docs/memory-benchmark/comparison.mdx index a0fed0a..7552e30 100644 --- a/content/docs/memory-benchmark/comparison.mdx +++ b/content/docs/memory-benchmark/comparison.mdx @@ -22,14 +22,15 @@ bill, or the cloud.** | LongMemEval (`_s`) | **83.0%** (200-q slice) · ~80.9% weighted | 94.4% (their reader + harness) | not reported | | LoCoMo (1,540 q) | **89.4%** | 92.5% | not reported | | BEAM 100K | **73.3%** (400 probes) | n/a | 79% | -| BEAM **1M** | **66.0%** (300 probes) | 62% | not reported | +| BEAM **1M** | **66.0%** (300 probes) | 64.1% (700 probes) | not reported | | BEAM 10M | future work | 48.6% | 67% | Caveats, because the table is not apples-to-apples: -- **Only the 1M row is a matched bucket.** Our 66.0% edges mem0's 62%, but with - a different reader and 15 of 35 conversations: read it as at least on par, - not a decisive win. +- **The 1M row uses the same token bucket, with different setups.** Kimetsu's + 66.0% covers 15 of 35 conversations; mem0 reports 64.1% over 700 probes. + The readers and samples differ, so the score difference does not establish + a head-to-head win. - **Cognee leads at 100K/10M.** Our 73.3% matches the prior public state of the art on 100K (the 0.735 Cognee cites as the number it beat), model-free. Cognee needs an LLM key on both the write and read paths. @@ -46,6 +47,9 @@ Cognee's [BEAM figures](https://github.com/topoteretes/cognee), the [LongMemEval](https://arxiv.org/abs/2410.10813) and [BEAM](https://github.com/mohammadtavakoli78/BEAM) papers. +Mem0's BEAM 1M figure was checked on September 12, 2026. Its current reported +64.1% replaces the 62% previously quoted here. + ## What we do not yet claim - Multi-hop retrieval of obliquely relevant memories is v2.6 work; the diff --git a/content/docs/memory-benchmark/index.mdx b/content/docs/memory-benchmark/index.mdx index b410b1e..9abfa11 100644 --- a/content/docs/memory-benchmark/index.mdx +++ b/content/docs/memory-benchmark/index.mdx @@ -21,7 +21,7 @@ on v2.8.0. |-----------|--------| | LoCoMo | **89.4%** (1,540 questions, LLM-judged accuracy) | | BEAM 100K | **73.3%**, matching the prior public state of the art, model-free | -| BEAM 1M | **66.0%**, ahead of mem0's self-reported 62% | +| BEAM 1M | **66.0%** (300 probes, 15 of 35 conversations) | | LongMemEval (`_s`) | **83.0%** (200-question stratified slice) | | BrainBench quality index | **80.0%** (142 scenarios, reader-free) | | retrieval quality | recall@4 **0.949**, MRR **0.914** at ~138 ms | diff --git a/src/app/(home)/_components/about-contact.tsx b/src/app/(home)/_components/about-contact.tsx index 0eb19ac..1eec532 100644 --- a/src/app/(home)/_components/about-contact.tsx +++ b/src/app/(home)/_components/about-contact.tsx @@ -12,32 +12,25 @@ export function AboutContact() { >
-

About

- Built for the next session. + About Kimetsu

- Kimetsu is an open-source project created by{" "} + Created and maintained by{" "} Rodrigo Córdoba - . It gives coding agents a local place to keep project decisions, - conventions, and fixes, so useful knowledge carries across - sessions. -

-

- Built in Rust and backed by SQLite, Kimetsu works alongside the - tools you already use. The source, documentation, and benchmarks - are public, so you can inspect how it works and make it your own. + . Written in Rust and released under the MIT and Apache-2.0 + licenses.

- Explore the source → + Source code → - - Read the documentation → + + Related projects →
@@ -50,13 +43,12 @@ export function AboutContact() { >
-

Contact

- Let’s talk about Kimetsu. + Contact

- Have a question, an idea, or something you’d like to build - together? Get in touch with Rodrigo on LinkedIn. + For questions, feedback, or collaboration, contact Rodrigo on + LinkedIn.

+
+

+ Benchmark results +

+ + All results and methodology → + +
+
+
+

BEAM 100K

+

73.3%

+

+ Accuracy · 400 probes · 20 conversations +

+
+
+

+ Kimetsu · graph retrieval +

+
+
+
+
+
+
+ Flat retrieval baseline + 62.3% +
+
+
+
+
+
+

+ Both runs use the same test set. +

+ + BEAM test settings → + +
+
+

LoCoMo

+

89.4%

+

+ Accuracy · 1,540 questions +

+

+ Questions about facts, events, and relationships across long + conversations. +

+ + LoCoMo results and comparison → + +
+
+

LongMemEval S

+

83.0%

+

+ Accuracy · 200-question stratified slice +

+

+ Sampled from the 500-question set, covering recall, changed facts, + and reasoning across sessions. +

+ + LongMemEval test settings → + +
+
+

+ Historical results from the linked runs. An LLM answers and grades the + questions; the memory pipeline uses local search, embeddings, and + reranking, with no LLM calls. +

+ + ); +} diff --git a/src/app/(home)/_components/explore-section.tsx b/src/app/(home)/_components/explore-section.tsx index e611b58..ba4e2ff 100644 --- a/src/app/(home)/_components/explore-section.tsx +++ b/src/app/(home)/_components/explore-section.tsx @@ -1,21 +1,17 @@ -import { Database, MessageSquare, Search } from "lucide-react"; import Link from "next/link"; const steps = [ { - icon: Database, - title: "Keep the useful lesson", - body: "Save a project convention, a decision, or the command that finally worked. Memories live in your project’s SQLite database.", + title: "Store", + body: "Memories live in a SQLite database in your project. No hosted memory account is required.", }, { - icon: Search, - title: "Recall it in context", - body: "Search by words or meaning. Kimetsu selects relevant memories within a delivery budget and brings them into the next task.", + title: "Retrieve", + body: "Start with keyword search. Add local embeddings and reranking for semantic search. Set a token budget for the context sent to your agent.", }, { - icon: MessageSquare, - title: "Learn from the outcome", - body: "Citations and feedback help track which memories contributed. Corrections and lifecycle rules keep old advice from outliving its usefulness.", + title: "Update", + body: "Track changed facts and suppress outdated results. Export and import memories to move them between machines.", }, ]; @@ -27,25 +23,22 @@ export function ExploreSection() { className="km-section scroll-mt-24" >
-
-

Across sessions, across agents

-

- The useful part of yesterday, ready today. -

-
+

+ How it works +

- Inside the memory loop → + Technical documentation →
    {steps.map((step, index) => (
  1. -
    - - - 0{index + 1} - -
    + + 0{index + 1} +

    {step.title}

    {step.body} @@ -53,22 +46,6 @@ export function ExploreSection() {

  2. ))}
-
-

- - Choose your compute budget. - {" "} - Start with lexical search. Add local embeddings and reranking when - your workload benefits from them. Delivered context still uses your - agent’s tokens. -

- - Compare retrieval models → - -
); } diff --git a/src/app/(home)/_components/quick-start.tsx b/src/app/(home)/_components/quick-start.tsx index a1f883d..1335369 100644 --- a/src/app/(home)/_components/quick-start.tsx +++ b/src/app/(home)/_components/quick-start.tsx @@ -35,13 +35,12 @@ export function QuickStart() { >
-

Start with your agent

- Two commands. A memory that stays. + Install Kimetsu

- Install the binary, then run setup from your project directory. - Choose the agent you already use. + Select your agent and run these commands from your project + directory. Available for Linux, macOS, and Windows.

All installation options → @@ -96,7 +95,7 @@ export function QuickStart() { ? feedback.ok ? "Commands copied to clipboard." : "Copy is unavailable. Select and copy the commands above." - : "Setup wires this project to your selected agent."} + : ""}

); } diff --git a/src/app/global.css b/src/app/global.css index 9ea187f..e07931d 100644 --- a/src/app/global.css +++ b/src/app/global.css @@ -61,7 +61,7 @@ html { } .km-hero { - padding: 5.5rem 1.5rem 5rem; + padding: 3.5rem 1.5rem 2.5rem; background-image: radial-gradient( var(--color-fd-border) 0.7px, transparent 0.7px @@ -69,39 +69,25 @@ html { background-size: 24px 24px; } -.km-hero-grid { - display: grid; - gap: 3.5rem; +.km-section { max-width: 72rem; margin-inline: auto; - align-items: center; -} - -.km-memory-example { - overflow: hidden; - border: 1px solid var(--color-fd-border); - border-radius: 1rem; - background: var(--color-fd-background); - box-shadow: 0 14px 45px -28px rgb(0 0 0 / 35%); + padding: 3.5rem 1.5rem; + border-bottom: 1px solid var(--color-fd-border); } -.km-step { - display: inline-flex; - align-items: center; - justify-content: center; - width: 2rem; - height: 2rem; - flex-shrink: 0; - border: 1px solid var(--color-fd-border); - border-radius: 50%; - color: var(--color-fd-primary); +.km-benchmarks { + padding-top: 1.5rem; } -.km-section { - max-width: 72rem; - margin-inline: auto; - padding: 4.5rem 1.5rem; - border-bottom: 1px solid var(--color-fd-border); +.km-benchmark-score { + margin-block: 1.25rem 0.75rem; + font-family: var(--font-mono); + font-size: clamp(3rem, 5vw, 4.25rem); + font-weight: 600; + line-height: 1; + letter-spacing: -0.06em; + font-variant-numeric: tabular-nums; } .km-eyebrow { @@ -173,12 +159,6 @@ html { text-decoration: underline; } -@media (min-width: 1024px) { - .km-hero-grid { - grid-template-columns: 1.15fr 0.85fr; - } -} - @media (max-width: 639px) { .km-hero { padding: 3rem 1.25rem; @@ -188,6 +168,10 @@ html { padding: 3rem 1.25rem; } + .km-benchmarks { + padding-top: 0.5rem; + } + .km-home table :is(th, td) { padding: 0.85rem 0.6rem; } diff --git a/src/lib/layout.shared.tsx b/src/lib/layout.shared.tsx index 1de209d..6daaf54 100644 --- a/src/lib/layout.shared.tsx +++ b/src/lib/layout.shared.tsx @@ -31,6 +31,10 @@ export function baseOptions(): BaseLayoutProps { url: links.github, external: true, }, + { + text: "Benchmarks", + url: "/#benchmarks", + }, { text: "Install", url: "/docs/install", @@ -41,11 +45,6 @@ export function baseOptions(): BaseLayoutProps { url: "/docs", active: "nested-url", }, - { - text: "Benchmarks", - url: "/docs/memory-benchmark", - active: "nested-url", - }, { text: "Projects", url: "/projects",