@penclipai/plugin-sdk 2026.608.0-canary.1 → 2026.702.0-canary.0

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 CHANGED
@@ -244,7 +244,9 @@ Adds a navigation-style entry to the main company sidebar navigation area, rende
244
244
 
245
245
  #### `routeSidebar`
246
246
 
247
- Replaces the normal company sidebar while the current route is a plugin page route with the same `routePath`. Use this for full-page plugin workspaces that need their own local navigation while keeping the company rail and account footer. Receives `PluginRouteSidebarProps` with `context.companyId` and `context.companyPrefix` set to the active company. Requires the `ui.sidebar.register` capability.
247
+ A contextual sidebar shown while the current route is a plugin page route with the same `routePath`. Use this for full-page plugin workspaces that need their own local navigation. It does **not** replace the app sidebar: the host collapses the main `<Sidebar/>` to its 64px icon rail (still hover/peek-able) and renders your `routeSidebar` in a secondary pane beside it, producing `[ app rail ][ your sidebar ][ content ]`. Receives `PluginRouteSidebarProps` with `context.companyId` and `context.companyPrefix` set to the active company. Requires the `ui.sidebar.register` capability.
248
+
249
+ Do **not** mount `RequestCollapsedSidebar` (or otherwise try to collapse the app sidebar) from a `routeSidebar` plugin — the host drives the collapse automatically while your route is active and restores the user's preference when they navigate away. The collapse is a hard invariant: a secondary sidebar always forces the app rail collapsed (hiding its expand toggle), overriding any user pin, but it never mutates the user's saved expanded/collapsed preference — that is restored as soon as they leave your route.
248
250
 
249
251
  #### `sidebarPanel`
250
252
 
@@ -345,6 +347,10 @@ Declare in `manifest.capabilities`. Grouped by scope:
345
347
  | | `telemetry.track` |
346
348
  | | `database.namespace.migrate` |
347
349
  | | `database.namespace.write` |
350
+ | | `external.objects.detect` |
351
+ | | `external.objects.read` |
352
+ | | `external.objects.write` |
353
+ | | `external.objects.refresh` |
348
354
  | **Instance** | `instance.settings.register` |
349
355
  | | `plugin.state.read` |
350
356
  | | `plugin.state.write` |
@@ -376,6 +382,42 @@ Declare in `manifest.capabilities`. Grouped by scope:
376
382
 
377
383
  Full list in code: import `PLUGIN_CAPABILITIES` from `@paperclipai/plugin-sdk`.
378
384
 
385
+ ### External Object Reference Providers
386
+
387
+ Trusted connector plugins can declare generic external object providers in the
388
+ manifest. The host owns URL scanning, sanitized canonical URLs, core storage,
389
+ normalized status rendering, and issue/comment/document write durability. The
390
+ plugin only identifies provider-owned objects and resolves board-safe status
391
+ metadata.
392
+
393
+ ```ts
394
+ objectReferences: [
395
+ {
396
+ providerKey: "mocktracker",
397
+ displayName: "Mock Tracker",
398
+ objectTypes: ["ticket"],
399
+ urlPatterns: ["https://mock.example/tickets/:id"],
400
+ refreshPolicy: { defaultTtlSeconds: 300, staleAfterSeconds: 1800 },
401
+ },
402
+ ],
403
+ capabilities: ["external.objects.detect", "external.objects.read"],
404
+ ```
405
+
406
+ Implement `onDetectExternalObjects()` to map sanitized URL candidates to
407
+ `providerKey`, `objectType`, provider-stable `externalId`, and optional display
408
+ metadata such as `displayKey`/`iconKey`. Implement `onResolveExternalObject()`
409
+ to return a normalized snapshot with `statusCategory`, `statusTone`,
410
+ `statusLabel`, optional `statusIconKey`, board-safe `data`, and freshness
411
+ metadata. Slow or failing plugins are isolated: Paperclip logs the failure and
412
+ continues saving the source issue, comment, or document.
413
+
414
+ MVP security posture: provider plugins are trusted installs. Manifest
415
+ capabilities gate host APIs and provider invocation paths, but they are not a
416
+ sandbox boundary for untrusted marketplace code. Plugin UI is same-origin
417
+ JavaScript and must not be mounted inline in markdown; inline external-object
418
+ rendering uses host-owned metadata only. Treat untrusted providers as future work
419
+ that requires worker sandboxing plus isolated plugin UI.
420
+
379
421
  ### Restricted Database Namespace
380
422
 
381
423
  Trusted orchestration plugins can declare a host-owned PostgreSQL namespace:
@@ -47,7 +47,7 @@
47
47
  * ```
48
48
  */
49
49
  import type { PluginContext } from "./types.js";
50
- import type { PluginEnvironmentAcquireLeaseParams, PluginEnvironmentDestroyLeaseParams, PluginEnvironmentExecuteParams, PluginEnvironmentExecuteResult, PluginEnvironmentLease, PluginEnvironmentProbeParams, PluginEnvironmentProbeResult, PluginEnvironmentRealizeWorkspaceParams, PluginEnvironmentRealizeWorkspaceResult, PluginEnvironmentReleaseLeaseParams, PluginEnvironmentResumeLeaseParams, PluginEnvironmentValidateConfigParams, PluginEnvironmentValidationResult } from "./protocol.js";
50
+ import type { PluginEnvironmentAcquireLeaseParams, PluginEnvironmentDestroyLeaseParams, PluginEnvironmentExecuteParams, PluginEnvironmentExecuteResult, PluginEnvironmentStartInteractiveSetupParams, PluginEnvironmentInteractiveSetupSession, PluginEnvironmentGetInteractiveSetupParams, PluginEnvironmentCaptureTemplateParams, PluginEnvironmentCaptureTemplateResult, PluginEnvironmentCancelInteractiveSetupParams, PluginEnvironmentCancelInteractiveSetupResult, PluginEnvironmentDeleteTemplateParams, PluginEnvironmentDeleteTemplateResult, PluginEnvironmentLease, PluginEnvironmentProbeParams, PluginEnvironmentProbeResult, PluginEnvironmentRealizeWorkspaceParams, PluginEnvironmentRealizeWorkspaceResult, PluginEnvironmentReleaseLeaseParams, PluginEnvironmentResumeLeaseParams, PluginEnvironmentValidateConfigParams, PluginEnvironmentValidationResult, DetectExternalObjectsParams, DetectExternalObjectsResult, ResolveExternalObjectParams, PluginExternalObjectResolveResult, RefreshExternalObjectsParams, RefreshExternalObjectsResult } from "./protocol.js";
51
51
  /**
52
52
  * Optional plugin-reported diagnostics returned from the `health()` RPC method.
53
53
  *
@@ -200,6 +200,29 @@ export interface PluginDefinition {
200
200
  * access, capabilities, and checkout policy.
201
201
  */
202
202
  onApiRequest?(input: PluginApiRequestInput): Promise<PluginApiResponse>;
203
+ /**
204
+ * Called when Paperclip scans issue/comment/document content and asks this
205
+ * plugin whether any sanitized URL candidates belong to its external object
206
+ * providers. The host has already stripped URL userinfo, query strings, and
207
+ * fragments unless provider-safe identity components were explicitly hashed.
208
+ *
209
+ * Requires `external.objects.detect`.
210
+ */
211
+ onDetectExternalObjects?(params: DetectExternalObjectsParams): Promise<DetectExternalObjectsResult>;
212
+ /**
213
+ * Called when Paperclip needs the current normalized status for one external
214
+ * object owned by a manifest-declared provider.
215
+ *
216
+ * Requires `external.objects.read`.
217
+ */
218
+ onResolveExternalObject?(params: ResolveExternalObjectParams): Promise<PluginExternalObjectResolveResult>;
219
+ /**
220
+ * Optional batch resolver used by providers that can refresh many objects
221
+ * more efficiently than individual `onResolveExternalObject` calls.
222
+ *
223
+ * Requires `external.objects.refresh`.
224
+ */
225
+ onRefreshExternalObjects?(params: RefreshExternalObjectsParams): Promise<RefreshExternalObjectsResult>;
203
226
  /**
204
227
  * Called to validate provider-specific configuration for a plugin-hosted
205
228
  * environment driver.
@@ -219,6 +242,16 @@ export interface PluginDefinition {
219
242
  onEnvironmentRealizeWorkspace?(params: PluginEnvironmentRealizeWorkspaceParams): Promise<PluginEnvironmentRealizeWorkspaceResult>;
220
243
  /** Called to execute a command inside the provider lease. */
221
244
  onEnvironmentExecute?(params: PluginEnvironmentExecuteParams): Promise<PluginEnvironmentExecuteResult>;
245
+ /** Called to start an interactive setup sandbox and return redacted connection metadata. */
246
+ onEnvironmentStartInteractiveSetup?(params: PluginEnvironmentStartInteractiveSetupParams): Promise<PluginEnvironmentInteractiveSetupSession>;
247
+ /** Called to read setup status and, when authorized, a one-time connection payload. */
248
+ onEnvironmentGetInteractiveSetup?(params: PluginEnvironmentGetInteractiveSetupParams): Promise<PluginEnvironmentInteractiveSetupSession>;
249
+ /** Called to capture a reusable provider template from a live setup sandbox. */
250
+ onEnvironmentCaptureTemplate?(params: PluginEnvironmentCaptureTemplateParams): Promise<PluginEnvironmentCaptureTemplateResult>;
251
+ /** Called to cancel and clean up a setup sandbox without promoting a template. */
252
+ onEnvironmentCancelInteractiveSetup?(params: PluginEnvironmentCancelInteractiveSetupParams): Promise<PluginEnvironmentCancelInteractiveSetupResult>;
253
+ /** Called for optional best-effort cleanup of a captured provider template. */
254
+ onEnvironmentDeleteTemplate?(params: PluginEnvironmentDeleteTemplateParams): Promise<PluginEnvironmentDeleteTemplateResult>;
222
255
  }
223
256
  /**
224
257
  * The sealed plugin object returned by `definePlugin()`.
@@ -1 +1 @@
1
- {"version":3,"file":"define-plugin.d.ts","sourceRoot":"","sources":["../src/define-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define-plugin.d.ts","sourceRoot":"","sources":["../src/define-plugin.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"define-plugin.js","sourceRoot":"","sources":["../src/define-plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAmQH,8EAA8E;AAC9E,mCAAmC;AACnC,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,YAAY,CAAC,UAA4B;IACvD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"define-plugin.js","sourceRoot":"","sources":["../src/define-plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AA4UH,8EAA8E;AAC9E,mCAAmC;AACnC,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,YAAY,CAAC,UAA4B;IACvD,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;AACvC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -57,10 +57,10 @@ export type { PluginBundlerPresetInput, PluginBundlerPresets, EsbuildLikeOptions
57
57
  export type { PluginDevServer, PluginDevServerOptions } from "./dev-server.js";
58
58
  export type { WorkerRpcHostOptions, WorkerRpcHost, RunWorkerOptions, } from "./worker-rpc-host.js";
59
59
  export type { HostServices, HostClientFactoryOptions, HostClientHandlers, } from "./host-client-factory.js";
60
- export type { JsonRpcId, JsonRpcInvocationScope, JsonRpcInvocationContext, JsonRpcRequest, JsonRpcSuccessResponse, JsonRpcError, JsonRpcErrorResponse, JsonRpcResponse, JsonRpcNotification, JsonRpcMessage, JsonRpcErrorCode, PluginRpcErrorCode, PluginInvocationScope, PluginInvocationContext, WorkerHostCallContext, InitializeParams, InitializeResult, ConfigChangedParams, ValidateConfigParams, OnEventParams, RunJobParams, GetDataParams, PerformActionParams, PluginPerformActionActorType, PluginPerformActionActorContext, PluginPerformActionContext, ExecuteToolParams, PluginEnvironmentDiagnostic, PluginEnvironmentDriverBaseParams, PluginEnvironmentValidateConfigParams, PluginEnvironmentValidationResult, PluginEnvironmentProbeParams, PluginEnvironmentProbeResult, PluginEnvironmentLease, PluginEnvironmentAcquireLeaseParams, PluginEnvironmentResumeLeaseParams, PluginEnvironmentReleaseLeaseParams, PluginEnvironmentDestroyLeaseParams, PluginEnvironmentRealizeWorkspaceParams, PluginEnvironmentRealizeWorkspaceResult, PluginEnvironmentExecuteParams, PluginEnvironmentExecuteResult, PluginModalBoundsRequest, PluginRenderCloseEvent, PluginLauncherRenderContextSnapshot, HostToWorkerMethods, HostToWorkerMethodName, WorkerToHostMethods, WorkerToHostMethodName, HostToWorkerRequest, HostToWorkerResponse, WorkerToHostRequest, WorkerToHostResponse, WorkerToHostNotifications, WorkerToHostNotificationName, } from "./protocol.js";
60
+ export type { JsonRpcId, JsonRpcInvocationScope, JsonRpcInvocationContext, JsonRpcRequest, JsonRpcSuccessResponse, JsonRpcError, JsonRpcErrorResponse, JsonRpcResponse, JsonRpcNotification, JsonRpcMessage, JsonRpcErrorCode, PluginRpcErrorCode, PluginInvocationScope, PluginInvocationContext, WorkerHostCallContext, InitializeParams, InitializeResult, ConfigChangedParams, ValidateConfigParams, OnEventParams, RunJobParams, GetDataParams, PerformActionParams, PluginPerformActionActorType, PluginPerformActionActorContext, PluginPerformActionContext, ExecuteToolParams, PluginExternalObjectUrlCandidate, PluginExternalObjectSourceContext, DetectExternalObjectsParams, PluginExternalObjectDetection, DetectExternalObjectsResult, PluginExternalObjectRecordSnapshot, ResolveExternalObjectParams, PluginExternalObjectResolvedSnapshot, PluginExternalObjectResolveResult, RefreshExternalObjectsParams, RefreshExternalObjectsResult, PluginEnvironmentDiagnostic, PluginEnvironmentDriverBaseParams, PluginEnvironmentValidateConfigParams, PluginEnvironmentValidationResult, PluginEnvironmentProbeParams, PluginEnvironmentProbeResult, PluginEnvironmentLease, PluginEnvironmentAcquireLeaseParams, PluginEnvironmentResumeLeaseParams, PluginEnvironmentReleaseLeaseParams, PluginEnvironmentDestroyLeaseParams, PluginEnvironmentRealizeWorkspaceParams, PluginEnvironmentRealizeWorkspaceResult, PluginEnvironmentExecuteParams, PluginEnvironmentExecuteResult, PluginEnvironmentInteractiveSetupStatus, PluginEnvironmentInteractiveSetupConnectionType, PluginEnvironmentTemplateRefKind, PluginEnvironmentInteractiveSetupConnectionSummary, PluginEnvironmentInteractiveSetupConnectionPayload, PluginEnvironmentInteractiveSetupSession, PluginEnvironmentStartInteractiveSetupParams, PluginEnvironmentGetInteractiveSetupParams, PluginEnvironmentCaptureTemplateParams, PluginEnvironmentCaptureTemplateResult, PluginEnvironmentCancelInteractiveSetupParams, PluginEnvironmentCancelInteractiveSetupResult, PluginEnvironmentDeleteTemplateParams, PluginEnvironmentDeleteTemplateResult, PluginModalBoundsRequest, PluginRenderCloseEvent, PluginLauncherRenderContextSnapshot, HostToWorkerMethods, HostToWorkerMethodName, WorkerToHostMethods, WorkerToHostMethodName, HostToWorkerRequest, HostToWorkerResponse, WorkerToHostRequest, WorkerToHostResponse, WorkerToHostNotifications, WorkerToHostNotificationName, } from "./protocol.js";
61
61
  export type { PluginContext, PluginConfigClient, PluginLocalFolderProblem, PluginLocalFolderStatus, PluginLocalFolderConfigureInput, PluginLocalFolderListOptions, PluginLocalFolderEntry, PluginLocalFolderListing, PluginLocalFoldersClient, PluginEventsClient, PluginJobsClient, PluginLaunchersClient, PluginHttpClient, PluginSecretsClient, PluginActivityClient, PluginActivityLogEntry, PluginStateClient, PluginEntitiesClient, PluginProjectsClient, PluginExecutionWorkspacesClient, PluginSkillsClient, PluginCompaniesClient, PluginIssuesClient, PluginIssueMutationActor, PluginIssueRelationsClient, PluginIssueRelationSummary, PluginIssueCheckoutOwnership, PluginIssueWakeupResult, PluginIssueWakeupBatchResult, PluginIssueRunSummary, PluginIssueApprovalSummary, PluginIssueCostSummary, PluginBudgetIncidentSummary, PluginIssueInvocationBlockSummary, PluginIssueOrchestrationSummary, PluginIssueSubtreeOptions, PluginIssueAssigneeSummary, PluginIssueSubtree, PluginIssueSummariesClient, PluginAgentsClient, PluginAccessClient, PluginAccessMembersClient, PluginAccessInvitesClient, PluginAccessMember, PluginAccessInvite, PluginAuthorizationClient, PluginAuthorizationPolicySummary, PluginAuthorizationPolicyRecord, PluginAssignmentPreviewInput, PluginAuthorizationDecisionResult, PluginAuthorizationAuditEntry, PluginAgentSessionsClient, AgentSession, AgentSessionEvent, AgentSessionSendResult, PluginGoalsClient, PluginDataClient, PluginActionsClient, PluginStreamsClient, PluginToolsClient, PluginMetricsClient, PluginTelemetryClient, PluginLogger, } from "./types.js";
62
62
  export type { ScopeKey, EventFilter, PluginEvent, PluginJobContext, PluginLauncherRegistration, ToolRunContext, ToolResult, PluginEntityUpsert, PluginEntityRecord, PluginEntityQuery, PluginWorkspace, PluginExecutionWorkspaceMetadata, Company, Project, Issue, IssueComment, IssueDocumentSummary, Agent, Goal, PermissionKey, PrincipalPermissionGrant, PrincipalType, PluginDatabaseClient, HumanCompanyMembershipRole, MembershipStatus, } from "./types.js";
63
- export type { PaperclipPluginManifestV1, PluginJobDeclaration, PluginWebhookDeclaration, PluginToolDeclaration, PluginEnvironmentDriverDeclaration, PluginManagedAgentDeclaration, PluginManagedAgentResolution, PluginManagedProjectDeclaration, PluginManagedProjectResolution, PluginManagedRoutineDeclaration, PluginManagedRoutineResolution, PluginManagedSkillDeclaration, PluginManagedSkillFileDeclaration, PluginManagedSkillResolution, CompanySkill, PluginManagedResourceKind, PluginManagedResourceRef, PluginUiSlotDeclaration, PluginUiDeclaration, PluginLauncherActionDeclaration, PluginLauncherRenderDeclaration, PluginLauncherDeclaration, PluginMinimumHostVersion, PluginDatabaseDeclaration, PluginApiRouteCompanyResolution, PluginApiRouteDeclaration, PluginLocalFolderDeclaration, PluginCompanySettings, PluginRecord, PluginDatabaseNamespaceRecord, PluginMigrationRecord, PluginConfig, JsonSchema, PluginStatus, PluginCategory, PluginCapability, PluginUiSlotType, PluginUiSlotEntityType, PluginLauncherPlacementZone, PluginLauncherAction, PluginLauncherBounds, PluginLauncherRenderEnvironment, PluginStateScopeKind, PluginJobStatus, PluginJobRunStatus, PluginJobRunTrigger, PluginWebhookDeliveryStatus, PluginDatabaseCoreReadTable, PluginDatabaseMigrationStatus, PluginDatabaseNamespaceMode, PluginDatabaseNamespaceStatus, PluginApiRouteAuthMode, PluginApiRouteCheckoutPolicy, PluginApiRouteMethod, PluginEventType, PluginBridgeErrorCode, } from "./types.js";
63
+ export type { PaperclipPluginManifestV1, PluginJobDeclaration, PluginWebhookDeclaration, PluginToolDeclaration, PluginEnvironmentDriverDeclaration, PluginEnvironmentTemplateConfigBinding, PluginManagedAgentDeclaration, PluginManagedAgentResolution, PluginManagedProjectDeclaration, PluginManagedProjectResolution, PluginManagedRoutineDeclaration, PluginManagedRoutineResolution, PluginManagedSkillDeclaration, PluginManagedSkillFileDeclaration, PluginManagedSkillResolution, CompanySkill, PluginManagedResourceKind, PluginManagedResourceRef, PluginUiSlotDeclaration, PluginUiDeclaration, PluginLauncherActionDeclaration, PluginLauncherRenderDeclaration, PluginLauncherDeclaration, PluginMinimumHostVersion, PluginDatabaseDeclaration, PluginApiRouteCompanyResolution, PluginApiRouteDeclaration, PluginLocalFolderDeclaration, PluginCompanySettings, PluginObjectReferenceRefreshPolicy, PluginObjectReferenceProviderDeclaration, PluginRecord, PluginDatabaseNamespaceRecord, PluginMigrationRecord, PluginConfig, JsonSchema, PluginStatus, PluginCategory, PluginCapability, PluginUiSlotType, PluginUiSlotEntityType, PluginLauncherPlacementZone, PluginLauncherAction, PluginLauncherBounds, PluginLauncherRenderEnvironment, PluginStateScopeKind, PluginJobStatus, PluginJobRunStatus, PluginJobRunTrigger, PluginWebhookDeliveryStatus, PluginDatabaseCoreReadTable, PluginDatabaseMigrationStatus, PluginDatabaseNamespaceMode, PluginDatabaseNamespaceStatus, PluginApiRouteAuthMode, PluginApiRouteCheckoutPolicy, PluginApiRouteMethod, PluginEventType, PluginBridgeErrorCode, } from "./types.js";
64
64
  /**
65
65
  * Zod is re-exported for plugin authors to use when defining their
66
66
  * `instanceConfigSchema` and tool `parametersSchema`.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,mCAAmC,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC/Q,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AAElC,0CAA0C;AAC1C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,+BAA+B,EAC/B,+BAA+B,EAC/B,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,eAAe,CAAC;AAoQvB,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAE9E,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,+CAA+C,EAC/C,wBAAwB,EACxB,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,gCAAgC,EAChC,kBAAkB,EAClB,yBAAyB,EACzB,eAAe,EACf,8BAA8B,EAC9B,oCAAoC,EACpC,mBAAmB,EACnB,eAAe,GAChB,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,8EAA8E;AAC9E,eAAe;AACf,8EAA8E;AAE9E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,mCAAmC,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC/Q,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EACL,wBAAwB,EACxB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AAElC,0CAA0C;AAC1C,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,sBAAsB,EACtB,+BAA+B,EAC/B,+BAA+B,EAC/B,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,iBAAiB,EACjB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,MAAM,eAAe,CAAC;AAgSvB,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAE9E,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,+CAA+C,EAC/C,wBAAwB,EACxB,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,gCAAgC,EAChC,kBAAkB,EAClB,yBAAyB,EACzB,eAAe,EACf,8BAA8B,EAC9B,oCAAoC,EACpC,mBAAmB,EACnB,eAAe,GAChB,MAAM,mBAAmB,CAAC"}
@@ -14,7 +14,7 @@
14
14
  * @see PLUGIN_SPEC.md §13 — Host-Worker Protocol
15
15
  * @see https://www.jsonrpc.org/specification
16
16
  */
17
- import type { PaperclipPluginManifestV1, PluginLauncherBounds, PluginLauncherRenderContextSnapshot, PluginStateScopeKind, Company, Project, Issue, IssueComment, IssueDocument, IssueDocumentSummary, IssueAssigneeAdapterOverrides, IssueThreadInteraction, CreateIssueThreadInteraction, PluginManagedAgentResolution, PluginManagedProjectResolution, PluginManagedRoutineResolution, PluginManagedSkillResolution, Routine, RoutineRun, Agent, Goal, PluginLocalFolderDeclaration, PrincipalPermissionGrant } from "@penclipai/shared";
17
+ import type { PaperclipPluginManifestV1, PluginLauncherBounds, PluginLauncherRenderContextSnapshot, PluginStateScopeKind, Company, Project, Issue, IssueComment, IssueDocument, IssueDocumentSummary, IssueAssigneeAdapterOverrides, IssueThreadInteraction, CreateIssueThreadInteraction, PluginManagedAgentResolution, PluginManagedProjectResolution, PluginManagedRoutineResolution, PluginManagedSkillResolution, Routine, RoutineRun, Agent, Goal, PluginLocalFolderDeclaration, PrincipalPermissionGrant, ExternalObjectStatusCategory, ExternalObjectStatusTone, ExternalObjectLivenessState, ExternalObjectMentionConfidence, ExternalObjectMentionSourceKind } from "@penclipai/shared";
18
18
  export type { PluginLauncherRenderContextSnapshot } from "@penclipai/shared";
19
19
  import type { PluginEvent, PluginIssueCheckoutOwnership, PluginIssueOrchestrationSummary, PluginIssueRelationSummary, PluginIssueSubtree, PluginIssueWakeupBatchResult, PluginIssueWakeupResult, PluginJobContext, PluginExecutionWorkspaceMetadata, PluginWorkspace, ToolRunContext, ToolResult, PluginLocalFolderListing, PluginLocalFolderStatus, PluginAccessInvite, PluginAccessMember, PluginAssignmentPreviewInput, PluginAuthorizationAuditEntry, PluginAuthorizationDecisionResult, PluginAuthorizationPolicyRecord, PluginAuthorizationPolicySummary } from "./types.js";
20
20
  import type { PluginHealthDiagnostics, PluginApiRequestInput, PluginApiResponse, PluginConfigValidationResult, PluginWebhookInput } from "./define-plugin.js";
@@ -317,6 +317,103 @@ export interface ExecuteToolParams {
317
317
  /** Agent run context. */
318
318
  runContext: ToolRunContext;
319
319
  }
320
+ export interface PluginExternalObjectUrlCandidate {
321
+ sanitizedCanonicalUrl: string;
322
+ sanitizedDisplayUrl: string;
323
+ canonicalIdentityHash: string;
324
+ canonicalIdentity: Record<string, unknown>;
325
+ redactedMatchedText: string;
326
+ }
327
+ export interface PluginExternalObjectSourceContext {
328
+ companyId: string;
329
+ sourceIssueId: string;
330
+ sourceKind: ExternalObjectMentionSourceKind;
331
+ sourceRecordId: string | null;
332
+ documentKey: string | null;
333
+ propertyKey: string | null;
334
+ }
335
+ export interface DetectExternalObjectsParams {
336
+ companyId: string;
337
+ urls: PluginExternalObjectUrlCandidate[];
338
+ sourceContext: PluginExternalObjectSourceContext;
339
+ }
340
+ export interface PluginExternalObjectDetection {
341
+ urlIdentityHash: string;
342
+ providerKey: string;
343
+ objectType: string;
344
+ externalId: string;
345
+ displayKey?: string | null;
346
+ iconKey?: string | null;
347
+ displayTitle?: string | null;
348
+ confidence?: ExternalObjectMentionConfidence;
349
+ }
350
+ export interface DetectExternalObjectsResult {
351
+ detections: PluginExternalObjectDetection[];
352
+ }
353
+ export interface PluginExternalObjectRecordSnapshot {
354
+ id: string;
355
+ companyId: string;
356
+ providerKey: string;
357
+ objectType: string;
358
+ externalId: string;
359
+ sanitizedCanonicalUrl: string | null;
360
+ canonicalIdentityHash: string | null;
361
+ displayKey: string | null;
362
+ iconKey: string | null;
363
+ displayTitle: string | null;
364
+ statusKey: string | null;
365
+ statusLabel: string | null;
366
+ statusIconKey: string | null;
367
+ statusCategory: ExternalObjectStatusCategory;
368
+ statusTone: ExternalObjectStatusTone;
369
+ liveness: ExternalObjectLivenessState;
370
+ isTerminal: boolean;
371
+ data: Record<string, unknown>;
372
+ remoteVersion: string | null;
373
+ etag: string | null;
374
+ }
375
+ export interface ResolveExternalObjectParams {
376
+ companyId: string;
377
+ providerKey: string;
378
+ objectType: string;
379
+ externalId: string;
380
+ object: PluginExternalObjectRecordSnapshot;
381
+ }
382
+ export interface PluginExternalObjectResolvedSnapshot {
383
+ displayKey?: string | null;
384
+ iconKey?: string | null;
385
+ displayTitle?: string | null;
386
+ statusKey?: string | null;
387
+ statusLabel?: string | null;
388
+ statusIconKey?: string | null;
389
+ statusCategory: ExternalObjectStatusCategory;
390
+ statusTone: ExternalObjectStatusTone;
391
+ isTerminal?: boolean;
392
+ data?: Record<string, unknown>;
393
+ remoteVersion?: string | null;
394
+ etag?: string | null;
395
+ ttlSeconds?: number;
396
+ }
397
+ export type PluginExternalObjectResolveResult = {
398
+ ok: true;
399
+ snapshot: PluginExternalObjectResolvedSnapshot;
400
+ } | {
401
+ ok: false;
402
+ liveness: Extract<ExternalObjectLivenessState, "auth_required" | "unreachable">;
403
+ errorCode: string;
404
+ errorMessage?: string | null;
405
+ retryAfterSeconds?: number;
406
+ };
407
+ export interface RefreshExternalObjectsParams {
408
+ companyId: string;
409
+ objects: PluginExternalObjectRecordSnapshot[];
410
+ }
411
+ export interface RefreshExternalObjectsResult {
412
+ results: Array<{
413
+ objectId: string;
414
+ result: PluginExternalObjectResolveResult;
415
+ }>;
416
+ }
320
417
  export interface PluginEnvironmentDiagnostic {
321
418
  severity: "info" | "warning" | "error";
322
419
  message: string;
@@ -357,6 +454,15 @@ export interface PluginEnvironmentAcquireLeaseParams extends PluginEnvironmentDr
357
454
  runId: string;
358
455
  workspaceMode?: string;
359
456
  requestedCwd?: string;
457
+ agentId?: string;
458
+ executionWorkspaceId?: string | null;
459
+ /**
460
+ * The harness/adapter type for THIS run (the agent's adapter), so a single
461
+ * environment can serve mixed harnesses. When omitted, the driver falls back to
462
+ * the environment's configured default adapter. A provider that materializes a
463
+ * per-run sandbox should use this to select the runtime image and per-run env.
464
+ */
465
+ adapterType?: string;
360
466
  }
361
467
  export interface PluginEnvironmentResumeLeaseParams extends PluginEnvironmentDriverBaseParams {
362
468
  providerLeaseId: string;
@@ -398,6 +504,78 @@ export interface PluginEnvironmentExecuteResult {
398
504
  stderr: string;
399
505
  metadata?: Record<string, unknown>;
400
506
  }
507
+ export type PluginEnvironmentInteractiveSetupStatus = "starting" | "waiting_for_user" | "capturing" | "promoted" | "cancelled" | "timed_out" | "failed" | "missing";
508
+ export type PluginEnvironmentInteractiveSetupConnectionType = "ssh" | (string & {});
509
+ export type PluginEnvironmentTemplateRefKind = "snapshot" | "image" | "provider_template" | "unknown" | (string & {});
510
+ export interface PluginEnvironmentInteractiveSetupConnectionSummary {
511
+ type: PluginEnvironmentInteractiveSetupConnectionType;
512
+ username?: string | null;
513
+ hostRedacted: boolean;
514
+ portRedacted: boolean;
515
+ commandRedacted?: boolean;
516
+ expiresAt?: string | null;
517
+ metadata?: Record<string, unknown>;
518
+ }
519
+ export interface PluginEnvironmentInteractiveSetupConnectionPayload {
520
+ type: PluginEnvironmentInteractiveSetupConnectionType;
521
+ command?: string | null;
522
+ token?: string | null;
523
+ expiresAt?: string | null;
524
+ metadata?: Record<string, unknown>;
525
+ }
526
+ export interface PluginEnvironmentInteractiveSetupSession {
527
+ providerLeaseId: string | null;
528
+ status: PluginEnvironmentInteractiveSetupStatus;
529
+ connectionSummary: PluginEnvironmentInteractiveSetupConnectionSummary | null;
530
+ connectionPayload?: PluginEnvironmentInteractiveSetupConnectionPayload | null;
531
+ expiresAt?: string | null;
532
+ metadata?: Record<string, unknown>;
533
+ }
534
+ export interface PluginEnvironmentStartInteractiveSetupParams extends PluginEnvironmentDriverBaseParams {
535
+ sessionId: string;
536
+ sourceTemplateRef?: string | null;
537
+ sourceTemplateKind?: PluginEnvironmentTemplateRefKind | null;
538
+ connectionExpiresInMinutes?: number | null;
539
+ expiresAt?: string | null;
540
+ }
541
+ export interface PluginEnvironmentGetInteractiveSetupParams extends PluginEnvironmentDriverBaseParams {
542
+ providerLeaseId: string | null;
543
+ setupMetadata?: Record<string, unknown>;
544
+ includeConnectionPayload?: boolean;
545
+ connectionExpiresInMinutes?: number | null;
546
+ }
547
+ export interface PluginEnvironmentCaptureTemplateParams extends PluginEnvironmentDriverBaseParams {
548
+ providerLeaseId: string | null;
549
+ setupMetadata?: Record<string, unknown>;
550
+ sourceTemplateRef?: string | null;
551
+ previousTemplateRef?: string | null;
552
+ templateLabel?: string | null;
553
+ timeoutMs?: number | null;
554
+ }
555
+ export interface PluginEnvironmentCaptureTemplateResult {
556
+ templateRef: string;
557
+ templateKind: PluginEnvironmentTemplateRefKind;
558
+ metadata?: Record<string, unknown>;
559
+ }
560
+ export interface PluginEnvironmentCancelInteractiveSetupParams extends PluginEnvironmentDriverBaseParams {
561
+ providerLeaseId: string | null;
562
+ setupMetadata?: Record<string, unknown>;
563
+ reason?: string | null;
564
+ }
565
+ export interface PluginEnvironmentCancelInteractiveSetupResult {
566
+ status: Extract<PluginEnvironmentInteractiveSetupStatus, "cancelled" | "timed_out" | "failed" | "missing">;
567
+ metadata?: Record<string, unknown>;
568
+ }
569
+ export interface PluginEnvironmentDeleteTemplateParams extends PluginEnvironmentDriverBaseParams {
570
+ templateRef: string;
571
+ templateKind?: PluginEnvironmentTemplateRefKind;
572
+ metadata?: Record<string, unknown>;
573
+ reason?: string | null;
574
+ }
575
+ export interface PluginEnvironmentDeleteTemplateResult {
576
+ deleted: boolean;
577
+ metadata?: Record<string, unknown>;
578
+ }
401
579
  /**
402
580
  * Bounds request issued by a plugin UI running inside a host-managed launcher
403
581
  * container such as a modal, drawer, or popover.
@@ -455,6 +633,18 @@ export interface HostToWorkerMethods {
455
633
  performAction: [params: PerformActionParams, result: unknown];
456
634
  /** @see PLUGIN_SPEC.md §13.10 */
457
635
  executeTool: [params: ExecuteToolParams, result: ToolResult];
636
+ detectExternalObjects: [
637
+ params: DetectExternalObjectsParams,
638
+ result: DetectExternalObjectsResult
639
+ ];
640
+ resolveExternalObject: [
641
+ params: ResolveExternalObjectParams,
642
+ result: PluginExternalObjectResolveResult
643
+ ];
644
+ refreshExternalObjects: [
645
+ params: RefreshExternalObjectsParams,
646
+ result: RefreshExternalObjectsResult
647
+ ];
458
648
  environmentValidateConfig: [
459
649
  params: PluginEnvironmentValidateConfigParams,
460
650
  result: PluginEnvironmentValidationResult
@@ -487,6 +677,26 @@ export interface HostToWorkerMethods {
487
677
  params: PluginEnvironmentExecuteParams,
488
678
  result: PluginEnvironmentExecuteResult
489
679
  ];
680
+ environmentStartInteractiveSetup: [
681
+ params: PluginEnvironmentStartInteractiveSetupParams,
682
+ result: PluginEnvironmentInteractiveSetupSession
683
+ ];
684
+ environmentGetInteractiveSetup: [
685
+ params: PluginEnvironmentGetInteractiveSetupParams,
686
+ result: PluginEnvironmentInteractiveSetupSession
687
+ ];
688
+ environmentCaptureTemplate: [
689
+ params: PluginEnvironmentCaptureTemplateParams,
690
+ result: PluginEnvironmentCaptureTemplateResult
691
+ ];
692
+ environmentCancelInteractiveSetup: [
693
+ params: PluginEnvironmentCancelInteractiveSetupParams,
694
+ result: PluginEnvironmentCancelInteractiveSetupResult
695
+ ];
696
+ environmentDeleteTemplate: [
697
+ params: PluginEnvironmentDeleteTemplateParams,
698
+ result: PluginEnvironmentDeleteTemplateResult
699
+ ];
490
700
  }
491
701
  /** Union of all host→worker method names. */
492
702
  export type HostToWorkerMethodName = keyof HostToWorkerMethods;
@@ -700,6 +910,8 @@ export interface WorkerToHostMethods {
700
910
  name: string;
701
911
  value: number;
702
912
  tags?: Record<string, string>;
913
+ /** Owning tenant for `plugin_logs.company_id` (cascade-delete scope). `null`/omitted = instance-scope. */
914
+ companyId?: string | null;
703
915
  },
704
916
  result: void
705
917
  ];
@@ -715,6 +927,8 @@ export interface WorkerToHostMethods {
715
927
  level: "info" | "warn" | "error" | "debug";
716
928
  message: string;
717
929
  meta?: Record<string, unknown>;
930
+ /** Owning tenant for `plugin_logs.company_id` (cascade-delete scope). `null`/omitted = instance-scope. */
931
+ companyId?: string | null;
718
932
  },
719
933
  result: void
720
934
  ];