Claude Code hook

Plankton

Write-time code quality enforcement system for Claude Code. Every file edit triggers automated formatting and linting through fast Rust-based linters and dedicated Claude instances that intelligently fix remaining violations

377 stars 22 forksHooks Source

Install

Install
brew install jaq ruff uv shellcheck shfmt hadolint taplo

Found in the project README. Check it for setup steps after installing.

From source
git clone https://github.com/alexfazio/plankton.git

From the README

plankton

Write-time code quality enforcement for AI coding agents, built on Claude Code hooks.

Research project under active development. Hooks are tested against
Claude Code >= 2.1.50 (see badge). Newer CC versions usually work
but are not guaranteed. Disable CC auto-updates to prevent
silent breakage (see Quick Start). If you encounter issues, file a
report including the output of claude --version. To pin to a
specific Plankton version: git checkout v0.1.0.

quick start

That's it. Plankton works by being the directory you run Claude Code from.
The hooks in .claude/hooks/ are picked up automatically — no install
command, no plugin, no config. Clone, setup, claude.

If you prefer non-interactive setup, use:

Windows is not supported. Use
WSL2 and
follow the Linux instructions inside the WSL environment.

You can work on any codebase from inside plankton. Just tell Claude:
*"work on /path/to/my-project"* — it will apply the same quality
enforcement to that codebase while the hooks stay active.

Existing codebases: when the agent edits a file, Plankton runs the
configured checks for that file, including pre-existing issues. Some issues
are auto-fixed on first touch; unresolved ones come back as feedback. Scope
down only the Python security scanners here if needed:

Recommended: disable Claude Code auto-updates. Plankton depends on
undocumented CC internals — a silent auto-update can break hooks without
warning.

scripts/setup.sh installs all tools automatically. On macOS it uses
Homebrew; on Linux it downloads prebuilt binaries (no cargo or go
required). See docs/SETUP.md for manual per-language
setup.

Manual install (if you prefer not to use the setup script)

macOS:

Linux:

See docs/SETUP.md for per-language details and download
URLs.

what is plankton

Code…
Read the full README on GitHub

How hooks work

  • Hooks are shell commands Claude Code runs at fixed points: before or after a tool call, when you submit a prompt, when Claude stops, on notifications and at session start.
  • They are set in the hooks section of ~/.claude/settings.json (or .claude/settings.json for a project), or come bundled in a plugin.
  • A hook can block a tool call, add context, or run a formatter or test. Read the scripts before you install them: they run on your machine with your permissions.
Claude Code docs

Details

Type
Hooks
Language
Shell
License
MIT
Last updated
8 March 2026
Topics
ai-agentsbiomebiomejsclaude-codecode-qualitydeveloper-toolsflake8hookslintingpythonruffshellcheck

FAQ

What is Plankton?

Write-time code quality enforcement system for Claude Code. Every file edit triggers automated formatting and linting through fast Rust-based linters and dedicated Claude instances that intelligently fix remaining violations It is a hook for Claude Code, from alexfazio/plankton on GitHub.

How do I install Plankton?

Run brew install jaq ruff uv shellcheck shfmt hadolint taplo, then follow the setup in the README.

Is Plankton popular?

alexfazio/plankton has 377 GitHub stars and 22 forks. It was last updated on 8 March 2026.

More hooks

Browse the most popular Claude Code mods, all hooks, or the skills and MCP server directories.