一键导入
core-sdk
Kailash Ruby SDK — gem setup, workflows, nodes, runtime, Magnus FFI bindings.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Kailash Ruby SDK — gem setup, workflows, nodes, runtime, Magnus FFI bindings.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Claude Code architecture — artifact design, context, agentic patterns. For CC audit/build.
Kailash DataFlow (Ruby/Magnus) — MANDATORY for DB/CRUD/bulk/migrations. Raw SQL/ORMs BLOCKED.
Kailash Nexus (Ruby) — MANDATORY for API+CLI+MCP. Direct Rack/Sinatra BLOCKED.
Kailash Kaizen (Ruby) — MANDATORY for AI agents/RAG/signatures. Raw LLM clients BLOCKED.
Kailash MCP (Ruby) — server, client, tools, resources, auth, transports. For AI agent integration.
Kailash deployment + Git — PyPI publish, CI/CD, wheels, version bumps, multi-package.
| name | core-sdk |
| description | Kailash Ruby SDK — gem setup, workflows, nodes, runtime, Magnus FFI bindings. |
High-performance workflow automation SDK powered by Rust via Magnus FFI bindings.
gem install kailash
Or in Gemfile:
gem "kailash"
require "kailash"
# 1. Create a registry and workflow
registry = Kailash::Registry.new
builder = Kailash::WorkflowBuilder.new
# 2. Add nodes
builder.add_node("NoOpNode", "start", {})
builder.add_node("LogNode", "log", { "message" => "Hello from Ruby!" })
builder.connect("start", "log")
# 3. Build and execute
workflow = builder.build(registry)
Kailash::Runtime.open(registry) do |rt|
result = rt.execute(workflow, {})
puts result.results
end
workflow.close
| Type | Purpose |
|---|---|
Kailash::Registry | Node type registry (must outlive workflows) |
Kailash::WorkflowBuilder | DAG builder — add_node, connect, build |
Kailash::Runtime | Workflow executor — open/close lifecycle |
Kailash::Workflow | Compiled workflow (from builder.build) |
registry = Kailash::Registry.new
begin
builder = Kailash::WorkflowBuilder.new
builder.add_node("NoOpNode", "n1", {})
wf = builder.build(registry)
Kailash::Runtime.open(registry) do |rt|
result = rt.execute(wf, { "input" => "value" })
# result.results => Hash of node outputs
# result.run_id => String UUID
end
ensure
wf&.close
registry&.close
end
Critical: Always close Registry and Workflow. Use Runtime.open block form for automatic cleanup.
# Input parameters to workflow
result = rt.execute(wf, { "user_id" => 42, "name" => "Alice" })
# Node parameters (set at build time)
builder.add_node("HttpRequestNode", "fetch", {
"url" => "https://api.example.com/users",
"method" => "GET"
})
begin
wf = builder.build(registry)
rescue Kailash::BuildError => e
puts "Workflow validation failed: #{e.message}"
end
begin
result = rt.execute(wf, {})
rescue Kailash::ExecutionError => e
puts "Execution failed: #{e.message}"
end
139 node types across 25+ categories. Use registry.list_types to enumerate.
Key categories: AI (9), HTTP (8), SQL (3), File (7), Auth (12), Security (12), Monitoring (10), Transaction (5), Enterprise (8), Code (4), RAG (7), Cache (3), Streaming (3).
All Kailash types are Send + Sync in Rust. Ruby's GVL applies — use Ractor or process-based parallelism for true concurrency. The native extension releases the GVL during Rust execution.
ruby-quickstart.md — Step-by-step getting startedruby-available-nodes.md — Full node referenceruby-custom-nodes.md — Custom node developmentruby-common-mistakes.md — Pitfalls and solutionsruby-cheatsheet.md — Quick reference card