mirror of
https://github.com/CopilotKit/CopilotKit.git
synced 2026-09-14 16:26:20 +08:00
2bb9f3fdf4
Introduce machinery for keeping examples/integrations/* demos aligned to a single north-star (langgraph-python). Built first so the upcoming langgraph-js and langgraph-fastapi alignment PRs have a mechanical baseline to work against instead of manual copy-paste. - examples/integrations/_parity/manifest.json declares verbatim files, tracked package.json keys, and expected agent surface (tool names, state keys) per instance plus allowed-divergence lists. - _parity/sync.ts copies verbatim files + rewrites tracked package.json keys from north-star to a target instance. Dry-run supported. - _parity/verify.ts diffs each instance vs north-star and exits non-zero on unexpected drift. Checks verbatim content, tracked keys, canonical prompt equality, and agent-surface grep-level presence. - Canonical prompt at _parity/canonical/PROMPT.md — synced into each instance's agent/PROMPT.md on parity:sync. - Root package.json: pnpm parity:sync, parity:verify, parity:check. - CI: .github/workflows/integrations_parity.yml runs parity:check on PRs touching examples/integrations/**. - Skill: .claude/skills/copilotkit-demo-parity/SKILL.md teaches agents how to drive sync/verify and handle manual-merge zones (agent code, api route, Dockerfile). Does NOT touch the existing instance demos yet. Those alignment commits follow in the same PR.
158 lines
5.7 KiB
JSON
158 lines
5.7 KiB
JSON
{
|
|
"name": "CopilotKit",
|
|
"private": true,
|
|
"scripts": {
|
|
"build": "nx run-many -t build --projects=packages/** --exclude=@copilotkit/demo-agents",
|
|
"build:examples": "nx run-many -t build --projects=examples/**",
|
|
"build:storybook": "nx run-many -t build --projects=examples/v2/*/storybook",
|
|
"check-types": "nx run-many -t check-types",
|
|
"clean": "git clean -fdX --exclude=\"!.env\"",
|
|
"lint": "oxlint .",
|
|
"format": "oxfmt --write .",
|
|
"check-format": "oxfmt --check .",
|
|
"test": "nx run-many -t test --projects=packages/**",
|
|
"test:watch": "pnpm run test && nx watch --all -- pnpm run test",
|
|
"test:coverage": "nx run-many -t test:coverage --projects=packages/**",
|
|
"dev": "pnpm run build && nx watch --projects=packages/** -- pnpm run build",
|
|
"dev:examples": "pnpm run build:examples && nx watch --projects=examples/** -- pnpm run build:examples",
|
|
"storybook:angular": "pnpm -C examples/v2/angular/storybook dev",
|
|
"storybook:react": "pnpm -C examples/v2/react/storybook dev",
|
|
"storybook": "pnpm storybook:react",
|
|
"docs": "pnpm -C examples/v2/docs dev",
|
|
"demo:angular": "nx run-many -t dev --projects=examples/v2/angular/demo,examples/v2/angular/demo-server",
|
|
"demo:react": "pnpm -C examples/v2/react/demo dev",
|
|
"release:prepare:dry": "tsx scripts/release/prepare-release.ts --scope monorepo --bump patch --dry-run",
|
|
"release:prerelease:dry": "tsx scripts/release/prerelease.ts --scope monorepo --dry-run",
|
|
"prepare": "lefthook install",
|
|
"graph": "nx graph",
|
|
"publint": "nx run-many -t publint --projects=packages/**",
|
|
"attw": "nx run-many -t attw --projects=packages/**",
|
|
"check:packages": "nx run-many -t publint,attw --projects=packages/**",
|
|
"validate:model-names": "tsx scripts/validate-doc-model-names.ts",
|
|
"parity:sync": "tsx examples/integrations/_parity/sync.ts",
|
|
"parity:verify": "tsx examples/integrations/_parity/verify.ts",
|
|
"parity:check": "tsx examples/integrations/_parity/verify.ts --no-color"
|
|
},
|
|
"devDependencies": {
|
|
"@arethetypeswrong/cli": "^0.18.2",
|
|
"@commitlint/cli": "^20.3.0",
|
|
"@commitlint/config-conventional": "^20.3.0",
|
|
"@storybook/addon-docs": "^10.2.10",
|
|
"@storybook/addon-webpack5-compiler-swc": "^4.0.2",
|
|
"@storybook/react-webpack5": "^10.2.10",
|
|
"@types/jscodeshift": "^17.3.0",
|
|
"@types/node": "^18.11.17",
|
|
"@vitest/coverage-v8": "^3.2.4",
|
|
"danger": "^12.3.3",
|
|
"glob": "^10.3.12",
|
|
"install": "^0.13.0",
|
|
"jscodeshift": "^17.3.0",
|
|
"lefthook": "^2.1.1",
|
|
"npm": "^10.7.0",
|
|
"nx": "^22.5.0",
|
|
"oxfmt": "^0.36.0",
|
|
"oxlint": "^1.51.0",
|
|
"publint": "^0.3.17",
|
|
"remark": "^15.0.1",
|
|
"remark-mdx": "^3.1.1",
|
|
"remark-parse": "^11.0.0",
|
|
"storybook": "^10.2.10",
|
|
"ts-node": "^10.9.2",
|
|
"tsdown": "^0.20.3",
|
|
"tsx": "^4.21.0",
|
|
"typescript": "^5.2.3",
|
|
"unified": "^11.0.5",
|
|
"unist-util-visit": "^5.1.0",
|
|
"vitest": "^4.1.3"
|
|
},
|
|
"engines": {
|
|
"node": ">=18"
|
|
},
|
|
"packageManager": "pnpm@10.13.1",
|
|
"pnpm": {
|
|
"peerDependencyRules": {
|
|
"ignoreMissing": [
|
|
"react",
|
|
"react-dom"
|
|
],
|
|
"allowedVersions": {
|
|
"react": "*",
|
|
"react-dom": "*"
|
|
}
|
|
},
|
|
"overrides": {
|
|
"streamdown>react": "^19.0.0",
|
|
"@types/react": "19.1.8",
|
|
"@types/react-dom": "^19.0.2",
|
|
"react": "19.2.3",
|
|
"react-dom": "19.2.3",
|
|
"next@<=15.4.11": "15.4.11",
|
|
"next@>=15.5.0 <15.5.15": "15.5.15",
|
|
"send@<=0.19.0": "0.19.0",
|
|
"path-to-regexp@<=0.1.12": "0.1.13",
|
|
"serve-static@<=1.16.0": "1.16.0",
|
|
"prismjs@<=1.30.0": "1.30.0",
|
|
"pino@<=10.1.1": "10.1.1",
|
|
"@copilotkit/license-verifier": "0.2.0",
|
|
"next": "^16.0.10",
|
|
"defu@<=6.1.4": ">=6.1.5",
|
|
"minimatch": ">=9.0.6",
|
|
"minimatch@>=10.0.0 <10.2.1": ">=10.2.1",
|
|
"handlebars": ">=4.7.9",
|
|
"axios": ">=1.15.0",
|
|
"tar": ">=7.5.11",
|
|
"node-forge": ">=1.4.0",
|
|
"hono": ">=4.11.7",
|
|
"dompurify": ">=3.3.2",
|
|
"vite@>=6.0.0 <6.4.2": ">=6.4.2",
|
|
"vite@>=7.0.0 <7.3.2": "7.3.2",
|
|
"esbuild": ">=0.25.4",
|
|
"fast-xml-parser": ">=4.5.2",
|
|
"lodash": ">=4.18.1",
|
|
"lodash-es": ">=4.18.1",
|
|
"basic-ftp": ">=5.2.0",
|
|
"@hono/node-server": ">=1.19.13",
|
|
"flatted": ">=3.4.0",
|
|
"body-parser": ">=1.20.3",
|
|
"serialize-javascript": ">=7.0.3",
|
|
"socket.io-parser": ">=4.2.6",
|
|
"svgo": ">=3.3.3",
|
|
"@isaacs/brace-expansion": ">=5.0.1",
|
|
"@modelcontextprotocol/sdk": ">=1.26.0",
|
|
"immutable@>=3.0.0 <3.8.3": ">=3.8.3",
|
|
"immutable@>=5.0.0 <5.1.5": ">=5.1.5",
|
|
"rollup@>=4.0.0 <4.59.0": ">=4.59.0",
|
|
"brace-expansion@>=2.0.0 <2.0.3": ">=2.0.3",
|
|
"ajv@>=8.0.0 <8.18.0": ">=8.18.0",
|
|
"bn.js": ">=5.2.3",
|
|
"picomatch@>=4.0.0 <4.0.4": ">=4.0.4",
|
|
"js-yaml": ">=4.1.1",
|
|
"jsondiffpatch": ">=0.7.2",
|
|
"yaml@>=2.0.0 <2.8.3": ">=2.8.3",
|
|
"zod": ">=3.22.3",
|
|
"cookie": ">=0.7.0",
|
|
"diff@>=4.0.0 <4.0.4": ">=4.0.4",
|
|
"diff@>=5.0.0 <5.2.2": ">=5.2.2",
|
|
"diff@>=8.0.0 <8.0.3": ">=8.0.3",
|
|
"qs": ">=6.14.2",
|
|
"@octokit/plugin-paginate-rest": ">=9.2.2",
|
|
"@octokit/request": ">=8.4.1",
|
|
"@octokit/request-error": ">=5.1.1",
|
|
"express": ">=4.20.0",
|
|
"@tootallnate/once": ">=3.0.1",
|
|
"file-type": ">=21.3.1",
|
|
"@langchain/community": ">=1.1.14",
|
|
"langsmith": ">=0.5.18",
|
|
"next@>=16.0.0 <16.2.3": "16.2.3",
|
|
"validator": ">=13.15.20",
|
|
"markdown-it": ">=14.1.1",
|
|
"mdast-util-to-hast@>=13.0.0 <13.2.1": ">=13.2.1",
|
|
"@smithy/config-resolver": ">=4.4.0",
|
|
"defu": ">=6.1.5",
|
|
"ai": ">=5.0.52",
|
|
"storybook@>=8.0.0 <8.6.17": "8.6.17",
|
|
"path-to-regexp@>=8.0.0 <8.4.0": ">=8.4.0"
|
|
}
|
|
}
|
|
}
|