dspy-rb

Builds Ruby-based LLM apps with typed Sorbet signatures and modular workflows.

6|1|Updated Feb 8, 2026
One-click install
npx skills add https://github.com/vicentereig/engineering --skill dspy-rb
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dspy-rb
Source: https://github.com/vicentereig/engineering/tree/main/plugins/engineering-skills/skills/dspy-rb
Command: npx skills add https://github.com/vicentereig/engineering --skill dspy-rb

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

DSPy.rb brings software-engineering rigor to Ruby-based LLM development by providing type-safe signatures, modular components, and production-ready tooling, reducing errors and speeding up delivery.

Core Features & Use Cases

  • Type-safe signatures with Sorbet: define precise inputs/outputs to guide LLMs and drive code generation.
  • Modular components: compose predictable, reusable LLM logic using signatures, modules, and tools.
  • Production-ready features: observability, error handling, testing, and deterministic tool usage.
  • Tooling and adapters: per-provider adapters and unified RubyLLM routing for flexible model choices.

Quick Start

Install DSPy.rb and define a simple signature to start building a typed LLM workflow.

Frequently Asked Questions about dspy-rb

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build type-safe Ruby LLM applications with structured outputs?

You can build type-safe Ruby LLM applications by defining precise inputs and outputs using Sorbet signatures, which guide the LLM and enforce structured schema-driven responses.

What is the best way to enforce schema-driven outputs in Ruby LLM workflows?

Enforcing schema-driven outputs in Ruby LLM workflows is achieved by composing modular components with type-safe signatures, ensuring predictable and reusable logic.

Can I use different LLM providers for specific tools within a single Ruby pipeline?

Yes, you can route specific tools to different LLM providers using unified RubyLLM routing and per-provider adapters, enabling flexible model choices within your pipeline.

How do I test and observe LLM pipelines in a production Ruby environment?

You can test and observe LLM pipelines in a production Ruby environment by utilizing built-in production-ready tooling, which provides deterministic tool usage, error handling, and observability.

Does DSPy.rb require Sorbet to compose modular LLM workflows?

Yes, DSPy.rb requires Sorbet to define type-safe signatures, which are essential for composing modular workflows and ensuring predictable, reusable LLM logic in your Ruby applications.