Files
PaperClipAI/packages/shared/src/app-definitions.generated.ts
T
DottaandPaperclip fcb2e99e8f feat(apps): expand the self-serve connection catalog (#12344)
## Thinking Path

> - Paperclip is the open source app people use to manage AI agents for
work.
> - A useful app store needs accurate and selectable provider
definitions.
> - Local brand assets now cover the expanded provider set.
> - Provider methods differ in transport, authentication, ownership, and
required scope.
> - This pull request expands the catalog and encodes those provider
contracts.
> - The benefit is a larger self-serve store with explicit setup
choices.

## Linked Issues or Issue Description

Refs #11965

This is stack 6 of 11. It depends on stack 5 and replaces another
reviewable part of #11965.

## What Changed

- Add and update provider definitions for the self-serve catalog.
- Add Google Workspace connection methods and capability profiles.
- Add catalog generation, ingestion, URL matching, and contract tests.
- Update legacy key tests to use a provider that still uses header
credentials.

## Verification

- `pnpm --filter @paperclipai/server typecheck`
- `pnpm --filter @paperclipai/server exec vitest run
src/__tests__/tool-access-service.test.ts`
- Result: 164 tests passed.
- `pnpm build`

## Risks

- An incorrect provider definition can offer the wrong setup method.
- Contract tests verify transport, authentication, and provider URL
behavior.
- The change does not add a database migration.

> I checked `ROADMAP.md`. This stack continues the existing app
connection work from #11965 and does not duplicate another planned item.

## Model Used

OpenAI Codex, GPT-5. The runtime model ID and context window were not
exposed. The model used reasoning, tool use, and code execution.

## Checklist

- [x] I have included a thinking path that traces from project context
to this change
- [x] I have specified the model used (with version and capability
details)
- [x] I have checked ROADMAP.md and confirmed this PR does not duplicate
planned core work
- [x] I have searched GitHub for duplicate or related PRs and linked
them above
- [x] I have either (a) linked existing issues with `Refs #` or (b)
described the issue in this pull request
- [x] I have not referenced internal or instance-local Paperclip issues
or links
- [x] My branch name describes the change and contains no internal
Paperclip ticket id or instance-derived details
- [x] I have run tests locally and they pass
- [x] I have added or updated tests where applicable
- [x] I have updated relevant documentation to reflect my changes
- [x] I have considered and documented any risks above
- [x] All Paperclip CI gates are green
- [x] Greptile is 5/5 with no open P2s, recommendations, or follow-ups
- [x] I will address all Greptile and reviewer comments before
requesting merge

---------

Co-authored-by: Paperclip <noreply@paperclip.ing>
2026-08-29 12:08:34 -05:00

65 lines
4.8 KiB
TypeScript

import a0 from "./app-definitions/zapier.json" with { type: "json" };
import a1 from "./app-definitions/github.json" with { type: "json" };
import a2 from "./app-definitions/slack.json" with { type: "json" };
import a3 from "./app-definitions/notion.json" with { type: "json" };
import a4 from "./app-definitions/posthog.json" with { type: "json" };
import a5 from "./app-definitions/linear.json" with { type: "json" };
import a6 from "./app-definitions/context7.json" with { type: "json" };
import a7 from "./app-definitions/shopify.json" with { type: "json" };
import a8 from "./app-definitions/composio.json" with { type: "json" };
import a9 from "./app-definitions/oauth-generic.json" with { type: "json" };
import a10 from "./app-definitions/api-key-generic.json" with { type: "json" };
import a11 from "./app-definitions/sentry.json" with { type: "json" };
import a12 from "./app-definitions/vercel.json" with { type: "json" };
import a13 from "./app-definitions/anthropic.json" with { type: "json" };
import a14 from "./app-definitions/jira.json" with { type: "json" };
import a15 from "./app-definitions/airtable.json" with { type: "json" };
import a16 from "./app-definitions/beehiiv.json" with { type: "json" };
import a17 from "./app-definitions/bitly.json" with { type: "json" };
import a18 from "./app-definitions/candid.json" with { type: "json" };
import a19 from "./app-definitions/cloudflare.json" with { type: "json" };
import a20 from "./app-definitions/cloudinary.json" with { type: "json" };
import a21 from "./app-definitions/coda.json" with { type: "json" };
import a22 from "./app-definitions/hugging-face.json" with { type: "json" };
import a23 from "./app-definitions/kernel.json" with { type: "json" };
import a24 from "./app-definitions/local-falcon.json" with { type: "json" };
import a25 from "./app-definitions/make.json" with { type: "json" };
import a26 from "./app-definitions/manufact.json" with { type: "json" };
import a27 from "./app-definitions/miro.json" with { type: "json" };
import a28 from "./app-definitions/netlify.json" with { type: "json" };
import a29 from "./app-definitions/oreilly.json" with { type: "json" };
import a30 from "./app-definitions/planetscale.json" with { type: "json" };
import a31 from "./app-definitions/resend.json" with { type: "json" };
import a32 from "./app-definitions/ticktick.json" with { type: "json" };
import a33 from "./app-definitions/todoist.json" with { type: "json" };
import a34 from "./app-definitions/webflow.json" with { type: "json" };
import a35 from "./app-definitions/wix.json" with { type: "json" };
import a36 from "./app-definitions/brex.json" with { type: "json" };
import a37 from "./app-definitions/clickhouse.json" with { type: "json" };
import a38 from "./app-definitions/egnyte.json" with { type: "json" };
import a39 from "./app-definitions/embat.json" with { type: "json" };
import a40 from "./app-definitions/mixpanel.json" with { type: "json" };
import a41 from "./app-definitions/postman.json" with { type: "json" };
import a42 from "./app-definitions/razorpay.json" with { type: "json" };
import a43 from "./app-definitions/sanity.json" with { type: "json" };
import a44 from "./app-definitions/stripe.json" with { type: "json" };
import a45 from "./app-definitions/supabase.json" with { type: "json" };
import a46 from "./app-definitions/ticket-tailor.json" with { type: "json" };
import a47 from "./app-definitions/asana.json" with { type: "json" };
import a48 from "./app-definitions/box.json" with { type: "json" };
import a49 from "./app-definitions/mem0.json" with { type: "json" };
import a50 from "./app-definitions/pagerduty.json" with { type: "json" };
import a51 from "./app-definitions/similarweb.json" with { type: "json" };
import a52 from "./app-definitions/xero.json" with { type: "json" };
import a53 from "./app-definitions/gmail.json" with { type: "json" };
import a54 from "./app-definitions/google-drive.json" with { type: "json" };
import a55 from "./app-definitions/google-docs.json" with { type: "json" };
import a56 from "./app-definitions/google-sheets.json" with { type: "json" };
import a57 from "./app-definitions/google-slides.json" with { type: "json" };
import a58 from "./app-definitions/google-calendar.json" with { type: "json" };
import a59 from "./app-definitions/google-chat.json" with { type: "json" };
import a60 from "./app-definitions/google-people.json" with { type: "json" };
import a61 from "./app-definitions/google-workspace-search.json" with { type: "json" };
import type { AppDefinition } from "./types/app-definition.js";
export const APP_DEFINITIONS=[a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,a33,a34,a35,a36,a37,a38,a39,a40,a41,a42,a43,a44,a45,a46,a47,a48,a49,a50,a51,a52,a53,a54,a55,a56,a57,a58,a59,a60,a61] as AppDefinition[];