其他
在应用中一站式添加钱包/邮箱/社交登录与 AI 聊天助手时…
为网站或应用快速接入用户管理、多链钱包认证和 AI 助手,让每个用户拥有钱包账户并可使用聊天与内省能力。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 35/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 39/100 ×0.15
适用场景
在应用中一站式添加钱包/邮箱/社交登录与特定
解决思路
- 安装核心认证包:`npm install @emblemvault/auth-sdk`
- 安装 React 集成(含认证):`npm install @emblemvault/emblem-auth-react`
- 安装 React 版 EmblemAI chat:`npm install @emblemvault/hustle-react`
- 安装 Node.js / vanilla JS 版 EmblemAI chat SDK:`npm install hustle-incognito`
- 安装 AI 应用内省与调试库:`npm install reflexive`
- React 应用(推荐):用 `<EmblemAuthProvider appId="your-app-id">` 包裹应用,内嵌 `<HustleProvider>`,再放置 `<ConnectButton showVaultInfo />` 和 `<HustleChat />`
- React 应用:用 `useEmblemAuth()` 取 `isAuthenticated` 与 `walletAddress`,未认证时渲染 `<ConnectButton />`,已认证时显示 `Connected: {walletAddress}`
- 如果用户自建 React 应用,改用 `../emblem-ai-react/SKILL.md` 获取 React 专属参考与示例
- Vanilla JS / Node.js:从 `@emblemvault/auth-sdk` 导入 `EmblemAuthSDK`,从 `hustle-incognito` 导入 `HustleIncognitoClient`
- Vanilla JS / Node.js:`const auth = new EmblemAuthSDK({ appId: 'your-app-id' })`
- Vanilla JS / Node.js(浏览器):调用 `auth.openAuthModal()` 打开认证弹窗
- Vanilla JS / Node.js:用 `auth.on('session', () => { ... })` 监听认证会话就绪
- Vanilla JS / Node.js:`const emblemAI = new HustleIncognitoClient({ sdk: auth })`,用已认证的 sdk 初始化 AI
- Vanilla JS / Node.js:调用 `await emblemAI.chat([{ role: 'user', content: 'What tokens are trending on Base?' }])` 与 AI 对话
- 需要 CLI 或 wallet-first 自动化时,指向 `../emblem-ai-agent-wallet/SKILL.md` 和 `references/agentwallet.md`,获取安装、flags 和脚本模式
- 钱包认证支持:Ethereum/EVM(MetaMask、WalletConnect、Rainbow 等签名验证)、Solana(Phantom、Solflare、Backpack)、Bitcoin(PSBT 验证)、Hedera(Hedera SDK)
- 其他认证方式:OAuth(Google、Twitter/X)、Email/password 配 OTP
- AI chat 会话界面继承已认证会话,支持流式响应、内置审核与审批提示、跨 web/移动/agent 框架的上下文交接
- 使用预构建 React 组件:`<ConnectButton />`(钱包连接按钮)、`<ConnectButton showVaultInfo />`(带 vault 下拉)、`<AuthStatus />`(连接状态)、`<HustleChat />`(完整聊天界面)、`<HustleChatWidget />`(浮动聊天挂件)
- Agent Wallet 与自动化:CLI 优先工作流、脚本化审批、wallet-per-agent 编排,到 `../emblem-ai-agent-wallet/SKILL.md` 和 `references/agentwallet.md` 查看
- React Token Migration 与高级 Hooks:migrate.fun React hooks、selectors 和 UI 演练,到 `../emblem-ai-react/SKILL.md` 查看
- Reflexive CLI 监控:`npx reflexive ./server.js`(默认只读)
- Reflexive 本地开发调试:`npx reflexive --debug --watch ./server.js`(未显式启用时仍无 write/shell)
- Reflexive 作为 Claude Code 的 MCP server:`npx reflexive --mcp --debug ./server.js`(只读基线)
- Reflexive library 模式:`import { makeReflexive } from 'reflexive'`,`const r = makeReflexive({ webUI: true, title: 'My App' })`,`r.setState('users.active', 42)`,`await r.chat('Any anomalies in recent activity?')`
- Reflexive 模式选择:CLI(本地)、library(`makeReflexive()`)、MCP server、sandbox、hosted;优先只读默认,仅对可信本地项目启用 `--write` / `--shell`
- Reflexive 调试支持 Node.js、Python、Go、.NET、Rust,可设断点配合 AI 提示
- 会话管理:监听 `auth.on('session' | 'sessionExpired' | 'sessionRefreshed' | 'sessionWillRefresh' | 'authError' | 'cancelled', ...)` 处理各事件
- 会话管理:调用 `await auth.refreshSession()` 刷新会话
- 会话管理:调用 `auth.logout()` 登出
- 会话管理:依赖约过期前 60 秒的自动刷新,浏览器流程通常无需手动处理 token
- 安全:将会话数据视为敏感运行时状态,不要打印 token、粘贴到 prompt 或通过 CLI flag 传递
- 自定义 AI 插件:用 `usePlugins()` 的 `registerPlugin` 注册,配置 `name`、`version`、`tools`(含 `name`、`description`、`parameters` JSON Schema)和 `executors`
- 自定义 AI 插件示例:注册 `get_nft_floor` tool,executor 中调用 `fetchFloorPrice(collection)` 并返回 `{ floor: data.floorPrice, currency: 'ETH' }`
- 价值转移操作遵循 review-first 模型:agent 准备动作供用户审核后再执行,未经明确批准不广播交易
- 从 `<ConnectButton />` 开始接入网站认证和钱包用户,再添加 `<HustleChat />` 获得 EmblemAI 能力
- 查阅 `references/` 下的详细文档:`agentwallet.md`、`auth-sdk.md`、`auth-react.md`、`emblem-ai-react.md`、`emblem-ai-incognito.md`、`react-components.md`、`plugins.md`、`reflexive.md` 等
适用边界 · 注意事项
- 需要 wallet-first CLI、agent wallet 脚本化审批或非交互式凭据处理时,改用 `../emblem-ai-agent-wallet/SKILL.md` 和 `references/agentwallet.md`
- 需要 migrate.fun React hooks、selectors 或高级 React 路由时,改用 `../emblem-ai-react/SKILL.md`
- 在不可信或生产环境中不要启用 Reflexive 的 `--write` / `--shell`,保持只读默认