mirror of
https://github.com/CopilotKit/CopilotKit.git
synced 2026-09-14 16:26:20 +08:00
836e7c786f
The matrix covered the declared floor (0.0.42) and the newest release (0.0.44) but skipped 0.0.43 — the only still-supported version that reproduces the failure this PR fixes. 0.0.43's `LangGraphAgent.clone()` passes its three behavior flags to `type(self)(...)` unconditionally, so a subclass with a closed signature raises TypeError on the default construction path — a 500 on every request, since the FastAPI endpoint clones per request. 0.0.44's `clone()` is signature-aware and omits default-valued flags a subclass cannot accept, which means the clone tests pass on 0.0.44 even with the `**kwargs` passthrough removed. The `emit_raw_events=False` test still guards option reachability there, but nothing in the matrix reproduced the default-construction 500 itself. Verified locally against 0.0.43: all four clone tests pass with the passthrough and all four fail without it, so the leg is a real guard. One representative Python (3.12) via `matrix.include` rather than a third full column — the flag forwarding it exercises is not version-specific, so this adds one leg, not five. Installed in the leg rather than declared, so the runtime floor stays at 0.0.42 and the effective LangGraph floor stays at >=0.3.25 for consumers. Also corrects the `test_agui_agent_clone.py` module docstring, which claimed CI exercised 0.0.42 and 0.0.43 while the workflow installed 0.0.42 and 0.0.44. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
CopilotKit Python SDK
The official Python SDK for CopilotKit - build AI copilots and agents into your applications.
Features
- 🚀 Easy integration with LangGraph and LangChain
- 🔄 Built-in support for stateful conversations
- 🛠 Extensible agent framework
- 🔌 FastAPI-ready endpoints
- 🤝 Optional CrewAI integration
Installation
pip install copilotkit
With CrewAI support:
pip install "copilotkit[crewai]"
Quick Start
from copilotkit import Copilot
# Initialize a copilot
copilot = Copilot()
# Add your tools and configure the copilot
copilot.add_tool(my_custom_tool)
# Run the copilot
response = copilot.run("Your task description here")
Documentation
For detailed documentation and examples, visit copilotkit.ai
Contributing
We welcome contributions! Please see our Contributing Guidelines for details.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Support
Built with ❤️ by the CopilotKit team