From f4c6ac0cc92075a16ed47490d67d36b37cc532b3 Mon Sep 17 00:00:00 2001 From: YYYSSSRRR <2163368320@qq.com> Date: Sun, 28 Sep 2025 10:36:10 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix:=E4=BF=AE=E6=94=B9merge=20commit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 233 +++ CopilotKit/.eslintrc.js | 10 + CopilotKit/.npmrc | 1 + CopilotKit/.prettierignore | 4 + CopilotKit/.prettierrc | 7 + CopilotKit/package.json | 44 + .../packages/copilot-chat/backend/env.example | 6 + .../copilot-chat/backend/requirements.txt | 14 + .../packages/copilot-chat/backend/server.py | 285 +++ .../copilot-chat/frontend/.eslintrc.cjs | 27 + .../packages/copilot-chat/frontend/index.html | 14 + .../frontend/menu-data/NCE-analysis.json | 29 + .../copilot-chat/frontend/package.json | 42 + .../alarm-search-all.definition.js | 99 + .../definitions/ask-llm.definition.js | 14 + .../definitions/fill-form.definition.js | 66 + .../executors/ask-llm.executor.js | 12 + .../executors/fill-form.executor.js | 101 ++ .../frontend/playwright-scripts/index.d.ts | 18 + .../frontend/playwright-scripts/index.js | 47 + .../scripts/ask-llm.spec.js | 7 + .../scripts/fill-form.spec.js | 23 + .../copilot-chat/frontend/postcss.config.js | 6 + .../copilot-chat/frontend/src/App.tsx | 12 + .../frontend/src/components/ChatInput.tsx | 40 + .../frontend/src/components/Chatbot.tsx | 14 + .../src/components/ChatbotContent.tsx | 178 ++ .../frontend/src/hooks/useBusinessActions.ts | 885 +++++++++ .../frontend/src/hooks/useDynamicActions.ts | 100 + .../copilot-chat/frontend/src/index.css | 26 + .../copilot-chat/frontend/src/main.tsx | 13 + .../frontend/src/types/openinula.d.ts | 31 + .../copilot-chat/frontend/tailwind.config.js | 20 + .../copilot-chat/frontend/tsconfig.json | 42 + .../copilot-chat/frontend/tsconfig.node.json | 10 + .../copilot-chat/frontend/vite.config.ts | 49 + CopilotKit/packages/copilot-client/README.md | 90 + .../packages/copilot-client/jest.config.js | 4 + .../packages/copilot-client/package.json | 68 + .../src/client/copilot-runtime-client.ts | 97 + .../src/client/error-handler.ts | 105 ++ .../copilot-client/src/client/index.ts | 30 + .../src/client/message-types.ts | 285 +++ .../copilot-client/src/client/rest-client.ts | 113 ++ .../src/client/stream-processor.ts | 196 ++ .../copilot-provider/copilotkit.tsx | 449 +++++ .../error-boundary/error-boundary.tsx | 178 ++ .../src/components/error-boundary/index.ts | 1 + .../copilot-client/src/components/index.ts | 12 + .../src/components/toast/index.ts | 1 + .../src/components/toast/toast-provider.tsx | 202 +++ .../src/context/copilot-context.tsx | 173 ++ .../copilot-client/src/context/index.ts | 5 + .../src/context/messages-context.tsx | 127 ++ .../copilot-client/src/hooks/index.ts | 14 + .../copilot-client/src/hooks/use-chat.ts | 960 ++++++++++ .../src/hooks/use-copilot-action.ts | 162 ++ .../use-copilot-additional-instructions.ts | 97 + .../src/hooks/use-copilot-chat.ts | 315 ++++ .../src/hooks/use-copilot-dynamic-actions.ts | 115 ++ .../src/hooks/use-copilot-readable.ts | 93 + .../src/hooks/use-copilot-script-action.ts | 111 ++ .../hooks/use-langgraph-interrupt-render.ts | 101 ++ .../src/hooks/use-langgraph-interrupt.ts | 135 ++ .../packages/copilot-client/src/index.tsx | 29 + .../types/chat-suggestion-configuration.ts | 37 + .../src/types/frontend-action.ts | 213 +++ .../copilot-client/src/types/index.ts | 11 + .../src/types/interrupt-action.ts | 21 + .../src/types/system-message.ts | 6 + .../copilot-client/src/utils/index.ts | 108 ++ .../packages/copilot-client/tsconfig.json | 19 + .../packages/copilot-client/tsup.config.ts | 13 + CopilotKit/packages/copilot-server/Makefile | 79 + CopilotKit/packages/copilot-server/README.md | 22 + .../copilotkit_runtime/__init__.py | 127 ++ .../copilotkit_runtime/api/__init__.py | 10 + .../api/handlers/__init__.py | 9 + .../api/handlers/copilot_handler.py | 601 ++++++ .../api/handlers/sse_handler.py | 73 + .../copilotkit_runtime/api/models/__init__.py | 34 + .../copilotkit_runtime/api/models/enums.py | 45 + .../copilotkit_runtime/api/models/messages.py | 108 ++ .../copilotkit_runtime/api/models/requests.py | 82 + .../api/models/responses.py | 87 + .../service_adapters/__init__.py | 12 + .../service_adapters/base.py | 52 + .../service_adapters/deepseek/__init__.py | 7 + .../service_adapters/deepseek/adapter.py | 957 ++++++++++ .../copilotkit_runtime/utils/__init__.py | 17 + .../copilotkit_runtime/utils/helpers.py | 31 + .../copilotkit_runtime/utils/validation.py | 38 + .../packages/copilot-server/pyproject.toml | 108 ++ .../function-generator/backend/.env.example | 16 + .../function-generator/backend/README.md | 129 ++ .../function-generator/backend/env.example | 19 + .../function-generator/backend/package.json | 34 + .../function-generator/backend/server.js | 1011 +++++++++++ .../function-generator/frontend/.env.example | 17 + .../function-generator/frontend/README.md | 122 ++ .../frontend/docs/design.md | 230 +++ .../function-generator/frontend/index.html | 13 + .../function-generator/frontend/package.json | 38 + .../function-generator/frontend/src/App.tsx | 17 + .../src/components/FunctionDescriptionTab.tsx | 142 ++ .../components/LLMFunctionDefinitionTab.tsx | 237 +++ .../components/Tab1FunctionDescription.tsx | 357 ++++ .../src/components/Tab2FunctionDefinition.tsx | 172 ++ .../src/components/Tab3FunctionExecutor.tsx | 158 ++ .../function-generator/frontend/src/main.tsx | 9 + .../frontend/src/pages/FunctionGenerator.tsx | 112 ++ .../frontend/src/pages/TabFunction.tsx | 119 ++ .../frontend/src/services/api.ts | 180 ++ .../frontend/src/types/index.ts | 46 + .../frontend/src/vite-env.d.ts | 1 + .../function-generator/frontend/tsconfig.json | 25 + .../frontend/tsconfig.node.json | 10 + .../frontend/vite.config.ts | 15 + CopilotKit/packages/function-rag/.env.example | 43 + CopilotKit/packages/function-rag/README.md | 261 +++ .../packages/function-rag/app/__init__.py | 24 + .../packages/function-rag/app/api/__init__.py | 8 + .../packages/function-rag/app/api/main.py | 159 ++ .../function-rag/app/api/routes/__init__.py | 7 + .../function-rag/app/api/routes/functions.py | 276 +++ .../function-rag/app/api/routes/health.py | 95 + .../function-rag/app/core/__init__.py | 11 + .../packages/function-rag/app/core/config.py | 191 ++ .../function-rag/app/core/rag_system.py | 384 ++++ .../function-rag/app/models/__init__.py | 69 + .../function-rag/app/models/function_model.py | 304 ++++ .../function-rag/app/models/schemas.py | 286 +++ .../function-rag/app/services/__init__.py | 13 + .../app/services/embedding_service.py | 277 +++ .../app/services/retrieval_engine.py | 658 +++++++ .../app/services/vector_storage.py | 523 ++++++ .../function-rag/app/utils/__init__.py | 7 + .../packages/function-rag/app/utils/logger.py | 83 + .../packages/function-rag/examples/README.md | 222 +++ .../function-rag/examples/__init__.py | 3 + .../examples/api_client_example.py | 352 ++++ .../function-rag/examples/basic_usage.py | 268 +++ .../function-rag/examples/batch_operations.py | 505 ++++++ .../examples/delete_collection_example.py | 310 ++++ .../examples/integration_example.py | 527 ++++++ .../function-rag/examples/nce_menu_import.py | 325 ++++ .../examples/script_actions_import.py | 442 +++++ .../examples/search_strategies.py | 594 ++++++ CopilotKit/packages/function-rag/main.py | 34 + .../packages/function-rag/pyproject.toml | 91 + .../packages/function-rag/requirements.txt | 35 + CopilotKit/packages/menu-analysis/README.md | 412 +++++ CopilotKit/packages/menu-analysis/env.example | 15 + .../examples/NCE-menu-analysis.json | 1614 +++++++++++++++++ .../menu-analysis/examples/analyze-NCE.ts | 370 ++++ .../examples/analyze-coloringbook.ts | 240 +++ .../menu-analysis/examples/batch-analysis.ts | 232 +++ .../menu-analysis/examples/menus-config.json | 743 ++++++++ .../examples/openai-image-analysis.ts | 504 +++++ .../examples/test-canvas-screenshot.ts | 216 +++ .../examples/test-config-manager.ts | 245 +++ .../examples/test-separated-llm.ts | 193 ++ .../packages/menu-analysis/package.json | 52 + .../packages/menu-analysis/polyfills.js | 48 + .../src/analyzer/PageAnalyzer.ts | 488 +++++ .../menu-analysis/src/config/ConfigManager.ts | 175 ++ .../src/core/MenuAnalysisEngine.ts | 242 +++ .../menu-analysis/src/crawler/MenuCrawler.ts | 351 ++++ .../packages/menu-analysis/src/index.ts | 19 + .../menu-analysis/src/llm/LLMAnalyzer.ts | 494 +++++ .../menu-transformers/NCEMenuTransformer.ts | 158 ++ .../src/menu-transformers/index.ts | 2 + .../menu-analysis/src/output/OutputManager.ts | 60 + .../packages/menu-analysis/src/types/index.ts | 187 ++ .../menu-analysis/src/utils/Logger.ts | 53 + .../src/utils/ProgressTracker.ts | 66 + .../packages/menu-analysis/tsconfig.json | 25 + .../packages/menu-analysis/tsup.config.ts | 13 + .../packages/playwright-actuator/README.md | 437 +++++ .../playwright-actuator/examples/demo.html | 1186 ++++++++++++ .../examples/sample-test.js | 106 ++ .../examples/test-fix.html | 110 ++ .../packages/playwright-actuator/index.html | 323 ++++ .../playwright-actuator/jest.config.js | 20 + .../packages/playwright-actuator/package.json | 66 + .../adapters/__tests__/frame-adapter.test.ts | 651 +++++++ .../__tests__/frame-locator-adapter.test.ts | 470 +++++ .../src/adapters/__tests__/jest-setup.ts | 22 + .../locator-adapter-content-frame.test.ts | 258 +++ .../__tests__/locator-adapter-iframe.test.ts | 232 +++ .../locator-adapter-table-integration.test.ts | 765 ++++++++ .../__tests__/locator-adapter.test.ts | 1258 +++++++++++++ .../adapters/__tests__/page-adapter.test.ts | 412 +++++ .../src/adapters/base-page-context.ts | 752 ++++++++ .../src/adapters/expect-adapter.ts | 508 ++++++ .../src/adapters/frame-adapter.ts | 229 +++ .../src/adapters/frame-locator-adapter.ts | 301 +++ .../src/adapters/locator-adapter.ts | 1594 ++++++++++++++++ .../src/adapters/page-adapter.ts | 391 ++++ .../src/dom/event-simulator.ts | 300 +++ .../src/framework-adapters/README.md | 175 ++ .../src/framework-adapters/index.ts | 28 + .../framework-adapters/openinula-adapter.ts | 494 +++++ .../framework-adapters/react-adapter.test.js | 116 ++ .../src/framework-adapters/react-adapter.ts | 498 +++++ .../packages/playwright-actuator/src/index.ts | 286 +++ .../src/runtime/playwright-runtime.ts | 327 ++++ .../src/runtime/test-runner.ts | 287 +++ .../playwright-actuator/src/types/global.d.ts | 41 + .../__tests__/role-selector-utils.test.ts | 426 +++++ .../playwright-actuator/src/utils/logger.ts | 60 + .../src/utils/role-selector-utils.ts | 509 ++++++ .../playwright-actuator/tsconfig.json | 19 + .../playwright-actuator/tsup.config.ts | 32 + .../playwright-actuator/types/index.ts | 216 +++ CopilotKit/packages/shared/README.md | 46 + CopilotKit/packages/shared/jest.config.js | 5 + CopilotKit/packages/shared/package.json | 46 + CopilotKit/packages/shared/src/index.ts | 5 + .../packages/shared/src/types/action.ts | 88 + CopilotKit/packages/shared/src/types/index.ts | 1 + CopilotKit/packages/shared/src/utils/index.ts | 1 + .../packages/shared/src/utils/random-id.ts | 20 + CopilotKit/packages/shared/tsconfig.json | 9 + CopilotKit/packages/shared/tsup.config.ts | 16 + CopilotKit/packages/shared/typedoc.json | 4 + CopilotKit/pnpm-workspace.yaml | 4 + CopilotKit/turbo.json | 78 + CopilotKit/utilities/tsconfig/CHANGELOG.md | 869 +++++++++ CopilotKit/utilities/tsconfig/base.json | 29 + CopilotKit/utilities/tsconfig/nextjs.json | 23 + CopilotKit/utilities/tsconfig/package.json | 9 + .../utilities/tsconfig/react-library.json | 14 + CopilotKit/utilities/tsconfig/typedoc.json | 4 + README.en.md | 36 + README.md | 74 + SmartComponents/.gitignore | 1 + SmartComponents/.npmrc | 2 + SmartComponents/README.md | 67 + SmartComponents/backend/__init__.py | 0 SmartComponents/backend/llmConstant.py | 16 + SmartComponents/backend/main.py | 48 + SmartComponents/backend/utils/__init__.py | 0 .../backend/utils/componentRegistry2.py | 35 + SmartComponents/backend/utils/llmService2.py | 114 ++ SmartComponents/frontend/.gitignore | 23 + SmartComponents/frontend/README.md | 46 + SmartComponents/frontend/package.json | 46 + SmartComponents/frontend/public/index.html | 43 + SmartComponents/frontend/public/manifest.json | 25 + SmartComponents/frontend/public/robots.txt | 3 + SmartComponents/frontend/src/App.test.tsx | 9 + SmartComponents/frontend/src/App.tsx | 76 + .../frontend/src/components/Form.tsx | 40 + .../frontend/src/components/Select.tsx | 31 + SmartComponents/frontend/src/index.tsx | 19 + .../frontend/src/react-app-env.d.ts | 1 + .../frontend/src/reportWebVitals.ts | 15 + SmartComponents/frontend/src/setupTests.ts | 5 + .../frontend/src/tools/formTools.tsx | 32 + .../frontend/src/tools/selectTool.tsx | 35 + .../frontend/src/utils/ComponentRegistry.ts | 46 + .../frontend/src/utils/defineComponentTool.ts | 63 + SmartComponents/frontend/tsconfig.json | 26 + SmartComponents/package.json | 30 + .../smart-components-example/.gitignore | 23 + .../smart-components-example/README.md | 46 + .../smart-components-example/package.json | 57 + .../public/favicon.ico | Bin 0 -> 3870 bytes .../public/index.html | 43 + .../public/logo192.png | Bin 0 -> 5347 bytes .../public/logo512.png | Bin 0 -> 9664 bytes .../public/manifest.json | 25 + .../public/robots.txt | 3 + .../smart-components-example/src/App.css | 38 + .../smart-components-example/src/App.test.tsx | 9 + .../smart-components-example/src/App.tsx | 142 ++ .../smart-components-example/src/TestApp.tsx | 18 + .../smart-components-example/src/index.css | 13 + .../smart-components-example/src/index.tsx | 19 + .../smart-components-example/src/logo.svg | 1 + .../src/react-app-env.d.ts | 1 + .../src/reportWebVitals.ts | 15 + .../src/setupTests.ts | 5 + .../smart-components-example/tsconfig.json | 26 + .../packages/smart-components-lib/README.md | 200 ++ .../smart-components-lib/package.json | 47 + .../smart-components-lib/rollup.config.js | 31 + .../smart-components-lib/smart-components-lib | 1 + .../components/Checkbox/CheckboxComponent.tsx | 359 ++++ .../src/components/Checkbox/index.ts | 2 + .../src/components/Form/FormComponent.tsx | 260 +++ .../src/components/Form/config.ts | 100 + .../src/components/Form/index.ts | 3 + .../src/components/Select/SelectComponent.tsx | 234 +++ .../src/components/Select/config.ts | 159 ++ .../src/components/Select/index.ts | 3 + .../src/components/Table/TableComponent.tsx | 398 ++++ .../src/components/Table/index.ts | 2 + .../src/components/index.ts | 4 + .../smart-components-lib/src/hooks/index.ts | 1 + .../src/hooks/useSmartComponents.ts | 57 + .../smart-components-lib/src/index.ts | 18 + .../src/registry/ComponentRegistry.ts | 124 ++ .../src/registry/index.ts | 2 + .../smart-components-lib/src/types/index.ts | 64 + .../src/utils/SmartComponentExecutor.ts | 267 +++ .../src/utils/aiPrompts.ts | 82 + .../smart-components-lib/src/utils/index.ts | 2 + .../smart-components-lib/start-example.sh | 32 + .../smart-components-lib/tsconfig.json | 28 + .../smart-components-example/package.json | 54 + .../smart-components-lib/package.json | 47 + debug-example-next/QUICK_START.md | 106 ++ debug-example-next/README.md | 228 +++ .../backend/README_APPROVAL_INTEGRATION.md | 270 +++ debug-example-next/backend/env.example | 17 + debug-example-next/backend/requirements.txt | 14 + debug-example-next/backend/server_py.py | 674 +++++++ debug-example-next/frontend/.eslintrc.cjs | 27 + debug-example-next/frontend/index.html | 14 + debug-example-next/frontend/package.json | 39 + .../definitions/ask-llm.definition.js | 14 + .../definitions/fill-form.definition.js | 66 + .../executors/ask-llm.executor.js | 12 + .../executors/fill-form.executor.js | 102 ++ .../frontend/playwright-scripts/index.d.ts | 18 + .../frontend/playwright-scripts/index.js | 49 + .../scripts/ask-llm.spec.js | 7 + .../scripts/fill-form.spec.js | 23 + .../frontend/playwright.config.cjs | 34 + debug-example-next/frontend/postcss.config.js | 6 + debug-example-next/frontend/src/App.css | 42 + debug-example-next/frontend/src/App.tsx | 18 + .../frontend/src/components/HomePage.tsx | 1235 +++++++++++++ debug-example-next/frontend/src/index.css | 127 ++ debug-example-next/frontend/src/main.tsx | 14 + .../frontend/tailwind.config.js | 20 + debug-example-next/frontend/tsconfig.json | 32 + .../frontend/tsconfig.node.json | 10 + debug-example-next/frontend/vite.config.ts | 30 + debug-example-next/package.json | 43 + debug-example-next/scripts/dev.sh | 75 + debug-example-next/scripts/setup.sh | 72 + debug-example-next/scripts/test.sh | 52 + package.json | 24 + 346 files changed, 50319 insertions(+) create mode 100644 .gitignore create mode 100644 CopilotKit/.eslintrc.js create mode 100644 CopilotKit/.npmrc create mode 100644 CopilotKit/.prettierignore create mode 100644 CopilotKit/.prettierrc create mode 100644 CopilotKit/package.json create mode 100644 CopilotKit/packages/copilot-chat/backend/env.example create mode 100644 CopilotKit/packages/copilot-chat/backend/requirements.txt create mode 100644 CopilotKit/packages/copilot-chat/backend/server.py create mode 100644 CopilotKit/packages/copilot-chat/frontend/.eslintrc.cjs create mode 100644 CopilotKit/packages/copilot-chat/frontend/index.html create mode 100644 CopilotKit/packages/copilot-chat/frontend/menu-data/NCE-analysis.json create mode 100644 CopilotKit/packages/copilot-chat/frontend/package.json create mode 100644 CopilotKit/packages/copilot-chat/frontend/playwright-scripts/definitions/alarm-search-all.definition.js create mode 100644 CopilotKit/packages/copilot-chat/frontend/playwright-scripts/definitions/ask-llm.definition.js create mode 100644 CopilotKit/packages/copilot-chat/frontend/playwright-scripts/definitions/fill-form.definition.js create mode 100644 CopilotKit/packages/copilot-chat/frontend/playwright-scripts/executors/ask-llm.executor.js create mode 100644 CopilotKit/packages/copilot-chat/frontend/playwright-scripts/executors/fill-form.executor.js create mode 100644 CopilotKit/packages/copilot-chat/frontend/playwright-scripts/index.d.ts create mode 100644 CopilotKit/packages/copilot-chat/frontend/playwright-scripts/index.js create mode 100644 CopilotKit/packages/copilot-chat/frontend/playwright-scripts/scripts/ask-llm.spec.js create mode 100644 CopilotKit/packages/copilot-chat/frontend/playwright-scripts/scripts/fill-form.spec.js create mode 100644 CopilotKit/packages/copilot-chat/frontend/postcss.config.js create mode 100644 CopilotKit/packages/copilot-chat/frontend/src/App.tsx create mode 100644 CopilotKit/packages/copilot-chat/frontend/src/components/ChatInput.tsx create mode 100644 CopilotKit/packages/copilot-chat/frontend/src/components/Chatbot.tsx create mode 100644 CopilotKit/packages/copilot-chat/frontend/src/components/ChatbotContent.tsx create mode 100644 CopilotKit/packages/copilot-chat/frontend/src/hooks/useBusinessActions.ts create mode 100644 CopilotKit/packages/copilot-chat/frontend/src/hooks/useDynamicActions.ts create mode 100644 CopilotKit/packages/copilot-chat/frontend/src/index.css create mode 100644 CopilotKit/packages/copilot-chat/frontend/src/main.tsx create mode 100644 CopilotKit/packages/copilot-chat/frontend/src/types/openinula.d.ts create mode 100644 CopilotKit/packages/copilot-chat/frontend/tailwind.config.js create mode 100644 CopilotKit/packages/copilot-chat/frontend/tsconfig.json create mode 100644 CopilotKit/packages/copilot-chat/frontend/tsconfig.node.json create mode 100644 CopilotKit/packages/copilot-chat/frontend/vite.config.ts create mode 100644 CopilotKit/packages/copilot-client/README.md create mode 100644 CopilotKit/packages/copilot-client/jest.config.js create mode 100644 CopilotKit/packages/copilot-client/package.json create mode 100644 CopilotKit/packages/copilot-client/src/client/copilot-runtime-client.ts create mode 100644 CopilotKit/packages/copilot-client/src/client/error-handler.ts create mode 100644 CopilotKit/packages/copilot-client/src/client/index.ts create mode 100644 CopilotKit/packages/copilot-client/src/client/message-types.ts create mode 100644 CopilotKit/packages/copilot-client/src/client/rest-client.ts create mode 100644 CopilotKit/packages/copilot-client/src/client/stream-processor.ts create mode 100644 CopilotKit/packages/copilot-client/src/components/copilot-provider/copilotkit.tsx create mode 100644 CopilotKit/packages/copilot-client/src/components/error-boundary/error-boundary.tsx create mode 100644 CopilotKit/packages/copilot-client/src/components/error-boundary/index.ts create mode 100644 CopilotKit/packages/copilot-client/src/components/index.ts create mode 100644 CopilotKit/packages/copilot-client/src/components/toast/index.ts create mode 100644 CopilotKit/packages/copilot-client/src/components/toast/toast-provider.tsx create mode 100644 CopilotKit/packages/copilot-client/src/context/copilot-context.tsx create mode 100644 CopilotKit/packages/copilot-client/src/context/index.ts create mode 100644 CopilotKit/packages/copilot-client/src/context/messages-context.tsx create mode 100644 CopilotKit/packages/copilot-client/src/hooks/index.ts create mode 100644 CopilotKit/packages/copilot-client/src/hooks/use-chat.ts create mode 100644 CopilotKit/packages/copilot-client/src/hooks/use-copilot-action.ts create mode 100644 CopilotKit/packages/copilot-client/src/hooks/use-copilot-additional-instructions.ts create mode 100644 CopilotKit/packages/copilot-client/src/hooks/use-copilot-chat.ts create mode 100644 CopilotKit/packages/copilot-client/src/hooks/use-copilot-dynamic-actions.ts create mode 100644 CopilotKit/packages/copilot-client/src/hooks/use-copilot-readable.ts create mode 100644 CopilotKit/packages/copilot-client/src/hooks/use-copilot-script-action.ts create mode 100644 CopilotKit/packages/copilot-client/src/hooks/use-langgraph-interrupt-render.ts create mode 100644 CopilotKit/packages/copilot-client/src/hooks/use-langgraph-interrupt.ts create mode 100644 CopilotKit/packages/copilot-client/src/index.tsx create mode 100644 CopilotKit/packages/copilot-client/src/types/chat-suggestion-configuration.ts create mode 100644 CopilotKit/packages/copilot-client/src/types/frontend-action.ts create mode 100644 CopilotKit/packages/copilot-client/src/types/index.ts create mode 100644 CopilotKit/packages/copilot-client/src/types/interrupt-action.ts create mode 100644 CopilotKit/packages/copilot-client/src/types/system-message.ts create mode 100644 CopilotKit/packages/copilot-client/src/utils/index.ts create mode 100644 CopilotKit/packages/copilot-client/tsconfig.json create mode 100644 CopilotKit/packages/copilot-client/tsup.config.ts create mode 100644 CopilotKit/packages/copilot-server/Makefile create mode 100644 CopilotKit/packages/copilot-server/README.md create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/__init__.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/api/__init__.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/api/handlers/__init__.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/api/handlers/copilot_handler.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/api/handlers/sse_handler.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/api/models/__init__.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/api/models/enums.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/api/models/messages.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/api/models/requests.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/api/models/responses.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/service_adapters/__init__.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/service_adapters/base.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/service_adapters/deepseek/__init__.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/service_adapters/deepseek/adapter.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/utils/__init__.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/utils/helpers.py create mode 100644 CopilotKit/packages/copilot-server/copilotkit_runtime/utils/validation.py create mode 100644 CopilotKit/packages/copilot-server/pyproject.toml create mode 100644 CopilotKit/packages/function-generator/backend/.env.example create mode 100644 CopilotKit/packages/function-generator/backend/README.md create mode 100644 CopilotKit/packages/function-generator/backend/env.example create mode 100644 CopilotKit/packages/function-generator/backend/package.json create mode 100644 CopilotKit/packages/function-generator/backend/server.js create mode 100644 CopilotKit/packages/function-generator/frontend/.env.example create mode 100644 CopilotKit/packages/function-generator/frontend/README.md create mode 100644 CopilotKit/packages/function-generator/frontend/docs/design.md create mode 100644 CopilotKit/packages/function-generator/frontend/index.html create mode 100644 CopilotKit/packages/function-generator/frontend/package.json create mode 100644 CopilotKit/packages/function-generator/frontend/src/App.tsx create mode 100644 CopilotKit/packages/function-generator/frontend/src/components/FunctionDescriptionTab.tsx create mode 100644 CopilotKit/packages/function-generator/frontend/src/components/LLMFunctionDefinitionTab.tsx create mode 100644 CopilotKit/packages/function-generator/frontend/src/components/Tab1FunctionDescription.tsx create mode 100644 CopilotKit/packages/function-generator/frontend/src/components/Tab2FunctionDefinition.tsx create mode 100644 CopilotKit/packages/function-generator/frontend/src/components/Tab3FunctionExecutor.tsx create mode 100644 CopilotKit/packages/function-generator/frontend/src/main.tsx create mode 100644 CopilotKit/packages/function-generator/frontend/src/pages/FunctionGenerator.tsx create mode 100644 CopilotKit/packages/function-generator/frontend/src/pages/TabFunction.tsx create mode 100644 CopilotKit/packages/function-generator/frontend/src/services/api.ts create mode 100644 CopilotKit/packages/function-generator/frontend/src/types/index.ts create mode 100644 CopilotKit/packages/function-generator/frontend/src/vite-env.d.ts create mode 100644 CopilotKit/packages/function-generator/frontend/tsconfig.json create mode 100644 CopilotKit/packages/function-generator/frontend/tsconfig.node.json create mode 100644 CopilotKit/packages/function-generator/frontend/vite.config.ts create mode 100644 CopilotKit/packages/function-rag/.env.example create mode 100644 CopilotKit/packages/function-rag/README.md create mode 100644 CopilotKit/packages/function-rag/app/__init__.py create mode 100644 CopilotKit/packages/function-rag/app/api/__init__.py create mode 100644 CopilotKit/packages/function-rag/app/api/main.py create mode 100644 CopilotKit/packages/function-rag/app/api/routes/__init__.py create mode 100644 CopilotKit/packages/function-rag/app/api/routes/functions.py create mode 100644 CopilotKit/packages/function-rag/app/api/routes/health.py create mode 100644 CopilotKit/packages/function-rag/app/core/__init__.py create mode 100644 CopilotKit/packages/function-rag/app/core/config.py create mode 100644 CopilotKit/packages/function-rag/app/core/rag_system.py create mode 100644 CopilotKit/packages/function-rag/app/models/__init__.py create mode 100644 CopilotKit/packages/function-rag/app/models/function_model.py create mode 100644 CopilotKit/packages/function-rag/app/models/schemas.py create mode 100644 CopilotKit/packages/function-rag/app/services/__init__.py create mode 100644 CopilotKit/packages/function-rag/app/services/embedding_service.py create mode 100644 CopilotKit/packages/function-rag/app/services/retrieval_engine.py create mode 100644 CopilotKit/packages/function-rag/app/services/vector_storage.py create mode 100644 CopilotKit/packages/function-rag/app/utils/__init__.py create mode 100644 CopilotKit/packages/function-rag/app/utils/logger.py create mode 100644 CopilotKit/packages/function-rag/examples/README.md create mode 100644 CopilotKit/packages/function-rag/examples/__init__.py create mode 100644 CopilotKit/packages/function-rag/examples/api_client_example.py create mode 100644 CopilotKit/packages/function-rag/examples/basic_usage.py create mode 100644 CopilotKit/packages/function-rag/examples/batch_operations.py create mode 100644 CopilotKit/packages/function-rag/examples/delete_collection_example.py create mode 100644 CopilotKit/packages/function-rag/examples/integration_example.py create mode 100644 CopilotKit/packages/function-rag/examples/nce_menu_import.py create mode 100644 CopilotKit/packages/function-rag/examples/script_actions_import.py create mode 100644 CopilotKit/packages/function-rag/examples/search_strategies.py create mode 100644 CopilotKit/packages/function-rag/main.py create mode 100644 CopilotKit/packages/function-rag/pyproject.toml create mode 100644 CopilotKit/packages/function-rag/requirements.txt create mode 100644 CopilotKit/packages/menu-analysis/README.md create mode 100644 CopilotKit/packages/menu-analysis/env.example create mode 100644 CopilotKit/packages/menu-analysis/examples/NCE-menu-analysis.json create mode 100644 CopilotKit/packages/menu-analysis/examples/analyze-NCE.ts create mode 100644 CopilotKit/packages/menu-analysis/examples/analyze-coloringbook.ts create mode 100644 CopilotKit/packages/menu-analysis/examples/batch-analysis.ts create mode 100644 CopilotKit/packages/menu-analysis/examples/menus-config.json create mode 100644 CopilotKit/packages/menu-analysis/examples/openai-image-analysis.ts create mode 100644 CopilotKit/packages/menu-analysis/examples/test-canvas-screenshot.ts create mode 100644 CopilotKit/packages/menu-analysis/examples/test-config-manager.ts create mode 100644 CopilotKit/packages/menu-analysis/examples/test-separated-llm.ts create mode 100644 CopilotKit/packages/menu-analysis/package.json create mode 100644 CopilotKit/packages/menu-analysis/polyfills.js create mode 100644 CopilotKit/packages/menu-analysis/src/analyzer/PageAnalyzer.ts create mode 100644 CopilotKit/packages/menu-analysis/src/config/ConfigManager.ts create mode 100644 CopilotKit/packages/menu-analysis/src/core/MenuAnalysisEngine.ts create mode 100644 CopilotKit/packages/menu-analysis/src/crawler/MenuCrawler.ts create mode 100644 CopilotKit/packages/menu-analysis/src/index.ts create mode 100644 CopilotKit/packages/menu-analysis/src/llm/LLMAnalyzer.ts create mode 100644 CopilotKit/packages/menu-analysis/src/menu-transformers/NCEMenuTransformer.ts create mode 100644 CopilotKit/packages/menu-analysis/src/menu-transformers/index.ts create mode 100644 CopilotKit/packages/menu-analysis/src/output/OutputManager.ts create mode 100644 CopilotKit/packages/menu-analysis/src/types/index.ts create mode 100644 CopilotKit/packages/menu-analysis/src/utils/Logger.ts create mode 100644 CopilotKit/packages/menu-analysis/src/utils/ProgressTracker.ts create mode 100644 CopilotKit/packages/menu-analysis/tsconfig.json create mode 100644 CopilotKit/packages/menu-analysis/tsup.config.ts create mode 100644 CopilotKit/packages/playwright-actuator/README.md create mode 100644 CopilotKit/packages/playwright-actuator/examples/demo.html create mode 100644 CopilotKit/packages/playwright-actuator/examples/sample-test.js create mode 100644 CopilotKit/packages/playwright-actuator/examples/test-fix.html create mode 100644 CopilotKit/packages/playwright-actuator/index.html create mode 100644 CopilotKit/packages/playwright-actuator/jest.config.js create mode 100644 CopilotKit/packages/playwright-actuator/package.json create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/__tests__/frame-adapter.test.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/__tests__/frame-locator-adapter.test.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/__tests__/jest-setup.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/__tests__/locator-adapter-content-frame.test.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/__tests__/locator-adapter-iframe.test.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/__tests__/locator-adapter-table-integration.test.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/__tests__/locator-adapter.test.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/__tests__/page-adapter.test.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/base-page-context.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/expect-adapter.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/frame-adapter.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/frame-locator-adapter.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/locator-adapter.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/adapters/page-adapter.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/dom/event-simulator.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/framework-adapters/README.md create mode 100644 CopilotKit/packages/playwright-actuator/src/framework-adapters/index.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/framework-adapters/openinula-adapter.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/framework-adapters/react-adapter.test.js create mode 100644 CopilotKit/packages/playwright-actuator/src/framework-adapters/react-adapter.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/index.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/runtime/playwright-runtime.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/runtime/test-runner.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/types/global.d.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/utils/__tests__/role-selector-utils.test.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/utils/logger.ts create mode 100644 CopilotKit/packages/playwright-actuator/src/utils/role-selector-utils.ts create mode 100644 CopilotKit/packages/playwright-actuator/tsconfig.json create mode 100644 CopilotKit/packages/playwright-actuator/tsup.config.ts create mode 100644 CopilotKit/packages/playwright-actuator/types/index.ts create mode 100644 CopilotKit/packages/shared/README.md create mode 100644 CopilotKit/packages/shared/jest.config.js create mode 100644 CopilotKit/packages/shared/package.json create mode 100644 CopilotKit/packages/shared/src/index.ts create mode 100644 CopilotKit/packages/shared/src/types/action.ts create mode 100644 CopilotKit/packages/shared/src/types/index.ts create mode 100644 CopilotKit/packages/shared/src/utils/index.ts create mode 100644 CopilotKit/packages/shared/src/utils/random-id.ts create mode 100644 CopilotKit/packages/shared/tsconfig.json create mode 100644 CopilotKit/packages/shared/tsup.config.ts create mode 100644 CopilotKit/packages/shared/typedoc.json create mode 100644 CopilotKit/pnpm-workspace.yaml create mode 100644 CopilotKit/turbo.json create mode 100644 CopilotKit/utilities/tsconfig/CHANGELOG.md create mode 100644 CopilotKit/utilities/tsconfig/base.json create mode 100644 CopilotKit/utilities/tsconfig/nextjs.json create mode 100644 CopilotKit/utilities/tsconfig/package.json create mode 100644 CopilotKit/utilities/tsconfig/react-library.json create mode 100644 CopilotKit/utilities/tsconfig/typedoc.json create mode 100644 README.en.md create mode 100644 README.md create mode 100644 SmartComponents/.gitignore create mode 100644 SmartComponents/.npmrc create mode 100644 SmartComponents/README.md create mode 100644 SmartComponents/backend/__init__.py create mode 100644 SmartComponents/backend/llmConstant.py create mode 100644 SmartComponents/backend/main.py create mode 100644 SmartComponents/backend/utils/__init__.py create mode 100644 SmartComponents/backend/utils/componentRegistry2.py create mode 100644 SmartComponents/backend/utils/llmService2.py create mode 100644 SmartComponents/frontend/.gitignore create mode 100644 SmartComponents/frontend/README.md create mode 100644 SmartComponents/frontend/package.json create mode 100644 SmartComponents/frontend/public/index.html create mode 100644 SmartComponents/frontend/public/manifest.json create mode 100644 SmartComponents/frontend/public/robots.txt create mode 100644 SmartComponents/frontend/src/App.test.tsx create mode 100644 SmartComponents/frontend/src/App.tsx create mode 100644 SmartComponents/frontend/src/components/Form.tsx create mode 100644 SmartComponents/frontend/src/components/Select.tsx create mode 100644 SmartComponents/frontend/src/index.tsx create mode 100644 SmartComponents/frontend/src/react-app-env.d.ts create mode 100644 SmartComponents/frontend/src/reportWebVitals.ts create mode 100644 SmartComponents/frontend/src/setupTests.ts create mode 100644 SmartComponents/frontend/src/tools/formTools.tsx create mode 100644 SmartComponents/frontend/src/tools/selectTool.tsx create mode 100644 SmartComponents/frontend/src/utils/ComponentRegistry.ts create mode 100644 SmartComponents/frontend/src/utils/defineComponentTool.ts create mode 100644 SmartComponents/frontend/tsconfig.json create mode 100644 SmartComponents/package.json create mode 100644 SmartComponents/packages/smart-components-example/.gitignore create mode 100644 SmartComponents/packages/smart-components-example/README.md create mode 100644 SmartComponents/packages/smart-components-example/package.json create mode 100644 SmartComponents/packages/smart-components-example/public/favicon.ico create mode 100644 SmartComponents/packages/smart-components-example/public/index.html create mode 100644 SmartComponents/packages/smart-components-example/public/logo192.png create mode 100644 SmartComponents/packages/smart-components-example/public/logo512.png create mode 100644 SmartComponents/packages/smart-components-example/public/manifest.json create mode 100644 SmartComponents/packages/smart-components-example/public/robots.txt create mode 100644 SmartComponents/packages/smart-components-example/src/App.css create mode 100644 SmartComponents/packages/smart-components-example/src/App.test.tsx create mode 100644 SmartComponents/packages/smart-components-example/src/App.tsx create mode 100644 SmartComponents/packages/smart-components-example/src/TestApp.tsx create mode 100644 SmartComponents/packages/smart-components-example/src/index.css create mode 100644 SmartComponents/packages/smart-components-example/src/index.tsx create mode 100644 SmartComponents/packages/smart-components-example/src/logo.svg create mode 100644 SmartComponents/packages/smart-components-example/src/react-app-env.d.ts create mode 100644 SmartComponents/packages/smart-components-example/src/reportWebVitals.ts create mode 100644 SmartComponents/packages/smart-components-example/src/setupTests.ts create mode 100644 SmartComponents/packages/smart-components-example/tsconfig.json create mode 100644 SmartComponents/packages/smart-components-lib/README.md create mode 100644 SmartComponents/packages/smart-components-lib/package.json create mode 100644 SmartComponents/packages/smart-components-lib/rollup.config.js create mode 120000 SmartComponents/packages/smart-components-lib/smart-components-lib create mode 100644 SmartComponents/packages/smart-components-lib/src/components/Checkbox/CheckboxComponent.tsx create mode 100644 SmartComponents/packages/smart-components-lib/src/components/Checkbox/index.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/components/Form/FormComponent.tsx create mode 100644 SmartComponents/packages/smart-components-lib/src/components/Form/config.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/components/Form/index.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/components/Select/SelectComponent.tsx create mode 100644 SmartComponents/packages/smart-components-lib/src/components/Select/config.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/components/Select/index.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/components/Table/TableComponent.tsx create mode 100644 SmartComponents/packages/smart-components-lib/src/components/Table/index.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/components/index.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/hooks/index.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/hooks/useSmartComponents.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/index.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/registry/ComponentRegistry.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/registry/index.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/types/index.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/utils/SmartComponentExecutor.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/utils/aiPrompts.ts create mode 100644 SmartComponents/packages/smart-components-lib/src/utils/index.ts create mode 100755 SmartComponents/packages/smart-components-lib/start-example.sh create mode 100644 SmartComponents/packages/smart-components-lib/tsconfig.json create mode 100644 SmartComponents/smart-components-example/package.json create mode 100644 SmartComponents/smart-components-lib/package.json create mode 100644 debug-example-next/QUICK_START.md create mode 100644 debug-example-next/README.md create mode 100644 debug-example-next/backend/README_APPROVAL_INTEGRATION.md create mode 100644 debug-example-next/backend/env.example create mode 100644 debug-example-next/backend/requirements.txt create mode 100644 debug-example-next/backend/server_py.py create mode 100644 debug-example-next/frontend/.eslintrc.cjs create mode 100644 debug-example-next/frontend/index.html create mode 100644 debug-example-next/frontend/package.json create mode 100644 debug-example-next/frontend/playwright-scripts/definitions/ask-llm.definition.js create mode 100644 debug-example-next/frontend/playwright-scripts/definitions/fill-form.definition.js create mode 100644 debug-example-next/frontend/playwright-scripts/executors/ask-llm.executor.js create mode 100644 debug-example-next/frontend/playwright-scripts/executors/fill-form.executor.js create mode 100644 debug-example-next/frontend/playwright-scripts/index.d.ts create mode 100644 debug-example-next/frontend/playwright-scripts/index.js create mode 100644 debug-example-next/frontend/playwright-scripts/scripts/ask-llm.spec.js create mode 100644 debug-example-next/frontend/playwright-scripts/scripts/fill-form.spec.js create mode 100644 debug-example-next/frontend/playwright.config.cjs create mode 100644 debug-example-next/frontend/postcss.config.js create mode 100644 debug-example-next/frontend/src/App.css create mode 100644 debug-example-next/frontend/src/App.tsx create mode 100644 debug-example-next/frontend/src/components/HomePage.tsx create mode 100644 debug-example-next/frontend/src/index.css create mode 100644 debug-example-next/frontend/src/main.tsx create mode 100644 debug-example-next/frontend/tailwind.config.js create mode 100644 debug-example-next/frontend/tsconfig.json create mode 100644 debug-example-next/frontend/tsconfig.node.json create mode 100644 debug-example-next/frontend/vite.config.ts create mode 100644 debug-example-next/package.json create mode 100644 debug-example-next/scripts/dev.sh create mode 100644 debug-example-next/scripts/setup.sh create mode 100644 debug-example-next/scripts/test.sh create mode 100644 package.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fe07003 --- /dev/null +++ b/.gitignore @@ -0,0 +1,233 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# IDE Files +.vscode/ +!.vscode/launch.json +!.vscode/settings.json +.idea/ +*.swp +*.swo +*~ +.serena/ + +# Dependencies +node_modules/ +.pnp +.pnp.js +jspm_packages/ +bower_components/ + +# Build Output +build/ +dist/ +out/ +.next/ +.swc/ +.nuxt/ +.output/ +.vuepress/dist/ +.temp/ +.cache/ +target/ +.turbo +.pybuilder/ +*.egg-info/ +.installed.cfg +*.egg +@generated + +# Testing +coverage/ +.nyc_output/ +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +.pytest_tmpdir_* +test_data/ +test_results/ +test-run-comment.md + +# Playwright +/test-results/ +/playwright-report/ +/blob-report/ +/playwright/.cache/ +playwright-report/ +screenshots/ + +# Logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +logs/ +app.log +debug.log +error.log +menu-analysis.log +*.log.* + +# Environment Variables +.env +.env.local +.env.development.local +.env.test.local +.env.production.local +.env.bak +.env.backup + +# Python +__pycache__/ +*.py[cod] +*$py.class +*.so +.Python +develop-eggs/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +pip-wheel-metadata/ +MANIFEST +*.manifest +*.spec +pip-log.txt +pip-delete-this-directory.txt +.ipynb_checkpoints +profile_default/ +ipython_config.py +.python-version +Pipfile.lock +poetry.lock +__pypackages__/ +celerybeat-schedule +celerybeat.pid +*.sage.py +env/ +venv/ +.venv/ +ENV/ +env.bak/ +venv.bak/ +.spyderproject +.spyproject +.ropeproject +/site +.mypy_cache/ +.dmypy.json +dmypy.json +.pyre/ +.pytype/ +cython_debug/ +*.pyc +*.pyo +*.pyd + +# Database +*.sqlite +*.sqlite-shm +*.sqlite-wal +*.sqlite3 +*.sqlite3-journal +*.qdrant + +# Temporary Files +tmp/ +temp/ +*.tmp +*.temp +.tmp/ + +# Data Files +data/ +*.csv +*.json.bak +*.pickle +*.pkl +*.analysis.json +progress.json +results/ +examples/results/ + +# OS Generated Files +.DS_Store +.DS_Store? +._* +.Spotlight-V100 +.Trashes +ehthumbs.db +Thumbs.db +*.pem + +# Runtime Files +*.pid +*.tgz +*.tar.gz +.npm +.node_repl_history +.yarn-integrity + +# Translations +*.mo +*.pot + +# Documentation +docs/_build/ + +# Frameworks & Tools +.scrapy +instance/ +.webassets-cache +local_settings.py +.grunt +__snapshots__ +cdk_outputs.json +**/.langgraph_api +TODO.local.md +publish-output.txt + +# Vector Database & ML +qdrant_storage/ +embeddings_cache/ +.cache/ + +# Lock Files +*-lock.yaml +*-lock.json + +# Config Backups +config.bak + +# Docker +docker-compose.override.yml +.dockerignore + +# Project Specific +frontend/node_modules/ +frontend/dist/ +frontend/.next/ +frontend/.nuxt/ +frontend/.output/ +frontend/.vuepress/dist/ +frontend/.temp/ +frontend/.cache/ +backend/__pycache__/ +backend/*.pyc +backend/dist/ +backend/build/ +backend/.env +backend/.env.* \ No newline at end of file diff --git a/CopilotKit/.eslintrc.js b/CopilotKit/.eslintrc.js new file mode 100644 index 0000000..274569a --- /dev/null +++ b/CopilotKit/.eslintrc.js @@ -0,0 +1,10 @@ +module.exports = { + root: true, + // This tells ESLint to load the config from the package `eslint-config-custom` + extends: ["custom"], + settings: { + next: { + rootDir: ["examples/*/"], + }, + }, +}; diff --git a/CopilotKit/.npmrc b/CopilotKit/.npmrc new file mode 100644 index 0000000..ded82e2 --- /dev/null +++ b/CopilotKit/.npmrc @@ -0,0 +1 @@ +auto-install-peers = true diff --git a/CopilotKit/.prettierignore b/CopilotKit/.prettierignore new file mode 100644 index 0000000..211bdc4 --- /dev/null +++ b/CopilotKit/.prettierignore @@ -0,0 +1,4 @@ +README.md +node_modules +dist +**/@generated \ No newline at end of file diff --git a/CopilotKit/.prettierrc b/CopilotKit/.prettierrc new file mode 100644 index 0000000..a80ba03 --- /dev/null +++ b/CopilotKit/.prettierrc @@ -0,0 +1,7 @@ +{ + "semi": true, + "trailingComma": "all", + "singleQuote": false, + "printWidth": 100, + "tabWidth": 2 +} \ No newline at end of file diff --git a/CopilotKit/package.json b/CopilotKit/package.json new file mode 100644 index 0000000..f2d6e3c --- /dev/null +++ b/CopilotKit/package.json @@ -0,0 +1,44 @@ +{ + "private": false, + "scripts": { + "build": "turbo build", + "dev": "turbo dev --concurrency 14", + "lint": "turbo lint", + "clean": "turbo clean", + "test": "turbo test", + "docs": "echo 'Skipping docs generation'", + "check-types": "turbo check-types", + "format": "prettier --write \"**/*.{ts,tsx,md}\"", + "check-prettier": "prettier --check \"**/*.{ts,tsx,md}\"", + "freshbuild": "pnpm -w clean && pnpm i && pnpm -w build", + "precommit": "echo 'Skipping precommit hooks'", + "prepublish": "turbo run build" + }, + "devDependencies": { + "@changesets/cli": "^2.27.10", + "@types/node": "^18.11.17", + "eslint": "^8.56.0", + "glob": "^10.3.12", + "install": "^0.13.0", + "npm": "^10.7.0", + "prettier": "^3.2.5", + "prettier-plugin-tailwindcss": "^0.1.11", + "ts-node": "^10.9.2", + "turbo": "^2.0.6", + "typescript": "^5.2.3" + }, + "packageManager": "pnpm@9.5.0", + "keywords": [ + "copilotkit", + "copilot", + "react", + "nextjs", + "nodejs", + "ai", + "assistant", + "javascript", + "automation", + "textarea" + ], + "name": "CopilotKit" +} diff --git a/CopilotKit/packages/copilot-chat/backend/env.example b/CopilotKit/packages/copilot-chat/backend/env.example new file mode 100644 index 0000000..5758373 --- /dev/null +++ b/CopilotKit/packages/copilot-chat/backend/env.example @@ -0,0 +1,6 @@ +# 服务器配置 +SERVER_PORT=8005 + +# DeepSeek 配置 +DEEPSEEK_API_KEY=your_deepseek_api_key_here +DEEPSEEK_MODEL=deepseek-chat \ No newline at end of file diff --git a/CopilotKit/packages/copilot-chat/backend/requirements.txt b/CopilotKit/packages/copilot-chat/backend/requirements.txt new file mode 100644 index 0000000..56995e1 --- /dev/null +++ b/CopilotKit/packages/copilot-chat/backend/requirements.txt @@ -0,0 +1,14 @@ +fastapi>=0.100.0 +uvicorn[standard]>=0.23.0 +pydantic>=2.0.0 +python-dotenv>=1.0.0 +httpx[socks]>=0.24.0 +openai>=1.0.0 +aiofiles>=23.0.0 +python-multipart>=0.0.6 +structlog>=23.0.0 +sse-starlette>=2.0.0 +reactivex>=4.0.4 +aiohttp>=3.9.0 +jsonschema>=4.20.0 +requests>=2.31.0 \ No newline at end of file diff --git a/CopilotKit/packages/copilot-chat/backend/server.py b/CopilotKit/packages/copilot-chat/backend/server.py new file mode 100644 index 0000000..2d719ab --- /dev/null +++ b/CopilotKit/packages/copilot-chat/backend/server.py @@ -0,0 +1,285 @@ +#!/usr/bin/env python3 +""" +CopilotKit Debug Example Next - Backend Server (使用 create_copilot_app API) +基于 copilot-server 的 FastAPI 后端服务,使用新的 create_copilot_app API +""" + +import os +import sys +import logging +from datetime import datetime +from typing import Dict, Any, List +from pathlib import Path + +import uvicorn +from dotenv import load_dotenv + +# 添加 copilot-server 到路径 +current_dir = Path(__file__).parent +project_root = current_dir.parent.parent.parent.parent +runtime_python_path = project_root / "CopilotKit" / "packages" / "copilot-server" +sys.path.insert(0, str(runtime_python_path)) + +try: + from copilotkit_runtime import ( + CopilotRuntime, + CopilotRuntimeConstructorParams, + DeepSeekAdapter, + create_copilot_app, + Action, + Parameter + ) +except ImportError as e: + print(f"错误: 无法导入 copilot-server 模块: {e}") + print(f"请确保 copilot-server 路径正确: {runtime_python_path}") + sys.exit(1) + +# 加载环境变量 +load_dotenv() + +# 配置日志 +logging.basicConfig( + level=logging.INFO, + format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', + handlers=[ + logging.StreamHandler(), + logging.FileHandler('backend.log') + ] +) + +logger = logging.getLogger(__name__) + + +def create_demo_actions() -> List[Action]: + """创建演示动作""" + + async def get_current_time(arguments: Dict[str, Any]) -> str: + """获取当前时间""" + timezone = arguments.get("timezone", "UTC") + try: + current_time = datetime.now() + formatted_time = current_time.strftime("%Y-%m-%d %H:%M:%S") + + logger.info(f"⏰ 获取当前时间: {formatted_time} ({timezone})") + return f"当前时间 ({timezone}): {formatted_time}" + except Exception as e: + logger.error(f"获取时间失败: {e}") + return f"获取时间失败: {str(e)}" + + async def calculate(arguments: Dict[str, Any]) -> str: + """计算数学表达式""" + expression = arguments.get("expression", "") + try: + # 简单的安全计算 + if any(op in expression for op in ['import', 'exec', 'eval', '__', 'open', 'file']): + return "不安全的表达式,计算被拒绝" + + # 只允许基本的数学运算 + allowed_chars = set('0123456789+-*/()., ') + if not all(c in allowed_chars for c in expression): + return "包含不允许的字符,只支持基本数学运算" + + result = eval(expression) + logger.info(f"🧮 计算: {expression} = {result}") + return f"计算结果: {expression} = {result}" + except ZeroDivisionError: + return "错误: 除零操作" + except Exception as e: + logger.error(f"计算失败: {e}") + return f"计算错误: {str(e)}" + + async def get_user_info(arguments: Dict[str, Any]) -> str: + """获取用户信息""" + user_id = arguments.get("user_id", "default") + try: + # 模拟用户数据 + users_db = { + "default": {"name": "演示用户", "role": "guest", "last_login": "2024-01-15"}, + "admin": {"name": "管理员", "role": "admin", "last_login": "2024-01-16"}, + "user1": {"name": "张三", "role": "user", "last_login": "2024-01-14"} + } + + user_info = users_db.get(user_id, { + "name": "未知用户", + "role": "guest", + "last_login": "从未登录" + }) + + result = f"用户信息 - 姓名: {user_info['name']}, 角色: {user_info['role']}, 最后登录: {user_info['last_login']}" + logger.info(f"👤 获取用户信息: {user_id} -> {user_info}") + return result + except Exception as e: + logger.error(f"获取用户信息失败: {e}") + return f"获取用户信息失败: {str(e)}" + + async def check_status(arguments: Dict[str, Any]) -> str: + """检查系统状态""" + service = arguments.get("service", "system") + try: + # 模拟系统状态检查 + status_db = { + "system": {"status": "运行中", "uptime": "24小时", "cpu": "45%", "memory": "62%"}, + "database": {"status": "正常", "connections": "8/100", "response_time": "12ms"}, + "api": {"status": "正常", "requests_per_min": "150", "error_rate": "0.1%"}, + "cache": {"status": "正常", "hit_rate": "89%", "memory_usage": "34%"} + } + + service_status = status_db.get(service, { + "status": "未知服务", + "message": f"服务 '{service}' 不存在" + }) + + if "message" in service_status: + result = service_status["message"] + else: + status_info = ", ".join([f"{k}: {v}" for k, v in service_status.items()]) + result = f"{service.upper()} 状态 - {status_info}" + + logger.info(f"📊 检查状态: {service} -> {service_status}") + return result + except Exception as e: + logger.error(f"状态检查失败: {e}") + return f"状态检查失败: {str(e)}" + + # 创建动作列表 + actions = [ + Action( + name="get_current_time", + description="获取当前时间,可指定时区", + parameters=[ + Parameter( + name="timezone", + type="string", + description="时区,例如: UTC, Asia/Shanghai, America/New_York", + required=False + ) + ], + handler=get_current_time + ), + Action( + name="calculate", + description="计算数学表达式,支持基本的四则运算", + parameters=[ + Parameter( + name="expression", + type="string", + description="要计算的数学表达式,例如: 2+3*4, (10-5)/2", + required=True + ) + ], + handler=calculate + ), + Action( + name="get_user_info", + description="获取用户信息", + parameters=[ + Parameter( + name="user_id", + type="string", + description="用户ID,可选值: default, admin, user1", + required=False + ) + ], + handler=get_user_info + ), + Action( + name="check_status", + description="检查系统或服务状态", + parameters=[ + Parameter( + name="service", + type="string", + description="服务名称,可选值: system, database, api, cache", + required=False + ) + ], + handler=check_status + ) + ] + + return actions + + +def main(): + """主函数""" + logger.info("🚀 启动CopilotKit Debug Example (使用 create_copilot_app API)") + + try: + # 获取DeepSeek API密钥 + deepseek_api_key = os.getenv("DEEPSEEK_API_KEY") + if not deepseek_api_key or deepseek_api_key == "test_key": + logger.warning("⚠️ 未设置有效的DEEPSEEK_API_KEY环境变量") + # 可以继续运行,但聊天功能将不可用 + deepseek_api_key = "test_key" + + # 创建DeepSeek适配器 + deepseek_adapter = DeepSeekAdapter( + api_key=deepseek_api_key, + model=os.getenv("DEEPSEEK_MODEL", "deepseek-chat"), + base_url=os.getenv("DEEPSEEK_BASE_URL", "https://api.deepseek.com/v1") + ) + + # 创建演示动作 + demo_actions = create_demo_actions() + + # 创建运行时 + runtime = CopilotRuntime( + CopilotRuntimeConstructorParams( + actions=demo_actions + ) + ) + + # 使用 create_copilot_app API 创建应用 + app = create_copilot_app( + runtime=runtime, + service_adapter=deepseek_adapter, + title="CopilotKit Debug Example (New API)", + version="0.1.0", + cors_origins=["*"], + prefix="/api/copilotkit" + ) + + # 添加自定义路由 + @app.get("/debug/new-api") + async def debug_new_api(): + """调试新API端点""" + return { + "message": "使用新的 create_copilot_app API 创建的应用", + "api": "create_copilot_app", + "runtime": "CopilotKit Python Runtime", + "version": "0.1.0", + "actions_count": len(demo_actions), + "actions": [action.name for action in demo_actions], + "timestamp": datetime.utcnow().isoformat() + } + + logger.info(f"✅ 创建CopilotRuntime成功,注册了 {len(demo_actions)} 个动作") + logger.info(f"🔧 配置DeepSeek适配器: {deepseek_adapter.model}") + logger.info("🌐 使用 create_copilot_app API 创建FastAPI应用") + + # 启动服务器 + port = int(os.getenv("SERVER_PORT", "8005")) # 支持环境变量配置端口 + host = "localhost" + + logger.info(f"📡 服务器配置:") + logger.info(f" - 地址: {host}:{port}") + logger.info(f" - API文档: http://{host}:{port}/docs") + logger.info(f" - 健康检查: http://{host}:{port}/api/health") + logger.info(f" - 新API调试: http://{host}:{port}/debug/new-api") + logger.info(f" - CopilotKit Hello: http://{host}:{port}/copilotkit/hello") + + uvicorn.run( + app, + host=host, + port=port, + log_level="info", + reload=False + ) + + except Exception as e: + logger.error(f"❌ 启动失败: {e}") + sys.exit(1) + + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/CopilotKit/packages/copilot-chat/frontend/.eslintrc.cjs b/CopilotKit/packages/copilot-chat/frontend/.eslintrc.cjs new file mode 100644 index 0000000..1fc4b5e --- /dev/null +++ b/CopilotKit/packages/copilot-chat/frontend/.eslintrc.cjs @@ -0,0 +1,27 @@ +module.exports = { + root: true, + env: { browser: true, es2020: true }, + extends: [ + 'eslint:recommended', + '@typescript-eslint/recommended', + 'plugin:react/recommended', + 'plugin:react-hooks/recommended', + 'plugin:react/jsx-runtime' + ], + ignorePatterns: ['dist', '.eslintrc.cjs'], + parser: '@typescript-eslint/parser', + plugins: ['react-refresh'], + rules: { + 'react-refresh/only-export-components': [ + 'warn', + { allowConstantExport: true }, + ], + 'react/prop-types': 'off', + '@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }], + }, + settings: { + react: { + version: 'detect', + }, + }, +} \ No newline at end of file diff --git a/CopilotKit/packages/copilot-chat/frontend/index.html b/CopilotKit/packages/copilot-chat/frontend/index.html new file mode 100644 index 0000000..34a708c --- /dev/null +++ b/CopilotKit/packages/copilot-chat/frontend/index.html @@ -0,0 +1,14 @@ + + +
+ + + +👋 您好!我是 AI 助手
+我可以帮助您查找和使用各种功能,有什么可以帮助您的吗?
+{textMessage.content}
++ CopilotKit 遇到了一个错误。请尝试刷新页面或联系支持。 +
+ {error && process.env.NODE_ENV === "development" && ( +
+ {error.message}
+ {"\n"}
+ {error.stack}
+
+ ( + Component: React.ComponentType
,
+ errorBoundaryProps?: Omit