rock-developer

Provides reference documentation for developing Rock RMS plugins, blocks, and AI agent tools.

Updated Mar 18, 2026
One-click install
npx skills add https://github.com/pbassham/rockumentation-skill-builder --skill rock-developer-pbassham
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: rock-developer
Source: https://github.com/pbassham/rockumentation-skill-builder/tree/main/curated-bundles/rock-developer
Command: npx skills add https://github.com/pbassham/rockumentation-skill-builder --skill rock-developer-pbassham

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Rock RMS developers need accurate, version-specific guidance across a large documentation surface — coding standards, the Obsidian (Vue 3) block framework, entity modeling, data migrations, AI agent tool development, and Rock Shop publishing — without manually searching dozens of Rockumentation pages. ## Core Features & Use Cases - 86 curated reference files from 13 official sources: Covers the Developer Codex, Obsidian framework, Design System, AI Agents, plugin packaging, Slingshot imports, and the 101/202/303 onboarding tracks. - On-demand topic loading: A hierarchical index in SKILL.md lets the agent load only the relevant reference (e.g., grid configuration, field types, workflow actions) instead of the entire corpus. - Use Case: When asked to build a native AI agent tool in C#, the agent loads the Agent Tool Helper and AddOrUpdate tools references to follow Rock's validation, security, and IdKey patterns correctly. ## Quick Start Ask the agent how to create an Obsidian block or custom field type in Rock RMS and it will load the matching reference file to answer.

Frequently Asked Questions about rock-developer

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a custom block in Rock RMS?

Create a User Control with an .ascx markup file and .ascx.cs code-behind that inherits from Rock.Web.UI.RockBlock, then add DisplayName, Category, and Description attributes. For modern development, build Obsidian blocks using Vue 3 TypeScript components with C# block actions.

How do I build AI agent tools in Rock RMS?

Build native tools in C# by inheriting from AgentSkillComponent and registering tools with attributes, or create Lava tools for simpler queries. Use the AgentToolHelper class for validation, error collection, pagination, and safe entity access with IdKey-based references.

What is the Obsidian framework in Rock RMS?

Obsidian is Rock's Vue 3 and TypeScript front-end framework for building modern blocks, replacing WebForms. It provides component structure conventions, form validation, grids, field types, and a browser bus for pub-sub messaging between components.

Should I use PersonAlias or Person when storing person references?

Use PersonAlias IDs instead of Person IDs when storing person references in custom data models. PersonAlias handles scenarios like duplicate person merges, so references remain valid after record consolidation.

Does this skill cover Rock RMS end-user or admin documentation?

No, this skill explicitly excludes end-user, administrator, Lava templating, and mobile app topics. It covers only developer-focused content like coding standards, plugin development, and the release process; load the rock-user, rock-administration, or rock-mobile skills for those areas.

How do I publish a plugin to the Rock Shop?

Follow the plugin and theme manifest format documented in the packaging references, then submit through the Rock Shop publishing flow. The references cover what extension types are accepted and the submission guidelines for plugins, themes, and external apps.