.agents/skills/extensions-framework/SKILL.md
Understand and extend the Madoc TS extension framework. Use when adding extensions, registry definitions, or plugin-backed extension behavior in services/madoc-ts.
npx skillsauth add digirati-co-uk/madoc-platform extensions-frameworkInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Describe how extensions are composed, registered, and invoked, including registry-based extensions and plugin overrides.
services/madoc-ts/src/extensions/extension-manager.tsservices/madoc-ts/src/extensions/registry-extension.tsservices/madoc-ts/src/extensions/**services/madoc-ts/src/extensions/themes/extension.tsExtensionManager holds a list of extensions and dispatches method calls to each extension in order.dispatch chains results by passing the return value of each extension to the next.RegistryExtension uses a global mitt emitter to register and manage definitions.typeplugin-${registryName})remove-plugin-${registryName})src/extensions/** (e.g., themes, media, tasks).RegistryExtension.plugin-<registry> event registration pattern.dispose() is implemented (often via defaultDispose).ExtensionManager call patternsdispose()dispatchgetDefinition returns plugin override when presentscripts/registry_map.py: list RegistryExtension subclasses and registry names.
python scripts/registry_map.pytools
Work on Madoc TS shared utility helpers (JWT, metadata, errors, IIIF helpers, auth helpers). Use when changing core utility functions or shared helpers in services/madoc-ts.
development
Work on Madoc TS shared type definitions and schema contracts. Use when updating TypeScript types, JSON schema shapes, or cross-layer data contracts in services/madoc-ts.
tools
Understand and extend Madoc TS task automation, including bots and task-related extensions. Use when adding task automation, bot behavior, or task metadata resolution in services/madoc-ts.
development
Work on Madoc TS site SSR pipeline, HTML template injection, and site render data wiring. Use when changing site SSR behavior, template tokens, or site SSR data wiring in services/madoc-ts.