New tool search_flights_streaming: schema is registered on the middleware
config and emitted at TOOL_CALL_START. As the LLM streams flight data
as tool args, the middleware partial-parses and emits dataModelUpdate
progressively — flight cards appear one by one.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The Card schema's data paths (/flightNumber, /origin, etc.) need a
List root with dataBinding: /flights to scope each card's data context.
Without it, paths resolve at the root where data lives under /flights/0/.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
local-install now copies locally built a2ui-middleware into the monorepo
node_modules so the runtime resolves the version with a2ui_operations
container support. Flight schema now wraps cards in a List with
dataBinding: /flights for proper data context scoping.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Restores a2ui.render() usage in search_flights. The constant
"a2ui_operations" is now defined in all three layers: Python SDK,
ag-ui middleware, and A2UIMessageRenderer.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
pyproject.toml [tool.uv.sources] points copilotkit at the local
sdk-python directory. Survives uv sync / LangGraph CLI restarts.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Schema is now a plain .json file — paste-able directly from a schema
builder. load_schema() reads it, a2ui_surface() does the rest.
Updated Flight TypedDict to match new schema's data bindings.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Tool file is now just the TypedDict + one a2ui_surface() call.
Schema lives in a2ui_flight_schema.py.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
a2ui.py handles operations assembly, data typing, and normalization.
search_flights is now just schema + one a2ui_surface() call.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Make it explicit in code that the tool emits three separate A2UI
messages: schema (surfaceUpdate), data (dataModelUpdate), and
render trigger (beginRendering). The schema is fixed; only data
changes per invocation.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Adds a data-bound declarative UI tool (search_flights) demonstrating the
full A2UI lifecycle: surfaceUpdate → dataModelUpdate → beginRendering.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
jsdom doesn't provide a fully functional localStorage, causing
`localStorage.clear is not a function` and blocking all commits.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Extends .pnpmfile.cjs and local-install script to also build and link
AG-UI packages from a sibling ag-ui/ repo, enabling local development
across both CopilotKit and AG-UI.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The CSS transition on stroke-dasharray/dashoffset looked jarring
during streaming. Just render slices instantly instead.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Adjust revenue figures so no single category exceeds ~35%, producing
a more visually balanced pie chart during demos.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Custom SVG donut chart with CSS-transitioned streaming animations,
animated bar chart with slide-in entrance for new bars, polished
meeting time picker with Lucide icons and larger touch targets,
and refined tool rendering with monospace names and styled arg blocks.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Use the new inspectorDefaultAnchor prop to place the inspector button
in the top-left corner, avoiding overlap with the Chat/App toggle.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add a `defaultAnchor` property to the web inspector that lets apps set
which corner the inspector button appears in on first load. When provided,
the default anchor takes precedence over persisted localStorage state
unless the user has manually dragged the inspector to a custom position.
Exposed as `inspectorDefaultAnchor` on CopilotKitProvider.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add .pnpmfile.cjs hook and `pnpm run local-install` script that builds
CopilotKit packages from the monorepo and symlinks them into the example
app via COPILOTKIT_LOCAL env var. Default `pnpm install` still pulls from
npm, preserving the template experience.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Neither built-in-agent nor agent-spec are valid CLI framework options.
Remove "Start from scratch" CLI paths, keep manual setup only.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Agent-spec: remove invalid CLI `-f agent-spec` option, link to manual setup
- A2A: fix env var (GEMINI_API_KEY) and port (10002) to match starter template
- AWS Strands: fix useRenderTool to use Zod schema and correct render props
- LangGraph: add auth guide cross-reference in configurable docs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Run prettier on ~1,865 files across examples/ to match the monorepo's
formatting standards. These files were imported as-is from standalone
repos that used different prettier configs.
- gemini/stack_agent.py: initialize tool_calls/tool_msg before try
block, guard usage with null check to prevent NameError on failure
- gemini/posts_generator_agent.py: use async generate_content to avoid
blocking event loop, guard grounding_metadata access, replace bare
except with explicit bounds check, remove dead router_function and
redundant static edges
- gemini/app/api/chat/route.ts: remove dead OpenAI route from Gemini
example (mislabeled as Gemini-powered, no frontend references it)
- gemini/package.json: remove unused @ai-sdk/openai, ai, zod deps
- langgraph-python/agent.py: remove debug print(state), move docstring
to first position so chat_node.__doc__ works
- textarea tutorial: fix StackBlitz URLs pointing to use-tasks.tsx
instead of use-emails.tsx
SVG files are text-based XML averaging ~218 bytes each. LFS tracking
adds per-file HTTP fetch overhead with no storage benefit, suppresses
git diff output, and breaks tutorial clone instructions that use
GIT_LFS_SKIP_SMUDGE=1 (users get LFS pointers instead of icons).
- base-command: wrap checkCLIVersion() fetch in try-catch so CLI
doesn't crash when offline (version check is non-critical)
- init: forward argv to Create instead of dropping all flags, remove
misleading flag definitions (init is just a deprecated redirect)
- detect-endpoint-type: fix Promise.all destructuring (5 promises but
only 4 variables caused isCopilot to receive the LangGraph FastAPI
result), add missing isMCP branch, use isLangGraphFastAPI result
- auth.service: validate OAuth state parameter before tracking analytics
with user data, add reject()+server.close() on state mismatch so the
Promise settles instead of hanging the CLI forever
- create.test: fix quote-style assertion to match prettier output
- Remove copy-paste triplication in scaffoldAgent (LangSmith block
duplicated twice, causing duplicate .env entries and redundant writes)
- Update AgentTemplates URLs to point to monorepo paths instead of
archived standalone repos
- Fix flags.projectName → args.projectName in banner logic (projectName
is an Args field, not Flags)
- Remove stale trpc-cli path mapping and project reference from
tsconfig.json (package doesn't exist in this monorepo)
Migrate the copilotkit CLI (npx copilotkit create/init/dev) from
CopilotCloud into packages/v1/cli. TEMPLATE_REPOS updated to use
monorepo subdirectory sparse checkout for all CopilotKit-owned
templates, with tarball fallback for external repos (ag2).
Add package rules to group examples/** dependency updates into weekly
Monday PRs. CopilotKit package bumps are tracked separately. Legacy
examples/v1/ and v2/ directories are excluded from both rules.
Rewrite all standalone repo URLs to monorepo paths across 18 doc files
and the root README. Tutorial clone instructions now use
GIT_LFS_SKIP_SMUDGE=1 and point to examples/ subdirectories. Fix
pre-existing copy-paste bug in textarea tutorial and stale branch refs.
migrate-demos.sh: automates shallow clone + cleanup + copy for all 73
repos, with --group and --dry-run support.
archive-demo-repos.sh: updates each standalone repo's README with a
deprecation notice pointing to the monorepo location, then archives it.
Exits non-zero on any failures.
Mark all publishable @copilotkitnext/* packages as deprecated in
package.json, pointing users to the @copilotkit/* equivalents.
V2 features will be available under the /v2 subpath.
Affected packages: shared, core, agent, angular, react, runtime,
sqlite-runner, web-inspector.