@tangle-network/agent-integrations 0.17.0 → 0.19.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/dist/specs.d.ts CHANGED
@@ -452,7 +452,7 @@ declare function renderApprovalCopy(input: {
452
452
  *
453
453
  * IntegrationHub — vendor-neutral facade (../index.ts)
454
454
  * ↓
455
- * IntegrationProvider — one per vendor (Nango/Composio/first-party)
455
+ * IntegrationProvider — one per gateway or first-party provider
456
456
  * ↓
457
457
  * ConnectorAdapter (this file) — one per integration (Google Calendar, ...)
458
458
  * ↓
@@ -2040,6 +2040,114 @@ interface ActivepiecesExecutorProviderOptions {
2040
2040
  }
2041
2041
  declare function createActivepiecesExecutorProvider(options: ActivepiecesExecutorProviderOptions): IntegrationProvider;
2042
2042
 
2043
+ declare const ACTIVEPIECES_RUNTIME_SIGNATURE_HEADER = "x-tangle-activepieces-signature";
2044
+ declare const TANGLE_CATALOG_RUNTIME_SIGNATURE_HEADER = "x-tangle-catalog-signature";
2045
+ interface ActivepiecesRuntimeRequest {
2046
+ version: 1;
2047
+ requestId: string;
2048
+ providerId: string;
2049
+ connection: IntegrationConnection;
2050
+ connector: Pick<IntegrationConnector, 'id' | 'title' | 'auth' | 'scopes' | 'metadata'>;
2051
+ piece: ActivepiecesExecutorInvocation['piece'];
2052
+ action: {
2053
+ id: string;
2054
+ input: unknown;
2055
+ idempotencyKey?: string;
2056
+ dryRun?: boolean;
2057
+ metadata?: Record<string, unknown>;
2058
+ };
2059
+ }
2060
+ interface ActivepiecesHttpExecutorOptions {
2061
+ endpoint: string;
2062
+ path?: string;
2063
+ signatureHeader?: string;
2064
+ secret?: string;
2065
+ fetchImpl?: typeof fetch;
2066
+ headers?: Record<string, string>;
2067
+ timeoutMs?: number;
2068
+ requestId?: () => string;
2069
+ }
2070
+ declare function createActivepiecesHttpExecutor(options: ActivepiecesHttpExecutorOptions): ActivepiecesExecutorProviderOptions['executeAction'];
2071
+ declare function buildActivepiecesRuntimeRequest(invocation: ActivepiecesExecutorInvocation, requestId?: string): ActivepiecesRuntimeRequest;
2072
+ declare function signActivepiecesRuntimeRequest(serializedBody: string, secret: string): string;
2073
+ declare function verifyActivepiecesRuntimeSignature(serializedBody: string, signature: string | null | undefined, secret: string): boolean;
2074
+ type TangleCatalogRuntimeRequest = ActivepiecesRuntimeRequest;
2075
+ type TangleCatalogHttpExecutorOptions = ActivepiecesHttpExecutorOptions;
2076
+ declare function createTangleCatalogHttpExecutor(options: TangleCatalogHttpExecutorOptions): ActivepiecesExecutorProviderOptions['executeAction'];
2077
+ declare const buildTangleCatalogRuntimeRequest: typeof buildActivepiecesRuntimeRequest;
2078
+ declare const signTangleCatalogRuntimeRequest: typeof signActivepiecesRuntimeRequest;
2079
+ declare const verifyTangleCatalogRuntimeSignature: typeof verifyActivepiecesRuntimeSignature;
2080
+
2081
+ interface IntegrationCatalogFreshnessOptions {
2082
+ liveActivepieces?: boolean;
2083
+ minActivepiecesConnectors?: number;
2084
+ staleConnectorDelta?: number;
2085
+ fetchImpl?: typeof fetch;
2086
+ }
2087
+ interface IntegrationCatalogFreshnessResult {
2088
+ ok: boolean;
2089
+ generatedAt: string;
2090
+ local: {
2091
+ activepiecesEntries: number;
2092
+ activepiecesConnectors: number;
2093
+ activepiecesActions: number;
2094
+ activepiecesTriggers: number;
2095
+ executableActivepiecesConnectors: number;
2096
+ executableActivepiecesActions: number;
2097
+ executableActivepiecesTriggers: number;
2098
+ executableToolDefinitions: number;
2099
+ unsupportedExecutableConnectorIds: string[];
2100
+ registryEntries: number;
2101
+ registrySummary: IntegrationRegistrySummary;
2102
+ conflictSamples: IntegrationRegistryConflict[];
2103
+ };
2104
+ upstream?: {
2105
+ activepiecesPieces?: number;
2106
+ activepiecesDelta?: number;
2107
+ checkedUrl: string;
2108
+ warning?: string;
2109
+ };
2110
+ warnings: string[];
2111
+ }
2112
+ declare const ACTIVEPIECES_PUBLIC_CATALOG_URL = "https://www.activepieces.com/pieces";
2113
+ declare function extractActivepiecesPublicPieceCount(html: string): number | undefined;
2114
+ declare function auditIntegrationCatalogFreshness(options?: IntegrationCatalogFreshnessOptions): Promise<IntegrationCatalogFreshnessResult>;
2115
+
2116
+ type TangleIntegrationCatalogEntry = ActivepiecesCatalogEntry;
2117
+ type TangleCatalogExecutorInvocation = ActivepiecesExecutorInvocation;
2118
+ type TangleCatalogExecutorProviderOptions = ActivepiecesExecutorProviderOptions;
2119
+ type TangleIntegrationCatalogFreshnessOptions = IntegrationCatalogFreshnessOptions;
2120
+ interface TangleIntegrationCatalogFreshnessResult {
2121
+ ok: boolean;
2122
+ generatedAt: string;
2123
+ local: {
2124
+ catalogEntries: number;
2125
+ catalogConnectors: number;
2126
+ catalogActions: number;
2127
+ catalogTriggers: number;
2128
+ executableCatalogConnectors: number;
2129
+ executableCatalogActions: number;
2130
+ executableCatalogTriggers: number;
2131
+ executableToolDefinitions: number;
2132
+ unsupportedExecutableConnectorIds: string[];
2133
+ registryEntries: number;
2134
+ registrySummary: Awaited<ReturnType<typeof auditIntegrationCatalogFreshness>>['local']['registrySummary'];
2135
+ conflictSamples: Awaited<ReturnType<typeof auditIntegrationCatalogFreshness>>['local']['conflictSamples'];
2136
+ };
2137
+ upstream?: {
2138
+ externalEntries?: number;
2139
+ externalDelta?: number;
2140
+ checkedUrl: string;
2141
+ warning?: string;
2142
+ };
2143
+ warnings: string[];
2144
+ }
2145
+ declare const listTangleIntegrationCatalogEntries: typeof listActivepiecesCatalogEntries;
2146
+ declare const buildTangleIntegrationCatalogConnectors: typeof buildActivepiecesConnectors;
2147
+ declare const createTangleCatalogExecutorProvider: typeof createActivepiecesExecutorProvider;
2148
+ declare const extractExternalCatalogPublicCount: typeof extractActivepiecesPublicPieceCount;
2149
+ declare function auditTangleIntegrationCatalogFreshness(options?: TangleIntegrationCatalogFreshnessOptions): Promise<TangleIntegrationCatalogFreshnessResult>;
2150
+
2043
2151
  type IntegrationCoveragePriority = 'tier_0' | 'tier_1' | 'tier_2' | 'long_tail';
2044
2152
  interface IntegrationCoverageSpec {
2045
2153
  id: string;
@@ -2412,8 +2520,7 @@ interface IssuedIntegrationCapability {
2412
2520
  * result directly) or pass through (call `proceed()` to invoke the provider).
2413
2521
  *
2414
2522
  * Why this hook exists: production deployments need conflict-resolution
2415
- * guarantees that span every provider — first-party, Nango, Composio,
2416
- * webhook receivers — and providers shouldn't re-implement them. The
2523
+ * guarantees that span every provider, gateway, and webhook receiver. The
2417
2524
  * canonical implementation is a "MutationGuard" that:
2418
2525
  * 1. Short-circuits on a known idempotency key (returns recorded response).
2419
2526
  * 2. Refuses same-key-different-args (drift detection).
@@ -2543,4 +2650,4 @@ declare function createHttpIntegrationProvider(options: HttpIntegrationProviderO
2543
2650
  declare function signCapability(capability: IntegrationCapability, secret: string): string;
2544
2651
  declare function verifyCapabilityToken(token: string, secret: string): IntegrationCapability;
2545
2652
 
2546
- export { InMemoryIntegrationAuditStore as $, ACTIVEPIECES_OVERRIDES as A, type ApiKeyAuthSpec, type ConnectorManifest as B, CANONICAL_INTEGRATION_ACTIONS as C, type ConsoleStep, type CredentialFieldSpec, type CredentialValidationInput, type CredentialValidationResult, type CustomAuthSpec, type ConnectorManifestValidationIssue as D, type ConnectorManifestValidationResult as E, type ConsentSummary as F, type ConsistencyModel as G, CredentialsExpired as H, type HealthcheckPlan, type HealthcheckSpec, type HmacAuthSpec, DEFAULT_INTEGRATION_BRIDGE_ENV as I, INTEGRATION_FAMILIES, type IntegrationAuthMode, type IntegrationAuthSpec, type IntegrationFamilyId, type IntegrationFamilySpec, type IntegrationLifecycleSpec, type IntegrationPlannerHints, type IntegrationSetupSpec, type IntegrationSpec, type IntegrationSpecStatus, type IntegrationSpecValidationIssue, type IntegrationSpecValidationResult, DEFAULT_SIGNATURE_TOLERANCE_SECONDS as J, type DataSourceMetadata as K, DefaultIntegrationActionGuard as L, type EventHandlerResult as M, type ExchangeCodeInput as N, type NoneAuthSpec, type NormalizedPermission, type GatewayCatalogAction as O, type OAuth2AuthSpec, type GatewayCatalogEntry as P, type PermissionDescriptor, type PostSetupCheck, type GatewayCatalogProviderOptions as Q, type Quirk, type GatewayCatalogTrigger as R, type RenderSpecOptions, type RenderedConsoleStep, type GenericHmacVerifyOptions as S, type ScopeDescriptor, type GoogleCalendarOptions as T, type GoogleSheetsOptions as U, type GraphqlOperationSpec as V, type HttpIntegrationProviderOptions as W, type HubSpotOptions as X, type ImportCatalogOptions as Y, InMemoryConnectionStore as Z, InMemoryIntegrationApprovalStore as _, type ActivepiecesCatalogEntry as a, type IntegrationProvider as a$, InMemoryIntegrationEventStore as a0, InMemoryIntegrationGrantStore as a1, InMemoryIntegrationHealthcheckStore as a2, InMemoryIntegrationIdempotencyStore as a3, InMemoryIntegrationSecretStore as a4, InMemoryIntegrationWorkflowStore as a5, InMemoryOAuthFlowStore as a6, type InboundEvent as a7, type InferIntegrationRequirementsOptions as a8, type InstalledIntegrationWorkflow as a9, type IntegrationConnectorCategory as aA, type IntegrationConnectorTrigger as aB, type IntegrationCoveragePriority as aC, type IntegrationCoverageSpec as aD, type IntegrationDataClass as aE, IntegrationError as aF, type IntegrationErrorCode as aG, type IntegrationEventStore as aH, type IntegrationGrant as aI, type IntegrationGrantStore as aJ, type IntegrationGuardContext as aK, type IntegrationHealthcheckCheck as aL, type IntegrationHealthcheckResult as aM, type IntegrationHealthcheckStatus as aN, type IntegrationHealthcheckStore as aO, IntegrationHub as aP, type IntegrationHubOptions as aQ, type IntegrationIdempotencyRecord as aR, type IntegrationIdempotencyStore as aS, type IntegrationInvocationEnvelope as aT, type IntegrationInvocationEnvelopeValidationOptions as aU, type IntegrationManifest as aV, type IntegrationManifestResolution as aW, type IntegrationPolicyDecision as aX, type IntegrationPolicyEffect as aY, type IntegrationPolicyEngine as aZ, type IntegrationPolicyRule as a_, type IntegrationActionGuard as aa, type IntegrationActionPack as ab, type IntegrationActionRequest as ac, type IntegrationActionResult as ad, type IntegrationActionRisk as ae, type IntegrationActor as af, type IntegrationApprovalFilter as ag, type IntegrationApprovalRecord as ah, type IntegrationApprovalRequest as ai, type IntegrationApprovalResolution as aj, type IntegrationApprovalStatus as ak, type IntegrationApprovalStore as al, type IntegrationAuditEvent as am, type IntegrationAuditEventType as an, type IntegrationAuditFilter as ao, type IntegrationAuditSink as ap, type IntegrationAuditStore as aq, type IntegrationBridgePayload as ar, type IntegrationBridgeToolBinding as as, assertValidIntegrationSpec, type IntegrationCapability as at, type IntegrationCapabilityBinding as au, type IntegrationCatalogSource as av, type IntegrationConnection as aw, type IntegrationConnectionStore as ax, type IntegrationConnector as ay, type IntegrationConnectorAction as az, type ActivepiecesExecutorInvocation as b, type RestCredentialPlacement as b$, type IntegrationProviderKind as b0, type IntegrationRateLimitDecision as b1, type IntegrationRateLimiter as b2, type IntegrationRegistry as b3, type IntegrationRegistryConflict as b4, type IntegrationRegistryEntry as b5, type IntegrationRegistrySourceRef as b6, type IntegrationRegistrySummary as b7, type IntegrationRequirement as b8, type IntegrationRequirementMode as b9, type IssuedIntegrationCapability as bA, type ManifestValidationIssue as bB, type ManifestValidationResult as bC, type McpCatalog as bD, type McpCatalogTool as bE, type McpToolDefinition as bF, type MicrosoftCalendarOptions as bG, type MissingRequirementExplanation as bH, type NormalizedIntegrationError as bI, type NormalizedIntegrationResult as bJ, type NotionDatabaseOptions as bK, type OAuthFlowStore as bL, type OAuthTokens as bM, type OpenApiDocument as bN, type OpenApiOperation as bO, PROVIDER_PASSTHROUGH_ACTION as bP, type ParsedStripeSignatureHeader as bQ, type PendingOAuthFlow as bR, type PlatformIntegrationPolicyPresetOptions as bS, type ProviderHttpRequestInput as bT, type ProviderPassthroughPolicy as bU, type RateLimitSpec as bV, type RefreshInput as bW, type RenderConsentOptions as bX, type ResolvedDataSource as bY, ResourceContention as bZ, type RestConnectorSpec as b_, type IntegrationRequirementResolution as ba, type IntegrationRequirementStatus as bb, IntegrationRuntime as bc, IntegrationRuntimeError as bd, type IntegrationRuntimeHub as be, type IntegrationRuntimeOptions as bf, type IntegrationSandboxBundle as bg, IntegrationSandboxHost as bh, type IntegrationSandboxHostHub as bi, type IntegrationSandboxHostOptions as bj, type IntegrationSecretStore as bk, type IntegrationSupportTier as bl, type IntegrationToolDefinition as bm, type IntegrationToolSearchFilters as bn, type IntegrationToolSearchResult as bo, type IntegrationTriggerEvent as bp, type IntegrationTriggerSubscription as bq, type IntegrationUserAction as br, type IntegrationWebhookReceiverResult as bs, type IntegrationWorkflowDefinition as bt, IntegrationWorkflowRuntime as bu, buildHealthcheckPlan, type IntegrationWorkflowRuntimeHub as bv, type IntegrationWorkflowRuntimeOptions as bw, type IntegrationWorkflowStore as bx, type InvokeWithCapabilityRequest as by, type IssueCapabilityRequest as bz, type ActivepiecesExecutorProviderOptions as c, getActivepiecesOverride as c$, type RestOperationSpec as c0, type RestRequestSpec as c1, type SecretRef as c2, type SlackOptions as c3, type SlackVerifyOptions as c4, type StartAuthRequest as c5, type StartAuthResult as c6, type StartOAuthInput as c7, type StartOAuthOutput as c8, StaticIntegrationPolicyEngine as c9, composeIntegrationRegistry as cA, consumePendingFlow as cB, createActivepiecesExecutorProvider as cC, createApprovalBackedPolicyEngine as cD, createAuditingActionGuard as cE, createCatalogExecutorProvider as cF, createConnectionCredentialResolver as cG, createConnectorAdapterCatalogSource as cH, createConnectorAdapterProvider as cI, createCredentialBackedAdapterProvider as cJ, createDefaultIntegrationActionGuard as cK, createDefaultIntegrationPolicyEngine as cL, createGatewayCatalogProvider as cM, createHttpIntegrationProvider as cN, createIntegrationAuditEvent as cO, createIntegrationRuntime as cP, createIntegrationWorkflowRuntime as cQ, createMockIntegrationProvider as cR, createPlatformIntegrationPolicyPreset as cS, createTangleIntegrationsClient as cT, declarativeRestConnector as cU, decodeIntegrationBridgePayload as cV, dispatchIntegrationInvocation as cW, encodeIntegrationBridgePayload as cX, exchangeAuthorizationCode as cY, explainMissingRequirements as cZ, firstHeader as c_, type StaticIntegrationPolicyOptions as ca, type StoredIntegrationEvent as cb, type StripeVerifyOptions as cc, type TangleIntegrationInvokeInput as cd, type TangleIntegrationInvokeResult as ce, TangleIntegrationsClient as cf, type TangleIntegrationsClientOptions as cg, type TwilioVerifyOptions as ch, _resetPendingFlowsForTests as ci, adapterManifestsToConnectors as cj, airtableConnector as ck, asanaConnector as cl, assertValidConnectorManifest as cm, assertValidIntegrationManifest as cn, buildActivepiecesConnectors as co, consoleStepsToText, buildApprovalRequest as cp, buildCanonicalLaunchConnectors as cq, buildDefaultIntegrationRegistry as cr, buildIntegrationBridgeEnvironment as cs, buildIntegrationBridgePayload as ct, buildIntegrationCoverageConnectors as cu, buildIntegrationInvocationEnvelope as cv, buildIntegrationToolCatalog as cw, calendarExercisePlannerManifest as cx, canonicalActionConnectorId as cy, canonicalConnectorId as cz, type ActivepiecesPieceOverride as d, webhookConnector as d$, githubConnector as d0, gitlabConnector as d1, googleCalendar as d2, googleSheets as d3, healthcheckRequest as d4, hubspot as d5, importGraphqlConnector as d6, importMcpConnector as d7, importOpenApiConnector as d8, inferIntegrationManifestFromTools as d9, revokeConnection as dA, runIntegrationHealthcheck as dB, runIntegrationHealthchecks as dC, salesforceConnector as dD, sanitizeAuditConnection as dE, sanitizeConnection as dF, searchIntegrationTools as dG, signCapability as dH, slack as dI, slackEventsConnector as dJ, startOAuthFlow as dK, statusForCode as dL, storedEventToTriggerEvent as dM, stripePackConnector as dN, stripeWebhookReceiverConnector as dO, summarizeIntegrationRegistry as dP, toMcpTools as dQ, twilioSmsConnector as dR, validateConnectorManifest as dS, validateIntegrationInvocationEnvelope as dT, validateIntegrationManifest as dU, validateProviderPassthroughRequest as dV, verifyCapabilityToken as dW, verifyHmacSignature as dX, verifySlackSignature as dY, verifyStripeSignature as dZ, verifyTwilioSignature as d_, inferIntegrationSupportTier as da, integrationCoverageChecklistMarkdown as db, integrationToolName as dc, invocationRequestFromEnvelope as dd, listActivepiecesCatalogEntries as de, listIntegrationCoverageSpecs as df, manifestToConnector as dg, microsoftCalendar as dh, normalizeGatewayCatalog as di, normalizeIntegrationError as dj, normalizeIntegrationResult as dk, notionDatabase as dl, parseIntegrationBridgeEnvironment as dm, parseIntegrationToolName as dn, parseStripeSignatureHeader as dp, receiveIntegrationWebhook as dq, redactApprovalRequest as dr, redactCapability as ds, redactIntegrationBridgePayload as dt, redactInvocationEnvelope as du, refreshAccessToken as dv, renderApprovalCopy as dw, renderConsentSummary as dx, resolveConnectionCredentials as dy, resolveIntegrationApproval as dz, ApprovalBackedPolicyEngine as e, type ApprovalBackedPolicyOptions as f, type AuthSpec as g, getIntegrationFamily, getIntegrationSpec, type CASStrategy as h, type CanonicalIntegrationActionId as i, integrationSpecToConnector, type CanonicalLaunchConnectorOptions as j, type Capability as k, type CapabilityClass as l, listExecutableIntegrationSpecs, listIntegrationSpecs, type CapabilityMutation as m, type CapabilityMutationResult as n, type CapabilityParameterSchema as o, type CapabilityRead as p, type CapabilityReadResult as q, type CatalogExecutorInvocation as r, renderAgentToolDescription, renderConsoleSteps, renderRunbookMarkdown, type CatalogExecutorProviderOptions as s, specAuthToConnectorAuth, type CompleteAuthRequest as t, type ComposeIntegrationRegistryOptions as u, type ConnectionCredentialResolverOptions as v, validateCredentialFormat, validateCredentialSet, validateIntegrationSpec, type ConnectorAdapter as w, type ConnectorAdapterProviderOptions as x, type ConnectorCredentials as y, type ConnectorInvocation as z };
2653
+ export { type HubSpotOptions as $, ACTIVEPIECES_OVERRIDES as A, type ApiKeyAuthSpec, type ConnectorAdapter as B, CANONICAL_INTEGRATION_ACTIONS as C, type ConsoleStep, type CredentialFieldSpec, type CredentialValidationInput, type CredentialValidationResult, type CustomAuthSpec, type ConnectorAdapterProviderOptions as D, type ConnectorCredentials as E, type ConnectorInvocation as F, type ConnectorManifest as G, type ConnectorManifestValidationIssue as H, type HealthcheckPlan, type HealthcheckSpec, type HmacAuthSpec, type ConnectorManifestValidationResult as I, INTEGRATION_FAMILIES, type IntegrationAuthMode, type IntegrationAuthSpec, type IntegrationFamilyId, type IntegrationFamilySpec, type IntegrationLifecycleSpec, type IntegrationPlannerHints, type IntegrationSetupSpec, type IntegrationSpec, type IntegrationSpecStatus, type IntegrationSpecValidationIssue, type IntegrationSpecValidationResult, type ConsentSummary as J, type ConsistencyModel as K, CredentialsExpired as L, DEFAULT_INTEGRATION_BRIDGE_ENV as M, DEFAULT_SIGNATURE_TOLERANCE_SECONDS as N, type NoneAuthSpec, type NormalizedPermission, type DataSourceMetadata as O, type OAuth2AuthSpec, DefaultIntegrationActionGuard as P, type PermissionDescriptor, type PostSetupCheck, type EventHandlerResult as Q, type Quirk, type ExchangeCodeInput as R, type RenderSpecOptions, type RenderedConsoleStep, type GatewayCatalogAction as S, type ScopeDescriptor, type GatewayCatalogEntry as T, type GatewayCatalogProviderOptions as U, type GatewayCatalogTrigger as V, type GenericHmacVerifyOptions as W, type GoogleCalendarOptions as X, type GoogleSheetsOptions as Y, type GraphqlOperationSpec as Z, type HttpIntegrationProviderOptions as _, ACTIVEPIECES_PUBLIC_CATALOG_URL as a, type IntegrationManifest as a$, type ImportCatalogOptions as a0, InMemoryConnectionStore as a1, InMemoryIntegrationApprovalStore as a2, InMemoryIntegrationAuditStore as a3, InMemoryIntegrationEventStore as a4, InMemoryIntegrationGrantStore as a5, InMemoryIntegrationHealthcheckStore as a6, InMemoryIntegrationIdempotencyStore as a7, InMemoryIntegrationSecretStore as a8, InMemoryIntegrationWorkflowStore as a9, type IntegrationCatalogFreshnessResult as aA, type IntegrationCatalogSource as aB, type IntegrationConnection as aC, type IntegrationConnectionStore as aD, type IntegrationConnector as aE, type IntegrationConnectorAction as aF, type IntegrationConnectorCategory as aG, type IntegrationConnectorTrigger as aH, type IntegrationCoveragePriority as aI, type IntegrationCoverageSpec as aJ, type IntegrationDataClass as aK, IntegrationError as aL, type IntegrationErrorCode as aM, type IntegrationEventStore as aN, type IntegrationGrant as aO, type IntegrationGrantStore as aP, type IntegrationGuardContext as aQ, type IntegrationHealthcheckCheck as aR, type IntegrationHealthcheckResult as aS, type IntegrationHealthcheckStatus as aT, type IntegrationHealthcheckStore as aU, IntegrationHub as aV, type IntegrationHubOptions as aW, type IntegrationIdempotencyRecord as aX, type IntegrationIdempotencyStore as aY, type IntegrationInvocationEnvelope as aZ, type IntegrationInvocationEnvelopeValidationOptions as a_, InMemoryOAuthFlowStore as aa, type InboundEvent as ab, type InferIntegrationRequirementsOptions as ac, type InstalledIntegrationWorkflow as ad, type IntegrationActionGuard as ae, type IntegrationActionPack as af, type IntegrationActionRequest as ag, type IntegrationActionResult as ah, type IntegrationActionRisk as ai, type IntegrationActor as aj, type IntegrationApprovalFilter as ak, type IntegrationApprovalRecord as al, type IntegrationApprovalRequest as am, type IntegrationApprovalResolution as an, type IntegrationApprovalStatus as ao, type IntegrationApprovalStore as ap, type IntegrationAuditEvent as aq, type IntegrationAuditEventType as ar, type IntegrationAuditFilter as as, assertValidIntegrationSpec, type IntegrationAuditSink as at, type IntegrationAuditStore as au, type IntegrationBridgePayload as av, type IntegrationBridgeToolBinding as aw, type IntegrationCapability as ax, type IntegrationCapabilityBinding as ay, type IntegrationCatalogFreshnessOptions as az, ACTIVEPIECES_RUNTIME_SIGNATURE_HEADER as b, type RateLimitSpec as b$, type IntegrationManifestResolution as b0, type IntegrationPolicyDecision as b1, type IntegrationPolicyEffect as b2, type IntegrationPolicyEngine as b3, type IntegrationPolicyRule as b4, type IntegrationProvider as b5, type IntegrationProviderKind as b6, type IntegrationRateLimitDecision as b7, type IntegrationRateLimiter as b8, type IntegrationRegistry as b9, IntegrationWorkflowRuntime as bA, type IntegrationWorkflowRuntimeHub as bB, type IntegrationWorkflowRuntimeOptions as bC, type IntegrationWorkflowStore as bD, type InvokeWithCapabilityRequest as bE, type IssueCapabilityRequest as bF, type IssuedIntegrationCapability as bG, type ManifestValidationIssue as bH, type ManifestValidationResult as bI, type McpCatalog as bJ, type McpCatalogTool as bK, type McpToolDefinition as bL, type MicrosoftCalendarOptions as bM, type MissingRequirementExplanation as bN, type NormalizedIntegrationError as bO, type NormalizedIntegrationResult as bP, type NotionDatabaseOptions as bQ, type OAuthFlowStore as bR, type OAuthTokens as bS, type OpenApiDocument as bT, type OpenApiOperation as bU, PROVIDER_PASSTHROUGH_ACTION as bV, type ParsedStripeSignatureHeader as bW, type PendingOAuthFlow as bX, type PlatformIntegrationPolicyPresetOptions as bY, type ProviderHttpRequestInput as bZ, type ProviderPassthroughPolicy as b_, type IntegrationRegistryConflict as ba, type IntegrationRegistryEntry as bb, type IntegrationRegistrySourceRef as bc, type IntegrationRegistrySummary as bd, type IntegrationRequirement as be, type IntegrationRequirementMode as bf, type IntegrationRequirementResolution as bg, type IntegrationRequirementStatus as bh, IntegrationRuntime as bi, IntegrationRuntimeError as bj, type IntegrationRuntimeHub as bk, type IntegrationRuntimeOptions as bl, type IntegrationSandboxBundle as bm, IntegrationSandboxHost as bn, type IntegrationSandboxHostHub as bo, type IntegrationSandboxHostOptions as bp, type IntegrationSecretStore as bq, type IntegrationSupportTier as br, type IntegrationToolDefinition as bs, type IntegrationToolSearchFilters as bt, type IntegrationToolSearchResult as bu, buildHealthcheckPlan, type IntegrationTriggerEvent as bv, type IntegrationTriggerSubscription as bw, type IntegrationUserAction as bx, type IntegrationWebhookReceiverResult as by, type IntegrationWorkflowDefinition as bz, type ActivepiecesCatalogEntry as c, createConnectorAdapterCatalogSource as c$, type RefreshInput as c0, type RenderConsentOptions as c1, type ResolvedDataSource as c2, ResourceContention as c3, type RestConnectorSpec as c4, type RestCredentialPlacement as c5, type RestOperationSpec as c6, type RestRequestSpec as c7, type SecretRef as c8, type SlackOptions as c9, assertValidConnectorManifest as cA, assertValidIntegrationManifest as cB, auditIntegrationCatalogFreshness as cC, auditTangleIntegrationCatalogFreshness as cD, buildActivepiecesConnectors as cE, buildActivepiecesRuntimeRequest as cF, buildApprovalRequest as cG, buildCanonicalLaunchConnectors as cH, buildDefaultIntegrationRegistry as cI, buildIntegrationBridgeEnvironment as cJ, buildIntegrationBridgePayload as cK, buildIntegrationCoverageConnectors as cL, buildIntegrationInvocationEnvelope as cM, buildIntegrationToolCatalog as cN, buildTangleCatalogRuntimeRequest as cO, buildTangleIntegrationCatalogConnectors as cP, calendarExercisePlannerManifest as cQ, canonicalActionConnectorId as cR, canonicalConnectorId as cS, composeIntegrationRegistry as cT, consumePendingFlow as cU, createActivepiecesExecutorProvider as cV, createActivepiecesHttpExecutor as cW, createApprovalBackedPolicyEngine as cX, createAuditingActionGuard as cY, createCatalogExecutorProvider as cZ, createConnectionCredentialResolver as c_, type SlackVerifyOptions as ca, type StartAuthRequest as cb, type StartAuthResult as cc, type StartOAuthInput as cd, type StartOAuthOutput as ce, StaticIntegrationPolicyEngine as cf, type StaticIntegrationPolicyOptions as cg, type StoredIntegrationEvent as ch, type StripeVerifyOptions as ci, TANGLE_CATALOG_RUNTIME_SIGNATURE_HEADER as cj, type TangleCatalogExecutorInvocation as ck, type TangleCatalogExecutorProviderOptions as cl, type TangleCatalogHttpExecutorOptions as cm, type TangleCatalogRuntimeRequest as cn, type TangleIntegrationCatalogEntry as co, consoleStepsToText, type TangleIntegrationCatalogFreshnessOptions as cp, type TangleIntegrationCatalogFreshnessResult as cq, type TangleIntegrationInvokeInput as cr, type TangleIntegrationInvokeResult as cs, TangleIntegrationsClient as ct, type TangleIntegrationsClientOptions as cu, type TwilioVerifyOptions as cv, _resetPendingFlowsForTests as cw, adapterManifestsToConnectors as cx, airtableConnector as cy, asanaConnector as cz, type ActivepiecesExecutorInvocation as d, runIntegrationHealthchecks as d$, createConnectorAdapterProvider as d0, createCredentialBackedAdapterProvider as d1, createDefaultIntegrationActionGuard as d2, createDefaultIntegrationPolicyEngine as d3, createGatewayCatalogProvider as d4, createHttpIntegrationProvider as d5, createIntegrationAuditEvent as d6, createIntegrationRuntime as d7, createIntegrationWorkflowRuntime as d8, createMockIntegrationProvider as d9, integrationCoverageChecklistMarkdown as dA, integrationToolName as dB, invocationRequestFromEnvelope as dC, listActivepiecesCatalogEntries as dD, listIntegrationCoverageSpecs as dE, listTangleIntegrationCatalogEntries as dF, manifestToConnector as dG, microsoftCalendar as dH, normalizeGatewayCatalog as dI, normalizeIntegrationError as dJ, normalizeIntegrationResult as dK, notionDatabase as dL, parseIntegrationBridgeEnvironment as dM, parseIntegrationToolName as dN, parseStripeSignatureHeader as dO, receiveIntegrationWebhook as dP, redactApprovalRequest as dQ, redactCapability as dR, redactIntegrationBridgePayload as dS, redactInvocationEnvelope as dT, refreshAccessToken as dU, renderApprovalCopy as dV, renderConsentSummary as dW, resolveConnectionCredentials as dX, resolveIntegrationApproval as dY, revokeConnection as dZ, runIntegrationHealthcheck as d_, createPlatformIntegrationPolicyPreset as da, createTangleCatalogExecutorProvider as db, createTangleCatalogHttpExecutor as dc, createTangleIntegrationsClient as dd, declarativeRestConnector as de, decodeIntegrationBridgePayload as df, dispatchIntegrationInvocation as dg, encodeIntegrationBridgePayload as dh, exchangeAuthorizationCode as di, explainMissingRequirements as dj, extractActivepiecesPublicPieceCount as dk, extractExternalCatalogPublicCount as dl, firstHeader as dm, getActivepiecesOverride as dn, githubConnector as dp, gitlabConnector as dq, googleCalendar as dr, googleSheets as ds, healthcheckRequest as dt, hubspot as du, importGraphqlConnector as dv, importMcpConnector as dw, importOpenApiConnector as dx, inferIntegrationManifestFromTools as dy, inferIntegrationSupportTier as dz, type ActivepiecesExecutorProviderOptions as e, salesforceConnector as e0, sanitizeAuditConnection as e1, sanitizeConnection as e2, searchIntegrationTools as e3, signActivepiecesRuntimeRequest as e4, signCapability as e5, signTangleCatalogRuntimeRequest as e6, slack as e7, slackEventsConnector as e8, startOAuthFlow as e9, statusForCode as ea, storedEventToTriggerEvent as eb, stripePackConnector as ec, stripeWebhookReceiverConnector as ed, summarizeIntegrationRegistry as ee, toMcpTools as ef, twilioSmsConnector as eg, validateConnectorManifest as eh, validateIntegrationInvocationEnvelope as ei, validateIntegrationManifest as ej, validateProviderPassthroughRequest as ek, verifyActivepiecesRuntimeSignature as el, verifyCapabilityToken as em, verifyHmacSignature as en, verifySlackSignature as eo, verifyStripeSignature as ep, verifyTangleCatalogRuntimeSignature as eq, verifyTwilioSignature as er, webhookConnector as es, type ActivepiecesHttpExecutorOptions as f, type ActivepiecesPieceOverride as g, getIntegrationFamily, getIntegrationSpec, type ActivepiecesRuntimeRequest as h, ApprovalBackedPolicyEngine as i, integrationSpecToConnector, type ApprovalBackedPolicyOptions as j, type AuthSpec as k, type CASStrategy as l, listExecutableIntegrationSpecs, listIntegrationSpecs, type CanonicalIntegrationActionId as m, type CanonicalLaunchConnectorOptions as n, type Capability as o, type CapabilityClass as p, type CapabilityMutation as q, type CapabilityMutationResult as r, renderAgentToolDescription, renderConsoleSteps, renderRunbookMarkdown, type CapabilityParameterSchema as s, specAuthToConnectorAuth, type CapabilityRead as t, type CapabilityReadResult as u, type CatalogExecutorInvocation as v, validateCredentialFormat, validateCredentialSet, validateIntegrationSpec, type CatalogExecutorProviderOptions as w, type CompleteAuthRequest as x, type ComposeIntegrationRegistryOptions as y, type ConnectionCredentialResolverOptions as z };
@@ -48,34 +48,29 @@ Aliases matter when comparing coverage:
48
48
  - `stripe` maps to `stripe-pack` for outbound payment actions.
49
49
  - `twilio` maps to `twilio-sms`.
50
50
 
51
- ## 600+ Catalog Execution Path
51
+ ## Tangle Catalog Execution Path
52
52
 
53
- The repo does not need 600 hand-written adapter files. Long-tail execution uses
54
- one strict catalog executor:
53
+ The repo does not need hundreds of hand-written adapter files. Long-tail
54
+ execution uses one strict catalog executor:
55
55
 
56
56
  ```ts
57
57
  import {
58
- createActivepiecesExecutorProvider,
58
+ createTangleCatalogExecutorProvider,
59
+ createTangleCatalogHttpExecutor,
59
60
  IntegrationHub,
60
61
  } from '@tangle-network/agent-integrations'
61
62
 
62
- const provider = createActivepiecesExecutorProvider({
63
- async executeAction({ piece, request, connection }) {
64
- return runInHardenedExecutor({
65
- packageName: piece.npmPackage,
66
- version: piece.version,
67
- actionId: piece.actionId,
68
- upstreamActionName: piece.upstreamActionName,
69
- input: request.input,
70
- connection,
71
- })
72
- },
63
+ const provider = createTangleCatalogExecutorProvider({
64
+ executeAction: createTangleCatalogHttpExecutor({
65
+ endpoint: 'https://id.tangle.tools/integration-runtime',
66
+ secret: process.env.TANGLE_CATALOG_RUNTIME_SECRET,
67
+ }),
73
68
  })
74
69
 
75
70
  const hub = new IntegrationHub({ providers: [provider], store, capabilitySecret })
76
71
  ```
77
72
 
78
- This promotes all vendored Activepieces community entries to
73
+ This promotes normalized Tangle Integrations Catalog entries to
79
74
  `gatewayExecutable` only when a caller supplies an executor. The default catalog
80
75
  remains `catalogOnly`, so generated apps cannot accidentally call metadata.
81
76
 
@@ -201,6 +196,6 @@ Before any product says an integration is “supported” for real users:
201
196
  - Include first-party adapter catalogs in registry composition when a consumer
202
197
  provides adapter instances.
203
198
  - Add a generated triage command that compares coverage specs, setup specs,
204
- active catalog entries, and adapter manifests.
199
+ imported catalog entries, and adapter manifests.
205
200
  - Promote Gmail, Drive, Outlook Mail, Linear, Jira, Zendesk, Intercom, Shopify,
206
201
  QuickBooks, S3, and Postgres first.
@@ -5,7 +5,7 @@
5
5
  - first-party adapters
6
6
  - generated setup specs
7
7
  - gateway catalogs
8
- - vendored Activepieces metadata
8
+ - imported Tangle Integrations Catalog metadata
9
9
  - planning coverage stubs
10
10
 
11
11
  Those sources intentionally overlap. The public product surface should not.
@@ -135,9 +135,9 @@ Generated from `listIntegrationCoverageSpecs()`. Catalog presence means the prod
135
135
  - [ ] tier_1 / database / Qdrant (qdrant) - vector, database, ai
136
136
  - [ ] tier_1 / workflow / Zapier (zapier) - automation, workflow
137
137
  - [ ] tier_1 / workflow / Make (make) - automation, workflow
138
- - [ ] tier_1 / workflow / Nango (nango) - integration-platform, oauth
139
- - [ ] tier_1 / workflow / Pipedream (pipedream) - integration-platform, workflow
140
- - [ ] tier_1 / workflow / Activepieces (activepieces) - automation, workflow, open-source
138
+ - [ ] tier_1 / workflow / Hosted Integration Gateway (hosted-integration-gateway) - integration-platform, oauth
139
+ - [ ] tier_1 / workflow / Workflow Runtime Gateway (workflow-runtime-gateway) - integration-platform, workflow
140
+ - [ ] tier_1 / workflow / Open Automation Catalog (open-automation-catalog) - automation, workflow, open-source
141
141
  - [ ] tier_0 / webhook / Generic Webhook (webhook) - webhook, http, events
142
142
  - [ ] tier_0 / workflow / HTTP Request (http) - http, api, webhook
143
143
  - [ ] tier_1 / webhook / RSS (rss) - feeds, content
@@ -5,7 +5,7 @@ Goal: cover the integrations that make agents useful for 99% of practical produc
5
5
  ## Strategy
6
6
 
7
7
  - Use `buildIntegrationCoverageConnectors()` for broad planning/catalog coverage.
8
- - Use vendor gateways such as Nango, Pipedream, Activepieces, and custom HTTP providers for long-tail OAuth/API coverage.
8
+ - Use hosted gateways, imported connector catalogs, and custom HTTP providers for long-tail OAuth/API coverage.
9
9
  - Promote high-volume, sensitive, or moat-critical connectors into first-party `ConnectorAdapter`s.
10
10
  - Do not claim a connector is executable until it has auth, scope, action, error, rate-limit, idempotency, and approval-path tests.
11
11
  - Keep every connector behind `IntegrationHub`, capability tokens, policy checks, and sandbox invocation envelopes.
@@ -17,15 +17,16 @@ Goal: cover the integrations that make agents useful for 99% of practical produc
17
17
  - [x] Coverage catalog for 100+ high-value integrations.
18
18
  - [x] Builder API consumes the coverage catalog for app planning.
19
19
  - [x] Declarative REST adapter factory for fast first-party promotion of REST-shaped APIs.
20
- - [x] Provider gateway catalog adapter can normalize 500+ Nango/Pipedream/Activepieces-style connectors.
20
+ - [x] Provider gateway catalog adapter can normalize 500+ external catalog connectors.
21
21
  - [x] Canonical registry dedupes overlapping catalogs, aliases, support tiers, and conflict diagnostics.
22
22
  - [ ] Generated sandbox apps can request missing connections from the catalog.
23
23
  - [ ] Live smoke credentials exist for Tier 0 connectors.
24
24
  - [ ] Tier 0 connector failures are classified by auth, scope, rate-limit, provider outage, validation, approval, and conflict.
25
25
  - [ ] Tier 0 write actions have idempotency and approval tests.
26
- - [x] Provider gateway adapters can import/sync catalog metadata from Nango/Pipedream/Activepieces registries.
26
+ - [x] Provider gateway adapters can import/sync catalog metadata from external registries.
27
27
  - [x] Adapter execution triage is documented in [`adapter-triage.md`](./adapter-triage.md).
28
- - [x] Activepieces community catalog can be promoted to executable actions through `createActivepiecesExecutorProvider`.
28
+ - [x] Tangle Integrations Catalog entries can be promoted to executable actions through `createTangleCatalogExecutorProvider`.
29
+ - [x] Tangle Integrations Catalog executable actions can dispatch through a signed HTTP runtime executor protocol.
29
30
 
30
31
  ## Tier 0 First-Party Promotion Queue
31
32
 
@@ -79,7 +80,7 @@ The exhaustive checklist is generated from `integrationCoverageChecklistMarkdown
79
80
  - Marketing and social: Mailchimp, Klaviyo, Marketo, Braze, Facebook Pages, Instagram Business, LinkedIn, X, YouTube.
80
81
  - Data and infra: Snowflake, BigQuery, Redshift, Postgres, MySQL, MongoDB, Supabase, Firebase, S3, Cloudflare.
81
82
  - HR/legal/signature: Workday, BambooHR, Greenhouse, Lever, Gusto, Rippling, DocuSign, Ironclad, Clio.
82
- - AI/vector/workflow: OpenAI, Anthropic, Gemini, Hugging Face, Pinecone, Weaviate, Qdrant, Zapier, Make, Nango, Pipedream, Activepieces.
83
+ - AI/vector/workflow: OpenAI, Anthropic, Gemini, Hugging Face, Pinecone, Weaviate, Qdrant, Zapier, Make, hosted gateways, and imported automation catalogs.
83
84
 
84
85
  ## Remaining Work
85
86
 
@@ -91,4 +92,4 @@ The exhaustive checklist is generated from `integrationCoverageChecklistMarkdown
91
92
  - [x] Add Airtable, GitLab, and Asana via declarative REST.
92
93
  - [x] Add generated integration setup specs, renderers, validation, and healthcheck plans.
93
94
  - [ ] Add live smoke-test harness that skips only when explicit credentials are absent.
94
- - [ ] Add gateway sync job for Nango/Pipedream/Activepieces metadata.
95
+ - [ ] Add gateway sync job for external catalog metadata.
@@ -2,11 +2,11 @@
2
2
 
3
3
  Status date: 2026-05-04
4
4
 
5
- `agent-integrations` should keep product code independent from Nango,
6
- Pipedream, Zapier, Activepieces, Composio, executor-style services, and our own
7
- first-party connectors. The strategic goal is not to outsource integrations
8
- forever. The goal is to get broad connector coverage quickly while preserving a
9
- clean path to bring important connectors in-house.
5
+ `agent-integrations` should keep product code independent from any hosted
6
+ integration gateway, imported catalog source, executor-style service, or
7
+ first-party connector implementation. The strategic goal is not to outsource
8
+ integrations forever. The goal is to get broad connector coverage quickly while
9
+ preserving a clean path to bring important connectors in-house.
10
10
 
11
11
  ## Default Strategy
12
12
 
@@ -22,13 +22,13 @@ This repo intentionally separates catalog breadth from executable runtime code.
22
22
  - `src/connectors/` contains first-party adapter contracts and implementations.
23
23
  - `src/specs/` is the structured OAuth/setup/runbook source of truth.
24
24
  - `src/registry.ts`, `src/gateway-catalog.ts`, `src/coverage-catalog.ts`, and
25
- `src/activepieces-catalog.ts` compose broad connector catalogs without
26
- pretending catalog-only entries are executable.
25
+ `src/tangle-catalog.ts` compose broad connector catalogs without pretending
26
+ catalog-only entries are executable.
27
27
 
28
28
  ## Data
29
29
 
30
- - `data/activepieces-catalog.json` is large by design. It is lazy-loaded and
31
- keeps long-tail discovery out of TypeScript source so `tsc --watch` does not
30
+ - Imported catalog JSON is large by design. It is lazy-loaded and keeps
31
+ long-tail discovery out of TypeScript source so `tsc --watch` does not
32
32
  re-check a generated 40k-line module. It is catalog metadata, not executable
33
33
  support.
34
34
 
@@ -1,7 +1,7 @@
1
1
  # Activepieces Community Catalog Attribution
2
2
 
3
- `src/activepieces-catalog.generated.ts` is generated from the Activepieces
4
- Community pieces catalog:
3
+ `data/activepieces-catalog.json` is generated from the Activepieces Community
4
+ pieces catalog:
5
5
 
6
6
  - Source repository: https://github.com/activepieces/activepieces
7
7
  - Source path: `packages/pieces/community`
@@ -10,11 +10,11 @@ Community pieces catalog:
10
10
  versions, high-level action names, trigger names, auth shape hints, and
11
11
  category/domain metadata.
12
12
 
13
- The generated catalog is connector metadata for `agent-integrations`; it does
14
- not vendor the Activepieces runtime or execute Activepieces piece code directly.
15
- Consumers can run these connectors through an Activepieces-backed provider,
16
- promote selected entries to first-party adapters, or use the metadata for
17
- planning and connection setup.
13
+ The generated file is ingestion/provenance data for the Tangle Integrations
14
+ Catalog. It does not vendor the Activepieces runtime or execute Activepieces
15
+ piece code directly. Consumers should use the Tangle-named catalog APIs and can
16
+ promote selected entries to first-party adapters or route them through a signed
17
+ Tangle catalog runtime.
18
18
 
19
19
  Regenerate after checking out Activepieces:
20
20
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tangle-network/agent-integrations",
3
- "version": "0.17.0",
3
+ "version": "0.19.0",
4
4
  "description": "Vendor-neutral integration contracts and runtime helpers for sandbox and agent apps.",
5
5
  "homepage": "https://github.com/tangle-network/agent-integrations#readme",
6
6
  "repository": {