@tickernelz/paperclip-pro-server 2026.928.4 → 2026.928.6

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.
Files changed (75) hide show
  1. package/dist/build-info.json +1 -1
  2. package/dist/routes/issues.d.ts.map +1 -1
  3. package/dist/routes/issues.js +1 -0
  4. package/dist/routes/issues.js.map +1 -1
  5. package/dist/routes/openapi.d.ts.map +1 -1
  6. package/dist/routes/openapi.js +133 -53
  7. package/dist/routes/openapi.js.map +1 -1
  8. package/dist/routes/paperclip-mcp.d.ts.map +1 -1
  9. package/dist/routes/paperclip-mcp.js +15 -0
  10. package/dist/routes/paperclip-mcp.js.map +1 -1
  11. package/node_modules/@agentclientprotocol/sdk/dist/acp.d.ts +4 -1
  12. package/node_modules/@agentclientprotocol/sdk/dist/acp.js +3 -2
  13. package/node_modules/@agentclientprotocol/sdk/dist/acp.js.map +1 -1
  14. package/node_modules/@agentclientprotocol/sdk/dist/connection.d.ts +199 -11
  15. package/node_modules/@agentclientprotocol/sdk/dist/connection.js +454 -46
  16. package/node_modules/@agentclientprotocol/sdk/dist/connection.js.map +1 -1
  17. package/node_modules/@agentclientprotocol/sdk/dist/connection.test.js +170 -11
  18. package/node_modules/@agentclientprotocol/sdk/dist/connection.test.js.map +1 -1
  19. package/node_modules/@agentclientprotocol/sdk/dist/examples/http-server.js +6 -1
  20. package/node_modules/@agentclientprotocol/sdk/dist/examples/http-server.js.map +1 -1
  21. package/node_modules/@agentclientprotocol/sdk/dist/http-stream.d.ts +2 -0
  22. package/node_modules/@agentclientprotocol/sdk/dist/http-stream.js +46 -8
  23. package/node_modules/@agentclientprotocol/sdk/dist/http-stream.js.map +1 -1
  24. package/node_modules/@agentclientprotocol/sdk/dist/line-buffer.d.ts +7 -5
  25. package/node_modules/@agentclientprotocol/sdk/dist/line-buffer.js +36 -29
  26. package/node_modules/@agentclientprotocol/sdk/dist/line-buffer.js.map +1 -1
  27. package/node_modules/@agentclientprotocol/sdk/dist/node-adapter.js +33 -2
  28. package/node_modules/@agentclientprotocol/sdk/dist/node-adapter.js.map +1 -1
  29. package/node_modules/@agentclientprotocol/sdk/dist/node-adapter.test.js +87 -0
  30. package/node_modules/@agentclientprotocol/sdk/dist/node-adapter.test.js.map +1 -1
  31. package/node_modules/@agentclientprotocol/sdk/dist/server-sse.d.ts +6 -1
  32. package/node_modules/@agentclientprotocol/sdk/dist/server-sse.js +78 -30
  33. package/node_modules/@agentclientprotocol/sdk/dist/server-sse.js.map +1 -1
  34. package/node_modules/@agentclientprotocol/sdk/dist/server-sse.test.js +59 -6
  35. package/node_modules/@agentclientprotocol/sdk/dist/server-sse.test.js.map +1 -1
  36. package/node_modules/@agentclientprotocol/sdk/dist/server-websocket-upgrade.test.js +320 -2
  37. package/node_modules/@agentclientprotocol/sdk/dist/server-websocket-upgrade.test.js.map +1 -1
  38. package/node_modules/@agentclientprotocol/sdk/dist/server.d.ts +4 -3
  39. package/node_modules/@agentclientprotocol/sdk/dist/server.js +49 -21
  40. package/node_modules/@agentclientprotocol/sdk/dist/server.js.map +1 -1
  41. package/node_modules/@agentclientprotocol/sdk/dist/server.test.js +530 -0
  42. package/node_modules/@agentclientprotocol/sdk/dist/server.test.js.map +1 -1
  43. package/node_modules/@agentclientprotocol/sdk/dist/sse.d.ts +3 -1
  44. package/node_modules/@agentclientprotocol/sdk/dist/sse.js +59 -36
  45. package/node_modules/@agentclientprotocol/sdk/dist/sse.js.map +1 -1
  46. package/node_modules/@agentclientprotocol/sdk/dist/stream-limits.d.ts +15 -0
  47. package/node_modules/@agentclientprotocol/sdk/dist/stream-limits.js +58 -0
  48. package/node_modules/@agentclientprotocol/sdk/dist/stream-limits.js.map +1 -0
  49. package/node_modules/@agentclientprotocol/sdk/dist/stream.d.ts +4 -1
  50. package/node_modules/@agentclientprotocol/sdk/dist/stream.js +6 -2
  51. package/node_modules/@agentclientprotocol/sdk/dist/stream.js.map +1 -1
  52. package/node_modules/@agentclientprotocol/sdk/dist/test-support/until.d.ts +5 -0
  53. package/node_modules/@agentclientprotocol/sdk/dist/test-support/until.js +14 -0
  54. package/node_modules/@agentclientprotocol/sdk/dist/test-support/until.js.map +1 -0
  55. package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.d.ts +4 -1
  56. package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.js +3 -2
  57. package/node_modules/@agentclientprotocol/sdk/dist/v2/acp.js.map +1 -1
  58. package/node_modules/@agentclientprotocol/sdk/dist/ws-server.js +143 -15
  59. package/node_modules/@agentclientprotocol/sdk/dist/ws-server.js.map +1 -1
  60. package/node_modules/@agentclientprotocol/sdk/dist/ws-utils.d.ts +6 -0
  61. package/node_modules/@agentclientprotocol/sdk/dist/ws-utils.js.map +1 -1
  62. package/node_modules/@agentclientprotocol/sdk/package.json +1 -1
  63. package/package.json +21 -21
  64. package/ui-dist/assets/{Agents.production-Cj5rZo69.js → Agents.production-C3HZ3WkH.js} +2 -2
  65. package/ui-dist/assets/{CompanyActivity.production-BsesMNQp.js → CompanyActivity.production-4aA8pwxB.js} +1 -1
  66. package/ui-dist/assets/{CompanyExport-CWmvCY4A.js → CompanyExport-CblRC_yJ.js} +1 -1
  67. package/ui-dist/assets/{CompanySkills.production-BGtfN-3A.js → CompanySkills.production-AZTd440C.js} +1 -1
  68. package/ui-dist/assets/{Costs.production-84DycSrt.js → Costs.production-QhFTCjhh.js} +1 -1
  69. package/ui-dist/assets/{OrgChart.production-D_VwOg1Z.js → OrgChart.production-BUtNNhCY.js} +1 -1
  70. package/ui-dist/assets/{RoutineDetail.production-DJe0NpxJ.js → RoutineDetail.production-Bi5ZoMXD.js} +1 -1
  71. package/ui-dist/assets/{Routines.production-VhYuO012.js → Routines.production-Ck_OcEg_.js} +1 -1
  72. package/ui-dist/assets/{definition-DurZnIaP.js → definition-BsNVlrmu.js} +1 -1
  73. package/ui-dist/assets/{index-BqdSRbLj.js → index-b6Jdkq01.js} +4 -4
  74. package/ui-dist/index.html +1 -1
  75. package/ui-dist/sw.js +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/routes/openapi.ts"],"names":[],"mappings":"AAqxWA,wBAAgB,oBAAoB,IAAI,GAAG,CAY1C;AAED,eAAO,MAAM,gBAAgB,6BAAuB,CAAC;AAErD,wBAAgB,aAAa,+CAM5B"}
1
+ {"version":3,"file":"openapi.d.ts","sourceRoot":"","sources":["../../src/routes/openapi.ts"],"names":[],"mappings":"AA+2WA,wBAAgB,oBAAoB,IAAI,GAAG,CAY1C;AAED,eAAO,MAAM,gBAAgB,6BAAuB,CAAC;AAErD,wBAAgB,aAAa,+CAM5B"}
@@ -2,7 +2,7 @@ import { experimentalApiMetadata } from "./experimental-api-metadata.js";
2
2
  import { experimentalApiPaths, experimentalApiQueries, } from "./experimental-api-paths.js";
3
3
  import { Router } from "express";
4
4
  import { z } from "zod";
5
- import { createAiConnectionSchema, localAiConnectionSchema, localAiLoginStartSchema, emailEndpointSetupSchema, emailConnectionSchema, emailSendSchema, slackToolCallSchema, slackSearchConfigSchema,
5
+ import { createAiConnectionSchema, ENVIRONMENT_DRIVERS, ENVIRONMENT_LEASE_STATUSES, ENVIRONMENT_STATUSES, FEEDBACK_TARGET_TYPES, FEEDBACK_TRACE_STATUSES, FEEDBACK_VOTE_VALUES, PLUGIN_JOB_STATUSES, PLUGIN_STATUSES, TOOL_ACTION_REQUEST_STATUSES, catalogSkillListQuerySchema, catalogTeamListQuerySchema, localAiConnectionSchema, localAiLoginStartSchema, emailEndpointSetupSchema, emailConnectionSchema, emailSendSchema, slackToolCallSchema, slackSearchConfigSchema,
6
6
  // Agent
7
7
  AGENT_PALETTE_IDS, AGENT_AVATAR_SIZES, CHARACTER_STATES, agentAppearanceSchema, createAgentSchema, createAgentHireSchema, updateAgentSchema, updateAgentPermissionsSchema, agentAdapterConfigBatchPreviewSchema, agentAdapterConfigBatchUpdateSchema, updateAgentInstructionsPathSchema, updateAgentInstructionsBundleSchema, upsertAgentInstructionsFileSchema, createAgentKeySchema, builtInAgentEmptyMutationSchema, builtInAgentProvisionSchema, generateSummarySlotSchema, writeSummarySlotSchema, createStatusCardSchema, patchStatusCardSchema, refreshStatusCardSchema, writeStatusCardQuerySchema, writeStatusCardSummarySchema, wakeAgentSchema, resetAgentSessionSchema, agentSkillSyncSchema, testAdapterEnvironmentSchema, agentMineInboxQuerySchema,
8
8
  // Issue
@@ -294,6 +294,22 @@ class OpenAPIRegistry {
294
294
  registerPath(pathRegistration) {
295
295
  this.paths.push(pathRegistration);
296
296
  }
297
+ declareQuery(method, path, query) {
298
+ const matches = this.paths.filter((entry) => entry.method === method && entry.path === path);
299
+ if (matches.length !== 1) {
300
+ throw new Error(`declareQuery expected one ${method.toUpperCase()} ${path}, found ${matches.length}`);
301
+ }
302
+ const entry = matches[0];
303
+ const existing = entry.request?.query ? unwrapSchema(entry.request.query) : null;
304
+ const shape = existing && zodTypeName(existing) === "object"
305
+ ? zodDef(existing).shape
306
+ : {};
307
+ const overlap = Object.keys(query.shape).filter((name) => name in shape);
308
+ if (overlap.length > 0) {
309
+ throw new Error(`declareQuery ${method.toUpperCase()} ${path} redeclares ${overlap.join(", ")}`);
310
+ }
311
+ entry.request = { ...entry.request, query: z.object({ ...shape, ...query.shape }) };
312
+ }
297
313
  buildPaths() {
298
314
  const paths = {};
299
315
  for (const { method, path, request, responses, ...operation } of this
@@ -8833,58 +8849,6 @@ registerCurrentRoute({
8833
8849
  summary: "Update a document annotation thread",
8834
8850
  body: updateDocumentAnnotationThreadSchema,
8835
8851
  });
8836
- for (const route of [
8837
- [
8838
- "get",
8839
- "/api/routines/{id}/description/annotations",
8840
- "List routine description annotation threads",
8841
- ],
8842
- [
8843
- "get",
8844
- "/api/routines/{id}/description/annotations/{threadId}",
8845
- "Get a routine description annotation thread",
8846
- ],
8847
- ]) {
8848
- registerCurrentRoute({
8849
- method: route[0],
8850
- path: route[1],
8851
- tags: ["routines"],
8852
- summary: route[2],
8853
- });
8854
- }
8855
- registerCurrentRoute({
8856
- method: "post",
8857
- path: "/api/routines/{id}/description/annotations",
8858
- tags: ["routines"],
8859
- summary: "Create a routine description annotation thread",
8860
- body: createDocumentAnnotationThreadSchema,
8861
- responses: {
8862
- 201: r.ok(),
8863
- 400: r.badRequest,
8864
- 401: r.unauthorized,
8865
- 404: r.notFound,
8866
- },
8867
- });
8868
- registerCurrentRoute({
8869
- method: "post",
8870
- path: "/api/routines/{id}/description/annotations/{threadId}/comments",
8871
- tags: ["routines"],
8872
- summary: "Add a routine description annotation comment",
8873
- body: createDocumentAnnotationCommentSchema,
8874
- responses: {
8875
- 201: r.ok(),
8876
- 400: r.badRequest,
8877
- 401: r.unauthorized,
8878
- 404: r.notFound,
8879
- },
8880
- });
8881
- registerCurrentRoute({
8882
- method: "patch",
8883
- path: "/api/routines/{id}/description/annotations/{threadId}",
8884
- tags: ["routines"],
8885
- summary: "Update a routine description annotation thread",
8886
- body: updateDocumentAnnotationThreadSchema,
8887
- });
8888
8852
  registerCurrentRoute({
8889
8853
  method: "get",
8890
8854
  path: "/api/issues/{id}/diagnostics/blockers",
@@ -10201,6 +10165,122 @@ for (const [method, path, body] of experimentalApiPaths) {
10201
10165
  },
10202
10166
  });
10203
10167
  }
10168
+ const queryFlag = z.boolean();
10169
+ const annotationListQuery = z.object({
10170
+ status: z.enum(["open", "resolved", "all"]).optional(),
10171
+ includeComments: queryFlag.optional(),
10172
+ });
10173
+ const catalogRefQuery = z.object({
10174
+ ref: z.string().optional(),
10175
+ });
10176
+ const feedbackTraceQuery = {
10177
+ targetType: z.enum(FEEDBACK_TARGET_TYPES).optional(),
10178
+ vote: z.enum(FEEDBACK_VOTE_VALUES).optional(),
10179
+ status: z.enum(FEEDBACK_TRACE_STATUSES).optional(),
10180
+ from: z.string().optional(),
10181
+ to: z.string().optional(),
10182
+ sharedOnly: queryFlag.optional(),
10183
+ includePayload: queryFlag.optional(),
10184
+ };
10185
+ const runLogQuery = z.object({
10186
+ offset: z.coerce.number().int().min(0).optional(),
10187
+ limitBytes: z.coerce.number().int().min(1).max(1024 * 1024).optional(),
10188
+ });
10189
+ for (const [method, path, query] of [
10190
+ ["get", "/api/companies/{companyId}/activity", z.object({
10191
+ agentId: z.string().optional(),
10192
+ entityType: z.string().optional(),
10193
+ entityId: z.string().optional(),
10194
+ limit: z.coerce.number().int().min(1).max(500).optional(),
10195
+ })],
10196
+ ["get", "/api/companies/{companyId}/audit/agent-actions", z.object({
10197
+ actorScope: z.enum(["agents", "all"]).optional(),
10198
+ })],
10199
+ ["get", "/api/agents/{id}/instructions-bundle/file", z.object({ path: z.string().min(1) })],
10200
+ ["delete", "/api/agents/{id}/instructions-bundle/file", z.object({ path: z.string().min(1) })],
10201
+ ["get", "/api/companies/{companyId}/heartbeat-runs", z.object({
10202
+ agentId: z.string().optional(),
10203
+ limit: z.coerce.number().int().min(1).max(1000).optional(),
10204
+ summary: queryFlag.optional(),
10205
+ })],
10206
+ ["get", "/api/companies/{companyId}/provider-traces", z.object({
10207
+ runIds: z.string().optional(),
10208
+ })],
10209
+ ["get", "/api/companies/{companyId}/live-runs", z.object({
10210
+ limit: z.coerce.number().int().min(1).max(50).optional(),
10211
+ minCount: z.coerce.number().int().min(0).max(50).optional(),
10212
+ })],
10213
+ ["get", "/api/heartbeat-runs/{runId}/log", runLogQuery],
10214
+ ["get", "/api/workspace-operations/{operationId}/log", runLogQuery],
10215
+ ["get", "/api/cases/{id}/documents/{key}/annotations", annotationListQuery],
10216
+ ["get", "/api/issues/{id}/documents/{key}/annotations", annotationListQuery],
10217
+ ["get", "/api/routines/{id}/description/annotations", annotationListQuery],
10218
+ ["get", "/api/companies/{companyId}/feedback-traces", z.object({
10219
+ ...feedbackTraceQuery,
10220
+ issueId: z.string().optional(),
10221
+ projectId: z.string().optional(),
10222
+ })],
10223
+ ["get", "/api/issues/{id}/feedback-traces", z.object(feedbackTraceQuery)],
10224
+ ["get", "/api/feedback-traces/{traceId}", z.object({
10225
+ includePayload: queryFlag.optional(),
10226
+ })],
10227
+ ["get", "/api/skills/catalog", catalogSkillListQuerySchema],
10228
+ ["get", "/api/skills/catalog/{catalogId}", catalogRefQuery],
10229
+ ["get", "/api/teams/catalog", catalogTeamListQuerySchema],
10230
+ ["get", "/api/teams/catalog/{catalogId}", catalogRefQuery],
10231
+ ["post", "/api/companies/{companyId}/teams/catalog/{catalogId}/preview", catalogRefQuery],
10232
+ ["post", "/api/companies/{companyId}/teams/catalog/{catalogId}/install", catalogRefQuery],
10233
+ ["get", "/api/issues/{id}/cost-summary", z.object({ excludeRoot: queryFlag.optional() })],
10234
+ ["get", "/api/companies/{companyId}/environments", z.object({
10235
+ driver: z.enum(ENVIRONMENT_DRIVERS).optional(),
10236
+ status: z.enum(ENVIRONMENT_STATUSES).optional(),
10237
+ })],
10238
+ ["get", "/api/environments/{id}/leases", z.object({ status: z.enum(ENVIRONMENT_LEASE_STATUSES).optional() })],
10239
+ ["delete", "/api/environments/{id}", z.object({ destroyReusableSandboxLeases: queryFlag.optional() })],
10240
+ ["get", "/api/companies/{companyId}/execution-workspaces", z.object({
10241
+ projectId: z.string().optional(),
10242
+ projectWorkspaceId: z.string().optional(),
10243
+ issueId: z.string().optional(),
10244
+ status: z.string().optional(),
10245
+ reuseEligible: queryFlag.optional(),
10246
+ summary: queryFlag.optional(),
10247
+ })],
10248
+ ["get", "/api/issues/{id}/tree-holds", z.object({
10249
+ status: z.enum(["active", "released"]).optional(),
10250
+ mode: z.enum(["pause", "resume", "cancel", "restore"]).optional(),
10251
+ includeMembers: queryFlag.optional(),
10252
+ })],
10253
+ ["delete", "/api/issues/{id}/comments/{commentId}", z.object({
10254
+ mode: z.enum(["delete", "cancel"]).optional(),
10255
+ })],
10256
+ ["get", "/api/plugins", z.object({ status: z.enum(PLUGIN_STATUSES).optional() })],
10257
+ ["get", "/api/plugins/tools", z.object({ pluginId: z.string().optional() })],
10258
+ ["delete", "/api/plugins/{pluginId}", z.object({ purge: queryFlag.optional() })],
10259
+ ["get", "/api/plugins/{pluginId}/logs", z.object({
10260
+ level: z.string().optional(),
10261
+ since: z.string().optional(),
10262
+ limit: z.coerce.number().int().min(1).max(500).optional(),
10263
+ })],
10264
+ ["get", "/api/plugins/{pluginId}/jobs", z.object({ status: z.enum(PLUGIN_JOB_STATUSES).optional() })],
10265
+ ["get", "/api/plugins/{pluginId}/jobs/{jobId}/runs", z.object({
10266
+ limit: z.coerce.number().int().min(1).max(500).optional(),
10267
+ })],
10268
+ ["get", "/api/companies/{companyId}/routines", z.object({ projectId: z.string().optional() })],
10269
+ ["get", "/api/routines/{id}/runs", z.object({
10270
+ limit: z.coerce.number().int().min(1).optional(),
10271
+ })],
10272
+ ["get", "/api/companies/{companyId}/tools/apps/{galleryKey}/preflight", z.object({ methodKey: z.string().optional() })],
10273
+ ["get", "/api/companies/{companyId}/tools/action-requests", z.object({
10274
+ status: z.enum(TOOL_ACTION_REQUEST_STATUSES).optional(),
10275
+ })],
10276
+ ["get", "/api/tool-connections/{connectionId}/usage", z.object({ range: z.enum(["7d", "30d"]).optional() })],
10277
+ ["get", "/api/tool-connections/{connectionId}/activity", z.object({
10278
+ limit: z.coerce.number().int().min(1).optional(),
10279
+ })],
10280
+ ["get", "/api/tool-gateway/audit", z.object({ gateway: z.string().optional() })],
10281
+ ]) {
10282
+ registry.declareQuery(method, path, query);
10283
+ }
10204
10284
  // ─── Spec builder ─────────────────────────────────────────────────────────────
10205
10285
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
10206
10286
  export function buildOpenApiDocument() {