在每次编辑代码时自动格式化、检查并智能修复质量问题
复制安装指令,让 AI 自动完成配置 · 推荐新手
请帮我安装 askskill 上的 "plankton-code-quality" 技能: 1. 下载 https://raw.githubusercontent.com/affaan-m/ECC/main/skills/plankton-code-quality/SKILL.md 2. 保存为 ~/.claude/skills/plankton-code-quality/SKILL.md 3. 装好后重载技能,告诉我可以用了
请为我的项目启用 plankton-code-quality,在我每次保存 JavaScript 或 TypeScript 文件时自动执行格式化、lint 检查,并修复可自动处理的问题。
生成或配置对应钩子流程,使保存文件后自动完成格式化、检查与修复。
请检查我刚修改的 Python 文件,对无法通过常规 lint 自动修复的问题,使用 Claude 给出并应用安全的修复方案,同时保留原有功能。
返回已修复的代码与修改说明,重点解决复杂规则报错且不改变业务逻辑。
请基于 plankton-code-quality 为团队仓库设计一套写时质量保障方案,覆盖自动格式化、静态检查、AI 辅助修复,以及失败时的提示信息。
提供适合团队协作的质量门禁配置建议与执行流程说明。
Integration reference for Plankton (credit: @alxfazio), a write-time code quality enforcement system for Claude Code. Plankton runs formatters and linters on every file edit via PostToolUse hooks, then spawns Claude subprocesses to fix violations the agent didn't catch.
Every time Claude Code edits or writes a file, Plankton's multi_linter.sh PostToolUse hook runs:
Phase 1: Auto-Format (Silent)
├─ Runs formatters (ruff format, biome, shfmt, taplo, markdownlint)
├─ Fixes 40-50% of issues silently
└─ No output to main agent
Phase 2: Collect Violations (JSON)
├─ Runs linters and collects unfixable violations
├─ Returns structured JSON: {line, column, code, message, linter}
└─ Still no output to main agent
Phase 3: Delegate + Verify
├─ Spawns claude -p subprocess with violations JSON
├─ Routes to model tier based on violation complexity:
│ ├─ Haiku: formatting, imports, style (E/W/F codes) — 120s timeout
│ ├─ Sonnet: complexity, refactoring (C901, PLR codes) — 300s timeout
│ └─ Opus: type system, deep reasoning (unresolved-attribute) — 600s timeout
├─ Re-runs Phase 1+2 to verify fixes
└─ Exit 0 if clean, Exit 2 if violations remain (reported to main agent)
| Scenario | Agent sees | Hook exit |
|---|---|---|
| No violations | Nothing | 0 |
| All fixed by subprocess | Nothing | 0 |
| Violations remain after subprocess | [hook] N violation(s) remain | 2 |
| Advisory (duplicates, old tooling) | [hook:advisory] ... | 0 |
The main agent only sees issues the subprocess couldn't fix. Most quality problems are resolved transparently.
LLMs will modify .ruff.toml or biome.json to disable rules rather than fix code. Plankton blocks this with three layers:
protect_linter_configs.sh blocks edits to all linter configs before they happenstop_config_guardian.sh detects config changes via git diff at session end.ruff.toml, biome.json, .shellcheckrc, .yamllint, .hadolint.yaml, and moreA PreToolUse hook on Bash blocks legacy package managers:
pip, pip3, poetry, pipenv → Blocked (use uv)npm, yarn, pnpm → Blocked (use bun)npm audit, npm view, npm publishNote: Plankton requires manual installation from its repository. Review the code before installing.
# Install core dependencies
brew install jaq ruff uv
# Install Python linters
uv sync --all-extras
# Start Claude Code — hooks activate automatically
claude
No install command, no plugin config. The hooks in .claude/settings.json are picked up automatically when you run Claude Code in the Plankton directory.
To use Plankton hooks in your own project:
.claude/hooks/ directory to your project.claude/settings.json hook configuration.ruff.toml, biome.json, etc.)| Language | Required | Optional |
|---|---|---|
| Python | ruff, uv | ty (types), vulture (dead code), bandit (security) |
| TypeScript/JS | biome | oxlint, semgrep, knip (dead exports) |
| Shell | shellcheck, shfmt | — |
| YAML | yamllint | — |
| Markdown | markdownlint-cli2 | — |
…
为 TypeScript、JavaScript、React 与 Node.js 提供统一编码规范与最佳实践建议
帮助开发者掌握 Ktor 服务端常用模式、认证依赖注入与测试实践。
帮助开发者为代码代理配置性能优化、安全防护与研究优先工作流。
为 Windows 原生桌面应用生成并执行端到端自动化测试流程。
帮助 Swift 开发者实现基于 Actor 的线程安全内存与文件持久化方案
帮助团队编排多代理协作流程,管理任务归属、看板流转与交接控制。
帮助开发者评估代码质量、发现问题并给出可执行的改进建议
集成多种 Claude Code 工作流,提升开发测试、评审与自动化协作效率
提供面向 Claude Code 的 TypeScript 代理式编码脚手架,内置子代理流程与质量校验。
对本地或PR分支执行结构化代码审查,帮助提交或发布前发现问题。
帮助开发者进行代码质量分析并自动修复常见问题,提升交付质量
帮助开发者用 Claude Code CLI 快速生成结构统一、节省 token 的项目脚手架。