Sweep 19 Sep 2026 · 02:36Z Build v2.1.278 500 read Stable v2.1.267 Latest v2.1.278 Next v2.1.278 Feeds RSS JSON llms.txt Unofficial
Claude Code v2.1.271 ·

New claude plugin test CLI command for function-hooks plugins

New claude plugin test command runs a plugin's hook tests in a sandboxed environment that mimics the real runtime

TierUse it nowhow much it should matter to you
Useful4my rating, 1 to 5
Signal2worth watching, 1 to 5
AreaPlugin Testingwhat it touches
KindNew Featuresin v2.1.271,
Use it now Notable No documentation found

New claude plugin test command runs a plugin's hook tests in a sandboxed environment that mimics the real runtime

What

Claude Code adds a new command, claude plugin test [dir], which runs a plugin's function-hooks test files (files ending in .test.ts or .test.tsx) inside a sandboxed environment built to behave like the real hooks runtime. It imports a testing kit (with describe, expect, mock, test, and tier functions) from claude-code/testing, runs each test file in its own process (in parallel, up to a cap), and reports pass/fail counts.

  • A --file mode prints a JSON test report instead of the normal output.
  • The command checks whether the underlying hooks-modules feature is enabled and errors out if hooks modules are disabled, for example via disableAllHooks or allowManagedHooksOnly settings.
  • Plugins loaded through claude plugin test get their own label wherever Claude Code lists where a plugin came from.
  • A related limit-reset command was also added to the CLI's command list, loaded the same lazy way as other subcommands.
Why

This gives plugin authors a way to write and run automated tests for their hooks (custom scripts that run at specific points, like before a tool call) without needing to exercise them inside a live Claude Code session.

Read from
Names in the bundleclaude plugin test
How sure we are
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubtWhat the new `limit-reset` command itself does is not described beyond its registration.

See this entry in the whole of v2.1.271 →