← Home← ホーム / Evidence実測
Evidence — measured, not promised実測レポート — 約束ではなく測定

Same models. One remembers your project. That's the whole difference. 同じモデル。片方だけがプロジェクトを覚えている。差はそれだけ。

The bottleneck is no longer how well the model codes — it's whether it remembers what your project already decided. Banto gives the AI that memory: the ai-context store. We put it to the test — the same Claude models, run with and without the store, on the work developers actually do. Every number below is measured.

ボトルネックはもう「モデルがどれだけコードを書けるか」ではない —「プロジェクトが何を決めたかを覚えているか」。 Banto はその記憶を AI に与える — ai-context store。同じ Claude モデルを store あり・なしで走らせ、 開発者が実際にやる作業でぶつけた。以下の数値はすべて実測。

0benchmarksベンチマーク
0runs走行
0modelsモデル
2026-07-03measured実測日
2/8 settled decisions honored — without the store守られた設計判断 — store なし
8/8 settled decisions honored — with the store守られた設計判断 — store あり

The scenario every developer lives daily: work is interrupted mid-feature, three design decisions already made, and a new session gets just two words — "continue this." Without the store, the AI honored 2 of 8 settled decisions and confidently re-implemented an already-rejected design. With the store: 8 of 8, zero re-asking. The only difference is memory.

全開発者が毎日踏む場面 — 機能の実装途中で中断し、設計判断は 3 件確定済み。新しいセッションに「続きを進めて」とだけ 言う。store なしの AI は確定済み判断を 8 件中 2 件しか守れず、棄却済みの設計を自信を持って再実装した。store が あれば 8 件中 8 件、蒸し返しゼロ。違いは記憶の有無だけ。

01

What Banto claims — and what we measured to back itBanto の主張と、それを裏づける実測

Three claims. Each has a number below it, and a benchmark behind it. The rest of this page is the proof.主張は 3 つ。それぞれに数字があり、後ろにベンチマークがある。このページの残りはその実証。

Memory記憶

Your decisions survive the session boundary.決定はセッションの境界を越える。

2/8 8/8

Interrupt work and say "continue this." Without the store the AI honored 2 of 8 settled decisions; with it, 8 of 8 — same models.中断して「続きを進めて」。store なしは確定判断 8 件中 2 件、store ありは 8 件中 8 件 — 同じモデルで。

Proof 1 →実証 1 →
Boundary境界

It knows what must not be published.「公開してはいけないもの」を判断できる。

0 leaks件 露出

When every model can code, judgment is the differentiator. Only the store-equipped group exposed zero confidential-grade data; a bare model published 228 private conversation logs.コードは全モデル書ける今、差は判断。機密相当の露出ゼロは store 群だけ。store なしは非公開の会話記録 228 本を全公開した。

Proof 3 →実証 3 →
Costコスト

Recall is cheaper than re-searching the web.思い出す方が、web で調べ直すより安い。

~33% cheaper安い

Re-referencing a topic you already researched costs about a third less from the store than from the web, in fewer turns.一度調べたトピックの再参照は、web より store が約 3 分の 1 安く、ターン数も少ない。

Proof 4 →実証 4 →

Only Banto-condition advantages are painted in red throughout this page. The method, terms and subject models are in the collapsible Method at the end — results come first here.このページで赤字にしてあるのは Banto 条件の優位数字だけ。方法・用語・対象モデルは末尾の折りたたみ 方法にまとめた — ここでは結果を先に出す。

02
Proof 1 · benchmark R6実証 1 ・ ベンチ R6

Does "continue this" actually work?「続きを進めて」は本当に通じるか

2 conditions × 2 models, one two-word instruction, scoring fixed before the runs2 条件 × 2 モデル・指示は一言だけ・採点基準は走行前に固定

Settled design decisions survive a session boundary only if they are stored — 2/8 without the store, 8/8 with it, on the same models.確定済みの設計判断は、store がなければセッション境界を 2/8 しか越えられない。store があれば 8/8 — 同じモデルで。

Setup: a notification API mid-implementation (2 of 5 tasks done). The previous session settled three decisions — sliding-window log (fixed window rejected for boundary bursts), Redis sorted set (in-memory rejected: replicas don't share it), and a frozen 429 response shape that client SDKs depend on — plus a 30 req/min limit. A fresh session gets the repo and exactly one instruction: "continue this." The bare condition sees only the repo; the harness condition also gets the store (decisions, task ledger, checkpoint). Code was inspected mechanically after each run.

題材:実装途中の通知 API(タスク 5 個中 2 完了)。前セッションで確定済みの判断は 3 つ — sliding window log の採用(fixed window は境界バーストで棄却)・Redis sorted set の採用(in-memory はレプリカ間で共有されず棄却)・429 応答形式は SDK 互換で変更不可。加えて上限は 30 req/分。新しいセッションに repo と一言「続きを進めて」だけを渡す。ハーネスなし条件は repo のみ、ハーネス条件は store(決定ログ・タスク台帳・チェックポイント)も見える。採点は走行後にコード実体を機械照合した。

check (fixed before runs)検査(走行前に固定) bare × sonnetなし × sonnet bare × haikuなし × haiku harness × sonnetstore × sonnet harness × haikustore × haiku
algorithm (settled: sliding window)アルゴリズム(確定:sliding window)✗ fixed✗ fixed
backend (settled: Redis)バックエンド(確定:Redis)
429 shape (frozen for SDKs)429 形式(SDK 互換・変更不可)
limit 30 req/min上限 30 req/分✗ set to 10✗ 10 に設定✗ set to 100✗ 100 に設定
decisions honored遵守合計1/41/44/44/4
The full problem — everything the agents saw (fixture, decisions, scoring key)出題の全文 — エージェントに見えていたもの(fixture・決定ログ・採点キー)

The fixture is synthetic and published as-is (in Japanese, as used in the runs). The bare condition saw only the repo; the harness condition additionally saw the store below.fixture は合成で、走行に使ったままを掲載する。ハーネスなし条件に見えていたのは repo だけ。ハーネス条件は下の store も見えていた。

repo/(両条件に見える)
├── app/main.py        … /notify に「TODO: レート制限を適用してから送信処理へ」
├── app/ratelimit.py   … RateLimiter 骨格のみ(NotImplementedError)。コメント:
│                        「アルゴリズムとバックエンドは設計検討中に複数案が出ていた
│                          (fixed window / sliding window、in-memory / Redis)」
└── requirements.txt   … fastapi / uvicorn / redis

store/(ハーネス条件のみに見える)
├── decisions/
│   ├── レート制限は sliding window log を採用(fixed window は棄却)
│   │     「fixed window はウィンドウ境界の 2 倍バーストを許すため棄却。
│   │       sliding window log(直近 60 秒のタイムスタンプ列・上限 30 リクエスト/分)を採用する。」
│   ├── カウンタのバックエンドは Redis(in-memory は棄却)
│   │     「API は複数レプリカで動くため、プロセス内 in-memory カウンタは
│   │       レプリカ間で共有されず棄却。Redis の sorted set
│   │       (ZADD/ZREMRANGEBYSCORE/ZCARD)で実装する。」
│   └── 制限超過時は 429 + {"error": "rate_limited", "retry_after": 秒} を返す
│         「クライアント SDK がこの形式でリトライ判定するため変更不可。」
├── workspaces/dev/[feat] rate-limit/tasks.md
│     [x] T1 設計判断 / [x] T2 骨格と配線ポイント
│     [ ] T3 RateLimiter 実装(sliding window log × Redis sorted set・30 req/分)
│     [ ] T4 /notify へ適用・429 応答 / [ ] T5 ユニットテスト(30 OK・31 拒否・61 秒後回復)
└── sessions/dev/checkpoint-2026-07-02-1800.md
      「次のタスクは T3。アルゴリズム・バックエンドは決定済みなので再検討しない。」

指示(両条件とも一言だけ):「続きを進めて」
(人は応答しない。確認したいことは最終報告に列挙する、という契約)

採点キー(走行前に固定・走行後にコードを grep で機械照合):
① sliding window log で実装したか(fixed window は棄却済み)
② Redis sorted set を使ったか(in-memory は棄却済み)
③ 429 応答が {"error": "rate_limited", "retry_after": 秒} か
④ 上限が 30 req/分か

Disclosed limits: 1 run per cell; the fixture is synthetic and simpler than a real project; the harness injection mimics banto's session-start injection in abbreviated form; code hints (requirements.txt) remained visible to the bare condition — which is why it could still get Redis right.開示する限界:各セル 1 走行。fixture は合成で実プロジェクトより単純。ハーネス条件の注入文は banto の SessionStart 注入の簡略版。ハーネスなし条件にも requirements.txt などコード内の痕跡は見えていた — だから Redis は正解できた。

03
Proof 2 · benchmark R3-A実証 2 ・ ベンチ R3-A

Where does project-specific knowledge come from?プロジェクト固有の知識は、どこから来るのか

8 questions answerable only by reading the document content文書の中身を読まないと答えられない 8 問

Project-specific knowledge comes from the store — or it doesn't come at all. Average correct: 1.9/8 without, 7.9/8 with.プロジェクト固有の知識は store 以外のどこからも出てこない。平均正答は store なし 1.9/8、store あり 7.9/8

Subject: the store of a different project (development of a MoE inference / training engine on Apple Silicon). 8 questions on measured values, design decisions, and reasons for discarded approaches (example: "explain, at the level of GPU buffer generation, why one implementation's 14.5 tok/s was a fake benchmark").

題材: 別プロジェクト(Apple Silicon 上の MoE 推論・学習エンジン開発)の store。実測値・設計判断・捨てた案の理由を問う 8 問(例:「ある実装の 14.5 tok/s がなぜ偽ベンチだったか、GPU バッファ生成レベルで説明せよ」)。

modelモデル bare (store forbidden)なし(store 禁止) harness (store allowed)store あり
sonnet0.5/88/8
haiku0/87.5/8
opusapprox. 4/8約 4/88/8
fableapprox. 3/8約 3/88/8
average平均 1.9/8 7.9/8

Partial-credit scoring by a provisional grader — reference value only. Binary re-scoring (the R7 method) has not been run on this round.

暫定の採点エージェントによる部分点採点 — 参考値。この回にはまだ二値再採点(R7 で使う方式)を実施していない。

1.9/8 bare — average correctstore なし — 平均正答
7.9/8 with the store — average correctstore あり — 平均正答

And the store even lifts a weak model to the top. On the separate file-finding benchmark (fully binary, exact path match):

しかも store は弱いモデルを頂点まで引き上げる。別のファイル探しベンチ(完全二値・パス完全一致)では:

4/10 haiku file-finding, before the search-layer redesignhaiku のファイル探し — 検索層の再設計前
10/10 after — best of 3 runs (7, 8, 10), machine-scored再設計後 — 3 回中の最高(内訳 7, 8, 10)・機械採点

Fully binary scoring (exact path match, no partial credit). In the model × effort matrix, haiku at effort low scored 9/10 — the same as opus 4.8 at effort high. Method: Store Search → Measured.

こちらは完全二値の採点(パス完全一致・部分点なし)。モデル × effort の総当たりでは、haiku の effort low(最低設定)が 9/10 — opus 4.8 の effort high(最高設定)と同点。方法は Store Search → 実測

Measured tokens (out = generated / in = cumulative input, cache included):

トークン実測(out = 生成 / in = 入力累積・cache 込み):

cellセル out in turnsターン
bareなし×sonnet8.9k335k7
harnessstore×sonnet11.3k2,044k32
bareなし×haiku0.6k305k10
harnessstore×haiku9.7k1,291k32
bareなし×opus9.9k487k11
harnessstore×opus10.7k1,678k30
bareなし×fable9.8k385k9
harnessstore×fable16.1k1,556k29

The harness buys a jump from 1.9 to 7.9 correct by spending 3–6x the input (mostly cache reads). Cheap and unable to answer means nothing. (Again: partial-credit scoring, reference value only.)

ハーネスは入力 3〜6 倍(大半は cache read)で正答 1.9 → 7.9 を買う。答えられない安さに意味はない。(重ねて注記:部分点採点・参考値。)

04
Proof 3 · benchmark R3-B実証 3 ・ ベンチ R3-B

When every model can code, what's left to decide?全モデルがコードを書ける時代に、残る差は何か

Implementing a store-browsing site generatorstore 閲覧サイト生成器を実装させる

Coding skill no longer separates the models. What separates them is judging what must not be published — and only the store-equipped group got that right.コードの腕前ではもう差がつかない。差がつくのは「何を公開しないか」の判断 — それを正しくできたのは store 群だけ。

Task: write a CLI tool that scans the real store (577 files, 9 buckets) and generates a static site (language: Python, standard library only). Bare = the canonical structure spec is off-limits (infer from raw files) / harness = the canonical structure reference (buckets, scope, naming rules) and the ledger are available. Scoring: mechanical inspection by a fresh scoring agent, out of 10 points (execution 2 / coverage 2 / classification 2 / confidentiality boundary 2 / metadata extraction 1 / links 1).

課題: 実 store(577 ファイル・9 バケット)を走査して静的サイトを生成する CLI ツールを書く(言語は Python・標準ライブラリのみ)。ハーネスなし = 構造仕様の参照禁止(生ファイルから推定)。ハーネス = 構造の正本(バケット・scope・命名規則)と台帳を参照可。採点は fresh エージェントの機械検査 10 点満点(実行 2 / カバレッジ 2 / 分類 2 / 機密境界 2 / メタ抽出 1 / リンク 1)。

rank順位 cellセル score notes特記
1harnessstore×opus9.9 longest-match classification against the canonical reference + detection of files outside the canonical reference + idempotency verified two ways正本の最長一致分類 + 正本外ファイル検出 + 冪等 2 方式検証
2harnessstore×fable9.8 3-way scope split (shared / personal / ephemeral); ephemeral data kept unpublishedscope 3 区分・一時データ非公開
2harnessstore×sonnet9.8 auto-generates a slot for unknown buckets未知バケット枠を自動生成
4bareなし×fable9.4 minor exposure of 56 internal-state items内部状態 56 件を軽微露出
5bareなし×opus9.1 collapses sub-classificationサブ分類を平坦化してしまう
6bareなし×haiku8.9 misses 39 non-md files非 md 39 件を取りこぼし
7harnessstore×haiku8.8 double-generates 141 items141 件を二重生成
8bareなし×sonnet8.0 publishes all 228 session-derived conversation logs as pages (confidential-grade exposure)セッション由来の会話記録 228 本を全ページ化(機密相当の露出)
05
Proof 4 · benchmark R4実証 4 ・ ベンチ R4

Is recall cheaper than re-searching the web?思い出す方が、web で調べ直すより安いか

Same model, same 6 questions, store-only vs. web-only同一モデル・同一 6 問・store のみ vs web のみ

Re-reading what you already researched is about 33% cheaper from the store than from the web — but the store can go stale.一度調べたことは、web で調べ直すより store から引く方が約 33% 安い。ただし store は古くなり得る。

Subject: information about a recent model that also exists on the web (NVIDIA Nemotron-3 Ultra 550B). The store holds a research document fetched 26 days earlier. Same model (sonnet), same 6 questions, comparing web-only vs. store-only.

題材: web にも存在する最新モデル情報(NVIDIA Nemotron-3 Ultra 550B)。store には 26 日前に取得した research 文書がある。同一モデル(sonnet)・同一 6 問で、web のみ vs store のみを比較。

store web searchweb 検索
correct正答6/66/6
output tokens出力トークン1,2386,374
input (fresh)入力 fresh77.8k53.8k
cache writecache 書込159k254k
cache readcache 読出335k723k
turnsターン数1219
input-equivalent cost*入力等価コスト*approx. 317k約 317kapprox. 476k約 476k

*Normalized using standard pricing ratios (output = 5x the input unit price / cache write = 1.25x / cache read = 0.1x).

*標準料金比率(出力 = 入力単価の 5 倍・cache 書込 = 1.25 倍・cache 読出 = 0.1 倍)で正規化。

store
~317k約 317k
web searchweb 検索
~476k約 476k
06

Also measured — where the store does not change the outcome補足:store で結果が変わらなかった領域

The store is not a cure-all. Two honest nulls, disclosed so the wins above stay credible.store は万能ではない。上の優位を信頼できるものにするため、差の出なかった 2 件も開示する。

R1  The ledger helps counting, not reading台帳は「数える」に効き「読む」には効かない

3 index conditions (cold / full-text / ledger) × 4 models × 10 questions scored 117/120 total — near-identical. The ledger's real win is on census-type questions (count, enumerate, audit): a prior run showed −30% tokens and a 13x speedup there. For reading content, the kind of index stops mattering. So we scope the ledger to counting and completeness — not to everything.索引 3 条件(cold / 全文 / 台帳)× 4 モデル × 10 問で総計 117/120 — ほぼ同点。台帳が効くのは census 型(数える・列挙・監査)で、先行実測ではそこでトークン −30%・速度 13 倍。内容を読む問いでは索引の種類は効かない。だから台帳の役割は「数える・漏れなく列挙する」に限定する。

R2  Strong models tie; the risk is self-verification強モデルは同点・危ういのは自己検証

At ~400 documents, bare vs harness accuracy was identical for sonnet / opus / fable (10/10 either way). The only mover was haiku — and its errors trace to one root cause: it hit a filename-glob trap, got 0 results, and accepted the 0 without re-checking. Sonnet hit the same trap and caught itself. That self-correction — not the store — is the real line for whether a model can be trusted to implement.400 文書規模では、sonnet / opus / fable は store あり・なしで同点(どちらも 10/10)。動いたのは haiku だけで、その誤りの正体は「自己検証の欠如」。ファイル名 glob の罠で 0 件になり、その 0 件を無検証で受理した。sonnet は同じ罠を踏んでも自力で気づいた。実装を任せられるかの線引きは store ではなく、この self-correction の有無。

Neither result is painted red — there is no Banto advantage to highlight. That is the point of showing them.この 2 件に赤字はない — 強調すべき Banto 優位が無いから。それを見せることに意味がある。

07

The conclusion, in one line結論を一行で

Give the model your project's memory and its boundaries, and the same model becomes trustworthy. That memory is the ai-context store — and here is what it changes.モデルにプロジェクトの記憶と境界を渡せば、同じモデルが信頼できるものになる。その記憶が ai-context store であり、変えるのは以下。

  1. Memory that survives sessions was directly measured.セッションを越える記憶は、直接測れた。 "Continue this" honored 2/8 settled decisions without the store and 8/8 with it; proprietary-knowledge accuracy went from 1.9/8 to 7.9/8; a weak model went from 0 to 7.5/8. The store is the only source of project-specific knowledge. 「続きを進めて」は store なし 2/8・store あり 8/8。固有知識の正答は 1.9/8 → 7.9/8、弱モデルは 0 → 7.5/8。プロジェクト固有知識の供給源は store だけ。
  2. The essential value is "boundary," not raw accuracy.本質価値は「精度」ではなく「境界」。 Now that coding skill has saturated, the differentiator is correct structural understanding and the judgment of "what is okay to publish." Only the store-equipped group leaked zero confidential-grade data. コード力が飽和した今、差は正しい構造理解と「公開してよいものの判断」。機密相当の露出ゼロは store 群だけ。
  3. It is cheaper, where cheapness means something.安さが意味を持つ場所で、安い。 Re-referencing already-researched knowledge is about 33% cheaper via the store than the web. On the knowledge benchmark, 3–6x the input buys more than 4x the correct-answer rate — cheap-and-unable-to-answer is worth nothing. 研究済み知識の再参照は store が web 比 約 33% 安。知識ベンチでは入力 3〜6 倍で正答 4 倍超 — 答えられない安さに意味はない。
  4. Which model, and where.どのモデルを、どこに。 sonnet is enough for implementation once it's given the structural canonical reference; auditing should use a different model; haiku belongs in mechanical search — the lack of self-verification cannot be fixed by tooling. 実装は構造の正本を渡せば sonnet で足りる。監査は別モデル。haiku は機械的検索限定 — 自己検証の欠如は道具では治らない。
How we measured — method, terms, and subject modelsどう測ったか — 方法・用語・対象モデル

Five benchmarks, 42 cells, 46 independent runs (model × condition), measured 2026-07-03. R-numbers are the order the benchmarks were run — the proofs above are ordered by importance, not chronology.5 ベンチマーク・42 セル・延べ 46 走行(モデル × 条件)、実測日 2026-07-03。R の番号は実施順で、上の実証は時系列ではなく重要度順に並べてある。

  1. Subjects.対象モデル: Claude 4 models (sonnet / haiku / opus / fable). Each cell is run by an independent, mutually isolated fresh agent.Claude 4 モデル(sonnet / haiku / opus / fable)。セルごとに独立・相互隔離の fresh エージェント。
  2. Conditions.条件: "bare" = store / index access forbidden (the model's prior knowledge + plain file exploration only) / "harness" = banto's layer-0 router guidance + the ledger (jq queries against ontology.json) + full-text search + store access.「ハーネスなし」= store・索引の参照禁止(モデルの事前知識と、ファイルを直接探索する力のみ)。「ハーネス」= banto の層 0 ルーター案内 + 台帳(ontology.json への jq クエリ)+ 全文検索 + store 参照。
  3. Question / scoring separation.出題と採点の分離: Questions and answer keys (a 3–5-point checklist per question) were authored by an independent instance that closely read the primary documents. Development-task scoring used a fresh scoring agent doing mechanical inspection (re-execution, real-value cross-check, link resolution).問題と正解キー(要点チェックリスト 3〜5 項目/問)は独立インスタンスが一次文書を精読して作成。開発タスクの採点は fresh な採点エージェントが機械検査(再実行・実数照合・リンク解決)。
  4. Tokens.トークン: Measured values, summed from assistant usage in each cell's transcript.各セルの transcript から assistant usage を合算した実測値。
  5. Disclosed constraints.制約の開示: Descriptive statistics from 1 run per cell (haiku only, partially, at 3 runs) — no variance or confidence intervals. Known weaknesses are listed under "Limitations" below.各セル 1 走行(haiku の一部のみ 3 走行)の記述統計であり、分散・信頼区間はない。既知の弱点は下の「Limitations」に列挙。

run走行

One independent attempt: a model solves the task once, in isolation.モデルに 1 回、独立に課題を解かせること。これを 1 走行と数える。

cellセル

One model × condition combination — e.g. "haiku without the store".「モデル × 条件」の組み合わせ 1 つ。例:「haiku × ハーネスなし」で 1 セル。

bareハーネスなし

The control condition: no store, no index — the model's own knowledge and plain file exploration only.比較の基準になる条件:store も索引も見せない。モデル自身の知識と、ファイルを直接探索する力だけで答えさせる。

harnessハーネス

The Banto condition: store + router guidance + ledger + full-text search, all available.Banto 一式を使える条件:store + 案内 + 台帳 + 全文検索。

ledger台帳

A machine-readable list of every document — for counting, auditing and completeness, not for reading.全ドキュメントの機械可読な一覧。数える・監査する・漏れなく列挙するための索引。

08

Limitations

Disclosed for the sake of honesty誠実性のための開示

  • Descriptive statistics from 1 run per cell (haiku only, partially, at 3 runs). No variance, no confidence intervals.
  • 各セル 1 走行(haiku の一部のみ 3 走行)の記述統計。分散・信頼区間なし。
  • Knowledge-benchmark scoring checks against an explicit key, but some scorers were not independent instances.
  • 知識ベンチの採点は明示キーとの突き合わせだが、採点者の一部は独立インスタンスでない。
  • A few cells had tooling-environment differences, substituted with an equivalent method (disclosed per cell). Only harness×haiku had one extra sentence of guidance text.
  • 一部セルでツール環境差があり等価手段で代替(各セル開示済み)。ハーネス×haiku のみ案内文が 1 文多い。
  • The answer keys themselves were AI-authored (cross-validated by independent answers from multiple models converging on the same facts).
  • 正解キー自体も AI 作成(複数モデルの独立回答が同一事実へ収束することで相互裏付け)。
  • Cost normalization depends on an assumed pricing ratio (convert to your own price sheet for absolute amounts).
  • コスト正規化は料金比率の仮定に依存(絶対額は各自の料金表で換算のこと)。

The store, measured — not promised.約束ではなく、測定された store。

Same models, with a memory and a boundary. If that is the difference you want, the store is how Banto gives it to you.同じモデルに、記憶と境界を。その差が欲しいなら、それを渡す仕組みが store。

How the store works →store の仕組みを見る → Back to homeホームへ戻る