@clawos-dev/clawd 0.2.675 → 0.2.677
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/dist/app-builder-plugin/mcp-server.cjs +116 -3
- package/dist/cli.cjs +257 -14
- package/dist/cloud-persona-conversations.html +74 -74
- package/dist/cloud-persona-metrics.html +1 -1
- package/dist/dispatch/mcp-server.cjs +116 -3
- package/dist/persona-defaults/persona-app-builder/mcp/clawd-app-builder/mcp-server.cjs +116 -3
- package/dist/persona-defaults/persona-dataclaw-builder/mcp/clawd-app-builder/mcp-server.cjs +116 -3
- package/dist/share-md-viewer-error.html +1 -1
- package/dist/share-md-viewer.html +1 -1
- package/dist/share-ui/assets/guest-CtZL9p9v.css +32 -0
- package/dist/share-ui/assets/guest-DuT_1Mqo.js +628 -0
- package/dist/share-ui/guest.html +2 -2
- package/package.json +1 -1
- package/dist/share-ui/assets/guest-CZG8PmZ5.css +0 -32
- package/dist/share-ui/assets/guest-D40ma1Yh.js +0 -602
|
@@ -21114,6 +21114,114 @@ var import_node_child_process2 = require("child_process");
|
|
|
21114
21114
|
var import_node_child_process3 = require("child_process");
|
|
21115
21115
|
var import_node_fs4 = __toESM(require("fs"), 1);
|
|
21116
21116
|
|
|
21117
|
+
// ../protocol/src/cloud-workspace-schemas.ts
|
|
21118
|
+
var WORKSPACE_COMPARISON_VALUES = ["head", "index"];
|
|
21119
|
+
var Id = external_exports.string().regex(/^[A-Za-z0-9][A-Za-z0-9-]{0,127}$/);
|
|
21120
|
+
var RepoId = external_exports.string().regex(/^[1-9][0-9]*$/);
|
|
21121
|
+
var Part = external_exports.string().regex(/^[A-Za-z0-9_.-]+$/);
|
|
21122
|
+
var WorkspaceBranchSchema = external_exports.string().min(1).max(255).refine(
|
|
21123
|
+
(b) => !b.startsWith("-") && b !== "HEAD" && !b.startsWith("/") && !b.endsWith("/") && !b.endsWith(".") && !/[\s~^:?*\[\\\x00-\x1f\x7f]/.test(b) && !b.includes("..") && !b.includes("@{") && !b.includes("//") && b.split("/").every((s) => !s.startsWith(".") && !s.endsWith(".lock")),
|
|
21124
|
+
"Invalid Git branch"
|
|
21125
|
+
);
|
|
21126
|
+
var FilePath = external_exports.string().min(1).max(4096).refine(
|
|
21127
|
+
(p) => !p.startsWith("/") && !p.includes("\0") && !p.split(/[\\/]/).includes("..")
|
|
21128
|
+
);
|
|
21129
|
+
var WorkspaceBindingSchema = external_exports.object({
|
|
21130
|
+
workspaceId: Id,
|
|
21131
|
+
repoId: RepoId,
|
|
21132
|
+
owner: Part,
|
|
21133
|
+
name: Part,
|
|
21134
|
+
sourceBranch: WorkspaceBranchSchema,
|
|
21135
|
+
defaultBranch: WorkspaceBranchSchema
|
|
21136
|
+
}).strict();
|
|
21137
|
+
var WorkspaceRepoSchema = external_exports.object({
|
|
21138
|
+
repoId: RepoId,
|
|
21139
|
+
owner: Part,
|
|
21140
|
+
name: Part,
|
|
21141
|
+
defaultBranch: external_exports.string(),
|
|
21142
|
+
private: external_exports.boolean(),
|
|
21143
|
+
description: external_exports.string().nullable()
|
|
21144
|
+
});
|
|
21145
|
+
var WorkspacePrSchema = external_exports.object({
|
|
21146
|
+
number: external_exports.number().int().positive(),
|
|
21147
|
+
url: external_exports.string().url().refine((u) => new URL(u).origin === "https://github.com"),
|
|
21148
|
+
base: external_exports.string(),
|
|
21149
|
+
head: external_exports.string()
|
|
21150
|
+
});
|
|
21151
|
+
var WorkspaceStatusSchema = WorkspaceBindingSchema.extend({
|
|
21152
|
+
initialCommit: external_exports.string(),
|
|
21153
|
+
head: external_exports.string(),
|
|
21154
|
+
actualBranch: external_exports.string().nullable(),
|
|
21155
|
+
branches: external_exports.array(external_exports.string()).optional(),
|
|
21156
|
+
files: external_exports.array(
|
|
21157
|
+
external_exports.object({
|
|
21158
|
+
path: FilePath,
|
|
21159
|
+
previousPath: external_exports.string().optional(),
|
|
21160
|
+
comparison: external_exports.enum(WORKSPACE_COMPARISON_VALUES).optional(),
|
|
21161
|
+
status: external_exports.string(),
|
|
21162
|
+
added: external_exports.number().nonnegative(),
|
|
21163
|
+
removed: external_exports.number().nonnegative(),
|
|
21164
|
+
binary: external_exports.boolean(),
|
|
21165
|
+
untracked: external_exports.boolean().optional()
|
|
21166
|
+
})
|
|
21167
|
+
),
|
|
21168
|
+
totalFiles: external_exports.number().int().nonnegative().optional(),
|
|
21169
|
+
filesTruncated: external_exports.boolean().optional(),
|
|
21170
|
+
added: external_exports.number().nonnegative(),
|
|
21171
|
+
removed: external_exports.number().nonnegative(),
|
|
21172
|
+
dirty: external_exports.boolean(),
|
|
21173
|
+
conflicted: external_exports.boolean(),
|
|
21174
|
+
version: external_exports.string(),
|
|
21175
|
+
measuredAt: external_exports.number(),
|
|
21176
|
+
pendingPublication: external_exports.object({ operationId: Id, expectedVersion: external_exports.string(), stage: external_exports.string() }).optional(),
|
|
21177
|
+
pr: WorkspacePrSchema.nullable().optional(),
|
|
21178
|
+
savedAt: external_exports.number().nullable().optional()
|
|
21179
|
+
});
|
|
21180
|
+
var Session = external_exports.object({ sessionId: Id });
|
|
21181
|
+
var CloudWorkspaceArgsSchema = external_exports.discriminatedUnion("action", [
|
|
21182
|
+
Session.extend({
|
|
21183
|
+
action: external_exports.literal("repositories"),
|
|
21184
|
+
page: external_exports.number().int().min(1).max(1e3).optional(),
|
|
21185
|
+
search: external_exports.string().max(100).optional()
|
|
21186
|
+
}).strict(),
|
|
21187
|
+
Session.extend({
|
|
21188
|
+
action: external_exports.literal("branches"),
|
|
21189
|
+
repoId: RepoId,
|
|
21190
|
+
page: external_exports.number().int().min(1).max(1e3).optional()
|
|
21191
|
+
}).strict(),
|
|
21192
|
+
Session.extend({
|
|
21193
|
+
action: external_exports.literal("bind"),
|
|
21194
|
+
repoId: RepoId,
|
|
21195
|
+
branch: WorkspaceBranchSchema
|
|
21196
|
+
}).strict(),
|
|
21197
|
+
Session.extend({ action: external_exports.literal("status") }).strict(),
|
|
21198
|
+
Session.extend({
|
|
21199
|
+
action: external_exports.literal("switch"),
|
|
21200
|
+
branch: WorkspaceBranchSchema,
|
|
21201
|
+
create: external_exports.boolean().optional()
|
|
21202
|
+
}).strict(),
|
|
21203
|
+
Session.extend({ action: external_exports.literal("diff"), filePath: FilePath }).strict(),
|
|
21204
|
+
Session.extend({
|
|
21205
|
+
action: external_exports.literal("publish"),
|
|
21206
|
+
operationId: Id,
|
|
21207
|
+
expectedVersion: external_exports.string().min(1).max(128)
|
|
21208
|
+
}).strict()
|
|
21209
|
+
]);
|
|
21210
|
+
var CloudWorkspaceResultSchema = external_exports.object({
|
|
21211
|
+
binding: WorkspaceBindingSchema.nullable().optional(),
|
|
21212
|
+
workspace: WorkspaceStatusSchema.nullable().optional(),
|
|
21213
|
+
repositories: external_exports.array(WorkspaceRepoSchema).optional(),
|
|
21214
|
+
branches: external_exports.array(external_exports.string()).optional(),
|
|
21215
|
+
hasMore: external_exports.boolean().optional(),
|
|
21216
|
+
diff: external_exports.object({
|
|
21217
|
+
path: FilePath,
|
|
21218
|
+
patch: external_exports.string(),
|
|
21219
|
+
binary: external_exports.boolean(),
|
|
21220
|
+
truncated: external_exports.boolean()
|
|
21221
|
+
}).optional(),
|
|
21222
|
+
pr: WorkspacePrSchema.optional()
|
|
21223
|
+
});
|
|
21224
|
+
|
|
21117
21225
|
// ../protocol/src/subscription-channel.ts
|
|
21118
21226
|
var SubscriptionChannelSchema = external_exports.object({
|
|
21119
21227
|
id: external_exports.string().min(1),
|
|
@@ -23060,6 +23168,7 @@ var SessionFileSchema = external_exports.object({
|
|
|
23060
23168
|
cloudExecutionId: external_exports.string().min(1).optional(),
|
|
23061
23169
|
/** First turn ID of the per-query SSE conversation. */
|
|
23062
23170
|
cloudConversationId: external_exports.string().min(1).optional(),
|
|
23171
|
+
cloudWorkspace: WorkspaceBindingSchema.optional(),
|
|
23063
23172
|
/** Accepted local turns whose terminal gateway status has not been observed. */
|
|
23064
23173
|
cloudPendingTurns: external_exports.array(external_exports.object({ id: external_exports.string().min(1), text: external_exports.string(), prepared: external_exports.boolean().optional() })).optional(),
|
|
23065
23174
|
/** Owner gateway session observed in ready; proves the remote Pod was opened. */
|
|
@@ -24012,6 +24121,10 @@ var METHOD_DOCS = {
|
|
|
24012
24121
|
summary: "\u586B\u5199\u578B\u8FDE\u63A5\u5668\uFF1A\u628A\u4F7F\u7528\u8005\u672C\u4EBA\u7684\u51ED\u636E\u503C\u4EA4\u7ED9\u4E2D\u5FC3\u52A0\u5BC6\u5165\u5E93\uFF08\u4E00\u6B21\u586B\u5199\u5168\u5C40\u5171\u7528\uFF09\u3002**\u8FD9\u662F\u503C\u552F\u4E00\u7684\u5165\u53E3**\uFF1A\u5165\u53C2\u4E0D\u8FDB\u65E5\u5FD7\u3001\u54CD\u5E94\u4E0D\u56DE\u663E\u3001\u672C\u673A\u4E0D\u843D\u76D8\uFF1B\u683C\u540D\u5FC5\u987B\u662F\u8BE5\u8FDE\u63A5\u5668\u58F0\u660E\u8FC7\u7684\uFF1Bowner-only",
|
|
24013
24122
|
args: CloudConnectorFillArgsSchema
|
|
24014
24123
|
},
|
|
24124
|
+
"cloud:workspace": {
|
|
24125
|
+
summary: "Inspect or operate the calling owner cloud session Git workspace; paths and GitHub credentials stay server-side.",
|
|
24126
|
+
args: CloudWorkspaceArgsSchema
|
|
24127
|
+
},
|
|
24015
24128
|
"cloud:volume:get": {
|
|
24016
24129
|
summary: "\u8C03\u7528\u65B9\u81EA\u5DF1\u90A3\u5757\u4E91\u76D8\u4E0A\u4E00\u8F6E\u672B\u7684\u7528\u91CF\uFF08usedBytes / sizeBytes / measuredAt\uFF09\u3002\u4EC5 gateway \u7684 disk \u5907\u9009\u540E\u7AEF\u6709\u503C\uFF08\u90A3\u91CC\u6309\u4EBA\u4E0D\u6309 persona\uFF1A\u4E91\u4E0A\u6240\u6709 persona \u5171\u7528\u4E00\u5757\u76D8\uFF09\uFF0C\u7EBF\u4E0A snapshot \u540E\u7AEF\u6CA1\u6709\u4E91\u76D8\u3001\u6052\u56DE null\u3002daemon \u62FF\u672C\u673A api key \u95EE gateway /me/volume\uFF1B\u6CA1\u767B\u5F55 / \u6CA1 key / gateway \u4E0D\u901A / \u6CA1\u8DD1\u8FC7\u4EFB\u52A1 / \u5F53\u524D\u540E\u7AEF\u6CA1\u6709\u4E91\u76D8\u4E00\u5F8B\u56DE volume:null\uFF08\u89D2\u6807\u4E0D\u6E32\uFF09\uFF0C\u4E0D\u629B\uFF1Bowner-only\u3002\u65E0\u53C2\u6570\uFF08\u67E5\u7684\u662F\u8C03\u7528\u65B9\u81EA\u5DF1\u7684\u76D8\uFF09",
|
|
24017
24130
|
args: NO_ARGS
|
|
@@ -24355,15 +24468,15 @@ var METHOD_DOCS = {
|
|
|
24355
24468
|
summary: "\u5217\u51FA\u767B\u5F55\u8BBF\u95EE\u8FC7\u672C\u673A public persona \u7684 web \u8BBF\u5BA2\u3002owner-only",
|
|
24356
24469
|
args: NO_ARGS
|
|
24357
24470
|
},
|
|
24358
|
-
|
|
24471
|
+
whoami: {
|
|
24359
24472
|
summary: "\u8FD4\u56DE\u672C\u8FDE\u63A5\u7684\u8EAB\u4EFD\uFF1Aowner \u663E\u793A\u540D + capability wire \u5F62\u6001 + \u88AB\u6388\u6743\u7684 persona \u5217\u8868\u3002\u4EFB\u4F55 authed \u8FDE\u63A5\u53EF\u8C03",
|
|
24360
24473
|
args: NO_ARGS
|
|
24361
24474
|
},
|
|
24362
|
-
|
|
24475
|
+
info: {
|
|
24363
24476
|
summary: "daemon \u8FD0\u884C\u65F6\u4FE1\u606F\uFF1A\u7248\u672C / \u534F\u8BAE\u7248\u672C / \u4E3B\u673A / \u53EF\u7528 tool / \u5728\u8DD1\u7684\u4F1A\u8BDD / tunnel URL \u7B49",
|
|
24364
24477
|
args: NO_ARGS
|
|
24365
24478
|
},
|
|
24366
|
-
|
|
24479
|
+
ping: {
|
|
24367
24480
|
summary: "\u5B58\u6D3B\u63A2\u6D4B\uFF0C\u56DE pong",
|
|
24368
24481
|
args: NO_ARGS
|
|
24369
24482
|
},
|
|
@@ -31036,6 +31036,114 @@ var import_node_path5 = require("path");
|
|
|
31036
31036
|
var import_promises2 = __toESM(require("fs/promises"), 1);
|
|
31037
31037
|
var import_node_path4 = __toESM(require("path"), 1);
|
|
31038
31038
|
|
|
31039
|
+
// ../protocol/src/cloud-workspace-schemas.ts
|
|
31040
|
+
var WORKSPACE_COMPARISON_VALUES = ["head", "index"];
|
|
31041
|
+
var Id = external_exports.string().regex(/^[A-Za-z0-9][A-Za-z0-9-]{0,127}$/);
|
|
31042
|
+
var RepoId = external_exports.string().regex(/^[1-9][0-9]*$/);
|
|
31043
|
+
var Part = external_exports.string().regex(/^[A-Za-z0-9_.-]+$/);
|
|
31044
|
+
var WorkspaceBranchSchema = external_exports.string().min(1).max(255).refine(
|
|
31045
|
+
(b) => !b.startsWith("-") && b !== "HEAD" && !b.startsWith("/") && !b.endsWith("/") && !b.endsWith(".") && !/[\s~^:?*\[\\\x00-\x1f\x7f]/.test(b) && !b.includes("..") && !b.includes("@{") && !b.includes("//") && b.split("/").every((s) => !s.startsWith(".") && !s.endsWith(".lock")),
|
|
31046
|
+
"Invalid Git branch"
|
|
31047
|
+
);
|
|
31048
|
+
var FilePath = external_exports.string().min(1).max(4096).refine(
|
|
31049
|
+
(p) => !p.startsWith("/") && !p.includes("\0") && !p.split(/[\\/]/).includes("..")
|
|
31050
|
+
);
|
|
31051
|
+
var WorkspaceBindingSchema = external_exports.object({
|
|
31052
|
+
workspaceId: Id,
|
|
31053
|
+
repoId: RepoId,
|
|
31054
|
+
owner: Part,
|
|
31055
|
+
name: Part,
|
|
31056
|
+
sourceBranch: WorkspaceBranchSchema,
|
|
31057
|
+
defaultBranch: WorkspaceBranchSchema
|
|
31058
|
+
}).strict();
|
|
31059
|
+
var WorkspaceRepoSchema = external_exports.object({
|
|
31060
|
+
repoId: RepoId,
|
|
31061
|
+
owner: Part,
|
|
31062
|
+
name: Part,
|
|
31063
|
+
defaultBranch: external_exports.string(),
|
|
31064
|
+
private: external_exports.boolean(),
|
|
31065
|
+
description: external_exports.string().nullable()
|
|
31066
|
+
});
|
|
31067
|
+
var WorkspacePrSchema = external_exports.object({
|
|
31068
|
+
number: external_exports.number().int().positive(),
|
|
31069
|
+
url: external_exports.string().url().refine((u) => new URL(u).origin === "https://github.com"),
|
|
31070
|
+
base: external_exports.string(),
|
|
31071
|
+
head: external_exports.string()
|
|
31072
|
+
});
|
|
31073
|
+
var WorkspaceStatusSchema = WorkspaceBindingSchema.extend({
|
|
31074
|
+
initialCommit: external_exports.string(),
|
|
31075
|
+
head: external_exports.string(),
|
|
31076
|
+
actualBranch: external_exports.string().nullable(),
|
|
31077
|
+
branches: external_exports.array(external_exports.string()).optional(),
|
|
31078
|
+
files: external_exports.array(
|
|
31079
|
+
external_exports.object({
|
|
31080
|
+
path: FilePath,
|
|
31081
|
+
previousPath: external_exports.string().optional(),
|
|
31082
|
+
comparison: external_exports.enum(WORKSPACE_COMPARISON_VALUES).optional(),
|
|
31083
|
+
status: external_exports.string(),
|
|
31084
|
+
added: external_exports.number().nonnegative(),
|
|
31085
|
+
removed: external_exports.number().nonnegative(),
|
|
31086
|
+
binary: external_exports.boolean(),
|
|
31087
|
+
untracked: external_exports.boolean().optional()
|
|
31088
|
+
})
|
|
31089
|
+
),
|
|
31090
|
+
totalFiles: external_exports.number().int().nonnegative().optional(),
|
|
31091
|
+
filesTruncated: external_exports.boolean().optional(),
|
|
31092
|
+
added: external_exports.number().nonnegative(),
|
|
31093
|
+
removed: external_exports.number().nonnegative(),
|
|
31094
|
+
dirty: external_exports.boolean(),
|
|
31095
|
+
conflicted: external_exports.boolean(),
|
|
31096
|
+
version: external_exports.string(),
|
|
31097
|
+
measuredAt: external_exports.number(),
|
|
31098
|
+
pendingPublication: external_exports.object({ operationId: Id, expectedVersion: external_exports.string(), stage: external_exports.string() }).optional(),
|
|
31099
|
+
pr: WorkspacePrSchema.nullable().optional(),
|
|
31100
|
+
savedAt: external_exports.number().nullable().optional()
|
|
31101
|
+
});
|
|
31102
|
+
var Session = external_exports.object({ sessionId: Id });
|
|
31103
|
+
var CloudWorkspaceArgsSchema = external_exports.discriminatedUnion("action", [
|
|
31104
|
+
Session.extend({
|
|
31105
|
+
action: external_exports.literal("repositories"),
|
|
31106
|
+
page: external_exports.number().int().min(1).max(1e3).optional(),
|
|
31107
|
+
search: external_exports.string().max(100).optional()
|
|
31108
|
+
}).strict(),
|
|
31109
|
+
Session.extend({
|
|
31110
|
+
action: external_exports.literal("branches"),
|
|
31111
|
+
repoId: RepoId,
|
|
31112
|
+
page: external_exports.number().int().min(1).max(1e3).optional()
|
|
31113
|
+
}).strict(),
|
|
31114
|
+
Session.extend({
|
|
31115
|
+
action: external_exports.literal("bind"),
|
|
31116
|
+
repoId: RepoId,
|
|
31117
|
+
branch: WorkspaceBranchSchema
|
|
31118
|
+
}).strict(),
|
|
31119
|
+
Session.extend({ action: external_exports.literal("status") }).strict(),
|
|
31120
|
+
Session.extend({
|
|
31121
|
+
action: external_exports.literal("switch"),
|
|
31122
|
+
branch: WorkspaceBranchSchema,
|
|
31123
|
+
create: external_exports.boolean().optional()
|
|
31124
|
+
}).strict(),
|
|
31125
|
+
Session.extend({ action: external_exports.literal("diff"), filePath: FilePath }).strict(),
|
|
31126
|
+
Session.extend({
|
|
31127
|
+
action: external_exports.literal("publish"),
|
|
31128
|
+
operationId: Id,
|
|
31129
|
+
expectedVersion: external_exports.string().min(1).max(128)
|
|
31130
|
+
}).strict()
|
|
31131
|
+
]);
|
|
31132
|
+
var CloudWorkspaceResultSchema = external_exports.object({
|
|
31133
|
+
binding: WorkspaceBindingSchema.nullable().optional(),
|
|
31134
|
+
workspace: WorkspaceStatusSchema.nullable().optional(),
|
|
31135
|
+
repositories: external_exports.array(WorkspaceRepoSchema).optional(),
|
|
31136
|
+
branches: external_exports.array(external_exports.string()).optional(),
|
|
31137
|
+
hasMore: external_exports.boolean().optional(),
|
|
31138
|
+
diff: external_exports.object({
|
|
31139
|
+
path: FilePath,
|
|
31140
|
+
patch: external_exports.string(),
|
|
31141
|
+
binary: external_exports.boolean(),
|
|
31142
|
+
truncated: external_exports.boolean()
|
|
31143
|
+
}).optional(),
|
|
31144
|
+
pr: WorkspacePrSchema.optional()
|
|
31145
|
+
});
|
|
31146
|
+
|
|
31039
31147
|
// ../protocol/src/subscription-channel.ts
|
|
31040
31148
|
var SubscriptionChannelSchema = external_exports.object({
|
|
31041
31149
|
id: external_exports.string().min(1),
|
|
@@ -32982,6 +33090,7 @@ var SessionFileSchema = external_exports.object({
|
|
|
32982
33090
|
cloudExecutionId: external_exports.string().min(1).optional(),
|
|
32983
33091
|
/** First turn ID of the per-query SSE conversation. */
|
|
32984
33092
|
cloudConversationId: external_exports.string().min(1).optional(),
|
|
33093
|
+
cloudWorkspace: WorkspaceBindingSchema.optional(),
|
|
32985
33094
|
/** Accepted local turns whose terminal gateway status has not been observed. */
|
|
32986
33095
|
cloudPendingTurns: external_exports.array(external_exports.object({ id: external_exports.string().min(1), text: external_exports.string(), prepared: external_exports.boolean().optional() })).optional(),
|
|
32987
33096
|
/** Owner gateway session observed in ready; proves the remote Pod was opened. */
|
|
@@ -33934,6 +34043,10 @@ var METHOD_DOCS = {
|
|
|
33934
34043
|
summary: "\u586B\u5199\u578B\u8FDE\u63A5\u5668\uFF1A\u628A\u4F7F\u7528\u8005\u672C\u4EBA\u7684\u51ED\u636E\u503C\u4EA4\u7ED9\u4E2D\u5FC3\u52A0\u5BC6\u5165\u5E93\uFF08\u4E00\u6B21\u586B\u5199\u5168\u5C40\u5171\u7528\uFF09\u3002**\u8FD9\u662F\u503C\u552F\u4E00\u7684\u5165\u53E3**\uFF1A\u5165\u53C2\u4E0D\u8FDB\u65E5\u5FD7\u3001\u54CD\u5E94\u4E0D\u56DE\u663E\u3001\u672C\u673A\u4E0D\u843D\u76D8\uFF1B\u683C\u540D\u5FC5\u987B\u662F\u8BE5\u8FDE\u63A5\u5668\u58F0\u660E\u8FC7\u7684\uFF1Bowner-only",
|
|
33935
34044
|
args: CloudConnectorFillArgsSchema
|
|
33936
34045
|
},
|
|
34046
|
+
"cloud:workspace": {
|
|
34047
|
+
summary: "Inspect or operate the calling owner cloud session Git workspace; paths and GitHub credentials stay server-side.",
|
|
34048
|
+
args: CloudWorkspaceArgsSchema
|
|
34049
|
+
},
|
|
33937
34050
|
"cloud:volume:get": {
|
|
33938
34051
|
summary: "\u8C03\u7528\u65B9\u81EA\u5DF1\u90A3\u5757\u4E91\u76D8\u4E0A\u4E00\u8F6E\u672B\u7684\u7528\u91CF\uFF08usedBytes / sizeBytes / measuredAt\uFF09\u3002\u4EC5 gateway \u7684 disk \u5907\u9009\u540E\u7AEF\u6709\u503C\uFF08\u90A3\u91CC\u6309\u4EBA\u4E0D\u6309 persona\uFF1A\u4E91\u4E0A\u6240\u6709 persona \u5171\u7528\u4E00\u5757\u76D8\uFF09\uFF0C\u7EBF\u4E0A snapshot \u540E\u7AEF\u6CA1\u6709\u4E91\u76D8\u3001\u6052\u56DE null\u3002daemon \u62FF\u672C\u673A api key \u95EE gateway /me/volume\uFF1B\u6CA1\u767B\u5F55 / \u6CA1 key / gateway \u4E0D\u901A / \u6CA1\u8DD1\u8FC7\u4EFB\u52A1 / \u5F53\u524D\u540E\u7AEF\u6CA1\u6709\u4E91\u76D8\u4E00\u5F8B\u56DE volume:null\uFF08\u89D2\u6807\u4E0D\u6E32\uFF09\uFF0C\u4E0D\u629B\uFF1Bowner-only\u3002\u65E0\u53C2\u6570\uFF08\u67E5\u7684\u662F\u8C03\u7528\u65B9\u81EA\u5DF1\u7684\u76D8\uFF09",
|
|
33939
34052
|
args: NO_ARGS
|
|
@@ -34277,15 +34390,15 @@ var METHOD_DOCS = {
|
|
|
34277
34390
|
summary: "\u5217\u51FA\u767B\u5F55\u8BBF\u95EE\u8FC7\u672C\u673A public persona \u7684 web \u8BBF\u5BA2\u3002owner-only",
|
|
34278
34391
|
args: NO_ARGS
|
|
34279
34392
|
},
|
|
34280
|
-
|
|
34393
|
+
whoami: {
|
|
34281
34394
|
summary: "\u8FD4\u56DE\u672C\u8FDE\u63A5\u7684\u8EAB\u4EFD\uFF1Aowner \u663E\u793A\u540D + capability wire \u5F62\u6001 + \u88AB\u6388\u6743\u7684 persona \u5217\u8868\u3002\u4EFB\u4F55 authed \u8FDE\u63A5\u53EF\u8C03",
|
|
34282
34395
|
args: NO_ARGS
|
|
34283
34396
|
},
|
|
34284
|
-
|
|
34397
|
+
info: {
|
|
34285
34398
|
summary: "daemon \u8FD0\u884C\u65F6\u4FE1\u606F\uFF1A\u7248\u672C / \u534F\u8BAE\u7248\u672C / \u4E3B\u673A / \u53EF\u7528 tool / \u5728\u8DD1\u7684\u4F1A\u8BDD / tunnel URL \u7B49",
|
|
34286
34399
|
args: NO_ARGS
|
|
34287
34400
|
},
|
|
34288
|
-
|
|
34401
|
+
ping: {
|
|
34289
34402
|
summary: "\u5B58\u6D3B\u63A2\u6D4B\uFF0C\u56DE pong",
|
|
34290
34403
|
args: NO_ARGS
|
|
34291
34404
|
},
|
|
@@ -31036,6 +31036,114 @@ var import_node_path5 = require("path");
|
|
|
31036
31036
|
var import_promises2 = __toESM(require("fs/promises"), 1);
|
|
31037
31037
|
var import_node_path4 = __toESM(require("path"), 1);
|
|
31038
31038
|
|
|
31039
|
+
// ../protocol/src/cloud-workspace-schemas.ts
|
|
31040
|
+
var WORKSPACE_COMPARISON_VALUES = ["head", "index"];
|
|
31041
|
+
var Id = external_exports.string().regex(/^[A-Za-z0-9][A-Za-z0-9-]{0,127}$/);
|
|
31042
|
+
var RepoId = external_exports.string().regex(/^[1-9][0-9]*$/);
|
|
31043
|
+
var Part = external_exports.string().regex(/^[A-Za-z0-9_.-]+$/);
|
|
31044
|
+
var WorkspaceBranchSchema = external_exports.string().min(1).max(255).refine(
|
|
31045
|
+
(b) => !b.startsWith("-") && b !== "HEAD" && !b.startsWith("/") && !b.endsWith("/") && !b.endsWith(".") && !/[\s~^:?*\[\\\x00-\x1f\x7f]/.test(b) && !b.includes("..") && !b.includes("@{") && !b.includes("//") && b.split("/").every((s) => !s.startsWith(".") && !s.endsWith(".lock")),
|
|
31046
|
+
"Invalid Git branch"
|
|
31047
|
+
);
|
|
31048
|
+
var FilePath = external_exports.string().min(1).max(4096).refine(
|
|
31049
|
+
(p) => !p.startsWith("/") && !p.includes("\0") && !p.split(/[\\/]/).includes("..")
|
|
31050
|
+
);
|
|
31051
|
+
var WorkspaceBindingSchema = external_exports.object({
|
|
31052
|
+
workspaceId: Id,
|
|
31053
|
+
repoId: RepoId,
|
|
31054
|
+
owner: Part,
|
|
31055
|
+
name: Part,
|
|
31056
|
+
sourceBranch: WorkspaceBranchSchema,
|
|
31057
|
+
defaultBranch: WorkspaceBranchSchema
|
|
31058
|
+
}).strict();
|
|
31059
|
+
var WorkspaceRepoSchema = external_exports.object({
|
|
31060
|
+
repoId: RepoId,
|
|
31061
|
+
owner: Part,
|
|
31062
|
+
name: Part,
|
|
31063
|
+
defaultBranch: external_exports.string(),
|
|
31064
|
+
private: external_exports.boolean(),
|
|
31065
|
+
description: external_exports.string().nullable()
|
|
31066
|
+
});
|
|
31067
|
+
var WorkspacePrSchema = external_exports.object({
|
|
31068
|
+
number: external_exports.number().int().positive(),
|
|
31069
|
+
url: external_exports.string().url().refine((u) => new URL(u).origin === "https://github.com"),
|
|
31070
|
+
base: external_exports.string(),
|
|
31071
|
+
head: external_exports.string()
|
|
31072
|
+
});
|
|
31073
|
+
var WorkspaceStatusSchema = WorkspaceBindingSchema.extend({
|
|
31074
|
+
initialCommit: external_exports.string(),
|
|
31075
|
+
head: external_exports.string(),
|
|
31076
|
+
actualBranch: external_exports.string().nullable(),
|
|
31077
|
+
branches: external_exports.array(external_exports.string()).optional(),
|
|
31078
|
+
files: external_exports.array(
|
|
31079
|
+
external_exports.object({
|
|
31080
|
+
path: FilePath,
|
|
31081
|
+
previousPath: external_exports.string().optional(),
|
|
31082
|
+
comparison: external_exports.enum(WORKSPACE_COMPARISON_VALUES).optional(),
|
|
31083
|
+
status: external_exports.string(),
|
|
31084
|
+
added: external_exports.number().nonnegative(),
|
|
31085
|
+
removed: external_exports.number().nonnegative(),
|
|
31086
|
+
binary: external_exports.boolean(),
|
|
31087
|
+
untracked: external_exports.boolean().optional()
|
|
31088
|
+
})
|
|
31089
|
+
),
|
|
31090
|
+
totalFiles: external_exports.number().int().nonnegative().optional(),
|
|
31091
|
+
filesTruncated: external_exports.boolean().optional(),
|
|
31092
|
+
added: external_exports.number().nonnegative(),
|
|
31093
|
+
removed: external_exports.number().nonnegative(),
|
|
31094
|
+
dirty: external_exports.boolean(),
|
|
31095
|
+
conflicted: external_exports.boolean(),
|
|
31096
|
+
version: external_exports.string(),
|
|
31097
|
+
measuredAt: external_exports.number(),
|
|
31098
|
+
pendingPublication: external_exports.object({ operationId: Id, expectedVersion: external_exports.string(), stage: external_exports.string() }).optional(),
|
|
31099
|
+
pr: WorkspacePrSchema.nullable().optional(),
|
|
31100
|
+
savedAt: external_exports.number().nullable().optional()
|
|
31101
|
+
});
|
|
31102
|
+
var Session = external_exports.object({ sessionId: Id });
|
|
31103
|
+
var CloudWorkspaceArgsSchema = external_exports.discriminatedUnion("action", [
|
|
31104
|
+
Session.extend({
|
|
31105
|
+
action: external_exports.literal("repositories"),
|
|
31106
|
+
page: external_exports.number().int().min(1).max(1e3).optional(),
|
|
31107
|
+
search: external_exports.string().max(100).optional()
|
|
31108
|
+
}).strict(),
|
|
31109
|
+
Session.extend({
|
|
31110
|
+
action: external_exports.literal("branches"),
|
|
31111
|
+
repoId: RepoId,
|
|
31112
|
+
page: external_exports.number().int().min(1).max(1e3).optional()
|
|
31113
|
+
}).strict(),
|
|
31114
|
+
Session.extend({
|
|
31115
|
+
action: external_exports.literal("bind"),
|
|
31116
|
+
repoId: RepoId,
|
|
31117
|
+
branch: WorkspaceBranchSchema
|
|
31118
|
+
}).strict(),
|
|
31119
|
+
Session.extend({ action: external_exports.literal("status") }).strict(),
|
|
31120
|
+
Session.extend({
|
|
31121
|
+
action: external_exports.literal("switch"),
|
|
31122
|
+
branch: WorkspaceBranchSchema,
|
|
31123
|
+
create: external_exports.boolean().optional()
|
|
31124
|
+
}).strict(),
|
|
31125
|
+
Session.extend({ action: external_exports.literal("diff"), filePath: FilePath }).strict(),
|
|
31126
|
+
Session.extend({
|
|
31127
|
+
action: external_exports.literal("publish"),
|
|
31128
|
+
operationId: Id,
|
|
31129
|
+
expectedVersion: external_exports.string().min(1).max(128)
|
|
31130
|
+
}).strict()
|
|
31131
|
+
]);
|
|
31132
|
+
var CloudWorkspaceResultSchema = external_exports.object({
|
|
31133
|
+
binding: WorkspaceBindingSchema.nullable().optional(),
|
|
31134
|
+
workspace: WorkspaceStatusSchema.nullable().optional(),
|
|
31135
|
+
repositories: external_exports.array(WorkspaceRepoSchema).optional(),
|
|
31136
|
+
branches: external_exports.array(external_exports.string()).optional(),
|
|
31137
|
+
hasMore: external_exports.boolean().optional(),
|
|
31138
|
+
diff: external_exports.object({
|
|
31139
|
+
path: FilePath,
|
|
31140
|
+
patch: external_exports.string(),
|
|
31141
|
+
binary: external_exports.boolean(),
|
|
31142
|
+
truncated: external_exports.boolean()
|
|
31143
|
+
}).optional(),
|
|
31144
|
+
pr: WorkspacePrSchema.optional()
|
|
31145
|
+
});
|
|
31146
|
+
|
|
31039
31147
|
// ../protocol/src/subscription-channel.ts
|
|
31040
31148
|
var SubscriptionChannelSchema = external_exports.object({
|
|
31041
31149
|
id: external_exports.string().min(1),
|
|
@@ -32982,6 +33090,7 @@ var SessionFileSchema = external_exports.object({
|
|
|
32982
33090
|
cloudExecutionId: external_exports.string().min(1).optional(),
|
|
32983
33091
|
/** First turn ID of the per-query SSE conversation. */
|
|
32984
33092
|
cloudConversationId: external_exports.string().min(1).optional(),
|
|
33093
|
+
cloudWorkspace: WorkspaceBindingSchema.optional(),
|
|
32985
33094
|
/** Accepted local turns whose terminal gateway status has not been observed. */
|
|
32986
33095
|
cloudPendingTurns: external_exports.array(external_exports.object({ id: external_exports.string().min(1), text: external_exports.string(), prepared: external_exports.boolean().optional() })).optional(),
|
|
32987
33096
|
/** Owner gateway session observed in ready; proves the remote Pod was opened. */
|
|
@@ -33934,6 +34043,10 @@ var METHOD_DOCS = {
|
|
|
33934
34043
|
summary: "\u586B\u5199\u578B\u8FDE\u63A5\u5668\uFF1A\u628A\u4F7F\u7528\u8005\u672C\u4EBA\u7684\u51ED\u636E\u503C\u4EA4\u7ED9\u4E2D\u5FC3\u52A0\u5BC6\u5165\u5E93\uFF08\u4E00\u6B21\u586B\u5199\u5168\u5C40\u5171\u7528\uFF09\u3002**\u8FD9\u662F\u503C\u552F\u4E00\u7684\u5165\u53E3**\uFF1A\u5165\u53C2\u4E0D\u8FDB\u65E5\u5FD7\u3001\u54CD\u5E94\u4E0D\u56DE\u663E\u3001\u672C\u673A\u4E0D\u843D\u76D8\uFF1B\u683C\u540D\u5FC5\u987B\u662F\u8BE5\u8FDE\u63A5\u5668\u58F0\u660E\u8FC7\u7684\uFF1Bowner-only",
|
|
33935
34044
|
args: CloudConnectorFillArgsSchema
|
|
33936
34045
|
},
|
|
34046
|
+
"cloud:workspace": {
|
|
34047
|
+
summary: "Inspect or operate the calling owner cloud session Git workspace; paths and GitHub credentials stay server-side.",
|
|
34048
|
+
args: CloudWorkspaceArgsSchema
|
|
34049
|
+
},
|
|
33937
34050
|
"cloud:volume:get": {
|
|
33938
34051
|
summary: "\u8C03\u7528\u65B9\u81EA\u5DF1\u90A3\u5757\u4E91\u76D8\u4E0A\u4E00\u8F6E\u672B\u7684\u7528\u91CF\uFF08usedBytes / sizeBytes / measuredAt\uFF09\u3002\u4EC5 gateway \u7684 disk \u5907\u9009\u540E\u7AEF\u6709\u503C\uFF08\u90A3\u91CC\u6309\u4EBA\u4E0D\u6309 persona\uFF1A\u4E91\u4E0A\u6240\u6709 persona \u5171\u7528\u4E00\u5757\u76D8\uFF09\uFF0C\u7EBF\u4E0A snapshot \u540E\u7AEF\u6CA1\u6709\u4E91\u76D8\u3001\u6052\u56DE null\u3002daemon \u62FF\u672C\u673A api key \u95EE gateway /me/volume\uFF1B\u6CA1\u767B\u5F55 / \u6CA1 key / gateway \u4E0D\u901A / \u6CA1\u8DD1\u8FC7\u4EFB\u52A1 / \u5F53\u524D\u540E\u7AEF\u6CA1\u6709\u4E91\u76D8\u4E00\u5F8B\u56DE volume:null\uFF08\u89D2\u6807\u4E0D\u6E32\uFF09\uFF0C\u4E0D\u629B\uFF1Bowner-only\u3002\u65E0\u53C2\u6570\uFF08\u67E5\u7684\u662F\u8C03\u7528\u65B9\u81EA\u5DF1\u7684\u76D8\uFF09",
|
|
33939
34052
|
args: NO_ARGS
|
|
@@ -34277,15 +34390,15 @@ var METHOD_DOCS = {
|
|
|
34277
34390
|
summary: "\u5217\u51FA\u767B\u5F55\u8BBF\u95EE\u8FC7\u672C\u673A public persona \u7684 web \u8BBF\u5BA2\u3002owner-only",
|
|
34278
34391
|
args: NO_ARGS
|
|
34279
34392
|
},
|
|
34280
|
-
|
|
34393
|
+
whoami: {
|
|
34281
34394
|
summary: "\u8FD4\u56DE\u672C\u8FDE\u63A5\u7684\u8EAB\u4EFD\uFF1Aowner \u663E\u793A\u540D + capability wire \u5F62\u6001 + \u88AB\u6388\u6743\u7684 persona \u5217\u8868\u3002\u4EFB\u4F55 authed \u8FDE\u63A5\u53EF\u8C03",
|
|
34282
34395
|
args: NO_ARGS
|
|
34283
34396
|
},
|
|
34284
|
-
|
|
34397
|
+
info: {
|
|
34285
34398
|
summary: "daemon \u8FD0\u884C\u65F6\u4FE1\u606F\uFF1A\u7248\u672C / \u534F\u8BAE\u7248\u672C / \u4E3B\u673A / \u53EF\u7528 tool / \u5728\u8DD1\u7684\u4F1A\u8BDD / tunnel URL \u7B49",
|
|
34286
34399
|
args: NO_ARGS
|
|
34287
34400
|
},
|
|
34288
|
-
|
|
34401
|
+
ping: {
|
|
34289
34402
|
summary: "\u5B58\u6D3B\u63A2\u6D4B\uFF0C\u56DE pong",
|
|
34290
34403
|
args: NO_ARGS
|
|
34291
34404
|
},
|