Rust off Rails plugin

A skill plugin that builds Rust web apps by Rails conventions, from the skeleton and resources to checks and deployment.

  • 53 ★ on the repository
  • Last commit
  • Apache-2.0
Plugin

Extended access

Why this level

  • The installer downloads tools and the framework and changes the home directory.
  • The agent creates the app, edits files, runs `cargo` commands and prepares hosting rollouts.
All reasons and checks

rust-off-rails/rustoffrails

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add plugins/rust-off-rails

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • The installer downloads tools and the framework and changes the home directory.
  • The agent creates the app, edits files, runs `cargo` commands and prepares hosting rollouts.

This is third-party code. Review the repository files before installing.

What it does

Rust off Rails describes one stack for Rust web apps as Markdown files plus a ready app template that an agent copies instead of rewriting. The Claude Code plugin adds nine skills. `/offrails:new` asks about the app, confirms a plan and builds the skeleton, `/offrails:feature` drives development from spec to code, and `/offrails:scaffold` creates a whole resource with migration, model, policy, controller and tests. `/offrails:generate` builds jobs, mailers, channels and authentication, and `/offrails:check` runs `cargo fmt`, `clippy` and tests on SQLite and Postgres. `/offrails:doctor` audits the app against conventions, `/offrails:security` runs a deep security review, `/offrails:deploy` prepares a rollout to Fly.io, Kamal, Railway or Render, and `/offrails:upgrade` updates the version inside the app.

Who it is for. Developers building Rust web apps with an agent who want a predefined stack and directory layout, as in Rails.

Good fit when

  • A Rust app must be created from scratch and the agent should first ask about users, data and hosting.
  • A resource with fields and an access policy is added to a finished app with `scaffold`.
  • Before a release you need one run of formatting, linter and tests on two databases.
  • The app is to be deployed to Fly.io or through Kamal with the configuration checked.

Not a fit when

  • A different stack is already chosen: the conventions assume Axum, SeaORM and a fixed set of parts.
  • You need a ready framework library: here code is copied into the app and there is no framework dependency.
  • The project is not in Rust.

Example request

Create a bookshelf app where people track the books they have read: first ask about accounts and hosting, then show a plan.

Limitations

The plugin targets Rust off Rails apps: hooks act only in directories with `.offrails/`. They block edits to `.offrails/` and `web/src/types/`, flag raw SQL and banned packages, and the agent cannot end a turn while `cargo fmt --check` or `cargo check` fail. The installer `curl -fsSL https://rustoffrails.org/install.sh | sh` checks for Rust, installs cargo tools and downloads the framework into `~/.offrails/` with a SHA-256 check. The author says the project is experimental, and some example ports by agents are published later.

How to disable. Remove the `offrails` plugin through `/plugin`. The `~/.offrails/` directory and the `offrails` command installed by the script are removed by hand. Each app keeps its own `.offrails/` directory, which the apps need.

FAQ

How do I install Rust off Rails?

Run `curl -fsSL https://rustoffrails.org/install.sh | sh`: the script installs the tools and the Claude Code plugin. By hand: `/plugin marketplace add rust-off-rails/rustoffrails`, then `/plugin install offrails@offrails`.

How can I see the installation plan before running it?

Run the script with the `--dry-run` flag. `INSTALL.md` has a step-by-step explanation and a manual equivalent.

Does the stack work with Codex and Cursor?

Yes, through `AGENTS.md`. Ask the agent to read `/path/to/rustoffrails/AGENTS.md` and create the app. Generated apps carry their own `AGENTS.md` and `.offrails/`.

What do the plugin hooks do?

They protect `.offrails/` from edits, flag convention violations after each edit, block ending a turn on `cargo check` errors and hint when the app framework version is behind.

Is there a dependency on the framework?

No. The framework is not linked as a library: the template and parts are copied into the app and everything lives in your repository. The app uses ordinary crates such as Axum and SeaORM.

Discussion

No questions or reviews yet.

Plugins

An MCP server and plugin for agents that generate web APIs from OpenAPI, AsyncAPI, GraphQL, gRPC and SQL specs on a Rust core.

MCP serverExtended access123Repository stars

Keep Rails layers in check: god objects, callbacks, services and CI layer boundaries, following the Layered Design book.

PluginExtended access479Repository stars

Six skills that teach an agent to write Streamling plugins in Rust: sources, sinks, transforms and SQL functions.

SkillMinimal access109Repository stars

A set of 14 skills for Java Spring Boot, from requirements analysis and code generation to tests, review and Docker deployment.

SkillExtended access104Repository stars

A skill that creates Spring Boot apps: takes the latest version from start.spring.io and adds Docker, Vue or React, PostgreSQL.

SkillExtended access348Repository stars

A Rails gem with an MCP server: the agent reads your schema, models, routes and tests instead of guessing them from a template.

MCP serverExtended access186Repository stars

README in short

The README calls the project a web framework for AI agents: a set of Markdown files with one stack plus an app template that gets copied. It covers installation, nine skills, hooks, the template with parts and field tests where agents port well-known open-source projects onto the stack.

README badge

Report a problem