What's Changed
🔧 Other Changes
- feat(kiro): deploy agents primitive to .kiro/agents/ (#2089) by Daniel Meppiel (@danielmeppiel) in #2440
- fix(marketplace): accept plugin collection versions by Daniel Meppiel (@danielmeppiel) in #2454
- fix(compilation): preserve applyTo lists for hidden tool placement by Daniel Meppiel (@danielmeppiel) in #2441
- fix(marketplace): allow nested HTTPS source paths by Daniel Meppiel (@danielmeppiel) in #2439
- fix(hooks): anchor Claude project commands to project root by Daniel Meppiel (@danielmeppiel) in #2442
- fix: audit contained local plugin sources (supersedes #2444, closes #2428) by Daniel Meppiel (@danielmeppiel) in #2460
- fix(pack): route empty dependencies bundle (supersedes #2447, closes #2431) by Daniel Meppiel (@danielmeppiel) in #2458
- fix(marketplace): effective output path (supersedes #2448, closes #2427) by Daniel Meppiel (@danielmeppiel) in #2461
- fix(mcp): resolve runtime variables consistently by Daniel Meppiel (@danielmeppiel) in #2455
- Add experimental Grok Cloud target support by Sergio Sisternes (@sergio-sisternes-epam) with @Copilot in #2420
- refactor(performance): eliminate repeated I/O and lockfile scans by Daniel Meppiel (@danielmeppiel) in #2472
- feat(registry): align object-form registry deps with git skills: by Nadav Yogev (@nadav-y) in #2166
- fix(init): reject empty/whitespace project names by Nadav Yogev (@nadav-y) in #2200
- fix(compile): preserve nested worktree files (supersedes #2453) by Daniel Meppiel (@danielmeppiel) in #2473
- chore: release v0.28.0 by Daniel Meppiel (@danielmeppiel) in #2477
- fix(tests): make local marketplace canonical assertions platform-native by Daniel Meppiel (@danielmeppiel) in #2480
- fix(install): re-download aliased deps after a manifest ref bump by Daniel Meppiel (@danielmeppiel) in #2484
- fix(outdated): degrade gracefully when Rich progress rendering fails by Daniel Meppiel (@danielmeppiel) in #2507
Full Changelog: v0.27.0...v0.28.0