From 9f2b07cea85eb0c445156bdcd1f1e62fbce58c2f Mon Sep 17 00:00:00 2001 From: imccyu <276526105+imccyu@users.noreply.github.com> Date: Mon, 7 Sep 2026 21:23:15 +0800 Subject: [PATCH] feat(remotes): expose workspace file operations to the Client --- packages/api/remotes/package.json | 1 + packages/api/remotes/src/client/index.ts | 5 ++++- packages/api/remotes/tsconfig.client.json | 4 +++- packages/api/remotes/tsconfig.host.json | 3 +++ 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/packages/api/remotes/package.json b/packages/api/remotes/package.json index f4540fdc25..3cfba6343d 100644 --- a/packages/api/remotes/package.json +++ b/packages/api/remotes/package.json @@ -82,6 +82,7 @@ "@deepseek-ai/dsh-typert-protocol": "workspace:^", "@deepseek-ai/dsh-scope": "workspace:^", "@deepseek-ai/dsh-api-session-controller": "workspace:^", + "@deepseek-ai/dsh-api-workspace-files": "workspace:^", "zod": "^4.4.3" } } diff --git a/packages/api/remotes/src/client/index.ts b/packages/api/remotes/src/client/index.ts index cc917458dc..bc93c25cca 100644 --- a/packages/api/remotes/src/client/index.ts +++ b/packages/api/remotes/src/client/index.ts @@ -14,6 +14,7 @@ import sessionReferencesRemote from '@deepseek-ai/dsh-session-reference/remote' import subagentsRemote from '@deepseek-ai/dsh-subagent/remote' import sessionRemote from '@deepseek-ai/dsh-api-session-controller/remote' import workspaceRemote from '@deepseek-ai/dsh-api-workspace-controller/remote' +import workspaceFilesRemote from '@deepseek-ai/dsh-api-workspace-files/remote' import type { ClientRemote } from '@deepseek-ai/dsh-api-gateway/client' export type { ClientRemote } from '@deepseek-ai/dsh-api-gateway/client' @@ -33,6 +34,8 @@ export type {} from '@deepseek-ai/dsh-api-session-controller/remote' export type * from '@deepseek-ai/dsh-api-session-controller/types' export type {} from '@deepseek-ai/dsh-api-workspace-controller/remote' export type * from '@deepseek-ai/dsh-api-workspace-controller/types' +export type {} from '@deepseek-ai/dsh-api-workspace-files/remote' +export type * from '@deepseek-ai/dsh-api-workspace-files/types' export type { SessionJob as JobView } from '@deepseek-ai/dsh-api-session-controller/types' // The forwarded-event allowlist's selection seat: without it in the consumer's // compilation face `TypertRemoteEvent` is `never` and every `$on` call fails. @@ -148,7 +151,7 @@ export async function apply(ctx: Context): Promise<() => Promise> { for (const contribution of [ agentPresetsRemote, commandsRemote, settingsControllerRemote, goalsRemote, llmRemote, dynamicRemote, pluginInventoryRemote, messageFeedbackRemote, fileUploadsRemote, sessionReferencesRemote, - subagentsRemote, sessionRemote, workspaceRemote, + subagentsRemote, sessionRemote, workspaceRemote, workspaceFilesRemote, ]) { disposers.push(await ctx.remote.$mount(contribution)) } diff --git a/packages/api/remotes/tsconfig.client.json b/packages/api/remotes/tsconfig.client.json index 2be76de65a..589d5e92bd 100644 --- a/packages/api/remotes/tsconfig.client.json +++ b/packages/api/remotes/tsconfig.client.json @@ -25,7 +25,6 @@ }, { "path": "../../credentials/credentials" - }, { "path": "../../context/file-reference" @@ -69,6 +68,9 @@ { "path": "../session-controller/tsconfig.client.json" }, + { + "path": "../workspace-files/tsconfig.client.json" + }, { "path": "../settings-controller" }, diff --git a/packages/api/remotes/tsconfig.host.json b/packages/api/remotes/tsconfig.host.json index c91c11baa2..d88af3c120 100644 --- a/packages/api/remotes/tsconfig.host.json +++ b/packages/api/remotes/tsconfig.host.json @@ -56,6 +56,9 @@ { "path": "../session-controller/tsconfig.host.json" }, + { + "path": "../workspace-files/tsconfig.host.json" + }, { "path": "../workspace-controller/tsconfig.host.json" },