feat(agent): 購入 (何を買ったか) を /agent に — ログインして見る・初回だけ Agent のリンクで紐づけ (案 B-3・flag 既定 OFF) - #556
Merged
Merged
Conversation
… B-3・flag 既定 OFF) 案 B (plans/agent-purchase-web.md v3) の B-3。server (#554) と MCP 0.17 (#555) の上に UI を載せる。 - Agent Wallet カードのアクティビティの下に「購入 (何を買ったか)」。4 状態 = 未ログイン (SIWE の 自前ボタン) / 未紐づけ (手順 2 行) / #proof= で着地 → ログイン後に verify → 紐づけ / 一覧 (日時・内容・由来バッジ・金額+利用料・tx リンク・直近 200 件・2026-09-23 以降・欠損しうる・ 申告は提供の証明ではない)・紐づけの解除は 2 段階 (ブラウザ dialog を出さない) - #proof= は mount 直後に replaceState で消す。他人の Agent や未紐づけは同じ文言 (存在を漏らさない) - NEXT_PUBLIC_ENABLE_AGENT_PURCHASES が OFF なら dynamic import すらしない (初期 bundle 354 kB / 予算 356 kB は据え置き・遅延 chunk 3.5 kB gzip)。掟 7 は #554 で siweEnabled 追加済み - 「Agent に頼めること」6 本目「購入履歴を Web で開いてください。」(flag OFF では出ない) - 版切替 0.17 (agentSetup・setup.md・agent-templates・AI ストア)・setup.md に wallet_prove の 1 段落・llms.txt 13 ツール+閲覧できる旨・KPI 3 イベント (locale のみ) Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HeizmagJBgL5peL5mQpxkc
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
…パネル・検証失敗後の一覧 - P1: client の Sentry に beforeSend が無く、error event の request.url に location.href (#proof= の一回限りの署名) がそのまま乗り得た → scrubSentryServerEvent で origin だけに - P1: ウォレット未接続だと「ログイン」ボタンが行き止まり (署名できない) → 未接続はボタンを 出さず、ヘッダの「接続」への案内文 (connectFirst・公開文言) - P2: 紐づけリンク (?address= + #proof=) で入金パネルが開いていた → #proof= のときは開かない - P2: 検証に失敗すると一覧が消えていた → 紐づけ済みの持ち主が期限切れリンクを開いても一覧は残す - P2: 「2026-09-23 以降」「200 件」の文言を索引の定数とフェンス Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HeizmagJBgL5peL5mQpxkc
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.
何を足すか (案 B の B-3 = Web・flag 既定 OFF)
/agentの Agent Wallet カード (アクティビティの下) に 「購入 (何を買ったか)」。設計 =plans/agent-purchase-web.mdv3 (user 承認)。server (#554) と MCP 0.17wallet_prove(#555・npm 未 publish) の上に載せる。#proof=で着地replaceStateで fragment を消す → 未ログインなら「リンクを受け取りました。ログインすると続けます」→ ログイン後に verify → 「紐づけました」→ 一覧NEXT_PUBLIC_ENABLE_AGENT_PURCHASESが OFF なら dynamic import すらしない → 初期 bundle 354 kB / 予算 356 kB は据え置き・遅延 chunk 3.5 kB gzip (Codex の build 実測)AGENT_MCP_VERSION・setup.md 5 箇所・agent-templates・AI ストア)・setup.md にwallet_proveの 1 段落・llms.txt 13 ツール + 閲覧できる旨・KPI 3 イベント (agent_purchases_signin/agent_proof_bound/agent_purchases_view・locale のみ)公開文言 (要承認・
lib/agentPage.tsのpurchasesとtryPrompts6 本目・setup.md・llms.txt)ja の主なもの: 見出し「購入 (何を買ったか)」/ lead「この Agent が x402 で買ったものを、OpenPay の決済記録から表示します。持ち主だけが見られます。」/ 未紐づけ「この Agent はまだあなたのアカウントに紐づいていません。紐づけは 1 回だけです。」→ 1.「Agent に『購入履歴を Web で開いて』と頼みます。」2.「返ってきたリンク (5 分有効・1 回だけ) を、このログイン中のブラウザで開きます。」/ 注記「記録は欠損することがあります。金額と着金はオンチェーン (上のアクティビティ) が基準です。『申告』は売り手と買い手が申告した内容で、商品が提供されたことの証明ではありません。」/ 使用済み「このリンクはすでに使われています。別のアカウントに紐づいた場合は、Agent にもう一度頼むと取り戻せます。」。全文は diff の
lib/agentPage.ts。en は同内容。llms.txt の追加句: 「
wallet_proveは持ち主が /agent で SIWE ログインしたうえで一度だけ開く紐づけリンクを返し、以後はログインするだけで自分の Agent の購入履歴 (何を・いくら・tx) を閲覧できる」。setup.md (英語) は Step 5 末尾に 1 段落。検証
AgentPurchases.test.tsx: 4 状態・失敗コード別・fragment 消去・unbind 2 段階・flag OFF で描画なし・hydration・track は locale のみ)・typecheck / eslint OK・build OK (Codex)plans/agent-purchases-shot.mjs@0.17が本番に出る (下の順序で対処) / P1 2 = client Sentry の beforeSend 欠如で#proof=が error event に乗り得る →scrubSentryServerEventを追加・ウォレット未接続でログインが行き止まり → 接続への案内文に / P2 = 紐づけリンクで入金パネルが開く・検証失敗後に一覧が消える・文言とインデックス定数のフェンス、を反映。反映後に実機の通しを再実行 (pageerror 0)この PR は setup.md / AI ストア / agent-templates の版固定を
@0.17にする。npm に 0.17.0 が無いまま merge すると新規セットアップが失敗する (flag と無関係に公開される)。packages/x402-mcpでnpm publish(0.17.0・main の feat(x402-mcp): wallet_prove — Agent の署名で /agent の購入履歴に紐づける一回限りのリンク (0.17.0・案 B-2) #555 の内容 =npm pack --dry-run12 files) → registry に 0.17.0 が出るのを確認ENABLE_AGENT_PURCHASES=1とNEXT_PUBLIC_ENABLE_AGENT_PURCHASES=1(点灯)追加した公開文言: connectFirst ja「ログインするには、まずヘッダの「接続」でウォレットを接続してください。」/ en "To sign in, first connect a wallet from “Connect” in the header."
🤖 Generated with Claude Code
https://claude.ai/code/session_01HeizmagJBgL5peL5mQpxkc