Effect
v1.2.0Effect validation and type checking for TypeScript projects using the Effect library.
Installation
Install han binary (required for hooks to work):
curl -fsSL https://han.guru/install.sh | bashThen install this plugin:
han plugin install jutsu-effectOverview
Effect validation and type checking for TypeScript projects using the Effect library.
Hooks
This plugin provides validation hooks that run TypeScript compiler checks:
Stop Hooks
Runs tsc --noEmit in all directories with a tsconfig.json file to validate TypeScript compilation without emitting files.
The hooks will:
- Discover all directories containing
tsconfig.json - Run
tsc --noEmitin each directory - Stop on the first failure with
--fail-fast - Exit with code 2 if any compilation errors are found
Skills
This plugin includes skills for working with Effect:
- effect-core-patterns - Basic Effect<A, E, R> patterns, succeed/fail/sync/async
- effect-error-handling - Type-safe error handling with catchAll, catchTag, etc.
- effect-dependency-injection - Layer pattern for dependency management
- effect-schema - Schema validation with @effect/schema
- effect-concurrency - Fiber-based concurrency, parallel execution
- effect-resource-management - Scope, Resource, and automatic cleanup
- effect-testing - Testing Effect code with Effect.gen and test utilities
Usage
Install this plugin in your Claude Code configuration to automatically validate TypeScript compilation on Stop events and access Effect-specific skills.
Installation
Install with npx (no installation required):
han plugin install jutsu-effect
License
Licensed under MIT - see repository for details.
Hooks
Token Usage Notice
Hooks run automatically during Claude Code sessions and their output is sent to the model for processing. This may increase token usage and associated costs. Consider disabling hooks you don't need via han-config.yml.
Stop
Runs when the main Claude Code agent has finished responding. Can verify task completion, check quality gates, or ensure documentation requirements are met before the session ends.
SubagentStop
Runs when a Claude Code subagent (Task tool call) has finished responding. Can validate subagent outputs, enforce quality standards, or trigger additional workflows after delegated tasks complete.