@jingyi0605/codingns 0.7.4 → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/bin/codingns.mjs +747 -28
- package/bin/office-mcp-server.mjs +620 -0
- package/dist/public/assets/{AdaptiveButlerPage-CgBX49t-.js → AdaptiveButlerPage-b7s6F_sd.js} +1 -1
- package/dist/public/assets/{App-tXOqoHNl.js → App-B0q8uDA-.js} +3 -3
- package/dist/public/assets/{BootstrapPage-DoRMz87R.js → BootstrapPage-jFfl7KNK.js} +1 -1
- package/dist/public/assets/{ConversationPage-DXR6Hp4O.js → ConversationPage-sj_rn4q0.js} +6 -6
- package/dist/public/assets/{DesktopDetachPreviewPage-Cyk-ZYCk.js → DesktopDetachPreviewPage-C5c88SOX.js} +1 -1
- package/dist/public/assets/{DesktopWindowPage-DNVNK3hs.js → DesktopWindowPage-BdKUZrKG.js} +1 -1
- package/dist/public/assets/FileContextPanel-lM5mBcfn.js +1 -0
- package/dist/public/assets/{GitSidebar-Cr3Z9OUI.js → GitSidebar-CmXAhyjo.js} +2 -2
- package/dist/public/assets/{MobileCreateSessionSheet-DMW0V6GJ.js → MobileCreateSessionSheet-CceV0-AH.js} +1 -1
- package/dist/public/assets/{MobileTopHeaderFrame-CkdnZ_MU.js → MobileTopHeaderFrame-_I0t7cC_.js} +1 -1
- package/dist/public/assets/{MobileWorkspaceSwitcherHeader-KIbqBYJN.js → MobileWorkspaceSwitcherHeader-DhaM9fgx.js} +1 -1
- package/dist/public/assets/{RelayConnectEntryPage-DIRBH3hw.js → RelayConnectEntryPage-CMtDWyGS.js} +1 -1
- package/dist/public/assets/{ServerSettingsModal-C-9RxdWP.js → ServerSettingsModal-Rkgn3jft.js} +1 -1
- package/dist/public/assets/{SessionIndexPage-bRlIydRA.js → SessionIndexPage-BOumP3ij.js} +1 -1
- package/dist/public/assets/{SettingsPage-CMEt4ua9.js → SettingsPage-vx_c-00-.js} +2 -2
- package/dist/public/assets/{TerminalManagerPanel-2bi9wVhT.js → TerminalManagerPanel-D9JHCS6d.js} +1 -1
- package/dist/public/assets/{TerminalPage-DayZz2Tf.js → TerminalPage-CBIKHI33.js} +1 -1
- package/dist/public/assets/{TerminalRuntimeFallbackModal-DgwYcp-Y.js → TerminalRuntimeFallbackModal-W5NjqFEz.js} +1 -1
- package/dist/public/assets/{ToolFilesPage-YvnP_FXW.js → ToolFilesPage-DWtpaN_7.js} +1 -1
- package/dist/public/assets/{ToolGitPage-GMcQKtV9.js → ToolGitPage-MpGXsw4_.js} +1 -1
- package/dist/public/assets/{ToolProcessesPage-DFIQ7BCd.js → ToolProcessesPage-B1jHQKhZ.js} +1 -1
- package/dist/public/assets/{ToolsHomePage-CSilFzXR.js → ToolsHomePage-CJrn8ZFl.js} +1 -1
- package/dist/public/assets/{WorkbenchLandingPage-1VtToSz9.js → WorkbenchLandingPage-CJQ1V5U-.js} +1 -1
- package/dist/public/assets/WorkbenchLayout-D48i71PU.js +244 -0
- package/dist/public/assets/{WorkbenchModal-BWXYSXmC.js → WorkbenchModal-BYNuMIoV.js} +1 -1
- package/dist/public/assets/WorkbenchShellRoute-B4XB8SwG.css +1 -0
- package/dist/public/assets/WorkbenchShellRoute-CGKjy4J-.js +1 -0
- package/dist/public/assets/{WorkspaceDebugDetailPage-Ux8_Q7la.js → WorkspaceDebugDetailPage-DCAYgays.js} +1 -1
- package/dist/public/assets/{WorkspaceDetailPage-B402p99m.js → WorkspaceDetailPage-D5v-nUIi.js} +1 -1
- package/dist/public/assets/{WorkspaceHomePage-D2pob6HI.js → WorkspaceHomePage-I5G1p5SR.js} +1 -1
- package/dist/public/assets/{client-runtime-manager-C5D76ewj.js → client-runtime-manager-CdJP7nUp.js} +1 -1
- package/dist/public/assets/file-tree-icon-BFwaPxKs.js +590 -0
- package/dist/public/assets/index-CjewzOUG.js +42 -0
- package/dist/public/assets/index-VVxfF0s5.css +1 -0
- package/dist/public/assets/{login-direct-candidate-resolver-wXSaB0i7.js → login-direct-candidate-resolver-C-mo698r.js} +1 -1
- package/dist/public/assets/{model-switch-api-CPtou49j.js → model-switch-api-Br0ivfe5.js} +1 -1
- package/dist/public/assets/{preferences-service-CdaK7zA8.js → preferences-service-CnaTvZq2.js} +1 -1
- package/dist/public/assets/{realtime-client-BjQazYsK.js → realtime-client-BlQRqVmm.js} +1 -1
- package/dist/public/assets/{relay-entry-BwE5nw0l.js → relay-entry-D7OgZZN-.js} +1 -1
- package/dist/public/assets/{terminal-runtime-meta-C-Lbyx2i.js → terminal-runtime-meta-BCtAYB0E.js} +1 -1
- package/dist/public/assets/{useRegisteredDebugTemplates-BM7-c-gx.js → useRegisteredDebugTemplates-CXmxu69X.js} +1 -1
- package/dist/public/index.html +2 -2
- package/dist/server/config/env.d.ts +3 -0
- package/dist/server/config/env.js +67 -1
- package/dist/server/config/env.js.map +1 -1
- package/dist/server/config/opencode-base-url-resolver.d.ts +3 -2
- package/dist/server/config/opencode-base-url-resolver.js +64 -24
- package/dist/server/config/opencode-base-url-resolver.js.map +1 -1
- package/dist/server/main.js +2 -0
- package/dist/server/main.js.map +1 -1
- package/dist/server/middlewares/auth-guard.js +4 -0
- package/dist/server/middlewares/auth-guard.js.map +1 -1
- package/dist/server/modules/assistant-capability/assistant-capability-controller.d.ts +169 -1
- package/dist/server/modules/assistant-capability/assistant-capability-controller.js +206 -4
- package/dist/server/modules/assistant-capability/assistant-capability-controller.js.map +1 -1
- package/dist/server/modules/assistant-capability/assistant-capability-service.d.ts +297 -2
- package/dist/server/modules/assistant-capability/assistant-capability-service.js +873 -3
- package/dist/server/modules/assistant-capability/assistant-capability-service.js.map +1 -1
- package/dist/server/modules/auth/auth-service.d.ts +21 -1
- package/dist/server/modules/auth/auth-service.js +64 -0
- package/dist/server/modules/auth/auth-service.js.map +1 -1
- package/dist/server/modules/browser-runtime/browser-profile-service.d.ts +26 -0
- package/dist/server/modules/browser-runtime/browser-profile-service.js +85 -0
- package/dist/server/modules/browser-runtime/browser-profile-service.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-runtime-controller.d.ts +70 -0
- package/dist/server/modules/browser-runtime/browser-runtime-controller.js +84 -0
- package/dist/server/modules/browser-runtime/browser-runtime-controller.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-runtime-service.d.ts +59 -0
- package/dist/server/modules/browser-runtime/browser-runtime-service.js +255 -0
- package/dist/server/modules/browser-runtime/browser-runtime-service.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-task-execution-support.d.ts +65 -0
- package/dist/server/modules/browser-runtime/browser-task-execution-support.js +432 -0
- package/dist/server/modules/browser-runtime/browser-task-execution-support.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-task-executor-registry.d.ts +7 -0
- package/dist/server/modules/browser-runtime/browser-task-executor-registry.js +21 -0
- package/dist/server/modules/browser-runtime/browser-task-executor-registry.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-task-executor.d.ts +55 -0
- package/dist/server/modules/browser-runtime/browser-task-executor.js +2 -0
- package/dist/server/modules/browser-runtime/browser-task-executor.js.map +1 -0
- package/dist/server/modules/browser-runtime/browser-task-payload.d.ts +33 -0
- package/dist/server/modules/browser-runtime/browser-task-payload.js +55 -0
- package/dist/server/modules/browser-runtime/browser-task-payload.js.map +1 -0
- package/dist/server/modules/browser-runtime/opencli-bridge-browser-executor.d.ts +19 -0
- package/dist/server/modules/browser-runtime/opencli-bridge-browser-executor.js +219 -0
- package/dist/server/modules/browser-runtime/opencli-bridge-browser-executor.js.map +1 -0
- package/dist/server/modules/browser-runtime/opencli-browser-bridge-service.d.ts +15 -0
- package/dist/server/modules/browser-runtime/opencli-browser-bridge-service.js +33 -0
- package/dist/server/modules/browser-runtime/opencli-browser-bridge-service.js.map +1 -0
- package/dist/server/modules/browser-runtime/playwright-browser-executor.d.ts +16 -0
- package/dist/server/modules/browser-runtime/playwright-browser-executor.js +272 -0
- package/dist/server/modules/browser-runtime/playwright-browser-executor.js.map +1 -0
- package/dist/server/modules/butler/butler-auth-service.js +4 -0
- package/dist/server/modules/butler/butler-auth-service.js.map +1 -1
- package/dist/server/modules/butler/butler-inbox-instruction-adapter.js +1 -0
- package/dist/server/modules/butler/butler-inbox-instruction-adapter.js.map +1 -1
- package/dist/server/modules/butler/butler-session-summary-service.d.ts +1 -0
- package/dist/server/modules/butler/butler-session-summary-service.js +5 -3
- package/dist/server/modules/butler/butler-session-summary-service.js.map +1 -1
- package/dist/server/modules/butler/butler-workspace-context.js +23 -0
- package/dist/server/modules/butler/butler-workspace-context.js.map +1 -1
- package/dist/server/modules/debug-target/debug-target-service.d.ts +2 -0
- package/dist/server/modules/debug-target/debug-target-service.js +14 -0
- package/dist/server/modules/debug-target/debug-target-service.js.map +1 -1
- package/dist/server/modules/document-runtime/document-docx-fallback-renderer.py +139 -0
- package/dist/server/modules/document-runtime/document-export-executor.d.ts +50 -0
- package/dist/server/modules/document-runtime/document-export-executor.js +827 -0
- package/dist/server/modules/document-runtime/document-export-executor.js.map +1 -0
- package/dist/server/modules/document-runtime/document-runtime-controller.d.ts +127 -0
- package/dist/server/modules/document-runtime/document-runtime-controller.js +131 -0
- package/dist/server/modules/document-runtime/document-runtime-controller.js.map +1 -0
- package/dist/server/modules/document-runtime/document-runtime-service.d.ts +125 -0
- package/dist/server/modules/document-runtime/document-runtime-service.js +706 -0
- package/dist/server/modules/document-runtime/document-runtime-service.js.map +1 -0
- package/dist/server/modules/git/git-command-helper-process.js +0 -18
- package/dist/server/modules/git/git-command-helper-process.js.map +1 -1
- package/dist/server/modules/git/git-command-runner.js +0 -18
- package/dist/server/modules/git/git-command-runner.js.map +1 -1
- package/dist/server/modules/office/office-controller.d.ts +77 -0
- package/dist/server/modules/office/office-controller.js +174 -0
- package/dist/server/modules/office/office-controller.js.map +1 -0
- package/dist/server/modules/office/office-preview-link-service.d.ts +27 -0
- package/dist/server/modules/office/office-preview-link-service.js +121 -0
- package/dist/server/modules/office/office-preview-link-service.js.map +1 -0
- package/dist/server/modules/office/office-service.d.ts +67 -0
- package/dist/server/modules/office/office-service.js +359 -0
- package/dist/server/modules/office/office-service.js.map +1 -0
- package/dist/server/modules/opencli/opencli-bridge-skill-service.js +38 -14
- package/dist/server/modules/opencli/opencli-bridge-skill-service.js.map +1 -1
- package/dist/server/modules/opencli/opencli-install-discovery.d.ts +4 -0
- package/dist/server/modules/opencli/opencli-install-discovery.js +94 -0
- package/dist/server/modules/opencli/opencli-install-discovery.js.map +1 -1
- package/dist/server/modules/opencli/opencli-runtime-builder.js +29 -0
- package/dist/server/modules/opencli/opencli-runtime-builder.js.map +1 -1
- package/dist/server/modules/opencli/opencli-runtime-guard.d.ts +2 -0
- package/dist/server/modules/opencli/opencli-runtime-guard.js +5 -0
- package/dist/server/modules/opencli/opencli-runtime-guard.js.map +1 -0
- package/dist/server/modules/ops-runtime/ops-runtime-controller.d.ts +70 -0
- package/dist/server/modules/ops-runtime/ops-runtime-controller.js +83 -0
- package/dist/server/modules/ops-runtime/ops-runtime-controller.js.map +1 -0
- package/dist/server/modules/ops-runtime/ops-runtime-service.d.ts +80 -0
- package/dist/server/modules/ops-runtime/ops-runtime-service.js +327 -0
- package/dist/server/modules/ops-runtime/ops-runtime-service.js.map +1 -0
- package/dist/server/modules/ops-runtime/ssh-ops-executor.d.ts +41 -0
- package/dist/server/modules/ops-runtime/ssh-ops-executor.js +478 -0
- package/dist/server/modules/ops-runtime/ssh-ops-executor.js.map +1 -0
- package/dist/server/modules/presentation/presentation-controller.d.ts +22 -0
- package/dist/server/modules/presentation/presentation-controller.js +59 -0
- package/dist/server/modules/presentation/presentation-controller.js.map +1 -0
- package/dist/server/modules/presentation/presentation-export-task-service.d.ts +24 -0
- package/dist/server/modules/presentation/presentation-export-task-service.js +137 -0
- package/dist/server/modules/presentation/presentation-export-task-service.js.map +1 -0
- package/dist/server/modules/presentation/presentation-export-types.d.ts +12 -0
- package/dist/server/modules/presentation/presentation-export-types.js +2 -0
- package/dist/server/modules/presentation/presentation-export-types.js.map +1 -0
- package/dist/server/modules/presentation/presentation-pdf-export-service.d.ts +20 -0
- package/dist/server/modules/presentation/presentation-pdf-export-service.js +29 -0
- package/dist/server/modules/presentation/presentation-pdf-export-service.js.map +1 -0
- package/dist/server/modules/presentation/presentation-pptx-export-service.d.ts +20 -0
- package/dist/server/modules/presentation/presentation-pptx-export-service.js +64 -0
- package/dist/server/modules/presentation/presentation-pptx-export-service.js.map +1 -0
- package/dist/server/modules/presentation/presentation-renderer.d.ts +21 -0
- package/dist/server/modules/presentation/presentation-renderer.js +208 -0
- package/dist/server/modules/presentation/presentation-renderer.js.map +1 -0
- package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js +3 -3
- package/dist/server/modules/relay-tunnel/relay-tunnel-gateway-service.js.map +1 -1
- package/dist/server/modules/relay-tunnel/relay-tunnel-service.js +6 -1
- package/dist/server/modules/relay-tunnel/relay-tunnel-service.js.map +1 -1
- package/dist/server/modules/sessions/codex-app-server-helper-process.js +2 -1
- package/dist/server/modules/sessions/codex-app-server-helper-process.js.map +1 -1
- package/dist/server/modules/sessions/session-controller.d.ts +1 -0
- package/dist/server/modules/sessions/session-controller.js +59 -4
- package/dist/server/modules/sessions/session-controller.js.map +1 -1
- package/dist/server/modules/sessions/session-history-service.js +17 -5
- package/dist/server/modules/sessions/session-history-service.js.map +1 -1
- package/dist/server/modules/sessions/session-live-runtime-service.d.ts +5 -1
- package/dist/server/modules/sessions/session-live-runtime-service.js +129 -8
- package/dist/server/modules/sessions/session-live-runtime-service.js.map +1 -1
- package/dist/server/modules/sessions/session-provider-config-service.d.ts +25 -1
- package/dist/server/modules/sessions/session-provider-config-service.js +54 -5
- package/dist/server/modules/sessions/session-provider-config-service.js.map +1 -1
- package/dist/server/modules/sessions/workspace-office-mcp-config.d.ts +14 -0
- package/dist/server/modules/sessions/workspace-office-mcp-config.js +54 -0
- package/dist/server/modules/sessions/workspace-office-mcp-config.js.map +1 -0
- package/dist/server/modules/sessions/workspace-session-auth-service.d.ts +27 -0
- package/dist/server/modules/sessions/workspace-session-auth-service.js +109 -0
- package/dist/server/modules/sessions/workspace-session-auth-service.js.map +1 -0
- package/dist/server/modules/sessions/workspace-session-runtime-context-service.d.ts +51 -0
- package/dist/server/modules/sessions/workspace-session-runtime-context-service.js +341 -0
- package/dist/server/modules/sessions/workspace-session-runtime-context-service.js.map +1 -0
- package/dist/server/modules/skills/assistant-runtime-skill-catalog.js +5 -0
- package/dist/server/modules/skills/assistant-runtime-skill-catalog.js.map +1 -1
- package/dist/server/modules/skills/builtin-skills/codingns-workspace-session/SKILL.md +67 -0
- package/dist/server/modules/skills/builtin-skills/codingns-workspace-session/agents/openai.yaml +4 -0
- package/dist/server/modules/skills/builtin-skills/codingns-workspace-session/references/cli-workflow.md +133 -0
- package/dist/server/modules/skills/skill-controller.d.ts +7 -0
- package/dist/server/modules/skills/skill-controller.js +7 -0
- package/dist/server/modules/skills/skill-controller.js.map +1 -1
- package/dist/server/modules/skills/skill-manager-service.d.ts +61 -0
- package/dist/server/modules/skills/skill-manager-service.js +218 -0
- package/dist/server/modules/skills/skill-manager-service.js.map +1 -1
- package/dist/server/modules/skills/skill-name-policy.js +2 -1
- package/dist/server/modules/skills/skill-name-policy.js.map +1 -1
- package/dist/server/modules/tasks/task-helper-client.d.ts +1 -0
- package/dist/server/modules/tasks/task-helper-client.js +45 -9
- package/dist/server/modules/tasks/task-helper-client.js.map +1 -1
- package/dist/server/modules/tasks/task-types.d.ts +5 -0
- package/dist/server/modules/tasks/task-types.js +6 -1
- package/dist/server/modules/tasks/task-types.js.map +1 -1
- package/dist/server/modules/terminal/runtime/conpty-session-agent-process.js +2 -1
- package/dist/server/modules/terminal/runtime/conpty-session-agent-process.js.map +1 -1
- package/dist/server/modules/terminal/runtime/node-pty-loader.d.ts +5 -0
- package/dist/server/modules/terminal/runtime/node-pty-loader.js +68 -0
- package/dist/server/modules/terminal/runtime/node-pty-loader.js.map +1 -0
- package/dist/server/modules/terminal/runtime/pty-broker-agent-process.js +2 -1
- package/dist/server/modules/terminal/runtime/pty-broker-agent-process.js.map +1 -1
- package/dist/server/modules/terminal/runtime/pty-host-attachment-manager.js +6 -9
- package/dist/server/modules/terminal/runtime/pty-host-attachment-manager.js.map +1 -1
- package/dist/server/modules/terminal/runtime/pty-runtime-manager.js +6 -9
- package/dist/server/modules/terminal/runtime/pty-runtime-manager.js.map +1 -1
- package/dist/server/routes/assistant.d.ts +2 -1
- package/dist/server/routes/assistant.js +20 -1
- package/dist/server/routes/assistant.js.map +1 -1
- package/dist/server/routes/browser-runtime.d.ts +3 -0
- package/dist/server/routes/browser-runtime.js +14 -0
- package/dist/server/routes/browser-runtime.js.map +1 -0
- package/dist/server/routes/document-runtime.d.ts +3 -0
- package/dist/server/routes/document-runtime.js +18 -0
- package/dist/server/routes/document-runtime.js.map +1 -0
- package/dist/server/routes/office.d.ts +3 -0
- package/dist/server/routes/office.js +16 -0
- package/dist/server/routes/office.js.map +1 -0
- package/dist/server/routes/ops-runtime.d.ts +3 -0
- package/dist/server/routes/ops-runtime.js +13 -0
- package/dist/server/routes/ops-runtime.js.map +1 -0
- package/dist/server/routes/presentation.d.ts +3 -0
- package/dist/server/routes/presentation.js +5 -0
- package/dist/server/routes/presentation.js.map +1 -0
- package/dist/server/routes/skills.js +1 -0
- package/dist/server/routes/skills.js.map +1 -1
- package/dist/server/server/create-server.d.ts +36 -0
- package/dist/server/server/create-server.js +215 -4
- package/dist/server/server/create-server.js.map +1 -1
- package/dist/server/server/release-manifest-sync.d.ts +1 -0
- package/dist/server/server/release-manifest-sync.js +2 -2
- package/dist/server/server/release-manifest-sync.js.map +1 -1
- package/dist/server/server/start-host.js +1 -1
- package/dist/server/server/start-host.js.map +1 -1
- package/dist/server/shared/http/error-handler.js +53 -19
- package/dist/server/shared/http/error-handler.js.map +1 -1
- package/dist/server/shared/utils/install-console-timestamp-prefix.d.ts +1 -0
- package/dist/server/shared/utils/install-console-timestamp-prefix.js +28 -0
- package/dist/server/shared/utils/install-console-timestamp-prefix.js.map +1 -0
- package/dist/server/storage/repositories/auth-token-repository.js +22 -6
- package/dist/server/storage/repositories/auth-token-repository.js.map +1 -1
- package/dist/server/storage/repositories/browser-profile-repository.d.ts +18 -0
- package/dist/server/storage/repositories/browser-profile-repository.js +134 -0
- package/dist/server/storage/repositories/browser-profile-repository.js.map +1 -0
- package/dist/server/storage/repositories/document-comment-repository.d.ts +10 -0
- package/dist/server/storage/repositories/document-comment-repository.js +118 -0
- package/dist/server/storage/repositories/document-comment-repository.js.map +1 -0
- package/dist/server/storage/repositories/document-repository.d.ts +16 -0
- package/dist/server/storage/repositories/document-repository.js +109 -0
- package/dist/server/storage/repositories/document-repository.js.map +1 -0
- package/dist/server/storage/repositories/document-revision-repository.d.ts +10 -0
- package/dist/server/storage/repositories/document-revision-repository.js +79 -0
- package/dist/server/storage/repositories/document-revision-repository.js.map +1 -0
- package/dist/server/storage/repositories/document-template-repository.d.ts +13 -0
- package/dist/server/storage/repositories/document-template-repository.js +244 -0
- package/dist/server/storage/repositories/document-template-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-approval-repository.d.ts +11 -0
- package/dist/server/storage/repositories/office-approval-repository.js +109 -0
- package/dist/server/storage/repositories/office-approval-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-artifact-repository.d.ts +10 -0
- package/dist/server/storage/repositories/office-artifact-repository.js +89 -0
- package/dist/server/storage/repositories/office-artifact-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-audit-event-repository.d.ts +8 -0
- package/dist/server/storage/repositories/office-audit-event-repository.js +54 -0
- package/dist/server/storage/repositories/office-audit-event-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-connector-repository.d.ts +10 -0
- package/dist/server/storage/repositories/office-connector-repository.js +97 -0
- package/dist/server/storage/repositories/office-connector-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-receipt-repository.d.ts +8 -0
- package/dist/server/storage/repositories/office-receipt-repository.js +48 -0
- package/dist/server/storage/repositories/office-receipt-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-rollback-record-repository.d.ts +8 -0
- package/dist/server/storage/repositories/office-rollback-record-repository.js +60 -0
- package/dist/server/storage/repositories/office-rollback-record-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-task-repository.d.ts +19 -0
- package/dist/server/storage/repositories/office-task-repository.js +199 -0
- package/dist/server/storage/repositories/office-task-repository.js.map +1 -0
- package/dist/server/storage/repositories/office-task-step-repository.d.ts +10 -0
- package/dist/server/storage/repositories/office-task-step-repository.js +110 -0
- package/dist/server/storage/repositories/office-task-step-repository.js.map +1 -0
- package/dist/server/storage/repositories/ops-target-repository.d.ts +16 -0
- package/dist/server/storage/repositories/ops-target-repository.js +119 -0
- package/dist/server/storage/repositories/ops-target-repository.js.map +1 -0
- package/dist/server/storage/repositories/session-binding-repository.d.ts +4 -0
- package/dist/server/storage/repositories/session-binding-repository.js +70 -69
- package/dist/server/storage/repositories/session-binding-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-changed-file-repository.d.ts +6 -0
- package/dist/server/storage/repositories/session-changed-file-repository.js +44 -43
- package/dist/server/storage/repositories/session-changed-file-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-fork-repository.d.ts +2 -0
- package/dist/server/storage/repositories/session-fork-repository.js +42 -41
- package/dist/server/storage/repositories/session-fork-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-index-repository.d.ts +5 -0
- package/dist/server/storage/repositories/session-index-repository.js +153 -152
- package/dist/server/storage/repositories/session-index-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-message-attachment-repository.d.ts +7 -0
- package/dist/server/storage/repositories/session-message-attachment-repository.js +91 -90
- package/dist/server/storage/repositories/session-message-attachment-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-message-origin-repository.d.ts +2 -0
- package/dist/server/storage/repositories/session-message-origin-repository.js +25 -24
- package/dist/server/storage/repositories/session-message-origin-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-state-repository.d.ts +2 -0
- package/dist/server/storage/repositories/session-state-repository.js +35 -34
- package/dist/server/storage/repositories/session-state-repository.js.map +1 -1
- package/dist/server/storage/repositories/session-status-snapshot-repository.d.ts +2 -0
- package/dist/server/storage/repositories/session-status-snapshot-repository.js +25 -24
- package/dist/server/storage/repositories/session-status-snapshot-repository.js.map +1 -1
- package/dist/server/storage/sqlite/client.js +123 -1
- package/dist/server/storage/sqlite/client.js.map +1 -1
- package/dist/server/storage/sqlite/schema.sql +300 -1
- package/dist/server/types/domain.d.ts +205 -1
- package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.d.ts +3 -2
- package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.js +26 -19
- package/node_modules/@codingns/session-sync-core/dist/runtime/opencode-runtime.js.map +1 -1
- package/package.json +17 -8
- package/scripts/postinstall.mjs +159 -7
- package/vendor/node-pty-fork/LICENSE +69 -0
- package/vendor/node-pty-fork/README.md +91 -0
- package/vendor/node-pty-fork/binding.gyp +117 -0
- package/vendor/node-pty-fork/deps/.editorconfig +2 -0
- package/vendor/node-pty-fork/deps/winpty/.drone.yml +17 -0
- package/vendor/node-pty-fork/deps/winpty/.gitattributes +19 -0
- package/vendor/node-pty-fork/deps/winpty/LICENSE +21 -0
- package/vendor/node-pty-fork/deps/winpty/Makefile +166 -0
- package/vendor/node-pty-fork/deps/winpty/README.md +151 -0
- package/vendor/node-pty-fork/deps/winpty/RELEASES.md +280 -0
- package/vendor/node-pty-fork/deps/winpty/VERSION.txt +1 -0
- package/vendor/node-pty-fork/deps/winpty/configure +167 -0
- package/vendor/node-pty-fork/deps/winpty/misc/BufferResizeTests.cc +90 -0
- package/vendor/node-pty-fork/deps/winpty/misc/ChangeScreenBuffer.cc +53 -0
- package/vendor/node-pty-fork/deps/winpty/misc/ClearConsole.cc +72 -0
- package/vendor/node-pty-fork/deps/winpty/misc/ConinMode.cc +117 -0
- package/vendor/node-pty-fork/deps/winpty/misc/ConinMode.ps1 +116 -0
- package/vendor/node-pty-fork/deps/winpty/misc/ConoutMode.cc +113 -0
- package/vendor/node-pty-fork/deps/winpty/misc/DebugClient.py +42 -0
- package/vendor/node-pty-fork/deps/winpty/misc/DebugServer.py +63 -0
- package/vendor/node-pty-fork/deps/winpty/misc/DumpLines.py +5 -0
- package/vendor/node-pty-fork/deps/winpty/misc/EnableExtendedFlags.txt +46 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP437-Consolas.txt +528 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP437-Lucida.txt +633 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP932.txt +630 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP936.txt +630 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP949.txt +630 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/CP950.txt +630 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/MinimumWindowWidths.txt +16 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/Results.txt +4 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Font-Report-June2016/Windows10SetFontBugginess.txt +144 -0
- package/vendor/node-pty-fork/deps/winpty/misc/FontSurvey.cc +100 -0
- package/vendor/node-pty-fork/deps/winpty/misc/FormatChar.h +21 -0
- package/vendor/node-pty-fork/deps/winpty/misc/FreezePerfTest.cc +62 -0
- package/vendor/node-pty-fork/deps/winpty/misc/GetCh.cc +20 -0
- package/vendor/node-pty-fork/deps/winpty/misc/GetConsolePos.cc +41 -0
- package/vendor/node-pty-fork/deps/winpty/misc/GetFont.cc +261 -0
- package/vendor/node-pty-fork/deps/winpty/misc/IdentifyConsoleWindow.ps1 +51 -0
- package/vendor/node-pty-fork/deps/winpty/misc/IsNewConsole.cc +87 -0
- package/vendor/node-pty-fork/deps/winpty/misc/MouseInputNotes.txt +90 -0
- package/vendor/node-pty-fork/deps/winpty/misc/MoveConsoleWindow.cc +34 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Notes.txt +219 -0
- package/vendor/node-pty-fork/deps/winpty/misc/OSVersion.cc +27 -0
- package/vendor/node-pty-fork/deps/winpty/misc/ScreenBufferFreezeInactive.cc +101 -0
- package/vendor/node-pty-fork/deps/winpty/misc/ScreenBufferTest.cc +671 -0
- package/vendor/node-pty-fork/deps/winpty/misc/ScreenBufferTest2.cc +151 -0
- package/vendor/node-pty-fork/deps/winpty/misc/SelectAllTest.cc +45 -0
- package/vendor/node-pty-fork/deps/winpty/misc/SetBufferSize.cc +32 -0
- package/vendor/node-pty-fork/deps/winpty/misc/SetCursorPos.cc +10 -0
- package/vendor/node-pty-fork/deps/winpty/misc/SetFont.cc +145 -0
- package/vendor/node-pty-fork/deps/winpty/misc/SetWindowRect.cc +36 -0
- package/vendor/node-pty-fork/deps/winpty/misc/ShowArgv.cc +12 -0
- package/vendor/node-pty-fork/deps/winpty/misc/ShowConsoleInput.cc +40 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Spew.py +5 -0
- package/vendor/node-pty-fork/deps/winpty/misc/TestUtil.cc +172 -0
- package/vendor/node-pty-fork/deps/winpty/misc/UnicodeDoubleWidthTest.cc +102 -0
- package/vendor/node-pty-fork/deps/winpty/misc/UnicodeWideTest1.cc +246 -0
- package/vendor/node-pty-fork/deps/winpty/misc/UnicodeWideTest2.cc +130 -0
- package/vendor/node-pty-fork/deps/winpty/misc/UnixEcho.cc +89 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Utf16Echo.cc +46 -0
- package/vendor/node-pty-fork/deps/winpty/misc/VeryLargeRead.cc +122 -0
- package/vendor/node-pty-fork/deps/winpty/misc/VkEscapeTest.cc +56 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Win10ResizeWhileFrozen.cc +52 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Win10WrapTest1.cc +57 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Win10WrapTest2.cc +30 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Win32Echo1.cc +26 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Win32Echo2.cc +19 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Win32Test1.cc +46 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Win32Test2.cc +70 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Win32Test3.cc +78 -0
- package/vendor/node-pty-fork/deps/winpty/misc/Win32Write1.cc +44 -0
- package/vendor/node-pty-fork/deps/winpty/misc/WindowsBugCrashReader.cc +27 -0
- package/vendor/node-pty-fork/deps/winpty/misc/WriteConsole.cc +106 -0
- package/vendor/node-pty-fork/deps/winpty/misc/build32.sh +9 -0
- package/vendor/node-pty-fork/deps/winpty/misc/build64.sh +9 -0
- package/vendor/node-pty-fork/deps/winpty/misc/color-test.sh +212 -0
- package/vendor/node-pty-fork/deps/winpty/misc/font-notes.txt +300 -0
- package/vendor/node-pty-fork/deps/winpty/misc/winbug-15048.cc +201 -0
- package/vendor/node-pty-fork/deps/winpty/ship/build-pty4j-libpty.bat +36 -0
- package/vendor/node-pty-fork/deps/winpty/ship/common_ship.py +53 -0
- package/vendor/node-pty-fork/deps/winpty/ship/make_msvc_package.py +165 -0
- package/vendor/node-pty-fork/deps/winpty/ship/ship.py +108 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Agent.cc +605 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Agent.h +103 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/AgentCreateDesktop.cc +84 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/AgentCreateDesktop.h +28 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleFont.cc +632 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleFont.h +28 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleInput.cc +852 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleInput.h +109 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleInputReencoding.cc +121 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleInputReencoding.h +36 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleLine.cc +152 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/ConsoleLine.h +41 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Coord.h +87 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/DebugShowInput.cc +239 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/DebugShowInput.h +32 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/DefaultInputMap.cc +422 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/DefaultInputMap.h +28 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/DsrSender.h +30 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/EventLoop.cc +99 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/EventLoop.h +47 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/InputMap.cc +246 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/InputMap.h +114 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/LargeConsoleRead.cc +71 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/LargeConsoleRead.h +68 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/NamedPipe.cc +378 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/NamedPipe.h +125 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Scraper.cc +699 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Scraper.h +103 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/SimplePool.h +75 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/SmallRect.h +143 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Terminal.cc +535 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Terminal.h +69 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/UnicodeEncoding.h +157 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/UnicodeEncodingTest.cc +189 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Win32Console.cc +107 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Win32Console.h +67 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Win32ConsoleBuffer.cc +193 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/Win32ConsoleBuffer.h +99 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/main.cc +114 -0
- package/vendor/node-pty-fork/deps/winpty/src/agent/subdir.mk +61 -0
- package/vendor/node-pty-fork/deps/winpty/src/configurations.gypi +60 -0
- package/vendor/node-pty-fork/deps/winpty/src/debugserver/DebugServer.cc +117 -0
- package/vendor/node-pty-fork/deps/winpty/src/debugserver/subdir.mk +41 -0
- package/vendor/node-pty-fork/deps/winpty/src/include/winpty.h +242 -0
- package/vendor/node-pty-fork/deps/winpty/src/include/winpty_constants.h +131 -0
- package/vendor/node-pty-fork/deps/winpty/src/libwinpty/AgentLocation.cc +75 -0
- package/vendor/node-pty-fork/deps/winpty/src/libwinpty/AgentLocation.h +28 -0
- package/vendor/node-pty-fork/deps/winpty/src/libwinpty/LibWinptyException.h +54 -0
- package/vendor/node-pty-fork/deps/winpty/src/libwinpty/WinptyInternal.h +72 -0
- package/vendor/node-pty-fork/deps/winpty/src/libwinpty/subdir.mk +46 -0
- package/vendor/node-pty-fork/deps/winpty/src/libwinpty/winpty.cc +970 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/AgentMsg.h +38 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/BackgroundDesktop.cc +122 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/BackgroundDesktop.h +73 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/Buffer.cc +103 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/Buffer.h +102 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/DebugClient.cc +187 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/DebugClient.h +38 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/GenRandom.cc +138 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/GenRandom.h +55 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/GetCommitHash.bat +13 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/Mutex.h +54 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/OsModule.h +63 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/OwnedHandle.cc +36 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/OwnedHandle.h +45 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/PrecompiledHeader.h +43 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/StringBuilder.h +227 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/StringBuilderTest.cc +114 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/StringUtil.cc +55 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/StringUtil.h +80 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/TimeMeasurement.h +63 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/UnixCtrlChars.h +45 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/UpdateGenVersion.bat +20 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/WindowsSecurity.cc +460 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/WindowsSecurity.h +104 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/WindowsVersion.cc +252 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/WindowsVersion.h +29 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyAssert.cc +55 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyAssert.h +64 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyException.cc +57 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyException.h +43 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyVersion.cc +42 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/WinptyVersion.h +27 -0
- package/vendor/node-pty-fork/deps/winpty/src/shared/winpty_snprintf.h +99 -0
- package/vendor/node-pty-fork/deps/winpty/src/subdir.mk +5 -0
- package/vendor/node-pty-fork/deps/winpty/src/tests/subdir.mk +28 -0
- package/vendor/node-pty-fork/deps/winpty/src/tests/trivial_test.cc +158 -0
- package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/InputHandler.cc +114 -0
- package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/InputHandler.h +56 -0
- package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/OutputHandler.cc +80 -0
- package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/OutputHandler.h +53 -0
- package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/Util.cc +86 -0
- package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/Util.h +31 -0
- package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/WakeupFd.cc +70 -0
- package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/WakeupFd.h +42 -0
- package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/main.cc +729 -0
- package/vendor/node-pty-fork/deps/winpty/src/unix-adapter/subdir.mk +41 -0
- package/vendor/node-pty-fork/deps/winpty/src/winpty.gyp +206 -0
- package/vendor/node-pty-fork/deps/winpty/vcbuild.bat +83 -0
- package/vendor/node-pty-fork/lib/conpty_console_list_agent.js +20 -0
- package/vendor/node-pty-fork/lib/conpty_console_list_agent.js.map +1 -0
- package/vendor/node-pty-fork/lib/eventEmitter2.js +47 -0
- package/vendor/node-pty-fork/lib/eventEmitter2.js.map +1 -0
- package/vendor/node-pty-fork/lib/eventEmitter2.test.js +30 -0
- package/vendor/node-pty-fork/lib/eventEmitter2.test.js.map +1 -0
- package/vendor/node-pty-fork/lib/index.js +51 -0
- package/vendor/node-pty-fork/lib/index.js.map +1 -0
- package/vendor/node-pty-fork/lib/interfaces.js +7 -0
- package/vendor/node-pty-fork/lib/interfaces.js.map +1 -0
- package/vendor/node-pty-fork/lib/shared/conout.js +11 -0
- package/vendor/node-pty-fork/lib/shared/conout.js.map +1 -0
- package/vendor/node-pty-fork/lib/terminal.js +190 -0
- package/vendor/node-pty-fork/lib/terminal.js.map +1 -0
- package/vendor/node-pty-fork/lib/terminal.test.js +139 -0
- package/vendor/node-pty-fork/lib/terminal.test.js.map +1 -0
- package/vendor/node-pty-fork/lib/testUtils.test.js +28 -0
- package/vendor/node-pty-fork/lib/testUtils.test.js.map +1 -0
- package/vendor/node-pty-fork/lib/types.js +7 -0
- package/vendor/node-pty-fork/lib/types.js.map +1 -0
- package/vendor/node-pty-fork/lib/unixTerminal.js +304 -0
- package/vendor/node-pty-fork/lib/unixTerminal.js.map +1 -0
- package/vendor/node-pty-fork/lib/unixTerminal.test.js +330 -0
- package/vendor/node-pty-fork/lib/unixTerminal.test.js.map +1 -0
- package/vendor/node-pty-fork/lib/utils.js +17 -0
- package/vendor/node-pty-fork/lib/utils.js.map +1 -0
- package/vendor/node-pty-fork/lib/windowsConoutConnection.js +122 -0
- package/vendor/node-pty-fork/lib/windowsConoutConnection.js.map +1 -0
- package/vendor/node-pty-fork/lib/windowsPtyAgent.js +324 -0
- package/vendor/node-pty-fork/lib/windowsPtyAgent.js.map +1 -0
- package/vendor/node-pty-fork/lib/windowsPtyAgent.test.js +90 -0
- package/vendor/node-pty-fork/lib/windowsPtyAgent.test.js.map +1 -0
- package/vendor/node-pty-fork/lib/windowsTerminal.js +201 -0
- package/vendor/node-pty-fork/lib/windowsTerminal.js.map +1 -0
- package/vendor/node-pty-fork/lib/windowsTerminal.test.js +203 -0
- package/vendor/node-pty-fork/lib/windowsTerminal.test.js.map +1 -0
- package/vendor/node-pty-fork/lib/worker/conoutSocketWorker.js +22 -0
- package/vendor/node-pty-fork/lib/worker/conoutSocketWorker.js.map +1 -0
- package/vendor/node-pty-fork/package.json +35 -0
- package/vendor/node-pty-fork/scripts/apply-patches.mjs +341 -0
- package/vendor/node-pty-fork/scripts/fetch-upstream.mjs +41 -0
- package/vendor/node-pty-fork/scripts/install-smoke.cjs +59 -0
- package/vendor/node-pty-fork/scripts/smoke-load.cjs +10 -0
- package/vendor/node-pty-fork/scripts/sync-upstream.mjs +29 -0
- package/vendor/node-pty-fork/scripts/verify-runtime.cjs +54 -0
- package/vendor/node-pty-fork/scripts/verify-runtime.test.cjs +22 -0
- package/vendor/node-pty-fork/scripts/verify-tarball.cjs +80 -0
- package/vendor/node-pty-fork/src/conpty_console_list_agent.ts +19 -0
- package/vendor/node-pty-fork/src/eventEmitter2.test.ts +30 -0
- package/vendor/node-pty-fork/src/eventEmitter2.ts +48 -0
- package/vendor/node-pty-fork/src/index.ts +51 -0
- package/vendor/node-pty-fork/src/interfaces.ts +129 -0
- package/vendor/node-pty-fork/src/native.d.ts +56 -0
- package/vendor/node-pty-fork/src/shared/conout.ts +15 -0
- package/vendor/node-pty-fork/src/terminal.test.ts +119 -0
- package/vendor/node-pty-fork/src/terminal.ts +211 -0
- package/vendor/node-pty-fork/src/testUtils.test.ts +23 -0
- package/vendor/node-pty-fork/src/tsconfig.json +22 -0
- package/vendor/node-pty-fork/src/types.ts +15 -0
- package/vendor/node-pty-fork/src/unix/pty.cc +826 -0
- package/vendor/node-pty-fork/src/unix/spawn-helper.cc +23 -0
- package/vendor/node-pty-fork/src/unixTerminal.test.ts +335 -0
- package/vendor/node-pty-fork/src/unixTerminal.ts +320 -0
- package/vendor/node-pty-fork/src/utils.ts +9 -0
- package/vendor/node-pty-fork/src/win/conpty.cc +500 -0
- package/vendor/node-pty-fork/src/win/conpty_console_list.cc +43 -0
- package/vendor/node-pty-fork/src/win/path_util.cc +73 -0
- package/vendor/node-pty-fork/src/win/path_util.h +22 -0
- package/vendor/node-pty-fork/src/win/winpty.cc +322 -0
- package/vendor/node-pty-fork/src/windowsConoutConnection.ts +79 -0
- package/vendor/node-pty-fork/src/windowsPtyAgent.test.ts +94 -0
- package/vendor/node-pty-fork/src/windowsPtyAgent.ts +323 -0
- package/vendor/node-pty-fork/src/windowsTerminal.test.ts +214 -0
- package/vendor/node-pty-fork/src/windowsTerminal.ts +208 -0
- package/vendor/node-pty-fork/src/worker/conoutSocketWorker.ts +22 -0
- package/vendor/node-pty-fork/typings/node-pty.d.ts +203 -0
- package/dist/public/assets/FileContextPanel-xGTYDclT.js +0 -1
- package/dist/public/assets/WorkbenchLayout-DScHaza9.js +0 -244
- package/dist/public/assets/WorkbenchShellRoute-DN6LdrqC.js +0 -1
- package/dist/public/assets/WorkbenchShellRoute-DhQo_0vu.css +0 -1
- package/dist/public/assets/file-tree-icon-lfU9Ag77.js +0 -3
- package/dist/public/assets/index-CFYXCsyx.css +0 -1
- package/dist/public/assets/index-NGxWr8Ix.js +0 -42
- package/dist/server/modules/channels/wechat-claw-client.d.ts +0 -51
- package/dist/server/modules/channels/wechat-claw-client.js +0 -245
- package/dist/server/modules/channels/wechat-claw-client.js.map +0 -1
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { OfficeApprovalRepository } from "../../storage/repositories/office-approval-repository.js";
|
|
2
|
+
import type { OfficeArtifactRepository } from "../../storage/repositories/office-artifact-repository.js";
|
|
3
|
+
import type { OfficeAuditEventRepository } from "../../storage/repositories/office-audit-event-repository.js";
|
|
4
|
+
import type { OfficeConnectorRepository } from "../../storage/repositories/office-connector-repository.js";
|
|
5
|
+
import type { OfficeReceiptRepository } from "../../storage/repositories/office-receipt-repository.js";
|
|
6
|
+
import type { OfficeRollbackRecordRepository } from "../../storage/repositories/office-rollback-record-repository.js";
|
|
7
|
+
import type { OfficeTaskRepository, OfficeTaskListFilters } from "../../storage/repositories/office-task-repository.js";
|
|
8
|
+
import type { OfficeTaskStepRepository } from "../../storage/repositories/office-task-step-repository.js";
|
|
9
|
+
import type { OfficeApproval, OfficeArtifact, OfficeAuditEvent, OfficeConnector, OfficeReceipt, OfficeRiskLevel, OfficeTask, OfficeTaskType } from "../../types/domain.js";
|
|
10
|
+
export interface CreateOfficeTaskInput {
|
|
11
|
+
userId: string;
|
|
12
|
+
workspaceId?: string | null;
|
|
13
|
+
taskType: OfficeTaskType;
|
|
14
|
+
title: string;
|
|
15
|
+
description?: string | null;
|
|
16
|
+
connectorId: string;
|
|
17
|
+
targetRefKind?: string | null;
|
|
18
|
+
targetRefId?: string | null;
|
|
19
|
+
input?: unknown;
|
|
20
|
+
riskLevel?: OfficeRiskLevel;
|
|
21
|
+
approvalPolicyId?: string | null;
|
|
22
|
+
idempotencyKey?: string | null;
|
|
23
|
+
}
|
|
24
|
+
export interface ReplyOfficeApprovalInput {
|
|
25
|
+
approvalId: string;
|
|
26
|
+
userId: string;
|
|
27
|
+
status: "approved" | "rejected";
|
|
28
|
+
decisionNote?: string | null;
|
|
29
|
+
}
|
|
30
|
+
export interface OfficeTaskDetail {
|
|
31
|
+
task: OfficeTask;
|
|
32
|
+
steps: ReturnType<OfficeTaskStepRepository["listByTaskId"]>;
|
|
33
|
+
artifacts: OfficeArtifact[];
|
|
34
|
+
approvals: OfficeApproval[];
|
|
35
|
+
receipts: OfficeReceipt[];
|
|
36
|
+
audits: OfficeAuditEvent[];
|
|
37
|
+
}
|
|
38
|
+
export declare class OfficeService {
|
|
39
|
+
private readonly taskRepository;
|
|
40
|
+
private readonly taskStepRepository;
|
|
41
|
+
private readonly artifactRepository;
|
|
42
|
+
private readonly approvalRepository;
|
|
43
|
+
private readonly receiptRepository;
|
|
44
|
+
private readonly connectorRepository;
|
|
45
|
+
private readonly auditEventRepository;
|
|
46
|
+
private readonly rollbackRecordRepository;
|
|
47
|
+
private readonly databasePath?;
|
|
48
|
+
constructor(taskRepository: OfficeTaskRepository, taskStepRepository: OfficeTaskStepRepository, artifactRepository: OfficeArtifactRepository, approvalRepository: OfficeApprovalRepository, receiptRepository: OfficeReceiptRepository, connectorRepository: OfficeConnectorRepository, auditEventRepository: OfficeAuditEventRepository, rollbackRecordRepository: OfficeRollbackRecordRepository, databasePath?: string | undefined);
|
|
49
|
+
listTasks(filters: OfficeTaskListFilters): OfficeTask[];
|
|
50
|
+
getTaskDetail(taskId: string, userId: string): OfficeTaskDetail;
|
|
51
|
+
getArtifact(artifactId: string, userId: string): OfficeArtifact;
|
|
52
|
+
getArtifactFile(taskId: string, fileName: string, userId: string): {
|
|
53
|
+
absolutePath: string;
|
|
54
|
+
fileName: string;
|
|
55
|
+
contentType: string;
|
|
56
|
+
};
|
|
57
|
+
createTask(input: CreateOfficeTaskInput): {
|
|
58
|
+
task: OfficeTask;
|
|
59
|
+
requiresApproval: boolean;
|
|
60
|
+
};
|
|
61
|
+
cancelTask(taskId: string, userId: string): OfficeTask;
|
|
62
|
+
retryTask(taskId: string, userId: string): OfficeTask;
|
|
63
|
+
listConnectors(kind?: OfficeConnector["kind"]): OfficeConnector[];
|
|
64
|
+
replyApproval(input: ReplyOfficeApprovalInput): OfficeApproval;
|
|
65
|
+
private requireOwnedTask;
|
|
66
|
+
private requireActiveConnector;
|
|
67
|
+
}
|
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { AppError } from "../../shared/errors/app-error.js";
|
|
4
|
+
import { createId } from "../../shared/utils/id.js";
|
|
5
|
+
import { nowIso } from "../../shared/utils/time.js";
|
|
6
|
+
export class OfficeService {
|
|
7
|
+
taskRepository;
|
|
8
|
+
taskStepRepository;
|
|
9
|
+
artifactRepository;
|
|
10
|
+
approvalRepository;
|
|
11
|
+
receiptRepository;
|
|
12
|
+
connectorRepository;
|
|
13
|
+
auditEventRepository;
|
|
14
|
+
rollbackRecordRepository;
|
|
15
|
+
databasePath;
|
|
16
|
+
constructor(taskRepository, taskStepRepository, artifactRepository, approvalRepository, receiptRepository, connectorRepository, auditEventRepository, rollbackRecordRepository, databasePath) {
|
|
17
|
+
this.taskRepository = taskRepository;
|
|
18
|
+
this.taskStepRepository = taskStepRepository;
|
|
19
|
+
this.artifactRepository = artifactRepository;
|
|
20
|
+
this.approvalRepository = approvalRepository;
|
|
21
|
+
this.receiptRepository = receiptRepository;
|
|
22
|
+
this.connectorRepository = connectorRepository;
|
|
23
|
+
this.auditEventRepository = auditEventRepository;
|
|
24
|
+
this.rollbackRecordRepository = rollbackRecordRepository;
|
|
25
|
+
this.databasePath = databasePath;
|
|
26
|
+
}
|
|
27
|
+
listTasks(filters) {
|
|
28
|
+
return this.taskRepository.list(filters);
|
|
29
|
+
}
|
|
30
|
+
getTaskDetail(taskId, userId) {
|
|
31
|
+
const task = this.requireOwnedTask(taskId, userId);
|
|
32
|
+
return {
|
|
33
|
+
task,
|
|
34
|
+
steps: this.taskStepRepository.listByTaskId(task.id),
|
|
35
|
+
artifacts: this.artifactRepository.listByTaskId(task.id),
|
|
36
|
+
approvals: this.approvalRepository.listByTaskId(task.id),
|
|
37
|
+
receipts: this.receiptRepository.listByTaskId(task.id),
|
|
38
|
+
audits: this.auditEventRepository.listByTaskId(task.id)
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
getArtifact(artifactId, userId) {
|
|
42
|
+
const artifact = this.artifactRepository.findById(artifactId.trim());
|
|
43
|
+
if (!artifact) {
|
|
44
|
+
throw new AppError({
|
|
45
|
+
statusCode: 404,
|
|
46
|
+
errorCode: "OFFICE_ARTIFACT_NOT_FOUND",
|
|
47
|
+
detail: "未找到对应办公产物"
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
this.requireOwnedTask(artifact.taskId, userId);
|
|
51
|
+
return artifact;
|
|
52
|
+
}
|
|
53
|
+
getArtifactFile(taskId, fileName, userId) {
|
|
54
|
+
const task = this.requireOwnedTask(taskId.trim(), userId);
|
|
55
|
+
const normalizedFileName = path.basename(fileName.trim());
|
|
56
|
+
if (!normalizedFileName) {
|
|
57
|
+
throw new AppError({
|
|
58
|
+
statusCode: 400,
|
|
59
|
+
errorCode: "OFFICE_ARTIFACT_FILE_INVALID",
|
|
60
|
+
detail: "办公产物文件名不能为空"
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
if (!this.databasePath) {
|
|
64
|
+
throw new AppError({
|
|
65
|
+
statusCode: 500,
|
|
66
|
+
errorCode: "OFFICE_ARTIFACT_FILE_UNAVAILABLE",
|
|
67
|
+
detail: "当前环境未配置办公产物根目录"
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
const taskArtifactDir = path.resolve(path.dirname(this.databasePath), "office-artifacts", task.id);
|
|
71
|
+
const absolutePath = path.resolve(taskArtifactDir, normalizedFileName);
|
|
72
|
+
if (!absolutePath.startsWith(`${taskArtifactDir}${path.sep}`) && absolutePath !== path.join(taskArtifactDir, normalizedFileName)) {
|
|
73
|
+
throw new AppError({
|
|
74
|
+
statusCode: 400,
|
|
75
|
+
errorCode: "OFFICE_ARTIFACT_FILE_INVALID",
|
|
76
|
+
detail: "办公产物文件路径非法"
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
try {
|
|
80
|
+
const stats = fs.statSync(absolutePath);
|
|
81
|
+
if (!stats.isFile()) {
|
|
82
|
+
throw new Error("not_file");
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
catch {
|
|
86
|
+
throw new AppError({
|
|
87
|
+
statusCode: 404,
|
|
88
|
+
errorCode: "OFFICE_ARTIFACT_FILE_NOT_FOUND",
|
|
89
|
+
detail: "未找到对应办公产物文件"
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
return {
|
|
93
|
+
absolutePath,
|
|
94
|
+
fileName: normalizedFileName,
|
|
95
|
+
contentType: resolveOfficeArtifactFileContentType(normalizedFileName)
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
createTask(input) {
|
|
99
|
+
const connector = this.requireActiveConnector(input.connectorId);
|
|
100
|
+
const title = input.title.trim();
|
|
101
|
+
if (!title) {
|
|
102
|
+
throw new AppError({
|
|
103
|
+
statusCode: 400,
|
|
104
|
+
errorCode: "INVALID_INPUT",
|
|
105
|
+
detail: "任务标题不能为空",
|
|
106
|
+
field: "title"
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
const idempotencyKey = normalizeNullableText(input.idempotencyKey);
|
|
110
|
+
if (idempotencyKey) {
|
|
111
|
+
const existing = this.taskRepository.findActiveByIdempotencyKey(input.userId, idempotencyKey);
|
|
112
|
+
if (existing) {
|
|
113
|
+
return {
|
|
114
|
+
task: existing,
|
|
115
|
+
requiresApproval: existing.status === "pending_approval"
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
const timestamp = nowIso();
|
|
120
|
+
const riskLevel = input.riskLevel ?? "low";
|
|
121
|
+
const requiresApproval = riskLevel === "high";
|
|
122
|
+
const task = {
|
|
123
|
+
id: createId(),
|
|
124
|
+
userId: input.userId,
|
|
125
|
+
workspaceId: input.workspaceId ?? null,
|
|
126
|
+
taskType: input.taskType,
|
|
127
|
+
title,
|
|
128
|
+
description: normalizeNullableText(input.description),
|
|
129
|
+
connectorId: connector.id,
|
|
130
|
+
targetRefKind: normalizeNullableText(input.targetRefKind),
|
|
131
|
+
targetRefId: normalizeNullableText(input.targetRefId),
|
|
132
|
+
inputJson: JSON.stringify(input.input ?? {}),
|
|
133
|
+
status: requiresApproval ? "pending_approval" : "ready",
|
|
134
|
+
riskLevel,
|
|
135
|
+
approvalPolicyId: normalizeNullableText(input.approvalPolicyId),
|
|
136
|
+
currentStepId: null,
|
|
137
|
+
idempotencyKey,
|
|
138
|
+
startedAt: null,
|
|
139
|
+
finishedAt: null,
|
|
140
|
+
createdAt: timestamp,
|
|
141
|
+
updatedAt: timestamp
|
|
142
|
+
};
|
|
143
|
+
this.taskRepository.create(task);
|
|
144
|
+
this.auditEventRepository.create({
|
|
145
|
+
id: createId(),
|
|
146
|
+
taskId: task.id,
|
|
147
|
+
stepId: null,
|
|
148
|
+
eventKind: "task_created",
|
|
149
|
+
actorKind: "user",
|
|
150
|
+
actorId: input.userId,
|
|
151
|
+
summary: `创建 ${task.taskType} 任务`,
|
|
152
|
+
payloadJson: JSON.stringify({
|
|
153
|
+
connectorKey: connector.connectorKey,
|
|
154
|
+
riskLevel: task.riskLevel
|
|
155
|
+
}),
|
|
156
|
+
createdAt: timestamp
|
|
157
|
+
});
|
|
158
|
+
if (requiresApproval) {
|
|
159
|
+
this.approvalRepository.create({
|
|
160
|
+
id: createId(),
|
|
161
|
+
taskId: task.id,
|
|
162
|
+
stepId: null,
|
|
163
|
+
policyId: task.approvalPolicyId ?? "default_high_risk",
|
|
164
|
+
status: "pending",
|
|
165
|
+
approverUserId: null,
|
|
166
|
+
decisionNote: null,
|
|
167
|
+
decidedAt: null,
|
|
168
|
+
createdAt: timestamp,
|
|
169
|
+
updatedAt: timestamp
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
return {
|
|
173
|
+
task,
|
|
174
|
+
requiresApproval
|
|
175
|
+
};
|
|
176
|
+
}
|
|
177
|
+
cancelTask(taskId, userId) {
|
|
178
|
+
const current = this.requireOwnedTask(taskId, userId);
|
|
179
|
+
if (!isMutableTaskStatus(current.status)) {
|
|
180
|
+
throw new AppError({
|
|
181
|
+
statusCode: 409,
|
|
182
|
+
errorCode: "OFFICE_TASK_CANCEL_NOT_ALLOWED",
|
|
183
|
+
detail: "当前任务状态不允许取消"
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
const next = {
|
|
187
|
+
...current,
|
|
188
|
+
status: "cancelled",
|
|
189
|
+
finishedAt: current.finishedAt ?? nowIso(),
|
|
190
|
+
updatedAt: nowIso()
|
|
191
|
+
};
|
|
192
|
+
this.taskRepository.update(next);
|
|
193
|
+
this.auditEventRepository.create({
|
|
194
|
+
id: createId(),
|
|
195
|
+
taskId: next.id,
|
|
196
|
+
stepId: null,
|
|
197
|
+
eventKind: "task_cancelled",
|
|
198
|
+
actorKind: "user",
|
|
199
|
+
actorId: userId,
|
|
200
|
+
summary: "用户取消任务",
|
|
201
|
+
payloadJson: null,
|
|
202
|
+
createdAt: next.updatedAt
|
|
203
|
+
});
|
|
204
|
+
return next;
|
|
205
|
+
}
|
|
206
|
+
retryTask(taskId, userId) {
|
|
207
|
+
const current = this.requireOwnedTask(taskId, userId);
|
|
208
|
+
if (current.status !== "failed" && current.status !== "cancelled") {
|
|
209
|
+
throw new AppError({
|
|
210
|
+
statusCode: 409,
|
|
211
|
+
errorCode: "OFFICE_TASK_RETRY_NOT_ALLOWED",
|
|
212
|
+
detail: "只有失败或已取消的任务允许重试"
|
|
213
|
+
});
|
|
214
|
+
}
|
|
215
|
+
const nextStatus = current.riskLevel === "high" ? "pending_approval" : "ready";
|
|
216
|
+
const next = {
|
|
217
|
+
...current,
|
|
218
|
+
status: nextStatus,
|
|
219
|
+
currentStepId: null,
|
|
220
|
+
startedAt: null,
|
|
221
|
+
finishedAt: null,
|
|
222
|
+
updatedAt: nowIso()
|
|
223
|
+
};
|
|
224
|
+
this.taskRepository.update(next);
|
|
225
|
+
this.auditEventRepository.create({
|
|
226
|
+
id: createId(),
|
|
227
|
+
taskId: next.id,
|
|
228
|
+
stepId: null,
|
|
229
|
+
eventKind: "task_updated",
|
|
230
|
+
actorKind: "user",
|
|
231
|
+
actorId: userId,
|
|
232
|
+
summary: "用户重试任务",
|
|
233
|
+
payloadJson: JSON.stringify({ nextStatus }),
|
|
234
|
+
createdAt: next.updatedAt
|
|
235
|
+
});
|
|
236
|
+
return next;
|
|
237
|
+
}
|
|
238
|
+
listConnectors(kind) {
|
|
239
|
+
return this.connectorRepository.list(kind);
|
|
240
|
+
}
|
|
241
|
+
replyApproval(input) {
|
|
242
|
+
const current = this.approvalRepository.findById(input.approvalId.trim());
|
|
243
|
+
if (!current) {
|
|
244
|
+
throw new AppError({
|
|
245
|
+
statusCode: 404,
|
|
246
|
+
errorCode: "OFFICE_APPROVAL_NOT_FOUND",
|
|
247
|
+
detail: "未找到对应审批记录"
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
if (current.status !== "pending") {
|
|
251
|
+
throw new AppError({
|
|
252
|
+
statusCode: 409,
|
|
253
|
+
errorCode: "OFFICE_APPROVAL_ALREADY_DECIDED",
|
|
254
|
+
detail: "该审批已经处理过"
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
const timestamp = nowIso();
|
|
258
|
+
const next = {
|
|
259
|
+
...current,
|
|
260
|
+
status: input.status,
|
|
261
|
+
approverUserId: input.userId,
|
|
262
|
+
decisionNote: normalizeNullableText(input.decisionNote),
|
|
263
|
+
decidedAt: timestamp,
|
|
264
|
+
updatedAt: timestamp
|
|
265
|
+
};
|
|
266
|
+
this.approvalRepository.update(next);
|
|
267
|
+
const task = this.taskRepository.findById(current.taskId);
|
|
268
|
+
if (task) {
|
|
269
|
+
const taskNext = {
|
|
270
|
+
...task,
|
|
271
|
+
status: input.status === "approved" ? "ready" : "cancelled",
|
|
272
|
+
finishedAt: input.status === "approved" ? task.finishedAt : timestamp,
|
|
273
|
+
updatedAt: timestamp
|
|
274
|
+
};
|
|
275
|
+
this.taskRepository.update(taskNext);
|
|
276
|
+
this.auditEventRepository.create({
|
|
277
|
+
id: createId(),
|
|
278
|
+
taskId: task.id,
|
|
279
|
+
stepId: current.stepId,
|
|
280
|
+
eventKind: input.status === "approved" ? "task_approved" : "task_rejected",
|
|
281
|
+
actorKind: "user",
|
|
282
|
+
actorId: input.userId,
|
|
283
|
+
summary: input.status === "approved" ? "审批通过" : "审批拒绝",
|
|
284
|
+
payloadJson: next.decisionNote ? JSON.stringify({ decisionNote: next.decisionNote }) : null,
|
|
285
|
+
createdAt: timestamp
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
return next;
|
|
289
|
+
}
|
|
290
|
+
requireOwnedTask(taskId, userId) {
|
|
291
|
+
const task = this.taskRepository.findById(taskId.trim());
|
|
292
|
+
if (!task || task.userId !== userId) {
|
|
293
|
+
throw new AppError({
|
|
294
|
+
statusCode: 404,
|
|
295
|
+
errorCode: "OFFICE_TASK_NOT_FOUND",
|
|
296
|
+
detail: "未找到对应办公任务"
|
|
297
|
+
});
|
|
298
|
+
}
|
|
299
|
+
return task;
|
|
300
|
+
}
|
|
301
|
+
requireActiveConnector(connectorIdOrKey) {
|
|
302
|
+
const connectorRef = connectorIdOrKey.trim();
|
|
303
|
+
const connector = this.connectorRepository.findById(connectorRef)
|
|
304
|
+
?? this.connectorRepository.findByKey(connectorRef);
|
|
305
|
+
if (!connector) {
|
|
306
|
+
throw new AppError({
|
|
307
|
+
statusCode: 404,
|
|
308
|
+
errorCode: "OFFICE_CONNECTOR_NOT_FOUND",
|
|
309
|
+
detail: "未找到对应连接器",
|
|
310
|
+
field: "connectorId"
|
|
311
|
+
});
|
|
312
|
+
}
|
|
313
|
+
if (connector.status !== "active") {
|
|
314
|
+
throw new AppError({
|
|
315
|
+
statusCode: 409,
|
|
316
|
+
errorCode: "OFFICE_CONNECTOR_DISABLED",
|
|
317
|
+
detail: "当前连接器不可用",
|
|
318
|
+
field: "connectorId"
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
return connector;
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
function resolveOfficeArtifactFileContentType(fileName) {
|
|
325
|
+
const ext = path.extname(fileName).toLowerCase();
|
|
326
|
+
switch (ext) {
|
|
327
|
+
case ".png":
|
|
328
|
+
return "image/png";
|
|
329
|
+
case ".jpg":
|
|
330
|
+
case ".jpeg":
|
|
331
|
+
return "image/jpeg";
|
|
332
|
+
case ".webp":
|
|
333
|
+
return "image/webp";
|
|
334
|
+
case ".gif":
|
|
335
|
+
return "image/gif";
|
|
336
|
+
case ".pdf":
|
|
337
|
+
return "application/pdf";
|
|
338
|
+
case ".html":
|
|
339
|
+
return "text/html; charset=utf-8";
|
|
340
|
+
case ".json":
|
|
341
|
+
return "application/json; charset=utf-8";
|
|
342
|
+
case ".txt":
|
|
343
|
+
case ".md":
|
|
344
|
+
return "text/plain; charset=utf-8";
|
|
345
|
+
default:
|
|
346
|
+
return "application/octet-stream";
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
function normalizeNullableText(value) {
|
|
350
|
+
if (typeof value !== "string") {
|
|
351
|
+
return null;
|
|
352
|
+
}
|
|
353
|
+
const trimmed = value.trim();
|
|
354
|
+
return trimmed.length > 0 ? trimmed : null;
|
|
355
|
+
}
|
|
356
|
+
function isMutableTaskStatus(status) {
|
|
357
|
+
return ["draft", "pending_approval", "ready", "running", "paused", "waiting_external"].includes(status);
|
|
358
|
+
}
|
|
359
|
+
//# sourceMappingURL=office-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"office-service.js","sourceRoot":"","sources":["../../../../src/modules/office/office-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ const SUPPORTED_SKILL_PROVIDERS = new Set([
|
|
|
7
7
|
"legna-code"
|
|
8
8
|
]);
|
|
9
9
|
const MAX_VISIBLE_COMMANDS = 80;
|
|
10
|
+
const OPENCLI_BRIDGE_SKILL_DESCRIPTION = "Use when the user needs website or platform data through the OpenCLI commands enabled in this CodingNS managed session. Always treat OpenCLI as a managed runtime: check the enabled catalog first, only call enabled commands, and remember browser-dependent commands may still fail in the current environment.";
|
|
10
11
|
export class OpenCliBridgeSkillService {
|
|
11
12
|
providerRepository;
|
|
12
13
|
catalogEntryRepository;
|
|
@@ -47,11 +48,14 @@ export class OpenCliBridgeSkillService {
|
|
|
47
48
|
}
|
|
48
49
|
function buildSkillMarkdown(entries) {
|
|
49
50
|
const siteSummaries = buildSiteSummaries(entries);
|
|
50
|
-
const
|
|
51
|
-
const
|
|
51
|
+
const publicVisibleCommands = entries.filter((entry) => !entry.browser).slice(0, MAX_VISIBLE_COMMANDS);
|
|
52
|
+
const hiddenPublicCommandCount = entries.filter((entry) => !entry.browser).length - publicVisibleCommands.length;
|
|
53
|
+
const browserDependentCommands = entries.filter((entry) => entry.browser);
|
|
54
|
+
const browserDependentPreview = browserDependentCommands.slice(0, 12);
|
|
55
|
+
const hiddenBrowserCommandCount = browserDependentCommands.length - browserDependentPreview.length;
|
|
52
56
|
return `---
|
|
53
57
|
name: codingns-opencli
|
|
54
|
-
description:
|
|
58
|
+
description: ${JSON.stringify(OPENCLI_BRIDGE_SKILL_DESCRIPTION)}
|
|
55
59
|
---
|
|
56
60
|
|
|
57
61
|
# CodingNS OpenCLI
|
|
@@ -67,16 +71,20 @@ description: Use when the user needs website or platform data through the OpenCL
|
|
|
67
71
|
- 不要假设 OpenCLI 全目录都可用,只认当前 skill 里列出的启用站点和启用命令。
|
|
68
72
|
- 如果不确定当前 runtime 里到底有哪些命令,先执行 \`opencli list -f json\`。
|
|
69
73
|
- 如果某个命令标记为“依赖浏览器”,那只表示目录里存在,不表示当前环境一定能跑通。
|
|
74
|
+
- browser-dependent 的 OpenCLI 命令不是通用浏览器自动化入口,不要把它当成 \`office.browser.*\` 的替代品。
|
|
75
|
+
- 只要任务涉及登录态、个人账户、订单、购物车、私有页面、验证码、企业后台、表单提交、下载文件、点击页面控件、复用人工已登录 Chrome/Edge,一律不要直接调用 browser-dependent 的 OpenCLI 站点命令。
|
|
76
|
+
- 上面这类真实站点操作,在工作区会话里必须优先走 \`office.browser.*\`;如果要真实浏览器调试,应显式传 \`executionBackend=opencli_bridge\`。
|
|
70
77
|
- 如果 \`opencli list -f json\` 或具体命令报不存在、桥接缺失、浏览器错误,就直接按事实说明,不要编造结果。
|
|
71
78
|
- 当前 skill 只负责 OpenCLI 桥接,不负责替代普通 shell 推理。
|
|
72
79
|
|
|
73
80
|
## 默认工作流
|
|
74
81
|
|
|
75
|
-
1.
|
|
82
|
+
1. 用户要抓公开站点、公开页面、公开榜单、公开帖子、公开趋势数据时,优先判断是不是适合走 OpenCLI。
|
|
76
83
|
2. 不确定命令名或当前可用目录时,先跑 \`opencli list -f json\`。
|
|
77
|
-
3.
|
|
78
|
-
4.
|
|
79
|
-
5.
|
|
84
|
+
3. 如果是登录、账户、后台、下单、订单、验证码、页面交互或真实浏览器操作,不要选 OpenCLI,直接回到 \`office.browser.*\`。
|
|
85
|
+
4. 只从当前启用命令里挑一个最贴切的 \`site/name\` 去执行。
|
|
86
|
+
5. 如果命令依赖浏览器,先提醒它可能失败;如果用户仍要继续,再执行一次真实命令,不要伪造成功。
|
|
87
|
+
6. 失败时先回传真实错误,再决定是否换命令或回退别的方案。
|
|
80
88
|
|
|
81
89
|
## 当前启用站点
|
|
82
90
|
|
|
@@ -84,25 +92,41 @@ ${siteSummaries.length > 0
|
|
|
84
92
|
? siteSummaries.map((summary) => `- ${summary}`).join("\n")
|
|
85
93
|
: "- 当前没有启用任何站点"}
|
|
86
94
|
|
|
87
|
-
##
|
|
95
|
+
## 当前默认可见命令
|
|
88
96
|
|
|
89
|
-
|
|
90
|
-
|
|
97
|
+
这里只列默认建议直接调用的公开数据命令。browser-dependent 命令即使存在,也不应该在真实站点任务里替代 \`office.browser.*\`。
|
|
98
|
+
|
|
99
|
+
${publicVisibleCommands.length > 0
|
|
100
|
+
? publicVisibleCommands.map((entry) => {
|
|
91
101
|
const suffix = entry.browser ? "依赖浏览器" : "可直接运行";
|
|
92
102
|
const description = entry.description.trim() || "未写说明";
|
|
93
103
|
return `- \`${entry.commandId}\`:${description};${suffix}`;
|
|
94
104
|
}).join("\n")
|
|
95
|
-
: "-
|
|
96
|
-
${
|
|
105
|
+
: "- 当前没有默认建议直接调用的公开命令"}
|
|
106
|
+
${hiddenPublicCommandCount > 0 ? `\n- 其余还有 ${hiddenPublicCommandCount} 个公开命令未展开,执行前可用 \`opencli list -f json\` 再确认。` : ""}
|
|
107
|
+
|
|
108
|
+
## browser-dependent 命令
|
|
109
|
+
|
|
110
|
+
下面这些命令只是说明 runtime 目录里存在对应桥接命令,不代表应该把它们当成正式浏览器任务入口。
|
|
111
|
+
|
|
112
|
+
${browserDependentPreview.length > 0
|
|
113
|
+
? browserDependentPreview.map((entry) => {
|
|
114
|
+
const description = entry.description.trim() || "未写说明";
|
|
115
|
+
return `- \`${entry.commandId}\`:${description};只可用于受控的 OpenCLI 抓取,不可替代 \`office.browser.*\``;
|
|
116
|
+
}).join("\n")
|
|
117
|
+
: "- 当前没有 browser-dependent 命令"}
|
|
118
|
+
${hiddenBrowserCommandCount > 0 ? `\n- 其余还有 ${hiddenBrowserCommandCount} 个 browser-dependent 命令未展开;如确实需要查看目录,只能用 \`opencli list -f json\` 自查,不能默认把它们当成真实站点任务入口。` : ""}
|
|
97
119
|
`;
|
|
98
120
|
}
|
|
99
121
|
function buildOpenAiAgentPrompt() {
|
|
100
122
|
return [
|
|
101
123
|
"language: zh-CN",
|
|
102
124
|
"default_prompt: |",
|
|
103
|
-
"
|
|
125
|
+
" 当用户要公开站点、公开页面、公开榜单、公开帖子或公开趋势数据时,优先检查 $codingns-opencli。",
|
|
104
126
|
" 先看 skill 里列出的启用命令;如果不确定当前 runtime 目录,再执行 `opencli list -f json`。",
|
|
105
|
-
" 只能调用当前启用的 site/name,不要假设全局 opencli 目录都可用。"
|
|
127
|
+
" 只能调用当前启用的 site/name,不要假设全局 opencli 目录都可用。",
|
|
128
|
+
" 不要把 browser-dependent 的 OpenCLI 命令当成通用浏览器自动化入口。",
|
|
129
|
+
" 只要任务涉及登录、验证码、个人账户、订单、私有页面、企业后台、表单提交、下载文件或复用人工已登录浏览器,一律回到 office.browser.*;如果要真实浏览器调试,显式传 executionBackend=opencli_bridge。"
|
|
106
130
|
].join("\n");
|
|
107
131
|
}
|
|
108
132
|
function buildSiteSummaries(entries) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"opencli-bridge-skill-service.js","sourceRoot":"","sources":["../../../../src/modules/opencli/opencli-bridge-skill-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAM7B,MAAM,8BAA8B,GAAG,kBAAkB,CAAC;AAC1D,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAA6B;IACpE,OAAO;IACP,aAAa;IACb,YAAY;CACb,CAAC,CAAC;AACH,MAAM,oBAAoB,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"opencli-bridge-skill-service.js","sourceRoot":"","sources":["../../../../src/modules/opencli/opencli-bridge-skill-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAM7B,MAAM,8BAA8B,GAAG,kBAAkB,CAAC;AAC1D,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAA6B;IACpE,OAAO;IACP,aAAa;IACb,YAAY;CACb,CAAC,CAAC;AACH,MAAM,oBAAoB,GAAG,EAAE,CAAC;AAChC,MAAM,gCAAgC,GACpC,oTAAoT,CAAC;AAEvT,MAAM,OAAO,yBAAyB;IAEjB;IACA;IAFnB,YACmB,kBAA0D,EAC1D,sBAAmE;QADnE,uBAAkB,GAAlB,kBAAkB,CAAwC;QAC1D,2BAAsB,GAAtB,sBAAsB,CAA6C;IACnF,CAAC;IAEJ,gBAAgB,CAAC,QAAoC;QACnD,OAAO,yBAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,kBAAkB;QAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC;QAE/C,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3E,CAAC;IAED,gBAAgB,CAAC,QAAoC,EAAE,cAAsB;QAC3E,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,8BAA8B,CAAC,CAAC;QAC3F,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB;aACxC,IAAI,EAAE;aACN,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;aAChC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAE5G,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEvE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7F,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,sBAAsB,EAAE,EAAE,MAAM,CAAC,CAAC;IACzG,CAAC;IAED,kBAAkB,CAAC,QAAoC,EAAE,cAAsB;QAC7E,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,OAAO;QACT,CAAC;QAED,EAAE,CAAC,MAAM,CACP,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,8BAA8B,CAAC,EACnE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CACjC,CAAC;IACJ,CAAC;CACF;AAED,SAAS,kBAAkB,CACzB,OAKE;IAEF,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAClD,MAAM,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC,CAAC;IACvG,MAAM,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACjH,MAAM,wBAAwB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1E,MAAM,uBAAuB,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACtE,MAAM,yBAAyB,GAAG,wBAAwB,CAAC,MAAM,GAAG,uBAAuB,CAAC,MAAM,CAAC;IAEnG,OAAO;;eAEM,IAAI,CAAC,SAAS,CAAC,gCAAgC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiC7D,aAAa,CAAC,MAAM,GAAG,CAAC;QACtB,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC3D,CAAC,CAAC,cAAc;;;;;;EAMlB,qBAAqB,CAAC,MAAM,GAAG,CAAC;QAC9B,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACpC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;YACjD,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC;YACvD,OAAO,OAAO,KAAK,CAAC,SAAS,MAAM,WAAW,IAAI,MAAM,EAAE,CAAC;QAC7D,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACb,CAAC,CAAC,qBAAqB;EACzB,wBAAwB,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,wBAAwB,+CAA+C,CAAC,CAAC,CAAC,EAAE;;;;;;EAMvH,uBAAuB,CAAC,MAAM,GAAG,CAAC;QAChC,CAAC,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACtC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC;YACvD,OAAO,OAAO,KAAK,CAAC,SAAS,MAAM,WAAW,+CAA+C,CAAC;QAChG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACb,CAAC,CAAC,6BAA6B;EACjC,yBAAyB,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,yBAAyB,yFAAyF,CAAC,CAAC,CAAC,EAAE;CACpK,CAAC;AACF,CAAC;AAED,SAAS,sBAAsB;IAC7B,OAAO;QACL,iBAAiB;QACjB,mBAAmB;QACnB,2DAA2D;QAC3D,oEAAoE;QACpE,6CAA6C;QAC7C,mDAAmD;QACnD,6HAA6H;KAC9H,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,SAAS,kBAAkB,CACzB,OAGE;IAEF,MAAM,OAAO,GAAG,IAAI,GAAG,EAAuD,CAAC;IAE/E,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI;YACzC,KAAK,EAAE,CAAC;YACR,gBAAgB,EAAE,CAAC;SACpB,CAAC;QAEF,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC;QACnB,OAAO,CAAC,gBAAgB,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;SAC1B,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;SACpD,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CACvB,OAAO,CAAC,gBAAgB,GAAG,CAAC;QAC1B,CAAC,CAAC,GAAG,IAAI,IAAI,OAAO,CAAC,KAAK,WAAW,OAAO,CAAC,gBAAgB,SAAS;QACtE,CAAC,CAAC,GAAG,IAAI,IAAI,OAAO,CAAC,KAAK,YAAY,CACzC,CAAC;AACN,CAAC"}
|
|
@@ -14,10 +14,14 @@ export interface OpenCliInstallDiscoveryResult {
|
|
|
14
14
|
export interface OpenCliInstallDiscoveryOptions {
|
|
15
15
|
env?: NodeJS.ProcessEnv;
|
|
16
16
|
catalogRootCandidates?: readonly string[];
|
|
17
|
+
packagedInstallRootCandidates?: readonly string[];
|
|
17
18
|
}
|
|
18
19
|
export declare class OpenCliInstallDiscovery {
|
|
19
20
|
private readonly env;
|
|
20
21
|
private readonly catalogRootCandidates;
|
|
22
|
+
private readonly packagedInstallRootCandidates;
|
|
23
|
+
private readonly hasExplicitPackagedInstallCandidates;
|
|
21
24
|
constructor(options?: OpenCliInstallDiscoveryOptions);
|
|
22
25
|
discover(): OpenCliInstallDiscoveryResult;
|
|
26
|
+
private resolvePackagedInstall;
|
|
23
27
|
}
|