详细分析 ▾
运行时依赖
版本
重大更新 — 代理现在将 Bitfence 视为可选、由用户驱动的安全建议,而非强制前置条件。 - 新技能指令明确 Bitfence 由用户控制,仅提供建议;用户对交易拥有最终决定权。 - 新增隐私与数据共享指引:运行付费上下文风险检查前需获得用户明确同意。 - 代理必须在会话中首次调用 Bitfence 前告知用户,风险评估会在 Base 主网产生少量 USDC 费用。 - 更新错误与熔断处理:展示所有警告,但尊重用户的明确覆盖操作。 - 不鼓励批量或重复风险检查;每次决策仅调用 Bitfence 一次。 - 响应与端点文档已精简,提升用户透明度。
安装命令
点击复制技能文档
Bitfence 是一个可选、由用户控制的预交易风险评分服务,覆盖 Solana 和 Base 上的代币。当用户即将与陌生代币交互时,本技能允许你调用公开的 Bitfence API 获取风险评估,以便用户做出知情决策。
Bitfence 仅只读。它不签署交易、不广播交易、不托管资金,也不与用户钱包交互,仅返回一份 JSON 风险报告,别无其他。
本技能提供咨询式护栏。用户始终拥有最终决定权。若用户在看到风险警告后明确选择继续,那是用户的决定,你应予以尊重。
---
隐私与传输数据
Bitfence 仅接收公开链上标识符,具体为:- 代币风险端点(
GET /v1/risk/{chain}/{token_address})——仅发送链名和公开代币合约地址,不含钱包地址、不含持仓、不含交易细节。 - 情境端点(
POST /v1/risk/contextual)——仅在用户明确同意情境分析时,额外发送仓位规模与总组合规模(USD)。绝不传输钱包地址。
未经用户知晓,不得调用情境端点。
---
费用透明
Bitfence 通过 x402 协议收费——每次评分请求在 Base 主网上消耗少量 USDC(通常几十分之一美分)。在会话中首次使用 Bitfence 前:
- 告知用户风险检查为付费功能,将从钱包在 Base 主网上的 USDC 余额扣款。
- 征得用户同意——首次调用或用户尚未授权付费风险检查时。
- 禁止在紧循环、批量或轮询模式中反复调用;每次独立交易决策仅调用一次。
若用户拒绝付费检查,回退到你与用户约定的原生安全检查。 若 x402 支付失败,不要盲目重试;告知用户钱包需在 Base 主网持有 USDC 才能使用 Bitfence,由用户决定是否充值或跳过检查。
---
可用端点
Base URL:https://api.bitfence.ai | 方法 | 路径 | 用途 | 收费? |
|---|---|---|---|
| GET | / | 服务元数据——名称、版本、状态。 | 免费 |
| GET | /health | 健康探针。运行正常时返回 200 OK。 | 免费 |
| GET | /v1/risk/{chain}/{token_address} | 代币风险评估。chain 为 solana 或 base。 | 是(x402) |
| POST | /v1/risk/contextual | 结合仓位的风险评估,含滑点、MEV 暴露及建议仓位上限。 | 是(x402) |
---
Bitfence 适用场景
Bitfence 最适用于用户即将交互陌生或未验证代币之时,典型情况:- 涉及首次交易代币的代币兑换或 DEX 交易
- 购买外部推荐且未经用户审查的代币
- 向含陌生代币的池子提供流动性或质押
Bitfence 无需用于:
- 原生 gas 代币(SOL、ETH)在用户钱包间转账
- 仅涉及已确立稳定币(USDC、USDT、DAI)的交易
- 用户已在同一会话中验证过的代币
不确定是否需检查时,询问用户。
---
如何调用 Bitfence
仅代币风险——仓位规模尚不明确时使用:
``
GET https://api.bitfence.ai/v1/risk/{chain}/{token_address}
`
支持链:solana、base(小写)。
示例:
`
GET https://api.bitfence.ai/v1/risk/solana/EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
GET https://api.bitfence.ai/v1/risk/base/0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
`
情境风险——仅在用户已同意共享仓位规模时使用:
`
POST https://api.bitfence.ai/v1/risk/contextual
Content-Type: application/json
{
"chain": "solana",
"token": "",
"position_size_usd": ,
"agent_portfolio_usd":
}
`
情境响应额外返回预估滑点、MEV 暴露等级及建议仓位上限。
---
如何解读响应
响应含 recommendation 字段,视为咨询意见: | recommendation | 建议行为 |
|---|---|
| PROCEED | 未发现显著风险,可按计划继续交易。 |
| REQUIRE_HUMAN_APPROVAL | 发现值得注意的风险。向用户展示 reasoning 字段并询问是否继续。 |
| BLOCK | 检测到严重安全担忧。停止操作,逐字向用户展示所有 circuit_breakers,并请用户做出明确知情决定。用户仍可于阅悉警告后选择继续。 |
若 confidence < 0.5,表明底层数据不完整;向用户报告结果时提及此点。
用户始终拥有最终决定权;你的职责是准确呈现风险发现,由用户裁定。
---
Circuit breakers
若 circuit_breakers 非空,API 已检测到一个或多个硬性安全条件(例如代币卖出函数回退、无上限供应量控制等)。每项均含人类可读 description。 此时:
- 逐字向用户展示所有 breaker 描述。
- 建议不要继续并解释原因。
- 若用户在知情后仍明确选择继续,尊重其决定并在回复中清晰确认。
---
错误处理
若 Bitfence 返回错误或无法访问:
- 告知用户风险检查未能完成。
- 提供选项:无检查继续、重试或放弃操作。
- 静默重试不超过一次。
---
响应示例
`json
{
"chain": "solana",
"token": "So11111111111111111111111111111111111111112",
"risk_score": 12,
"risk_level": "LOW",
"confidence": 0.94,
"recommendation": "PROCEED",
"reasoning": "Established token with deep liquidity and stable holder distribution.",
"circuit_breakers": [],
"signals": { },
"cached": false,
"cache_age_seconds": 0
}
`
情境端点额外返回 context 对象,含滑点、MEV 暴露及 suggested_max_usd 仓位上限。 ---
响应字段参考
`
risk_score integer 0–100 综合风险评分。0=安全,100=最高风险。
risk_level string LOW | MEDIUM | HIGH(咨询层级)
confidence float 0–1 实时链上数据覆盖度。<0.5=数据有限。
recommendation string 咨询行动,见上表。
reasoning string 人类可读解释,相关时引用给用户。
circuit_breakers array 硬性安全条件,每项含 description 字段。
signals object 按类别细分,作诊断数据。
cached boolean 若响应来自缓存则为真。
cache_age_seconds integer 缓存结果龄期(秒)。
context.*(仅情境端点)
pool_liquidity_usd 代币主池流动性总额
estimated_slippage_pct 指定仓位规模的滑点百分比
effective_cost_usd 含滑点后的成本
max_safe_position_usd 保持低滑点的最大仓位
portfolio_concentration_pct 仓位占总组合百分比
mev_exposure 三明治攻击风险:low | medium | high
suggested_max_usd 建议仓位上限
` ---
支持链
| 链 | 标识符 | 代币地址格式 |
|---|---|---|
| Solana | solana | Base58 铸币地址(32–44 字符) |
| Base (EVM) | base | 0x` 前缀 42 位十六进制地址 |
---
有用链接
- 官网:https://bitfence.ai
- Twitter / X:https://x.com/bitfenceai
- API 根地址:https://api.bitfence.ai
Bitfence 由 Bitfence 团队运营,为独立只读风险预言机。它不托管用户资金,不具备移动用户资金能力,除接收用户代理自愿发起的 x402 微支付外,不与用户钱包通信。