mcpField
I
iii-rust-sdk

iii-rust-sdk

github.com/iii-hq开发219 次安装
代码仓库

关于 iii-rust-sdk

介绍通过原生异步 Rust SDK 将 worker 连接到 iii 引擎,适用于构建 iii worker 的 Rust 开发者。内容涵盖函数注册、触发器绑定与调用,并说明可选的 OpenTelemetry 支持。

主要功能

  1. 01将 worker 连接到 iii 引擎
  2. 02注册同步和异步函数
  3. 03将触发器绑定到函数
  4. 04通过触发请求调用函数
  5. 05可选的 OpenTelemetry 插桩

适用场景

  1. 01将 Rust worker 连接到 iii
  2. 02注册异步函数处理器
  3. 03通过队列操作调用函数
  4. 04在 HTTP 请求中传递追踪上下文

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/iii-hq/skills --skill iii-rust-sdk

安装后在 Claude Code 中输入/iii-rust-sdk确认已加载。

详细介绍

Rust SDK

通过 tokio 将工作器连接到 iii 引擎的原生异步 Rust SDK。

文档

完整 API 参考:https://iii.dev/docs/api-reference/sdk-rust

安装

添加到 Cargo.toml:

iii-sdk = { version = "0.10", features = ["otel"] }

主要类型和函数

导出项用途
register_worker(url, InitOptions)连接到引擎,返回 III 客户端
III::register_function(RegisterFunction::new(id, handler))使用构建器 API 注册同步函数
III::register_function(RegisterFunction::new_async(id, handler))使用构建器 API 注册异步函数
III::register_function_with(msg, handler)用于注册函数的双参数便捷方法
RegisterFunction提供 .description() 和通过 schemars 自动生成请求架构的构建器
III::register_trigger(type, function_id, config)将触发器绑定到函数
III::trigger(TriggerRequest)调用函数
TriggerAction::Void即发即弃调用
TriggerAction::Enqueue { queue }持久化异步调用
IIIError处理程序失败的错误类型
Streams用于原子流 CRUD 的辅助工具
with_span, get_tracer, get_meterOpenTelemetry(需要 otel 功能)
execute_traced_request传播跟踪上下文的 HTTP 客户端

主要说明

  • 在 Cargo.toml 中添加 features = ["otel"] 以支持 OpenTelemetry
  • 同步处理程序使用 RegisterFunction::new("id", handler),异步处理程序使用 RegisterFunction::new_async("id", handler)
  • 派生 schemars::JsonSchema 的处理程序输入类型会自动生成请求架构
  • 在 RegisterFunction 上链式调用 .description("..."),为函数添加说明
  • 保持 tokio 运行时运行(例如,使用 tokio::time::sleep 循环),以处理事件
  • register_trigger 成功时返回 Ok(());使用 ? 传播错误

模式边界

  • 用法模式和可运行示例,请参阅 iii-functions-and-triggers
  • Node.js SDK,请参阅 iii-node-sdk
  • Python SDK,请参阅 iii-python-sdk

适用场景

  • 当任务主要涉及 iii 引擎中的 iii-rust-sdk 时,使用此技能。
  • 当请求直接询问此模式或等效实现时触发。

边界

  • 切勿将此技能用作无关任务的通用兜底方案。
  • 如果有更具体的 iii 技能更适合,则不得使用此技能。
  • 应用此技能中的示例前,务必核实环境和安全约束。

评论

支持 Markdown