Skill catalogue
Skills are reusable instructions or workflows you can load into the Riff agent at any point in a conversation.
This page is for learning the shape of the library — which kinds of job already have a brief written for them, and how to get to the right one in about two seconds. Read it once and you will stop describing from scratch the things the agent already has instructions for.
Skills load into your message; they do not run on their own. You pick one, add your own detail after it — which page, which table, which file — and then send. See Skills for how that works.
Find a skill by typing its prefix
Every skill name has the same three parts:
category - verb - what it acts on
data-design-database-schema
ui-implement-dark-mode
deployment-check-securityThe first word is the category, and it is the whole trick. Typing /data in the chat input narrows forty skills to ten. /deployment narrows them to eleven. /integration gets you the one.
So the skill you need is never more than two decisions away: which of six categories does my problem belong to, then which line in a short list. The rest of this page teaches the first decision.
The six categories
Get the data in
/data
10
Schema, uploads, imports, exports — everything before there is something to look at
Build the screens
/ui
8
The pages people actually open: search, tables, forms, notifications
Build the server side
/backend
6
Roles, queues, chatbots, error tracking — the work that happens out of sight
Make it feel finished
/improvement
4
Caching, loading states, analytics, error handling
Connect another system
/integration
1
One specific OAuth setup — see the note below
Ship it
/deployment
11
Security, responsiveness, audit trails, documentation
Two of the six categories are about the edges of a project — data going in, the app going out — and that is where more than half the skills are. The building in the middle is the part the agent handles best unaided.
Get the data in
/data — 10 skills
Nothing else works until the data is in. This group runs in both directions: files arriving, and data leaving again. If your app needs to read a spreadsheet, a CSV or an existing Power BI dashboard, do not describe the file format to the agent by hand — the import already has a brief.
data-design-database-schema
Design tables, relationships, and indexes
data-analyze-csv-data
Analyze CSV data without asking what to do
data-implement-file-upload
Create file upload with validation and storage
data-implement-large-file-upload
Robust pipeline to upload large files
data-implement-upload-csv-to-database
Enables the user to upload updated CSV files to the database
data-implement-xlsx-import
Upload an Excel (.xlsx) file and store the data in the database, or visualize data from a workbook
data-implement-powerbi-migration
Enables a user to migrate a Power BI dashboard into Riff
data-implement-data-export
Add data export to file formats
data-migrate-table-dev-prod
Flow to copy data from dev tables to prod tables
data-optimize-database-queries
Identify and fix slow database queries
Start with data-design-database-schema. Deciding the tables before anything is built is the single change that saves the most rework later.
Build the screens
/ui — 8 skills
The pages people open. These are the patterns every internal tool eventually grows — search, pagination, validation, notifications — and they are the ones most worth loading as a skill rather than describing, because a skill carries the details you would not think to ask for.
ui-implement-search-functionality
Add search with filtering and results display
ui-implement-pagination
Add pagination to data tables and lists
ui-add-form-validation
Add client and server-side validation
ui-implement-notifications
Build in-app notification system
ui-implement-data-reference-page
Build an in-app reference page for data fields, code mappings, business logic, KPIs
ui-implement-dark-mode
Add dark mode with theme toggle
ui-make-responsive
Fix pages that look wrong on different screen sizes, or presentation mode
ui-split-large-frontend-pages
When a frontend page file exceeds 15,000 characters
ui-implement-data-reference-page is the one people do not know to ask for. If your app carries codes, statuses or KPI definitions that only two people in the building understand, this puts them on a page inside the app instead of in a document nobody opens.
Build the server side
/backend — 6 skills
The work that happens out of sight. Half of these stand up a whole subsystem in one go — a chatbot over your tables, a job queue, an MCP server — rather than adding a feature to an existing one.
backend-implement-chatbot
implement a chatbot which has tools to query specific tables to answer user queries
backend-implement-job-queue
Build asynchronous job processing with retry logic
backend-implement-mcp-server
Build and Secure an MCP Server for Claude Desktop
backend-implement-user-roles
Add role-based access control with database and API
backend-setup-error-tracking
Integrate error tracking and alerting
backend-split-large-backend-api-files
When a backend API file is too large to edit reliably (typically over 20,000 characters)
backend-implement-user-roles before you share the link. Who can see what is far cheaper to decide before there are users than after.
Make it feel finished
/improvement — 4 skills
The smallest group, and the easiest to skip. Each of the four is the difference between an app that works and an app people trust.
improvement-add-loading-states
Add loading indicators and skeleton screens
improvement-improve-error-handling
Implement user-friendly error messages and recovery
improvement-add-caching-layer
Implement caching for frequently accessed data
improvement-add-analytics-tracking
Add analytics events for user behavior
Loading states are worth more than they sound. A page that looks frozen for three seconds is the most common reason someone decides an internal tool is broken.
Connect another system
/integration — 1 skill
integration-connect-xero
Connect this app to the OAuth Gateway (Xero) - setup only
One skill, and a specific one. This category is not where the integrations story lives — connecting to an ERP, an API, a supplier portal or anything else is covered by Integrations and Secrets, not by a skill. If you are looking for how to give an app access to a system that already holds your data, start there.
Ship it
/deployment — 11 skills
The largest group, and the one to read before you need it. These are the questions someone will ask you in the week after you share the link: who supports this, can I open it on my phone, what happens if I delete the wrong row, who else can see it.
deployment-check-security
Run through the codebase to identify critical security flaws
deployment-perform-security-audit
Systematic security review for vulnerabilities
deployment-verify-authentication
Test authentication and authorization setup
deployment-check-integration
Run through all integrations in the app and document them
deployment-audit-package-versions
Check package versions and security vulnerabilities
deployment-implement-responsive-layout
Make pages work on mobile, tablet, and desktop
deployment-add-audit-trail-and-restore
Audit logs, version history, undo/rollback, point-in-time restore
deployment-implement-bug-reporting
Adds a bug reporting system (form + admin page)
deployment-implement-in-app-documentation
Add a polished, interactive documentation page
deployment-add-contact-info
Adds a contact/maintainer info card to the app
deployment-review-naming-consistency
Check user-facing text for terminology consistency
These are a checklist, not a menu. Run them as a pass rather than picking one: security, then authentication, then integrations, then the responsive layout, then the things that make the app supportable — contact info, bug reporting, documentation. How to deploy an application walks the same ground in order.
When something has already gone wrong
Three skills exist for a situation rather than a feature. They are worth knowing about before you meet them, because none of them is something you would think to ask for.
backend-split-large-backend-api-files
The agent starts failing to edit a backend file reliably — typically past 20,000 characters
ui-split-large-frontend-pages
The same symptom on a frontend page, past 15,000 characters
data-optimize-database-queries
A page that was fast on sample data has got slow on real data
If the agent is making repeated unsuccessful edits to one large file, that is the signal for the first two. Splitting the file is usually faster than trying the edit again.
Keeping this current
Forty skills at the time of writing. The list in your / menu is always the current one — if something here is missing from it, or something there is missing here, trust the / menu.
Skills are configured in the agent's settings. Reach out to the Riff team if you would like a new one added.
Last updated
Was this helpful?