Structify — AI skill for Claude Code
An opinionated Rails DSL for defining extraction schemas for LLM-powered models in Rails and ActiveRecord.
How to install Structify
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open kieranklaassen/structify and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Structify does
An opinionated Rails DSL for defining extraction schemas for LLM-powered models in Rails and ActiveRecord.
Alternatives in AI
- Deepreasoning — A high-performance LLM inference API and Chat UI that integrates DeepSeek R1's CoT reasoning traces with Anthr 5.4k ★
- Manifest — Real-time cost observability for OpenClaw agents — track tokens, costs, messages, and model usage 4.1k ★
- Opengap — A framework-agnostic, git-native standard for defining AI agents 2.9k ★
README
Structify
[](https://badge.fury.io/rb/structify) [](https://github.com/kieranklaassen/structify/actions/workflows/ci.yml)
A Ruby gem for extracting structured data from content using LLMs in Rails applications
What is Structify?
Structify helps you extract structured data from unstructured content in your Rails apps:
- Define extraction schemas directly in your ActiveRecord models
- Generate JSON schemas to use with OpenAI, Anthropic, or other LLM providers
- Store and validate extracted data with ActiveRecord validations
- Access structured data through typed model attributes with full validation support
Use Cases
- Extract metadata, topics, and sentiment from articles or blog posts
- Pull structured information from user-generated content
- Organize unstructured feedback or reviews into categorized data
- Convert emails or messages into actionable, structured formats
- Extract entities and relationships from documents
# 1. Define extraction schema in your model
class Article < ApplicationRecord
include Structify::Model
schema_definition do
field :title, :string
field :summary, :text
field :category, :string, enum: ["tech", "business", "science"]
field :topics, :array, items: { type: "string" }
end
end
# 2. Get schema for your LLM API
schema = Article.json_schema
# 3. Store LLM response in your model
article = Article.find(123)
article.update(llm_response)
# 4. Access extracted data
article.title # => "AI Advances in 2023"
article.summary # => "Recent developments in artificial intelligence..."
article.topics # => ["machine learning", "neural networks", "computer vision"]
Install
# Add to Gemfile
gem 'structify'
Then:
bundle install
Database Setup
Add a JSON column to store extracted data:
add_column :articles,
Related Skills
Vibe Rails
An opinionated framework that helps keep AI coding assistants from going off the rails
Capy Cortex
Autonomous memory and learning system for AI coding agents. LLM-powered knowledge extraction, triple fusion re
Book Memex
Powerful eBook metadata management tool with SQLite backend, AI-powered enrichment, web interface, and compreh
Rails AI Context
45 MCP tools that give AI coding agents ground truth about your Rails app: schema, models, routes, controllers
Brick SR1
brick is a smart AI Models router, based on complexity & capabilities extraction from the query to the models
OpenAI Copilot
Your life Copilot powered by LLM models (CLI interface for LLM models with MCP tools).
Related Agents
DB Expert
Expert on SQLAlchemy 2.0 + Pydantic + PostgreSQL. Use when setting up database layers, creating models, defini
Ce Dhh Rails Reviewer
Conditional code-review persona, selected when Rails diffs introduce architectural choices, abstractions, or f
Firecrawl Expert
Expert in Firecrawl API for web scraping, crawling, and structured data extraction. Handles dynamic content, a