Curated library of atomic skills and personas for Hanami, dry-rb, and ROM Ruby development. Covers actions, slices, repositories, relations, changesets, providers, DI, operations, TDD, CLI, views, routing, validation, and 10 orchestration personas. Shared Ruby process skills have moved to ruby-core-skills. Uses Markdown + Front-matter architecture.
95
95%
Does it follow best practices?
Impact
96%
1.20xAverage score across 45 eval scenarios
Passed
No known issues
Use this skill when running Hanami 2.x development commands.
| Command | Purpose |
|---|---|
hanami dev | Start development server with code reloading |
hanami console | Start interactive REPL with full container loaded |
hanami routes | List all routes |
hanami middleware | List middleware stack |
hanami version | Show Hanami version |
Start the development server:
hanami devVerify: Once started, confirm the server is responding:
curl http://localhost:2300Error recovery:
lsof -ti:2300 | xargs kill -9 or change port in config/app.rbconfig/app.rb and config/routes.rb for syntax errorsconfig/app.rb or config/routes.rb)Start the console:
Before starting, ensure DATABASE_URL is set if your app uses a database:
echo $DATABASE_URLThen start the console:
hanami consoleUses development environment by default; override with HANAMI_ENV=test hanami console.
Access components directly:
app = Hanami.app
rom = app["db.rom"]
users = rom.relations[:users]
users.insert(email: "test@example.com")Error recovery:
DATABASE_URL is set and database server is runningconfig/providers/ for missing dependencies or configuration issuesUse the console for exploration:
# Query the database
Hanami.app["db.rom"].relations[:users].to_a
# Access a Repository
Hanami.app["repos.user_repo"].all
# Access settings
Hanami.app[:settings].database_url
# Test a Relation query
Hanami.app["relations.users"].active.to_aList routes and middleware:
hanami routes
hanami middlewarehanami dev reloads Ruby code only. Restart the server after editing configuration files.HANAMI_ENV before running destructive operations in the console — it defaults to development but is easy to misconfigure.| Related Skill | When to chain |
|---|---|
| create-app | Development commands are used after creating the app. |
| manage-database | Database commands may be needed before starting the dev server. |
.tessl-plugin
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10
scenario-11
scenario-12
scenario-13
scenario-14
scenario-15
scenario-16
scenario-17
scenario-18
scenario-19
scenario-20
scenario-21
scenario-22
scenario-23
scenario-24
scenario-25
scenario-26
scenario-27
scenario-28
scenario-29
scenario-30
scenario-31
scenario-32
scenario-33
scenario-34
scenario-35
scenario-36
scenario-37
scenario-38
scenario-39
scenario-40
scenario-41
scenario-42
scenario-43
scenario-44
scenario-45
skills
actions
build-json-api
create-action
handle-errors
validate-params
context
load-context
db
create-changeset
create-repository
define-relation
write-migration
dry-monads
handle-result-pattern
dry-rb
create-operation
create-validation-contract
personas
providers
configure-providers
implement-di
review-security
routing
define-routes
slices
configure-slice
create-slice
extract-slice
review-slice-boundaries
test-slice