Squishling makes Ruby classes elastic. Add a squishling to a class and it can send inputs straight to an LLM (OpenAI, Anthropic Claude, Google Gemini, or any provider RubyLLM supports, or any OpenAI-compatible endpoint, or your own adapter) and return strict-schema-validated, typed results: the same type your Ruby code returns. Use it to gracefully maintain fickle integrations, build interfaces for unknown data formats, and rescue production errors by handing the failing call to the LLM with the source class as context. Write Ruby only for the paths where token costs justify maintaining it. Per-input routing, validated retries, and fallbacks for your LLM calls included.

Required Ruby Version

>= 3.3

Authors

Michael Carroll

Versions

  1. 0.6.0
    1. source

      1. 0.6.0 source November 01, 2026 (159 KB)
  2. 0.5.1
    1. source

      1. 0.5.1 source October 31, 2026 (154 KB)
  3. 0.5.0
    1. source

      1. 0.5.0 source October 28, 2026 (139 KB)
  4. 0.4.0
    1. source

      1. 0.4.0 source October 18, 2026 (85 KB)
  5. 0.3.0
    1. source

      1. 0.3.0 source October 10, 2026 (66 KB)
Show all versions (7 total)

Pushed by

GitHub

SHA 256 checksum

Provenance