@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
package/bin/codingns.mjs
CHANGED
|
@@ -40,6 +40,9 @@ switch (command) {
|
|
|
40
40
|
case "opencli":
|
|
41
41
|
await runOpenCliCommand(argv);
|
|
42
42
|
break;
|
|
43
|
+
case "mcp":
|
|
44
|
+
await runMcpCommand(argv);
|
|
45
|
+
break;
|
|
43
46
|
default:
|
|
44
47
|
console.error(`[codingns] 不支持的命令:${command}`);
|
|
45
48
|
printHelp(1);
|
|
@@ -606,6 +609,21 @@ async function runAssistantCommand(argv) {
|
|
|
606
609
|
projectId: readOptionalTrimmedValue(options.values["project-id"])
|
|
607
610
|
})));
|
|
608
611
|
return;
|
|
612
|
+
case "terminals:create":
|
|
613
|
+
await printAssistantResponse(await requestAssistant({
|
|
614
|
+
method: "POST",
|
|
615
|
+
path: "/api/assistant/terminals",
|
|
616
|
+
argv: rest,
|
|
617
|
+
supportedOptions: ["workspace-id", "project-id", "name", "cwd", "shell"],
|
|
618
|
+
helpTopic: "terminals.create"
|
|
619
|
+
}, (options) => ({
|
|
620
|
+
workspaceId: readOptionalTrimmedValue(options.values["workspace-id"]),
|
|
621
|
+
projectId: readOptionalTrimmedValue(options.values["project-id"]),
|
|
622
|
+
name: readOptionalTrimmedValue(options.values.name),
|
|
623
|
+
cwd: readOptionalTrimmedValue(options.values.cwd),
|
|
624
|
+
shell: readOptionalTrimmedValue(options.values.shell)
|
|
625
|
+
})));
|
|
626
|
+
return;
|
|
609
627
|
case "terminals:history": {
|
|
610
628
|
const [terminalId, ...tail] = rest;
|
|
611
629
|
await printAssistantResponse(await requestAssistant({
|
|
@@ -627,9 +645,11 @@ async function runAssistantCommand(argv) {
|
|
|
627
645
|
path: `/api/assistant/terminals/${requirePositional(terminalId, "terminalId")}/input`,
|
|
628
646
|
argv: tail,
|
|
629
647
|
supportedOptions: ["input"],
|
|
648
|
+
supportedFlags: ["confirm"],
|
|
630
649
|
helpTopic: "terminals.send"
|
|
631
650
|
}, (options) => ({
|
|
632
|
-
content: requireOptionValue(options.values.input, "input")
|
|
651
|
+
content: requireOptionValue(options.values.input, "input"),
|
|
652
|
+
confirm: options.flags.confirm === true
|
|
633
653
|
})));
|
|
634
654
|
return;
|
|
635
655
|
}
|
|
@@ -639,7 +659,245 @@ async function runAssistantCommand(argv) {
|
|
|
639
659
|
method: "DELETE",
|
|
640
660
|
path: `/api/assistant/terminals/${requirePositional(terminalId, "terminalId")}`,
|
|
641
661
|
argv: tail,
|
|
662
|
+
supportedFlags: ["confirm"],
|
|
642
663
|
helpTopic: "terminals.close"
|
|
664
|
+
}, (options) => ({
|
|
665
|
+
confirm: options.flags.confirm === true
|
|
666
|
+
})));
|
|
667
|
+
return;
|
|
668
|
+
}
|
|
669
|
+
case "office:document-create":
|
|
670
|
+
await printAssistantResponse(await requestAssistant({
|
|
671
|
+
method: "POST",
|
|
672
|
+
path: "/api/assistant/office/documents",
|
|
673
|
+
argv: rest,
|
|
674
|
+
supportedOptions: ["workspace-id", "title", "template-id", "template-key", "summary", "content-json", "outline-json"],
|
|
675
|
+
helpTopic: "office.document-create"
|
|
676
|
+
}, (options) => ({
|
|
677
|
+
workspaceId: readOptionalTrimmedValue(options.values["workspace-id"]),
|
|
678
|
+
title: requireOptionValue(options.values.title, "title"),
|
|
679
|
+
templateId: readOptionalTrimmedValue(options.values["template-id"]),
|
|
680
|
+
templateKey: readOptionalTrimmedValue(options.values["template-key"]),
|
|
681
|
+
summary: readOptionalTrimmedValue(options.values.summary),
|
|
682
|
+
content: parseJsonOption(options.values["content-json"], "content-json"),
|
|
683
|
+
outline: parseJsonOption(options.values["outline-json"], "outline-json")
|
|
684
|
+
})));
|
|
685
|
+
return;
|
|
686
|
+
case "office:document-update": {
|
|
687
|
+
const [documentId, ...tail] = rest;
|
|
688
|
+
await printAssistantResponse(await requestAssistant({
|
|
689
|
+
method: "PATCH",
|
|
690
|
+
path: `/api/assistant/office/documents/${requirePositional(documentId, "documentId")}`,
|
|
691
|
+
argv: tail,
|
|
692
|
+
supportedOptions: ["title", "template-id", "summary", "status", "content-json", "outline-json"],
|
|
693
|
+
helpTopic: "office.document-update"
|
|
694
|
+
}, (options) => ({
|
|
695
|
+
title: readOptionalTrimmedValue(options.values.title),
|
|
696
|
+
templateId: readOptionalTrimmedValue(options.values["template-id"]),
|
|
697
|
+
summary: readOptionalTrimmedValue(options.values.summary),
|
|
698
|
+
status: readOptionalTrimmedValue(options.values.status),
|
|
699
|
+
content: parseJsonOption(options.values["content-json"], "content-json"),
|
|
700
|
+
outline: parseJsonOption(options.values["outline-json"], "outline-json")
|
|
701
|
+
})));
|
|
702
|
+
return;
|
|
703
|
+
}
|
|
704
|
+
case "office:document-export": {
|
|
705
|
+
const [documentId, ...tail] = rest;
|
|
706
|
+
await printAssistantResponse(await requestAssistant({
|
|
707
|
+
method: "POST",
|
|
708
|
+
path: `/api/assistant/office/documents/${requirePositional(documentId, "documentId")}/export`,
|
|
709
|
+
argv: tail,
|
|
710
|
+
supportedOptions: ["workspace-id", "format", "risk-level", "execute"],
|
|
711
|
+
helpTopic: "office.document-export"
|
|
712
|
+
}, (options) => ({
|
|
713
|
+
workspaceId: readOptionalTrimmedValue(options.values["workspace-id"]),
|
|
714
|
+
format: readOptionalTrimmedValue(options.values.format),
|
|
715
|
+
riskLevel: readOptionalTrimmedValue(options.values["risk-level"]),
|
|
716
|
+
execute: parseOptionalBooleanOption(options.values.execute, "execute")
|
|
717
|
+
})));
|
|
718
|
+
return;
|
|
719
|
+
}
|
|
720
|
+
case "office:document-task": {
|
|
721
|
+
const [taskId, ...tail] = rest;
|
|
722
|
+
await printAssistantResponse(await requestAssistant({
|
|
723
|
+
method: "GET",
|
|
724
|
+
path: `/api/assistant/office/document-tasks/${requirePositional(taskId, "taskId")}`,
|
|
725
|
+
argv: tail,
|
|
726
|
+
helpTopic: "office.document-task"
|
|
727
|
+
}));
|
|
728
|
+
return;
|
|
729
|
+
}
|
|
730
|
+
case "office:browser-profiles":
|
|
731
|
+
case "office:browser-profile-list":
|
|
732
|
+
await printAssistantResponse(await requestAssistant({
|
|
733
|
+
method: "GET",
|
|
734
|
+
path: "/api/assistant/office/browser/profiles",
|
|
735
|
+
argv: rest,
|
|
736
|
+
supportedOptions: ["workspace-id"],
|
|
737
|
+
helpTopic: "office.browser-profile-list"
|
|
738
|
+
}, (options) => ({
|
|
739
|
+
workspaceId: readOptionalTrimmedValue(options.values["workspace-id"])
|
|
740
|
+
})));
|
|
741
|
+
return;
|
|
742
|
+
case "office:browser-profile-create":
|
|
743
|
+
await printAssistantResponse(await requestAssistant({
|
|
744
|
+
method: "POST",
|
|
745
|
+
path: "/api/assistant/office/browser/profiles",
|
|
746
|
+
argv: rest,
|
|
747
|
+
supportedOptions: ["workspace-id", "engine", "mode", "display-name", "ownership-scope", "cdp-endpoint"],
|
|
748
|
+
helpTopic: "office.browser-profile-create"
|
|
749
|
+
}, (options) => ({
|
|
750
|
+
workspaceId: readOptionalTrimmedValue(options.values["workspace-id"]),
|
|
751
|
+
engine: readOptionalTrimmedValue(options.values.engine),
|
|
752
|
+
mode: readOptionalTrimmedValue(options.values.mode),
|
|
753
|
+
displayName: readOptionalTrimmedValue(options.values["display-name"]),
|
|
754
|
+
ownershipScope: readOptionalTrimmedValue(options.values["ownership-scope"]),
|
|
755
|
+
cdpEndpoint: readOptionalTrimmedValue(options.values["cdp-endpoint"])
|
|
756
|
+
})));
|
|
757
|
+
return;
|
|
758
|
+
case "office:browser-profile-get": {
|
|
759
|
+
const [profileId, ...tail] = rest;
|
|
760
|
+
await printAssistantResponse(await requestAssistant({
|
|
761
|
+
method: "GET",
|
|
762
|
+
path: `/api/assistant/office/browser/profiles/${requirePositional(profileId, "profileId")}`,
|
|
763
|
+
argv: tail,
|
|
764
|
+
helpTopic: "office.browser-profile-get"
|
|
765
|
+
}));
|
|
766
|
+
return;
|
|
767
|
+
}
|
|
768
|
+
case "office:browser-task-create":
|
|
769
|
+
await printAssistantResponse(await requestAssistant({
|
|
770
|
+
method: "POST",
|
|
771
|
+
path: "/api/assistant/office/browser/tasks",
|
|
772
|
+
argv: rest,
|
|
773
|
+
supportedOptions: ["workspace-id", "title", "profile-id", "risk-level", "execution-backend", "execute", "input-json"],
|
|
774
|
+
helpTopic: "office.browser-task-create"
|
|
775
|
+
}, (options) => ({
|
|
776
|
+
workspaceId: readOptionalTrimmedValue(options.values["workspace-id"]),
|
|
777
|
+
title: readOptionalTrimmedValue(options.values.title),
|
|
778
|
+
profileId: readOptionalTrimmedValue(options.values["profile-id"]),
|
|
779
|
+
riskLevel: readOptionalTrimmedValue(options.values["risk-level"]),
|
|
780
|
+
executionBackend: readOptionalTrimmedValue(options.values["execution-backend"]),
|
|
781
|
+
execute: parseOptionalBooleanOption(options.values.execute, "execute"),
|
|
782
|
+
input: parseJsonOption(options.values["input-json"], "input-json")
|
|
783
|
+
})));
|
|
784
|
+
return;
|
|
785
|
+
case "office:browser-task-get": {
|
|
786
|
+
const [taskId, ...tail] = rest;
|
|
787
|
+
await printAssistantResponse(await requestAssistant({
|
|
788
|
+
method: "GET",
|
|
789
|
+
path: `/api/assistant/office/browser/tasks/${requirePositional(taskId, "taskId")}`,
|
|
790
|
+
argv: tail,
|
|
791
|
+
helpTopic: "office.browser-task-get"
|
|
792
|
+
}));
|
|
793
|
+
return;
|
|
794
|
+
}
|
|
795
|
+
case "office:ops-targets":
|
|
796
|
+
await printAssistantResponse(await requestAssistant({
|
|
797
|
+
method: "GET",
|
|
798
|
+
path: "/api/assistant/office/ops/targets",
|
|
799
|
+
argv: rest,
|
|
800
|
+
supportedOptions: ["workspace-id", "kind", "status"],
|
|
801
|
+
helpTopic: "office.ops-targets"
|
|
802
|
+
}, (options) => ({
|
|
803
|
+
workspaceId: readOptionalTrimmedValue(options.values["workspace-id"]),
|
|
804
|
+
kind: readOptionalTrimmedValue(options.values.kind),
|
|
805
|
+
status: readOptionalTrimmedValue(options.values.status)
|
|
806
|
+
})));
|
|
807
|
+
return;
|
|
808
|
+
case "office:ops-target-create":
|
|
809
|
+
await printAssistantResponse(await requestAssistant({
|
|
810
|
+
method: "POST",
|
|
811
|
+
path: "/api/assistant/office/ops/targets",
|
|
812
|
+
argv: rest,
|
|
813
|
+
supportedOptions: ["workspace-id", "kind", "display-name", "environment", "credential-ref", "config-json"],
|
|
814
|
+
helpTopic: "office.ops-target-create"
|
|
815
|
+
}, (options) => ({
|
|
816
|
+
workspaceId: readOptionalTrimmedValue(options.values["workspace-id"]),
|
|
817
|
+
kind: readOptionalTrimmedValue(options.values.kind),
|
|
818
|
+
displayName: requireOptionValue(options.values["display-name"], "display-name"),
|
|
819
|
+
environment: readOptionalTrimmedValue(options.values.environment),
|
|
820
|
+
credentialRef: readOptionalTrimmedValue(options.values["credential-ref"]),
|
|
821
|
+
config: parseJsonOption(options.values["config-json"], "config-json") ?? {}
|
|
822
|
+
})));
|
|
823
|
+
return;
|
|
824
|
+
case "office:ops-target-get": {
|
|
825
|
+
const [targetId, ...tail] = rest;
|
|
826
|
+
await printAssistantResponse(await requestAssistant({
|
|
827
|
+
method: "GET",
|
|
828
|
+
path: `/api/assistant/office/ops/targets/${requirePositional(targetId, "targetId")}`,
|
|
829
|
+
argv: tail,
|
|
830
|
+
helpTopic: "office.ops-target-get"
|
|
831
|
+
}));
|
|
832
|
+
return;
|
|
833
|
+
}
|
|
834
|
+
case "office:ops-ssh-task-create":
|
|
835
|
+
await printAssistantResponse(await requestAssistant({
|
|
836
|
+
method: "POST",
|
|
837
|
+
path: "/api/assistant/office/ops/ssh-tasks",
|
|
838
|
+
argv: rest,
|
|
839
|
+
supportedOptions: ["title", "target-id", "risk-level", "execute", "input-json"],
|
|
840
|
+
helpTopic: "office.ops-ssh-task-create"
|
|
841
|
+
}, (options) => ({
|
|
842
|
+
title: readOptionalTrimmedValue(options.values.title),
|
|
843
|
+
targetId: requireOptionValue(options.values["target-id"], "target-id"),
|
|
844
|
+
riskLevel: readOptionalTrimmedValue(options.values["risk-level"]),
|
|
845
|
+
execute: parseOptionalBooleanOption(options.values.execute, "execute"),
|
|
846
|
+
input: parseJsonOption(options.values["input-json"], "input-json")
|
|
847
|
+
})));
|
|
848
|
+
return;
|
|
849
|
+
case "office:ops-task-execute": {
|
|
850
|
+
const [taskId, ...tail] = rest;
|
|
851
|
+
await printAssistantResponse(await requestAssistant({
|
|
852
|
+
method: "POST",
|
|
853
|
+
path: `/api/assistant/office/ops/tasks/${requirePositional(taskId, "taskId")}/execute`,
|
|
854
|
+
argv: tail,
|
|
855
|
+
supportedFlags: ["confirm"],
|
|
856
|
+
helpTopic: "office.ops-task-execute"
|
|
857
|
+
}, (options) => ({
|
|
858
|
+
confirm: options.flags.confirm === true
|
|
859
|
+
})));
|
|
860
|
+
return;
|
|
861
|
+
}
|
|
862
|
+
case "office:task-approval-reply": {
|
|
863
|
+
const [approvalId, ...tail] = rest;
|
|
864
|
+
await printAssistantResponse(await requestAssistant({
|
|
865
|
+
method: "POST",
|
|
866
|
+
path: `/api/assistant/office/task-approvals/${requirePositional(approvalId, "approvalId")}/reply`,
|
|
867
|
+
argv: tail,
|
|
868
|
+
supportedOptions: ["status", "decision-note"],
|
|
869
|
+
helpTopic: "office.task-approval-reply"
|
|
870
|
+
}, (options) => ({
|
|
871
|
+
status: readOptionalTrimmedValue(options.values.status) ?? "approved",
|
|
872
|
+
decisionNote: readOptionalTrimmedValue(options.values["decision-note"])
|
|
873
|
+
})));
|
|
874
|
+
return;
|
|
875
|
+
}
|
|
876
|
+
case "office:ops-browser-task-create":
|
|
877
|
+
await printAssistantResponse(await requestAssistant({
|
|
878
|
+
method: "POST",
|
|
879
|
+
path: "/api/assistant/office/ops/browser-tasks",
|
|
880
|
+
argv: rest,
|
|
881
|
+
supportedOptions: ["title", "target-id", "profile-id", "execution-backend", "risk-level", "input-json"],
|
|
882
|
+
supportedFlags: ["confirm"],
|
|
883
|
+
helpTopic: "office.ops-browser-task-create"
|
|
884
|
+
}, (options) => ({
|
|
885
|
+
title: readOptionalTrimmedValue(options.values.title),
|
|
886
|
+
targetId: requireOptionValue(options.values["target-id"], "target-id"),
|
|
887
|
+
profileId: readOptionalTrimmedValue(options.values["profile-id"]),
|
|
888
|
+
executionBackend: readOptionalTrimmedValue(options.values["execution-backend"]),
|
|
889
|
+
riskLevel: readOptionalTrimmedValue(options.values["risk-level"]),
|
|
890
|
+
input: parseJsonOption(options.values["input-json"], "input-json"),
|
|
891
|
+
confirm: options.flags.confirm === true
|
|
892
|
+
})));
|
|
893
|
+
return;
|
|
894
|
+
case "office:ops-task-get": {
|
|
895
|
+
const [taskId, ...tail] = rest;
|
|
896
|
+
await printAssistantResponse(await requestAssistant({
|
|
897
|
+
method: "GET",
|
|
898
|
+
path: `/api/assistant/office/ops/tasks/${requirePositional(taskId, "taskId")}`,
|
|
899
|
+
argv: tail,
|
|
900
|
+
helpTopic: "office.ops-task-get"
|
|
643
901
|
}));
|
|
644
902
|
return;
|
|
645
903
|
}
|
|
@@ -658,11 +916,13 @@ async function runAssistantCommand(argv) {
|
|
|
658
916
|
argv: rest,
|
|
659
917
|
supportedOptions: ["workspace-id", "root-path", "command-hint"],
|
|
660
918
|
repeatableOptions: ["command-hint"],
|
|
919
|
+
supportedFlags: ["confirm"],
|
|
661
920
|
helpTopic: "debug-targets.analyze"
|
|
662
921
|
}, (options) => ({
|
|
663
922
|
workspaceId: requireOptionValue(options.values["workspace-id"], "workspace-id"),
|
|
664
923
|
rootPath: requireOptionValue(options.values["root-path"], "root-path"),
|
|
665
|
-
commandHints: readMultiOptionValues(options.values["command-hint"])
|
|
924
|
+
commandHints: readMultiOptionValues(options.values["command-hint"]),
|
|
925
|
+
confirm: options.flags.confirm === true
|
|
666
926
|
})));
|
|
667
927
|
return;
|
|
668
928
|
case "debug-targets:framework-analysis": {
|
|
@@ -681,8 +941,11 @@ async function runAssistantCommand(argv) {
|
|
|
681
941
|
method: "POST",
|
|
682
942
|
path: `/api/assistant/debug-targets/${requirePositional(targetId, "targetId")}/framework-analysis/refresh`,
|
|
683
943
|
argv: tail,
|
|
944
|
+
supportedFlags: ["confirm"],
|
|
684
945
|
helpTopic: "debug-targets.refresh-framework-analysis"
|
|
685
|
-
})
|
|
946
|
+
}, (options) => ({
|
|
947
|
+
confirm: options.flags.confirm === true
|
|
948
|
+
})));
|
|
686
949
|
return;
|
|
687
950
|
}
|
|
688
951
|
case "debug-targets:launch-plan": {
|
|
@@ -693,9 +956,11 @@ async function runAssistantCommand(argv) {
|
|
|
693
956
|
argv: tail,
|
|
694
957
|
supportedOptions: ["port-request"],
|
|
695
958
|
repeatableOptions: ["port-request"],
|
|
959
|
+
supportedFlags: ["confirm"],
|
|
696
960
|
helpTopic: "debug-targets.launch-plan"
|
|
697
961
|
}, (options) => ({
|
|
698
|
-
portRequests: parseDebugPortRequests(options.values["port-request"])
|
|
962
|
+
portRequests: parseDebugPortRequests(options.values["port-request"]),
|
|
963
|
+
confirm: options.flags.confirm === true
|
|
699
964
|
})));
|
|
700
965
|
return;
|
|
701
966
|
}
|
|
@@ -707,11 +972,13 @@ async function runAssistantCommand(argv) {
|
|
|
707
972
|
argv: tail,
|
|
708
973
|
supportedOptions: ["shell", "runtime-type", "port-request"],
|
|
709
974
|
repeatableOptions: ["port-request"],
|
|
975
|
+
supportedFlags: ["confirm"],
|
|
710
976
|
helpTopic: "debug-targets.run"
|
|
711
977
|
}, (options) => ({
|
|
712
978
|
shell: readOptionalTrimmedValue(options.values.shell),
|
|
713
979
|
runtimeType: readOptionalTrimmedValue(options.values["runtime-type"]),
|
|
714
|
-
portRequests: parseDebugPortRequests(options.values["port-request"])
|
|
980
|
+
portRequests: parseDebugPortRequests(options.values["port-request"]),
|
|
981
|
+
confirm: options.flags.confirm === true
|
|
715
982
|
})));
|
|
716
983
|
return;
|
|
717
984
|
}
|
|
@@ -913,8 +1180,11 @@ async function runAssistantCommand(argv) {
|
|
|
913
1180
|
method: "POST",
|
|
914
1181
|
path: `/api/assistant/worktrees/${requirePositional(workspaceId, "workspaceId")}/merge-into-parent`,
|
|
915
1182
|
argv: tail,
|
|
1183
|
+
supportedFlags: ["confirm"],
|
|
916
1184
|
helpTopic: "worktrees.merge"
|
|
917
|
-
})
|
|
1185
|
+
}, (options) => ({
|
|
1186
|
+
confirm: options.flags.confirm === true
|
|
1187
|
+
})));
|
|
918
1188
|
return;
|
|
919
1189
|
}
|
|
920
1190
|
case "worktrees:cleanup": {
|
|
@@ -936,6 +1206,83 @@ async function runAssistantCommand(argv) {
|
|
|
936
1206
|
}
|
|
937
1207
|
}
|
|
938
1208
|
|
|
1209
|
+
async function runMcpCommand(argv) {
|
|
1210
|
+
const [target, action, ...rest] = argv;
|
|
1211
|
+
|
|
1212
|
+
if (!target || isHelpToken(target)) {
|
|
1213
|
+
printMcpHelp(0);
|
|
1214
|
+
}
|
|
1215
|
+
|
|
1216
|
+
if (target !== "workspace-office") {
|
|
1217
|
+
console.error(`[codingns] 不支持的 MCP 目标:${target}`);
|
|
1218
|
+
printMcpHelp(1);
|
|
1219
|
+
}
|
|
1220
|
+
|
|
1221
|
+
if (!action || isHelpToken(action)) {
|
|
1222
|
+
printMcpWorkspaceOfficeHelp(0);
|
|
1223
|
+
}
|
|
1224
|
+
|
|
1225
|
+
switch (action) {
|
|
1226
|
+
case "serve":
|
|
1227
|
+
await runWorkspaceOfficeMcpServe(rest);
|
|
1228
|
+
return;
|
|
1229
|
+
default:
|
|
1230
|
+
console.error(`[codingns] 不支持的 workspace-office MCP 动作:${action}`);
|
|
1231
|
+
printMcpWorkspaceOfficeHelp(1);
|
|
1232
|
+
}
|
|
1233
|
+
}
|
|
1234
|
+
|
|
1235
|
+
async function runWorkspaceOfficeMcpServe(argv) {
|
|
1236
|
+
const options = parseArgs(argv, {
|
|
1237
|
+
supportedOptions: ["base-url", "token", "auth-file"],
|
|
1238
|
+
supportedFlags: []
|
|
1239
|
+
});
|
|
1240
|
+
|
|
1241
|
+
if (options.help) {
|
|
1242
|
+
printMcpWorkspaceOfficeHelp(0);
|
|
1243
|
+
}
|
|
1244
|
+
|
|
1245
|
+
if (options.errors.length > 0) {
|
|
1246
|
+
for (const error of options.errors) {
|
|
1247
|
+
console.error(`[codingns] ${error}`);
|
|
1248
|
+
}
|
|
1249
|
+
printMcpWorkspaceOfficeHelp(1);
|
|
1250
|
+
}
|
|
1251
|
+
|
|
1252
|
+
const authFilePath = readStringOption(
|
|
1253
|
+
options.values["auth-file"],
|
|
1254
|
+
process.env.WORKSPACE_SESSION_AUTH_FILE,
|
|
1255
|
+
process.env.CODINGNS_AUTH_FILE,
|
|
1256
|
+
process.env.BUTLER_AUTH_FILE
|
|
1257
|
+
);
|
|
1258
|
+
const credential = authFilePath
|
|
1259
|
+
? readAssistantCredentialFromFile(path.resolve(authFilePath))
|
|
1260
|
+
: readAssistantCredential();
|
|
1261
|
+
const baseUrl = readStringOption(
|
|
1262
|
+
options.values["base-url"],
|
|
1263
|
+
process.env.CODINGNS_OFFICE_MCP_BASE_URL,
|
|
1264
|
+
credential?.apiBaseUrl ?? ""
|
|
1265
|
+
);
|
|
1266
|
+
const accessToken = readStringOption(
|
|
1267
|
+
options.values.token,
|
|
1268
|
+
process.env.CODINGNS_OFFICE_MCP_ACCESS_TOKEN,
|
|
1269
|
+
credential?.accessToken ?? ""
|
|
1270
|
+
);
|
|
1271
|
+
|
|
1272
|
+
if (!baseUrl) {
|
|
1273
|
+
fail("workspace-office MCP 缺少 baseUrl,请传 --base-url 或提供认证文件");
|
|
1274
|
+
}
|
|
1275
|
+
|
|
1276
|
+
if (!accessToken) {
|
|
1277
|
+
fail("workspace-office MCP 缺少 access token,请传 --token 或提供认证文件");
|
|
1278
|
+
}
|
|
1279
|
+
|
|
1280
|
+
process.env.CODINGNS_OFFICE_MCP_BASE_URL = baseUrl;
|
|
1281
|
+
process.env.CODINGNS_OFFICE_MCP_ACCESS_TOKEN = accessToken;
|
|
1282
|
+
await import("./office-mcp-server.mjs");
|
|
1283
|
+
await new Promise(() => {});
|
|
1284
|
+
}
|
|
1285
|
+
|
|
939
1286
|
async function runSkillsCommand(argv) {
|
|
940
1287
|
const [action, ...rest] = argv;
|
|
941
1288
|
|
|
@@ -1231,7 +1578,7 @@ async function requestAssistant(command, buildPayload) {
|
|
|
1231
1578
|
let response;
|
|
1232
1579
|
|
|
1233
1580
|
try {
|
|
1234
|
-
const usesJsonBody = command.method === "POST" || command.method === "PUT";
|
|
1581
|
+
const usesJsonBody = command.method === "POST" || command.method === "PUT" || command.method === "DELETE";
|
|
1235
1582
|
response = await fetch(url, {
|
|
1236
1583
|
method: command.method,
|
|
1237
1584
|
headers: {
|
|
@@ -1578,6 +1925,15 @@ function readAssistantCredential() {
|
|
|
1578
1925
|
return cachedAssistantCredential;
|
|
1579
1926
|
}
|
|
1580
1927
|
|
|
1928
|
+
cachedAssistantCredential = readAssistantCredentialFromFile(credentialFilePath);
|
|
1929
|
+
return cachedAssistantCredential;
|
|
1930
|
+
}
|
|
1931
|
+
|
|
1932
|
+
function readAssistantCredentialFromFile(credentialFilePath) {
|
|
1933
|
+
if (!credentialFilePath) {
|
|
1934
|
+
return null;
|
|
1935
|
+
}
|
|
1936
|
+
|
|
1581
1937
|
let rawContent;
|
|
1582
1938
|
|
|
1583
1939
|
try {
|
|
@@ -1652,6 +2008,31 @@ function readOptionalTrimmedValue(value) {
|
|
|
1652
2008
|
return normalized.length > 0 ? normalized : null;
|
|
1653
2009
|
}
|
|
1654
2010
|
|
|
2011
|
+
function parseJsonOption(value, field) {
|
|
2012
|
+
const normalized = readOptionalTrimmedValue(value);
|
|
2013
|
+
|
|
2014
|
+
if (!normalized) {
|
|
2015
|
+
return undefined;
|
|
2016
|
+
}
|
|
2017
|
+
|
|
2018
|
+
try {
|
|
2019
|
+
return JSON.parse(normalized);
|
|
2020
|
+
} catch (error) {
|
|
2021
|
+
const detail = error instanceof Error ? error.message : "未知错误";
|
|
2022
|
+
fail(`参数 --${field} 不是合法 JSON:${detail}`);
|
|
2023
|
+
}
|
|
2024
|
+
}
|
|
2025
|
+
|
|
2026
|
+
function parseOptionalBooleanOption(value, field) {
|
|
2027
|
+
const normalized = readOptionalTrimmedValue(value);
|
|
2028
|
+
|
|
2029
|
+
if (normalized === null) {
|
|
2030
|
+
return undefined;
|
|
2031
|
+
}
|
|
2032
|
+
|
|
2033
|
+
return parseBooleanOption(normalized, field);
|
|
2034
|
+
}
|
|
2035
|
+
|
|
1655
2036
|
function readAssistantTerminalHistoryLimitOption(value) {
|
|
1656
2037
|
const normalized = readOptionalTrimmedValue(value);
|
|
1657
2038
|
|
|
@@ -1798,6 +2179,7 @@ codingns 用法:
|
|
|
1798
2179
|
|
|
1799
2180
|
codingns start [--host 0.0.0.0] [--port 3002] [--data-dir ~/.codingns] [--demo]
|
|
1800
2181
|
codingns assistant <group> <action> [options]
|
|
2182
|
+
codingns mcp workspace-office serve [--auth-file <path> | --base-url <url> --token <token>]
|
|
1801
2183
|
codingns provider-sessions <action> [options]
|
|
1802
2184
|
codingns skills <action> [options]
|
|
1803
2185
|
codingns opencli <action> [options]
|
|
@@ -1814,14 +2196,19 @@ assistant 例子:
|
|
|
1814
2196
|
|
|
1815
2197
|
codingns assistant capabilities list --token <token>
|
|
1816
2198
|
codingns assistant projects list --status active --token <token>
|
|
2199
|
+
codingns assistant office browser-profile-list --token <token>
|
|
2200
|
+
codingns assistant office browser-profile-create --engine chrome --mode persistent --display-name "办公 Chrome" --token <token>
|
|
2201
|
+
codingns assistant office browser-task-create --execution-backend opencli_bridge --input-json '{"startUrl":"https://example.invalid","actions":[{"type":"read_dom"}]}' --token <token>
|
|
2202
|
+
codingns assistant office ops-target-create --kind ssh_host --display-name "生产 SSH" --config-json '{"host":"10.0.0.8","username":"root"}' --token <token>
|
|
2203
|
+
codingns assistant office document-create --title "周报" --template-key team.doct.weekly --content-json '{"sections":[]}' --token <token>
|
|
1817
2204
|
codingns assistant workspaces list --token <token>
|
|
1818
|
-
codingns assistant debug-targets analyze --workspace-id <id> --root-path <path> --token <token>
|
|
1819
|
-
codingns assistant debug-targets launch-plan <targetId> --port-request role=backend,cwd=apps/api,port=44001 --token <token>
|
|
2205
|
+
codingns assistant debug-targets analyze --workspace-id <id> --root-path <path> --confirm --token <token>
|
|
2206
|
+
codingns assistant debug-targets launch-plan <targetId> --port-request role=backend,cwd=apps/api,port=44001 --confirm --token <token>
|
|
1820
2207
|
codingns assistant worktrees tree --root-workspace-id <id> --token <token>
|
|
1821
2208
|
codingns assistant sessions send <sessionId> --message "继续修复类型错误" --token <token>
|
|
1822
2209
|
codingns assistant follow-ups continue <taskId> --summary "目标还没完成" --continue-prompt "继续补齐剩余实现" --token <token>
|
|
1823
|
-
codingns assistant terminals send <terminalId> --input "npm test\\n" --token <token>
|
|
1824
|
-
codingns assistant terminals close <terminalId> --token <token>
|
|
2210
|
+
codingns assistant terminals send <terminalId> --input "npm test\\n" --confirm --token <token>
|
|
2211
|
+
codingns assistant terminals close <terminalId> --confirm --token <token>
|
|
1825
2212
|
|
|
1826
2213
|
skills 例子:
|
|
1827
2214
|
|
|
@@ -1835,6 +2222,10 @@ opencli 例子:
|
|
|
1835
2222
|
codingns opencli check --token <token>
|
|
1836
2223
|
codingns opencli config --enabled true --command-id hackernews/top --token <token>
|
|
1837
2224
|
|
|
2225
|
+
mcp 例子:
|
|
2226
|
+
|
|
2227
|
+
codingns mcp workspace-office serve --auth-file ~/.codingns/host/workspace-session-runtime/<workspaceId>/<sessionId>/WORKSPACE_SESSION_AUTH.json
|
|
2228
|
+
|
|
1838
2229
|
provider-sessions 例子:
|
|
1839
2230
|
|
|
1840
2231
|
codingns provider-sessions delete --provider codex --provider-session-id <id> --raw-store-ref <ref>
|
|
@@ -1849,6 +2240,52 @@ provider-sessions 例子:
|
|
|
1849
2240
|
process.exit(exitCode);
|
|
1850
2241
|
}
|
|
1851
2242
|
|
|
2243
|
+
function printMcpHelp(exitCode) {
|
|
2244
|
+
const output = `
|
|
2245
|
+
codingns mcp 用法:
|
|
2246
|
+
|
|
2247
|
+
codingns mcp workspace-office serve [--auth-file <path> | --base-url <url> --token <token>]
|
|
2248
|
+
|
|
2249
|
+
说明:
|
|
2250
|
+
|
|
2251
|
+
workspace-office 会启动工作区专用 office MCP server。
|
|
2252
|
+
它只暴露当前工作区允许的 office.document.* / office.browser.* / office.ops.*。
|
|
2253
|
+
`.trim();
|
|
2254
|
+
|
|
2255
|
+
if (exitCode === 0) {
|
|
2256
|
+
console.log(output);
|
|
2257
|
+
} else {
|
|
2258
|
+
console.error(output);
|
|
2259
|
+
}
|
|
2260
|
+
|
|
2261
|
+
process.exit(exitCode);
|
|
2262
|
+
}
|
|
2263
|
+
|
|
2264
|
+
function printMcpWorkspaceOfficeHelp(exitCode) {
|
|
2265
|
+
const output = `
|
|
2266
|
+
codingns mcp workspace-office serve
|
|
2267
|
+
|
|
2268
|
+
用途:
|
|
2269
|
+
启动工作区专用 office MCP server,供 Codex / Claude / OpenCode 这类支持 MCP 的 CLI 直接挂正式办公工具。
|
|
2270
|
+
|
|
2271
|
+
用法:
|
|
2272
|
+
codingns mcp workspace-office serve [--auth-file <path> | --base-url <url> --token <token>]
|
|
2273
|
+
|
|
2274
|
+
说明:
|
|
2275
|
+
- 优先复用工作区 scoped 认证文件。
|
|
2276
|
+
- 真实执行仍走 Host /api/assistant/office/*。
|
|
2277
|
+
- 暴露工具只包含当前工作区允许的 office.document.* / office.browser.* / office.ops.*。
|
|
2278
|
+
`.trim();
|
|
2279
|
+
|
|
2280
|
+
if (exitCode === 0) {
|
|
2281
|
+
console.log(output);
|
|
2282
|
+
} else {
|
|
2283
|
+
console.error(output);
|
|
2284
|
+
}
|
|
2285
|
+
|
|
2286
|
+
process.exit(exitCode);
|
|
2287
|
+
}
|
|
2288
|
+
|
|
1852
2289
|
function printAssistantHelpTopic(topic, exitCode) {
|
|
1853
2290
|
const output = getAssistantHelpText(topic);
|
|
1854
2291
|
|
|
@@ -1899,6 +2336,259 @@ function printProviderSessionsHelpTopic(topic, exitCode) {
|
|
|
1899
2336
|
|
|
1900
2337
|
function getAssistantHelpText(topic) {
|
|
1901
2338
|
switch (topic) {
|
|
2339
|
+
case "office":
|
|
2340
|
+
return `
|
|
2341
|
+
codingns assistant office
|
|
2342
|
+
|
|
2343
|
+
可用动作:
|
|
2344
|
+
document-create 创建办公文档
|
|
2345
|
+
document-update 更新办公文档
|
|
2346
|
+
document-export 创建或执行文档导出任务
|
|
2347
|
+
document-task 读取文档导出任务
|
|
2348
|
+
browser-profile-list 列出浏览器 Profile
|
|
2349
|
+
browser-profile-create 创建浏览器 Profile
|
|
2350
|
+
browser-profile-get 读取浏览器 Profile
|
|
2351
|
+
browser-task-create 创建并可选执行浏览器任务
|
|
2352
|
+
browser-task-get 读取浏览器任务
|
|
2353
|
+
ops-targets 列出运维目标
|
|
2354
|
+
ops-target-create 创建运维目标
|
|
2355
|
+
ops-target-get 读取运维目标
|
|
2356
|
+
ops-ssh-task-create 创建 SSH 运维任务
|
|
2357
|
+
ops-task-execute 执行已创建的 SSH 运维任务
|
|
2358
|
+
task-approval-reply 回复办公任务审批
|
|
2359
|
+
ops-browser-task-create 创建浏览器运维任务
|
|
2360
|
+
ops-task-get 读取运维任务
|
|
2361
|
+
|
|
2362
|
+
示例:
|
|
2363
|
+
codingns assistant office browser-profile-create --engine chrome --mode persistent --display-name "办公 Chrome" --token <token>
|
|
2364
|
+
codingns assistant office browser-task-create --execution-backend opencli_bridge --input-json '{"startUrl":"https://example.invalid","actions":[{"type":"read_dom"}]}' --token <token>
|
|
2365
|
+
codingns assistant office ops-target-create --kind ssh_host --display-name "生产 SSH" --config-json '{"host":"10.0.0.8","username":"root"}' --token <token>
|
|
2366
|
+
codingns assistant office document-create --title "周报" --template-key team.doct.weekly --content-json '{"sections":[]}' --token <token>
|
|
2367
|
+
`.trim();
|
|
2368
|
+
case "office.document-create":
|
|
2369
|
+
return `
|
|
2370
|
+
codingns assistant office document-create
|
|
2371
|
+
|
|
2372
|
+
用途:
|
|
2373
|
+
在助手能力面里创建正式办公文档。
|
|
2374
|
+
|
|
2375
|
+
用法:
|
|
2376
|
+
codingns assistant office document-create --title <title> [--workspace-id <id>] [--template-id <id> | --template-key <key>] [--summary <text>] [--content-json <json>] [--outline-json <json>] --token <token>
|
|
2377
|
+
`.trim();
|
|
2378
|
+
case "office.document-update":
|
|
2379
|
+
return `
|
|
2380
|
+
codingns assistant office document-update
|
|
2381
|
+
|
|
2382
|
+
用途:
|
|
2383
|
+
更新已有办公文档的标题、模板、摘要或结构化内容。
|
|
2384
|
+
|
|
2385
|
+
用法:
|
|
2386
|
+
codingns assistant office document-update <documentId> [--title <title>] [--template-id <id>] [--summary <text>] [--status draft|reviewing|published|archived] [--content-json <json>] [--outline-json <json>] --token <token>
|
|
2387
|
+
`.trim();
|
|
2388
|
+
case "office.document-export":
|
|
2389
|
+
return `
|
|
2390
|
+
codingns assistant office document-export
|
|
2391
|
+
|
|
2392
|
+
用途:
|
|
2393
|
+
创建文档导出任务,并可选择立即执行。
|
|
2394
|
+
|
|
2395
|
+
用法:
|
|
2396
|
+
codingns assistant office document-export <documentId> [--workspace-id <id>] [--format docx|pdf|md] [--risk-level low|medium|high] [--execute true|false] --token <token>
|
|
2397
|
+
`.trim();
|
|
2398
|
+
case "office.document-task":
|
|
2399
|
+
return `
|
|
2400
|
+
codingns assistant office document-task
|
|
2401
|
+
|
|
2402
|
+
用途:
|
|
2403
|
+
读取文档导出任务状态、产物和回执。
|
|
2404
|
+
|
|
2405
|
+
用法:
|
|
2406
|
+
codingns assistant office document-task <taskId> --token <token>
|
|
2407
|
+
`.trim();
|
|
2408
|
+
case "office.browser-profiles":
|
|
2409
|
+
case "office.browser-profile-list":
|
|
2410
|
+
return `
|
|
2411
|
+
codingns assistant office browser-profile-list
|
|
2412
|
+
|
|
2413
|
+
用途:
|
|
2414
|
+
列出办公浏览器 Profile。
|
|
2415
|
+
|
|
2416
|
+
用法:
|
|
2417
|
+
codingns assistant office browser-profile-list [--workspace-id <id>] --token <token>
|
|
2418
|
+
|
|
2419
|
+
兼容:
|
|
2420
|
+
旧别名 \`codingns assistant office browser-profiles\` 仍可继续使用。
|
|
2421
|
+
`.trim();
|
|
2422
|
+
case "office.browser-profile-create":
|
|
2423
|
+
return `
|
|
2424
|
+
codingns assistant office browser-profile-create
|
|
2425
|
+
|
|
2426
|
+
用途:
|
|
2427
|
+
创建独立持久化 Profile,或创建 CDP 接管模式的浏览器 Profile。
|
|
2428
|
+
|
|
2429
|
+
用法:
|
|
2430
|
+
codingns assistant office browser-profile-create [--workspace-id <id>] [--engine chrome|edge] [--mode persistent|cdp_attached] [--display-name <name>] [--ownership-scope user|workspace] [--cdp-endpoint <url>] --token <token>
|
|
2431
|
+
`.trim();
|
|
2432
|
+
case "office.browser-profile-get":
|
|
2433
|
+
return `
|
|
2434
|
+
codingns assistant office browser-profile-get
|
|
2435
|
+
|
|
2436
|
+
用途:
|
|
2437
|
+
读取办公浏览器 Profile 详情。
|
|
2438
|
+
|
|
2439
|
+
用法:
|
|
2440
|
+
codingns assistant office browser-profile-get <profileId> --token <token>
|
|
2441
|
+
`.trim();
|
|
2442
|
+
case "office.browser-task-create":
|
|
2443
|
+
return `
|
|
2444
|
+
codingns assistant office browser-task-create
|
|
2445
|
+
|
|
2446
|
+
用途:
|
|
2447
|
+
创建并可选立即执行办公浏览器任务,工作区会话里调用浏览器能力就走这条链路。
|
|
2448
|
+
|
|
2449
|
+
用法:
|
|
2450
|
+
codingns assistant office browser-task-create [--profile-id <profileId>] [--workspace-id <id>] [--title <title>] [--risk-level low|medium|high] [--execution-backend playwright|opencli_bridge] [--execute true|false] [--input-json <json>] --token <token>
|
|
2451
|
+
|
|
2452
|
+
输入约定:
|
|
2453
|
+
--input-json 必须是一个 JSON 对象,最小结构如下:
|
|
2454
|
+
{"startUrl":"https://example.invalid","actions":[{"type":"read_dom"}]}
|
|
2455
|
+
|
|
2456
|
+
后端选择:
|
|
2457
|
+
- playwright:默认,无头浏览器执行
|
|
2458
|
+
- playwright 仍然要求显式传 --profile-id
|
|
2459
|
+
- opencli_bridge:复用 opencli 浏览器扩展,走真实浏览器调试
|
|
2460
|
+
- opencli_bridge 是无感桥接入口,通常不需要也不建议传 --profile-id
|
|
2461
|
+
- 涉及登录、验证码、二次确认弹窗、复杂真实站点、必须复用现有 Chrome/Edge 登录态时,优先显式传 --execution-backend opencli_bridge
|
|
2462
|
+
- 只有页面明显适合无头执行,或者用户明确要求无头链路时,才继续使用默认 playwright
|
|
2463
|
+
|
|
2464
|
+
支持动作:
|
|
2465
|
+
- goto:打开指定 url,字段:type、url
|
|
2466
|
+
- click:点击元素,字段:type、selector
|
|
2467
|
+
- fill:填写输入框,字段:type、selector、value
|
|
2468
|
+
- press:按键,字段:type、key;可选 selector
|
|
2469
|
+
- select:选择下拉项,字段:type、selector、value 或 values
|
|
2470
|
+
- upload:上传文件,字段:type、selector、filePath 或 filePaths
|
|
2471
|
+
- download:点击并等待下载,字段:type、selector;可选 fileName
|
|
2472
|
+
- wait:纯等待,字段:type;可选 timeoutMs
|
|
2473
|
+
- read_dom:读取 body 文本并生成 DOM 快照产物,字段:type
|
|
2474
|
+
- extract_text:提取 body 文本并生成文本产物,字段:type
|
|
2475
|
+
- screenshot:截图并生成 PNG 产物,字段:type;可选 fullPage、timeoutMs
|
|
2476
|
+
|
|
2477
|
+
最小可抄样例:
|
|
2478
|
+
1. 打开页面并读取内容
|
|
2479
|
+
{"startUrl":"https://www.zhihu.com/signin","actions":[{"type":"read_dom"}]}
|
|
2480
|
+
2. 打开页面后截图
|
|
2481
|
+
{"startUrl":"https://www.zhihu.com/signin","actions":[{"type":"screenshot","fullPage":true}]}
|
|
2482
|
+
3. 打开页面,等待,再读取 DOM
|
|
2483
|
+
{"startUrl":"https://www.zhihu.com/signin","actions":[{"type":"wait","timeoutMs":3000},{"type":"read_dom"}]}
|
|
2484
|
+
4. 点击按钮后截图
|
|
2485
|
+
{"startUrl":"https://example.invalid","actions":[{"type":"click","selector":"button[type=\\"submit\\"]"},{"type":"screenshot"}]}
|
|
2486
|
+
5. 填表单后停留
|
|
2487
|
+
{"startUrl":"https://example.invalid/login","actions":[{"type":"fill","selector":"input[name=\\"username\\"]","value":"demo"},{"type":"fill","selector":"input[name=\\"password\\"]","value":"secret"},{"type":"screenshot"}]}
|
|
2488
|
+
6. 登录页 / 验证码 / 复杂真实站点,优先真实浏览器调试
|
|
2489
|
+
{"startUrl":"https://target.example/login","executionBackend":"opencli_bridge","actions":[{"type":"read_dom"},{"type":"wait","timeoutMs":3000},{"type":"screenshot","fullPage":true}]}
|
|
2490
|
+
7. 已登录浏览器里继续操作,保留真人登录态
|
|
2491
|
+
{"startUrl":"https://target.example/console","executionBackend":"opencli_bridge","actions":[{"type":"click","selector":"button[data-testid=\\"next-step\\"]"},{"type":"wait","timeoutMs":1500},{"type":"screenshot","fullPage":true}]}
|
|
2492
|
+
|
|
2493
|
+
建议顺序:
|
|
2494
|
+
无头 playwright 任务先 running \`browser-profile-list\` 看是否已有可复用 Profile;没有再创建 Profile。
|
|
2495
|
+
遇到登录、验证码、复杂真实站点或必须复用现有浏览器登录态时,优先显式传 \`--execution-backend opencli_bridge\`;通常不需要先手动查/建 Profile,也不需要传 \`--profile-id\`。
|
|
2496
|
+
遇到真实站点网页任务,先查这里的示例,不要退回去翻源码或自己猜私有 HTTP body。
|
|
2497
|
+
`.trim();
|
|
2498
|
+
case "office.browser-task-get":
|
|
2499
|
+
return `
|
|
2500
|
+
codingns assistant office browser-task-get
|
|
2501
|
+
|
|
2502
|
+
用途:
|
|
2503
|
+
读取办公浏览器任务状态、产物和回执。
|
|
2504
|
+
|
|
2505
|
+
用法:
|
|
2506
|
+
codingns assistant office browser-task-get <taskId> --token <token>
|
|
2507
|
+
`.trim();
|
|
2508
|
+
case "office.ops-targets":
|
|
2509
|
+
return `
|
|
2510
|
+
codingns assistant office ops-targets
|
|
2511
|
+
|
|
2512
|
+
用途:
|
|
2513
|
+
列出办公运维目标。
|
|
2514
|
+
|
|
2515
|
+
用法:
|
|
2516
|
+
codingns assistant office ops-targets [--workspace-id <id>] [--kind ssh_host|web_console] [--status active|disabled|error] --token <token>
|
|
2517
|
+
`.trim();
|
|
2518
|
+
case "office.ops-target-create":
|
|
2519
|
+
return `
|
|
2520
|
+
codingns assistant office ops-target-create
|
|
2521
|
+
|
|
2522
|
+
用途:
|
|
2523
|
+
创建 SSH 主机或网页控制台运维目标。
|
|
2524
|
+
|
|
2525
|
+
用法:
|
|
2526
|
+
codingns assistant office ops-target-create --workspace-id <id> --display-name <name> [--kind ssh_host|web_console] [--environment <name>] [--credential-ref <ref>] [--config-json <json>] --token <token>
|
|
2527
|
+
`.trim();
|
|
2528
|
+
case "office.ops-target-get":
|
|
2529
|
+
return `
|
|
2530
|
+
codingns assistant office ops-target-get
|
|
2531
|
+
|
|
2532
|
+
用途:
|
|
2533
|
+
读取办公运维目标详情。
|
|
2534
|
+
|
|
2535
|
+
用法:
|
|
2536
|
+
codingns assistant office ops-target-get <targetId> --token <token>
|
|
2537
|
+
`.trim();
|
|
2538
|
+
case "office.ops-ssh-task-create":
|
|
2539
|
+
return `
|
|
2540
|
+
codingns assistant office ops-ssh-task-create
|
|
2541
|
+
|
|
2542
|
+
用途:
|
|
2543
|
+
创建 SSH 运维任务,可选立即执行。
|
|
2544
|
+
|
|
2545
|
+
用法:
|
|
2546
|
+
codingns assistant office ops-ssh-task-create --target-id <targetId> [--title <title>] [--risk-level low|medium|high] [--execute true|false] [--input-json <json>] --token <token>
|
|
2547
|
+
`.trim();
|
|
2548
|
+
case "office.ops-task-execute":
|
|
2549
|
+
return `
|
|
2550
|
+
codingns assistant office ops-task-execute
|
|
2551
|
+
|
|
2552
|
+
用途:
|
|
2553
|
+
执行已经创建并处于 ready 状态的 SSH 运维任务。
|
|
2554
|
+
|
|
2555
|
+
用法:
|
|
2556
|
+
codingns assistant office ops-task-execute <taskId> --confirm --token <token>
|
|
2557
|
+
`.trim();
|
|
2558
|
+
case "office.task-approval-reply":
|
|
2559
|
+
return `
|
|
2560
|
+
codingns assistant office task-approval-reply
|
|
2561
|
+
|
|
2562
|
+
用途:
|
|
2563
|
+
处理办公任务审批。高风险 SSH 任务审批通过后,才能继续执行。
|
|
2564
|
+
|
|
2565
|
+
用法:
|
|
2566
|
+
codingns assistant office task-approval-reply <approvalId> [--status approved|rejected] [--decision-note <text>] --token <token>
|
|
2567
|
+
`.trim();
|
|
2568
|
+
case "office.ops-browser-task-create":
|
|
2569
|
+
return `
|
|
2570
|
+
codingns assistant office ops-browser-task-create
|
|
2571
|
+
|
|
2572
|
+
用途:
|
|
2573
|
+
创建浏览器运维任务;登录态、控制台、真实站点优先走 opencli_bridge 无感桥接。
|
|
2574
|
+
|
|
2575
|
+
用法:
|
|
2576
|
+
codingns assistant office ops-browser-task-create --target-id <targetId> [--profile-id <profileId>] [--execution-backend playwright|opencli_bridge] [--title <title>] [--risk-level low|medium|high] [--input-json <json>] [--confirm] --token <token>
|
|
2577
|
+
|
|
2578
|
+
说明:
|
|
2579
|
+
- opencli_bridge:默认推荐。通常不需要传 --profile-id。
|
|
2580
|
+
- playwright:仍然需要显式传 --profile-id。
|
|
2581
|
+
`.trim();
|
|
2582
|
+
case "office.ops-task-get":
|
|
2583
|
+
return `
|
|
2584
|
+
codingns assistant office ops-task-get
|
|
2585
|
+
|
|
2586
|
+
用途:
|
|
2587
|
+
读取办公运维任务状态、产物和回执。
|
|
2588
|
+
|
|
2589
|
+
用法:
|
|
2590
|
+
codingns assistant office ops-task-get <taskId> --token <token>
|
|
2591
|
+
`.trim();
|
|
1902
2592
|
case "capabilities":
|
|
1903
2593
|
case "capabilities.list":
|
|
1904
2594
|
return `
|
|
@@ -2429,14 +3119,26 @@ codingns assistant follow-ups fail
|
|
|
2429
3119
|
codingns assistant terminals
|
|
2430
3120
|
|
|
2431
3121
|
可用动作:
|
|
3122
|
+
create 在当前工作区或项目下新建终端
|
|
2432
3123
|
list 列出项目或工作区下的终端
|
|
2433
3124
|
history 读取终端历史输出
|
|
2434
3125
|
send 向受控终端发送输入
|
|
2435
3126
|
close 关闭受控终端
|
|
2436
3127
|
|
|
2437
3128
|
示例:
|
|
3129
|
+
codingns assistant terminals create --workspace-id <workspaceId> --token <token>
|
|
2438
3130
|
codingns assistant terminals list --project-id <projectId> --token <token>
|
|
2439
3131
|
codingns assistant terminals send <terminalId> --input "npm test\\n" --token <token>
|
|
3132
|
+
`.trim();
|
|
3133
|
+
case "terminals.create":
|
|
3134
|
+
return `
|
|
3135
|
+
codingns assistant terminals create
|
|
3136
|
+
|
|
3137
|
+
用途:
|
|
3138
|
+
在指定工作区或项目作用域下正式新建一个受控终端。
|
|
3139
|
+
|
|
3140
|
+
用法:
|
|
3141
|
+
codingns assistant terminals create [--workspace-id <id> | --project-id <id>] [--name <name>] [--cwd <cwd>] [--shell <shell>] --token <token>
|
|
2440
3142
|
`.trim();
|
|
2441
3143
|
case "terminals.list":
|
|
2442
3144
|
return `
|
|
@@ -2466,7 +3168,7 @@ codingns assistant terminals send
|
|
|
2466
3168
|
向受控终端发送输入,比如测试命令或构建命令。
|
|
2467
3169
|
|
|
2468
3170
|
用法:
|
|
2469
|
-
codingns assistant terminals send <terminalId> --input "npm test\\n" --token <token>
|
|
3171
|
+
codingns assistant terminals send <terminalId> --input "npm test\\n" --confirm --token <token>
|
|
2470
3172
|
`.trim();
|
|
2471
3173
|
case "terminals.close":
|
|
2472
3174
|
return `
|
|
@@ -2476,7 +3178,7 @@ codingns assistant terminals close
|
|
|
2476
3178
|
关闭指定受控终端,常用于停止调试进程或回收运行资源。
|
|
2477
3179
|
|
|
2478
3180
|
用法:
|
|
2479
|
-
codingns assistant terminals close <terminalId> --token <token>
|
|
3181
|
+
codingns assistant terminals close <terminalId> --confirm --token <token>
|
|
2480
3182
|
`.trim();
|
|
2481
3183
|
case "debug-targets":
|
|
2482
3184
|
return `
|
|
@@ -2493,8 +3195,8 @@ codingns assistant debug-targets
|
|
|
2493
3195
|
runtimes 读取运行历史
|
|
2494
3196
|
|
|
2495
3197
|
示例:
|
|
2496
|
-
codingns assistant debug-targets analyze --workspace-id <id> --root-path /repo/demo --token <token>
|
|
2497
|
-
codingns assistant debug-targets launch-plan <targetId> --port-request role=backend,cwd=apps/api,port=44001 --token <token>
|
|
3198
|
+
codingns assistant debug-targets analyze --workspace-id <id> --root-path /repo/demo --confirm --token <token>
|
|
3199
|
+
codingns assistant debug-targets launch-plan <targetId> --port-request role=backend,cwd=apps/api,port=44001 --confirm --token <token>
|
|
2498
3200
|
`.trim();
|
|
2499
3201
|
case "debug-targets.compatibility-matrix":
|
|
2500
3202
|
return `
|
|
@@ -2514,7 +3216,7 @@ codingns assistant debug-targets analyze
|
|
|
2514
3216
|
分析指定工作区下的调试目标、服务和框架兼容性。
|
|
2515
3217
|
|
|
2516
3218
|
用法:
|
|
2517
|
-
codingns assistant debug-targets analyze --workspace-id <id> --root-path <path> [--command-hint "pnpm dev"] [--command-hint "node server.js"] --token <token>
|
|
3219
|
+
codingns assistant debug-targets analyze --workspace-id <id> --root-path <path> [--command-hint "pnpm dev"] [--command-hint "node server.js"] [--confirm] --token <token>
|
|
2518
3220
|
`.trim();
|
|
2519
3221
|
case "debug-targets.framework-analysis":
|
|
2520
3222
|
return `
|
|
@@ -2534,7 +3236,7 @@ codingns assistant debug-targets refresh-framework-analysis
|
|
|
2534
3236
|
刷新指定调试目标的框架分析结果。
|
|
2535
3237
|
|
|
2536
3238
|
用法:
|
|
2537
|
-
codingns assistant debug-targets refresh-framework-analysis <targetId> --token <token>
|
|
3239
|
+
codingns assistant debug-targets refresh-framework-analysis <targetId> [--confirm] --token <token>
|
|
2538
3240
|
`.trim();
|
|
2539
3241
|
case "debug-targets.launch-plan":
|
|
2540
3242
|
return `
|
|
@@ -2544,7 +3246,7 @@ codingns assistant debug-targets launch-plan
|
|
|
2544
3246
|
生成调试目标启动计划,可通过重复的 --port-request 显式请求服务端口。
|
|
2545
3247
|
|
|
2546
3248
|
用法:
|
|
2547
|
-
codingns assistant debug-targets launch-plan <targetId> [--port-request role=frontend,cwd=apps/web,port=43001] [--port-request role=backend,cwd=apps/api,port=44001] --token <token>
|
|
3249
|
+
codingns assistant debug-targets launch-plan <targetId> [--port-request role=frontend,cwd=apps/web,port=43001] [--port-request role=backend,cwd=apps/api,port=44001] [--confirm] --token <token>
|
|
2548
3250
|
`.trim();
|
|
2549
3251
|
case "debug-targets.run":
|
|
2550
3252
|
return `
|
|
@@ -2554,7 +3256,7 @@ codingns assistant debug-targets run
|
|
|
2554
3256
|
启动调试目标,可选指定 shell、runtimeType 和显式端口请求。
|
|
2555
3257
|
|
|
2556
3258
|
用法:
|
|
2557
|
-
codingns assistant debug-targets run <targetId> [--shell zsh] [--runtime-type tmux|embedded-pty|conpty-powershell|conpty-cmd|conpty-git-bash] [--port-request role=backend,cwd=apps/api,port=44001] --token <token>
|
|
3259
|
+
codingns assistant debug-targets run <targetId> [--shell zsh] [--runtime-type tmux|embedded-pty|conpty-powershell|conpty-cmd|conpty-git-bash] [--port-request role=backend,cwd=apps/api,port=44001] [--confirm] --token <token>
|
|
2558
3260
|
`.trim();
|
|
2559
3261
|
case "debug-targets.runtime-latest":
|
|
2560
3262
|
return `
|
|
@@ -2649,7 +3351,7 @@ codingns assistant worktrees merge
|
|
|
2649
3351
|
把子工作树合并回父工作区。
|
|
2650
3352
|
|
|
2651
3353
|
用法:
|
|
2652
|
-
codingns assistant worktrees merge <workspaceId> --token <token>
|
|
3354
|
+
codingns assistant worktrees merge <workspaceId> --confirm --token <token>
|
|
2653
3355
|
`.trim();
|
|
2654
3356
|
case "worktrees.cleanup":
|
|
2655
3357
|
return `
|
|
@@ -2665,17 +3367,34 @@ codingns assistant worktrees cleanup
|
|
|
2665
3367
|
return `
|
|
2666
3368
|
codingns assistant 用法:
|
|
2667
3369
|
|
|
2668
|
-
codingns assistant help [capabilities|projects|sessions|sandboxes|automations|timers|follow-ups|terminals|debug-targets|debug-runtimes|workspaces|worktrees] [action]
|
|
3370
|
+
codingns assistant help [capabilities|projects|sessions|sandboxes|automations|timers|follow-ups|terminals|office|debug-targets|debug-runtimes|workspaces|worktrees] [action]
|
|
2669
3371
|
codingns assistant capabilities list [--base-url http://127.0.0.1:3002] --token <token>
|
|
2670
3372
|
codingns assistant projects list [--workspace-id <id>] [--status active|paused|archived] [--risk-level low|medium|high] --token <token>
|
|
2671
3373
|
codingns assistant projects get <projectId> [--base-url ...] --token <token>
|
|
2672
3374
|
codingns assistant follow-ups continue <taskId> --summary "..." --continue-prompt "..." --token <token>
|
|
3375
|
+
codingns assistant office document-create --title <title> [--template-key <key>] [--content-json <json>] [--base-url ...] --token <token>
|
|
3376
|
+
codingns assistant office document-update <documentId> [--title <title>] [--content-json <json>] [--base-url ...] --token <token>
|
|
3377
|
+
codingns assistant office document-export <documentId> [--format docx|pdf|md] [--risk-level low|medium|high] [--execute true|false] [--base-url ...] --token <token>
|
|
3378
|
+
codingns assistant office document-task <taskId> [--base-url ...] --token <token>
|
|
3379
|
+
codingns assistant office browser-profiles [--workspace-id <id>] [--base-url ...] --token <token>
|
|
3380
|
+
codingns assistant office browser-profile-create [--workspace-id <id>] [--engine chrome|edge] [--mode persistent|cdp_attached] [--display-name <name>] [--ownership-scope user|workspace] [--cdp-endpoint <url>] [--base-url ...] --token <token>
|
|
3381
|
+
codingns assistant office browser-profile-get <profileId> [--base-url ...] --token <token>
|
|
3382
|
+
codingns assistant office browser-task-create [--profile-id <profileId>] [--workspace-id <id>] [--title <title>] [--risk-level low|medium|high] [--execution-backend playwright|opencli_bridge] [--execute true|false] [--input-json <json>] [--base-url ...] --token <token>
|
|
3383
|
+
codingns assistant office browser-task-get <taskId> [--base-url ...] --token <token>
|
|
3384
|
+
codingns assistant office ops-targets [--workspace-id <id>] [--kind ssh_host|web_console] [--status active|disabled|error] [--base-url ...] --token <token>
|
|
3385
|
+
codingns assistant office ops-target-create --workspace-id <id> --display-name <name> [--kind ssh_host|web_console] [--environment <name>] [--credential-ref <ref>] [--config-json <json>] [--base-url ...] --token <token>
|
|
3386
|
+
codingns assistant office ops-target-get <targetId> [--base-url ...] --token <token>
|
|
3387
|
+
codingns assistant office ops-ssh-task-create --target-id <targetId> [--title <title>] [--risk-level low|medium|high] [--execute true|false] [--input-json <json>] [--base-url ...] --token <token>
|
|
3388
|
+
codingns assistant office ops-task-execute <taskId> [--confirm] [--base-url ...] --token <token>
|
|
3389
|
+
codingns assistant office task-approval-reply <approvalId> [--status approved|rejected] [--decision-note <text>] [--base-url ...] --token <token>
|
|
3390
|
+
codingns assistant office ops-browser-task-create --target-id <targetId> [--profile-id <profileId>] [--execution-backend playwright|opencli_bridge] [--title <title>] [--risk-level low|medium|high] [--input-json <json>] [--confirm] [--base-url ...] --token <token>
|
|
3391
|
+
codingns assistant office ops-task-get <taskId> [--base-url ...] --token <token>
|
|
2673
3392
|
codingns assistant debug-targets compatibility-matrix [--base-url ...] --token <token>
|
|
2674
|
-
codingns assistant debug-targets analyze --workspace-id <id> --root-path <path> [--command-hint <command>] [--command-hint <command>] [--base-url ...] --token <token>
|
|
3393
|
+
codingns assistant debug-targets analyze --workspace-id <id> --root-path <path> [--command-hint <command>] [--command-hint <command>] [--confirm] [--base-url ...] --token <token>
|
|
2675
3394
|
codingns assistant debug-targets framework-analysis <targetId> [--base-url ...] --token <token>
|
|
2676
|
-
codingns assistant debug-targets refresh-framework-analysis <targetId> [--base-url ...] --token <token>
|
|
2677
|
-
codingns assistant debug-targets launch-plan <targetId> [--port-request role=backend,cwd=apps/api,port=44001] [--base-url ...] --token <token>
|
|
2678
|
-
codingns assistant debug-targets run <targetId> [--shell zsh] [--runtime-type tmux|embedded-pty|conpty-powershell|conpty-cmd|conpty-git-bash] [--port-request role=backend,cwd=apps/api,port=44001] [--base-url ...] --token <token>
|
|
3395
|
+
codingns assistant debug-targets refresh-framework-analysis <targetId> [--confirm] [--base-url ...] --token <token>
|
|
3396
|
+
codingns assistant debug-targets launch-plan <targetId> [--port-request role=backend,cwd=apps/api,port=44001] [--confirm] [--base-url ...] --token <token>
|
|
3397
|
+
codingns assistant debug-targets run <targetId> [--shell zsh] [--runtime-type tmux|embedded-pty|conpty-powershell|conpty-cmd|conpty-git-bash] [--port-request role=backend,cwd=apps/api,port=44001] [--confirm] [--base-url ...] --token <token>
|
|
2679
3398
|
codingns assistant debug-targets runtime-latest <targetId> [--base-url ...] --token <token>
|
|
2680
3399
|
codingns assistant debug-targets runtimes <targetId> [--limit 5] [--base-url ...] --token <token>
|
|
2681
3400
|
codingns assistant debug-runtimes get <runtimeId> [--base-url ...] --token <token>
|
|
@@ -2712,12 +3431,12 @@ codingns assistant 用法:
|
|
|
2712
3431
|
codingns assistant timers cancel <timerId> [--base-url ...] --token <token>
|
|
2713
3432
|
codingns assistant terminals list [--workspace-id <id> | --project-id <id>] --token <token>
|
|
2714
3433
|
codingns assistant terminals history <terminalId> [--before-seq <n>] [--limit 20] --token <token>
|
|
2715
|
-
codingns assistant terminals send <terminalId> --input "npm test\\n" --token <token>
|
|
2716
|
-
codingns assistant terminals close <terminalId> [--base-url ...] --token <token>
|
|
3434
|
+
codingns assistant terminals send <terminalId> --input "npm test\\n" --confirm --token <token>
|
|
3435
|
+
codingns assistant terminals close <terminalId> [--confirm] [--base-url ...] --token <token>
|
|
2717
3436
|
codingns assistant worktrees tree --root-workspace-id <id> [--base-url ...] --token <token>
|
|
2718
3437
|
codingns assistant worktrees create --source-workspace-id <id> --branch-name <name> [--display-name <name>] [--base-ref <ref>] [--base-url ...] --token <token>
|
|
2719
3438
|
codingns assistant worktrees merge-preview <workspaceId> [--base-url ...] --token <token>
|
|
2720
|
-
codingns assistant worktrees merge <workspaceId> [--base-url ...] --token <token>
|
|
3439
|
+
codingns assistant worktrees merge <workspaceId> [--confirm] [--base-url ...] --token <token>
|
|
2721
3440
|
codingns assistant worktrees cleanup <workspaceId> [--delete-branch] [--base-url ...] --token <token>
|
|
2722
3441
|
|
|
2723
3442
|
环境变量:
|