区块链地址分析工具

Wallet Whisperer是一款基于Next.js的AI聊天应用,用于分析区块链地址和交易,支持多链数据访问和两种AI分析路径。

  • by thatdeji
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 thatdeji/Wallet-Whisperer

使用说明

钱包耳语器

钱包耳语者:通过Blockscout MCP跨链分析地址和交易的AI聊天。

概述

Wallet Whisperer是一个Next.js应用程序,可以让你与人工智能聊天,分析区块链地址和交易。它使用Blockscout的模型上下文协议(MCP)工具进行数据访问,并提供两条提供者路径:

  • 用于MCP驱动分析的Claude Agent SDK(默认)
  • OpenAI代理SDK(回退)使用托管的MCP工具,可根据环境/设置进行切换

UI不显示模型选择;您可以通过环境变量或调用OpenAI路由手动切换提供者。

技术栈

  • Next.js应用路由器、React、TypeScript
  • 顺风CSS+shadcn/ui
  • Blockscout MCP工具
  • 克劳德代理SDK(@anthropic ai/Claude Agent SDK)
  • OpenAI代理SDK(@OpenAI/Agents)

特性

  • 链选择器+带验证的地址/tx输入
  • 常见分析的快速行动
  • 带Markdown渲染的聊天界面
  • 用于响应的非流式和流式API(Claude)
  • OpenAI回退路由利用托管的MCP工具

入门指南

  1. 安装依赖项
npm install
  1. 配置环境(create.env.local)
  • ANTHROPIC_API_KEY=您的密钥
  • OPENAI_API_KEY=您的密钥
  • OPENAI_AGENT_MODEL=gpt-4.1(可选,默认为gpt-4.1)

避免泄露秘密。旋转所有暴露的按键。

  1. 运行应用程序
npm run dev

打开http://localhost:3000

API终点

  • 违约(克劳德): POST /api/chat
    • 主体: { messages: Message[], chainId: string, address?: string, txHash?: string }
    • 退货: { message: string, toolCalls?: [], usage?: {} }
  • 流媒体(克劳德): POST /api/chat/stream (服务器发送的事件)
  • OpenAI回退: POST /api/chat-openai
    • 相同的请求/响应形状;使用OpenAI代理SDK和托管的MCP工具

切换提供商

  • 保持UI原样;通过以下方式更改提供商:
    • 使用OpenAI路由:调用 /api/chat-openai
    • 调整型号:设置 OPENAI_AGENT_MODEL 在 .env.local

重要文件

  • 应用程序UI: app/page.tsx
  • Claude配置/帮助程序: lib/agent-config.ts (运行BlockscoutQuery,创建BlockscoutAgent)
  • OpenAI助手: lib/agent-config.ts (用OpenAI运行BlockscoutQuery,用OpenAI创建BlockscoutAgent)
  • API: app/api/chat/route.ts, app/api/chat/stream/route.ts, app/api/chat-openai/route.ts

组件(shadcn/ui)

  • components/ui/* 加上:
    • components/chain-selector.tsx
    • components/address-input.tsx
    • components/chat-interface.tsx
    • components/quick-actions.tsx

备注

  • Tailwind/shadcn已预先配置并主题化,支持黑暗模式
  • Next.js构建可能会警告多个锁文件;您可以设置turbopack.root或使用单个锁文件