Plugin hook system
Skill a5c-ai/babysitter/library/specializations/cli-mcp-development/skills/plugin-hook-system
Generate hook-based plugin extension system with event emitter patterns.From its SKILL.md
npx -y skills add a5c-ai/babysitter --skill plugin-hook-systemAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
SKILL.md
1.4 KB, 238 tokens by cl100k_base, as published. Nobody here has run it
Plugin Hook System
Generate hook-based plugin extension system.
Generated Patterns
type HookCallback = (...args: any[]) => Promise<any> | any;
export class HookSystem {
private hooks = new Map<string, HookCallback[]>();
register(hookName: string, callback: HookCallback): void {
const callbacks = this.hooks.get(hookName) || [];
callbacks.push(callback);
this.hooks.set(hookName, callbacks);
}
async trigger(hookName: string, ...args: any[]): Promise<any[]> {
const callbacks = this.hooks.get(hookName) || [];
const results = [];
for (const cb of callbacks) {
results.push(await cb(...args));
}
return results;
}
async waterfall<T>(hookName: string, initial: T): Promise<T> {
const callbacks = this.hooks.get(hookName) || [];
let result = initial;
for (const cb of callbacks) {
result = await cb(result);
}
return result;
}
}
Target Processes
- plugin-architecture-implementation
What ships with it: 1 file
144 B alongside SKILL.md
- README.md144 B