sayfos-labs/sayfos-sdk
GitHub: sayfos-labs/sayfos-sdk
面向 AI agent 的 Python 安全 SDK,通过运行时预算控制、操作溯源、计划预检和意图验证等机制,在自动化操作执行前进行拦截与裁决。
Stars: 1 | Forks: 0
# Sayfos SDK
[中文 README](README_zh.md)
Sayfos SDK 是一个 AI agent 安全 SDK,用于 runtime guardrails:tool-call
控制、source-chain 溯源、budget 限制、plan preflight、
prompt-injection 隔离以及 adjudication token。
它提供参考数据对象、验证 hook 和框架适配器,
以便在自动化操作到达工具、API、数据系统、
云资源或 embodied endpoint 之前对其进行检查。
本仓库是社区参考实现,而非完整的
企业级 gateway 或托管控制平面。
## 采用政策
Sayfos SDK 旨在易于采用。
您可以在个人项目、商业产品、内部工具、研究原型、开源
项目和生产应用中使用遵循 Apache 2.0 协议的社区 SDK。无需注册、使用情况汇报、
付费计划、贡献者协议,使用该 SDK 代码也不依赖 Sayfos Cloud。
您还可以 fork、修改、重新分发本 SDK,或在此 SDK 之上
构建应用或服务,前提是您遵循 Apache 2.0 协议并保留
适用的许可和声明文件。
开源许可证不授予使用 Sayfos 商标、
认证标记、官方服务名称的权利,也不允许将 fork 或
衍生项目标榜为官方 Sayfos SDK、Sayfos Enterprise、经认证的
Sayfos gateway 或授权的 Sayfos 服务。
## 官方上游
本仓库是
Sayfos SDK 的官方上游参考实现:
```
https://github.com/sayfos-labs/sayfos-sdk
```
欢迎在 Apache 2.0 协议下创建 fork 和衍生项目,但
它们必须保留适用的许可和声明文件,且不得暗示
它们是官方 Sayfos SDK、Sayfos Enterprise、经认证的 Sayfos gateway
或授权的 Sayfos 服务,除非另行获得书面批准。
如果您基于此项目进行构建,请注明您的工作是基于公开的 Sayfos SDK 接口或
与其兼容,而不是官方
上游项目。
## Sayfos 能帮助解决的问题
| 不使用 Sayfos | 使用 Sayfos |
| --- | --- |
| Agent 循环在你醒来前一夜耗资 300 美元 | Budget 限制阻止第 51 次调用,硬性止付 5.00 美元 |
| “为什么 agent 转账了 5千美元?” - 没人知道 | Source chain 将授权追溯至 `auth://user/cfo` |
| Prompt injection 诱骗 agent 执行 `rm -rf` | Intent verification 在操作前检查 runtime 证据 |
| 多步 plan 在第 7 步悄然越界 | Plan preflight 在第 1 步之前验证整个 plan |
| 机械臂在未确认物理存在的情况下执行命令 | Embodied verification 交叉检查数字与物理状态 |
Sayfos SDK 为这些检查提供了通用对象和轻量级参考引擎,
让开发者能够围绕 AI agent、RPA 系统、
工作流引擎、编码 agent、云运维 agent、机器人、车辆
agent 和 IoT agent 添加 runtime guardrails。
## 安装
```
pip install sayfos-sdk
```
使用 LangChain 适配器:
```
pip install sayfos-sdk[langchain]
```
使用开发 API server:
```
pip install sayfos-sdk[api]
```
## 快速开始
```
from sayfos import (
ActionDeclaration,
IntentVerificationRequest,
SayfosPipeline,
Verdict,
)
declaration = ActionDeclaration(
actor_type="langchain_tool",
action_type="send_payment",
target="acct_42",
parameters={"amount": 150.0, "currency": "CNY"},
root_authorization_ref="auth://user/alice",
task_lineage_ref="task://report/step-3",
risk_level=5,
)
request = IntentVerificationRequest(
action=declaration,
touch_events=12,
screen_on=True,
device_held=True,
budget_remaining={"amount": 500.0, "tool_calls": 10},
)
pipeline = SayfosPipeline()
token = pipeline.evaluate(request)
if token.verdict != Verdict.ALLOW:
raise RuntimeError(f"Blocked: {token.reason_code}")
result = execute_payment(**declaration.parameters)
```
## 标准对象
社区 SDK 以少量机器可读对象为核心:
| 对象 | 角色 |
| --- | --- |
| ActionDeclaration | 提议的自动化操作 |
| IntentVerificationRequest | 操作加上 runtime 证据 |
| EmbodiedResponse | 情境或 embodied 一致性结果 |
| Budget | 委派的 runtime 权限和配额 |
| PreflightPlan | 多步执行 plan |
| ExecutionBoundary | 机器可读的 plan 或步骤边界 |
| AdjudicationToken | 绑定的判定和约束 |
| AuditSummary | 机器可验证的审计摘要 |
## 参考验证维度
| 维度 | 检查内容 |
| --- | --- |
| Source-chain 完整性 | 操作是否携带所需的溯源引用 |
| Budget 治理 | 操作是否在委派的 runtime 权限内 |
| Plan preflight | 多步 plan 是否保持在 execution boundary 内 |
| Embodied 一致性 | 数字操作证据是否与情境或物理证据匹配 |
内置引擎特意保持轻量级。生产环境部署
应使用持久化存储、经过身份验证的策略管理、运维
监控以及更强大的特定组织决策逻辑。
## LangChain 适配器
```
from sayfos.adapters.langchain import SayfosLangChainInterceptor, BlockedActionError
interceptor = SayfosLangChainInterceptor()
@interceptor.guard
@tool
def transfer_funds(amount: float, to: str) -> str:
return f"Transferred {amount} to {to}"
try:
transfer_funds(100.0, "acct_evil")
except BlockedActionError as e:
print(f"Blocked: {e.token.reason_code}")
```
## CLI
```
sayfos verify --action '{"action_type":"payment","parameters":{"amount":100}}'
sayfos budget create --owner agent-1 --quotas '{"amount_cny":5000}'
sayfos plan preflight --plan '{"steps":[]}' --budget-id
```
## 路线图
| 里程碑 | 状态 |
| --- | --- |
| 核心 SDK(对象、pipeline、CLI、LangChain 适配器) | 已发布 (v0.1.0) |
| Budget 治理引擎 | 已发布 |
| Source-chain 完整性引擎 | 已发布 |
| Plan preflight 引擎 | 已发布 |
| Embodied verification 引擎 | 已发布 |
| CrewAI / Dify / AutoGen 适配器 | 计划于 2026 年第三季度 |
| Sayfos Cloud(托管 gateway + 审计 dashboard) | 计划于 2026 年第四季度 |
## 开源边界
本仓库在 Apache 2.0 协议下提供公共接口、参考对象、轻量级
验证引擎、示例和适配器。
预期的开源边界足够广泛,开发者可以基于该 SDK 构建、
测试、集成并交付真实的应用程序。
企业级 gateway 功能、托管策略引擎、认证
服务、生产环境控制平面和商业支持属于独立的
服务产品,不包含在此社区 SDK 中。
## 声明
- Apache 2.0 - 见 [LICENSE](LICENSE)
- 专利声明 - 见 [PATENT_NOTICE](PATENT_NOTICE.md)
- 贡献指南 - 见 [CONTRIBUTING](CONTRIBUTING.md)
- 商标声明 - 见 [TRADEMARK](TRADEMARK.md)
标签:AI智能体, 人工智能, 安全SDK, 工具调用控制, 提示词注入防御, 文档结构分析, 用户模式Hook绕过, 运行时防护, 逆向工具