What's Changed
New Features
- feat(pi): mark SubagentStop @deprecated on Pi at schema layer
- feat(hooks): resolve subprocess timeout from PI_HOOK_TIMEOUT_SEC
- feat(pi): harden hook-runner subprocess and tool-input cache
- feat(pi): validate plugin-contributed hook commands
- feat(pi): hook progress protocol + JSONL telemetry
- feat(pi): plugin-contributed hooks via package.json cc-thingz field
- feat(pi): opt-in timeout floor for non-interactive synthetic hook callers
- feat(build): generate Pi hooks.json from meta.yaml instead of hand-maintaining it
- feat(pi): /hooks gains source labels, per-hook toggle, and global scope
- feat(pi): add hook-bridge and ExitPlanMode plan-review gate
Bug Fixes
- fix(test): unwrap expect(...).resolves chains for tsc
- fix(pi): hook telemetry logs event name, not command path
- fix(build): fail loud when Pi-mapped event is missing from PI_EVENT_ORDER
- fix(pi): broaden NON_BLOCKING_HOOK_EVENTS and prepend cap notice on overflow
- fix(pi): block newline-smuggled second commands in package contributions
- fix(pi): guard invokeSyntheticHook against event-bus teardown
- fix(pi): address Copilot review on hook lifecycle and /hooks UI
- fix(build): skip pycache when copying hook support files
- fix(pi): hook-bridge review fixes (leak, timeout, PATH, debounce)
Documentation
- docs: add 4.6.0 changelog entry
- docs(pi): drop TODO-shaped hint, fix misleading test comment
- docs(pi): clarify hook-bridge contract, cc-protocol cascade, revdiff fail-open
- docs: post-fix modularity review + Pi extension docs for new surfaces
- docs: add modularity review of pi-extensions
Maintenance
- chore: bump version to 4.6.0
- refactor(pi): extract classifyExecResult and drop unused onProgress
- refactor(pi): split config.ts into focused submodules
- refactor(build): move pi-hooks-external.json beside compile_hook.py
- refactor(pi): split hook-runner into focused sub-modules with CC anti-corruption layer
- ci: add contents: read to Detect Changes job perms
- ci: grant explicit contents and pull-requests read scope
- chore: ignore .coverage
- chore: apply mirror rewrites [skip ci]
Plugins
| Plugin | Description |
|---|---|
| cli-research-tools | Modern CLI tools, git worktrees, docs lookup, research, and brainstorming |
| review-lint-commit | Code review, fixes, commits, and linting for development workflows |
| go-dev | Idiomatic Go 1.25+ development with stdlib-first patterns |
| k8s-terraform-ops | Kubernetes, Terraform, Helm, GitHub Actions, AWS, and GCP operations |
| python-3-dev | Python 3.12+ with uv/ruff/pyright toolchain and modern patterns |
| spec | Spec-driven development with structured requirements and planning |
| playwright-e2e | End-to-end testing with Playwright for browser automation and UI testing |
| typescript-react-dev | TypeScript with strict typing, React patterns, and modern tooling |
| vanilla-web-htmx | Web frontend with vanilla HTML, CSS, JavaScript, and HTMX |
Installation
/plugin marketplace add alexei-led/cc-thingz