fx-registry

Define and register Sandestin effects, actions, and placeholders in Clojure registries.

Updated Jan 19, 2026
One-click install
npx skills add https://github.com/brianium/tsain --skill fx-registry
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: fx-registry
Source: https://github.com/brianium/tsain/tree/main/.claude/skills/fx-registry
Command: npx skills add https://github.com/brianium/tsain --skill fx-registry

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Create and maintain Sandestin effect registries to standardize how effects, actions, and placeholders are declared and consumed across projects.

Core Features & Use Cases

  • Simple and configurable registries for defining and organizing effects
  • Clear patterns for effects, actions, and placeholders with consistent schemas
  • Guidance for merging multiple registries and composing dispatch in large applications

Quick Start

Create a new namespace for your registry, define a registry map that includes ::s/effects with at least ::s/description, ::s/schema, and ::s/handler, then register it with s/create-dispatch and combine it with other registries as needed. Then create a dispatch using (s/create-dispatch [your-registry]) and verify it with s/describe and s/sample.

Frequently Asked Questions about fx-registry

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

FAQPage Schema
How do I create a Sandestin registry for effects in Clojure?

Yes, you can merge multiple Sandestin registries by combining them into a vector passed to s/create-dispatch. This supports modular, extensible dispatch across different modules and configurations in large Clojure applications.

What schema does a Sandestin effect registry require?

A Sandestin effect registry requires ::s/description, ::s/schema, and ::s/handler keys for each effect. It also supports optional ::s/system-keys and ::s/system-schema to enable modular, testable registry configurations.

When do I need a centralized dispatch registry for Clojure effects?

You need a centralized dispatch registry when your Clojure project uses Sandestin and requires consistent, extensible effect declarations across multiple modules. It standardizes how effects, actions, and placeholders are consumed throughout the application.

Can I define placeholders and actions alongside effects in a Sandestin registry?

Yes, the Sandestin registry supports defining effects, actions, and placeholders using a consistent schema. This allows you to organize various dispatch components within a single standardized registry structure.

What's the best way to test Sandestin effect dispatch in Clojure?

The best way to test Sandestin effect dispatch is by using the optional ::s/system-keys and ::s/system-schema to build modular, testable registries. You can then verify dispatch behavior using s/describe and s/sample functions.