Skip to content

kyvvu-crewai changelog

[1.0.0] - 2026-10-30

Released with kyvvu-engine 1.0.0, at the release set's version; 0.2.0 was never published, and its changes ship here. The 1.0 public surface is listed on the stability page.

  • Changed: depends on kyvvu-templates>=1.0.0,<2.0.0, which now ships the behaviour templates the engine no longer exports.

  • Changed: requires kyvvu>=1.0.0,<2.0.0; 0.1.0's kyvvu<0.24.0 could not install beside kyvvu 1.0.

  • Breaking: requires Python 3.11 to 3.13 (requires-python = ">=3.11,<3.14"), with kyvvu-engine 1.0. The lock's filelock>=4.2.1 constraint (CVE-2026-112907, -112913, -112914, -112937) no longer needs a python_version >= '3.11' marker.

[0.1.0] - 2026-10-17

  • First release of the CrewAI adapter.
  • A successful governed run no longer logs CrewAI event has no live kickoff. The listener follows the agent executor's internal FlowStartedEvent, keeps each event's parent link so an event handled before its parent on CrewAI's handler pool still resolves, and logs an unattributable event only for a kickoff's completion or failure. The direct crew.kickoff() warning now says the final answer is recorded without evaluation.
  • listener.gate(name, *, decision, kind="human", **properties) records a completed step.gate in the running kickoff's task, from a task guardrail, a task callback, or a tool. It resolves the kickoff the way the call hooks attribute tool and model calls, so concurrent kickoffs each record into their own task, and raises KyvvuConfigError outside a governed kickoff. A passing gate from a task guardrail clears the bundled baseline's two Article 50 warnings on crew_output. A deny decision is recorded, not enforced.
  • A policy block inside listener.kickoff() is reported once: by the engine's policy violation line and the KyvvuBlockedError the caller receives. CrewAI no longer also logs crewai.flow.runtime ERROR Error executing listener call_llm_and_parse: ... for it, nor prints its two Event pairing mismatch warnings while the crew unwinds. Only a Kyvvu block is quieted: any other failure keeps CrewAI's ERROR line and warnings, and a caller's own CrewAI RAISE or SILENT event-context setting is left as it is.