agnostic-ai v0.91.0: keep files safe when targets are empty Agnostic-ai released version 0.91.0, which changes sync behavior so that an empty target list (`targets: []`) now warns and keeps generated files instead of deleting them, with removal requiring the explicit `agnostic-ai sync --allow-empty-targets` flag. The release also makes repeated YAML keys in nested maps a parse error with a line number, has Qwen import `.agents/skills/` (stopping agents written as skills by Amp, Crush, Warp or Zed when Qwen is selected), and rejects unsupported Kimi MCP executors such as `x-kimi.executor: kaos`. Users upgrade via `npm install -g agnostic-ai@0.91.0` and run `agnostic-ai upgrade --requires` before syncing. Upgrading from v0.90.0 Stop running agnostic-ai sync --watch processes before changing the installation or project configuration. Complete the applicable changes below before installing, since package install hooks can run sync. - Review empty target lists. targets: now makes sync warn and keep generated files. Add a target to resume sync, or run agnostic-ai sync --allow-empty-targets when you intend to remove generated files. sync --check fails while generated files remain; a missing sync state also needs the explicit removal command before a plain check can confirm the result. See sync and cleanup https://agnostic-ai.org/docs/cli-reference/sync/ . - Fix repeated YAML keys. Repeated keys in nested maps now produce a parse error with a line number. Remove the duplicate and keep the value you intend. An empty local key or model tier keeps the shared value; use an empty object to clear a group where supported. See configuration https://agnostic-ai.org/docs/configuration/ . - Check shared skill folders. Qwen now imports .agents/skills/ . Agents written as skills by Amp, Crush, Warp, or Zed stop when Qwen is selected; set the other tool's outputs.