内容
# 支出防火墙,用于自主AI代理
> 您为自主代理提供了信用卡且没有消费限制。
> **sipi.bot** 是批准、阻止或标记每笔交易以对抗**您的**规则的防火墙 - 在移动任何资金之前。
一个功能,三个界面:
- **MCP 工具** — Claude Code / Cursor / Hermes 调用 `evaluate_spend` 原生。
- **HTTP API** — 任意代理 `POST /v1/transactions/evaluate`。
- **命令行界面** — 无需代理即可验证。
## 10秒测试
```bash
pip install sipi-bot
sipi-bot eval --amount 6200 --merchant unknown-gpu.ru --category compute
# -> {"decision": "BLOCKED", "reason": "Transaction $6,200.00 exceeds per-transaction limit $500.00."}
sipi-bot serve --port 8080 # 登录 + 控制面板 + API
```
或从源代码:
```bash
python3.11 -m spendfirewall.cli eval --amount 6200 --merchant unknown-gpu.ru --category compute
```
然后打开 http://localhost:8080(登录),http://localhost:8080/dashboard(控制室),http://localhost:8080/pricing(团队 $99 / 企业 $499)。
**托管:** [sipi.bot](https://sipi.bot) · [控制面板](https://sipi.bot/dashboard) · [获取 API 密钥 →](https://sipi.bot/pricing)
## 代理在消费前的主要调用
```bash
curl -X POST https://sipi.bot/v1/transactions/evaluate \
-H "Authorization: Bearer sk_live_..." \
-d '{"amount": 6200, "merchant": "unknown-gpu.ru", "category": "compute"}'
```
返回以下之一:`APPROVED`(通过),`BLOCKED`(不允许消费),`FLAGGED`(需要人工审批)。
## 规则类型
`per_transaction`,`daily_total`,`velocity`(失控保护),`merchant_block`,
`merchant_allow`(允许列表),`category_limit`,`time_window`,`approval_threshold`。
首先 `BLOCKED` 生效。`FLAGGED` 是非阻塞的(排队等待人工审批)。
## 评估环境(保证 + 销售资产)
```bash
python3.11 -m spendfirewall.eval.run_eval # 53 个场景 -> eval_report.json + .md
```
53/53 通过。在 `/eval` 中实时提供。这是保证的依据:
*如果防火墙放行了一笔违反您规则的消费,则该月免费。*
## MCP 配置
```json
{ "mcpServers": { "sipi-bot": { "command": "python", "args": ["-m", "spendfirewall.mcp_server"] } } }
```
## 框架集成
直接添加“消费护栏”配方 - 每个都针对 https://sipi.bot 进行实时验证:
- [LangChain & CrewAI](integrations/SPEND_GUARDRAILS_RECIPE.md) — `@tool` / `BaseTool` 包装器 + 零依赖 `sipi_guard.py` 客户端
- [OpenAI 代理 SDK](integrations/openai-agents-sdk.md) — `@function_tool` 保护
- [Vercel AI SDK](integrations/vercel-ai-sdk.md) — `tool({execute})` 保护 + `sipiGuard.ts` 客户端
核心调用始终相同:`evaluate(amount, merchant, category)` → `APPROVED` / `BLOCKED` / `FLAGGED`。
## 部署(Fly.io)
```bash
flyctl launch --no-deploy --copy-config --name sipi-bot-firewall
flyctl volumes create sf_data --size 1 --region iad --yes
flyctl deploy
flyctl certs add sipi.bot
```
仅限标准库(http.server, sqlite3)。无框架,部署简单。仅 `pip install mcp` 用于 MCP 接口。