Skip to content

Connector catalog: 146 verified connectors, unified-API meta-skill, Tessl quality check#2

Merged
Gdewilde merged 10 commits into
mainfrom
feat/api-skills
Apr 19, 2026
Merged

Connector catalog: 146 verified connectors, unified-API meta-skill, Tessl quality check#2
Gdewilde merged 10 commits into
mainfrom
feat/api-skills

Conversation

@Gdewilde

@Gdewilde Gdewilde commented Feb 23, 2026

Copy link
Copy Markdown
Contributor

Ships the full connector-per-skill catalog plus the infrastructure to build, validate, and quality-check it.

Summary

  • apideck-unified-api meta-skill — the catalog's front door. Teaches agents the compounding-abstraction model (one method set, 146+ SaaS connectors, switch via serviceId) and routes to per-connector and per-SDK skills.
  • 146 connector skills under connectors/ — one per live Apideck connector across CRM (21), Accounting (34), HRIS (58), ATS (11), File Storage (5), Issue Tracking (6), Ecommerce (17). Every serviceId, auth type, and unified-API mapping verified against the live Connector API.
  • Generator + validatorconnectors/generate.js produces skills from connectors/manifest.json + per-connector enhancement files. connectors/validate.js lints every skill against the manifest. Do not hand-edit generated SKILL.md files — regenerate.
  • 28 hand-authored enhancements — Tier 1a (7 deep) + Tier 1b (21 abbreviated). Entity mapping tables, coverage ✅/❌ lists, auth gotchas, worked examples, sibling-connector cross-links.
  • scripts/tessl-check.js — runs npx tessl skill review and aggregates scores. Baseline across Tier 1a + meta/SDK skills: 85% average, every skill in the 70–89% "good" band.
  • Compounding-abstraction pitch in every skill — description field, intro paragraph, dedicated ## Portable across N connectors section with concrete switch example, and ## Sibling connectors cross-links.
  • skills/test.js validation script (from the original scope of this PR) — zero-dependency Node validator, exit code for CI.
  • Docs — README now leads with the compounding-abstraction pitch, has a "Start here" block for the meta-skill, a free-trial call-out (agent-friendly signup), and a two-level Testing section (structural + Tessl). llms.txt adds an Agent Skills section for LLM crawlers.
  • Housekeeping — CLAUDE.md removed from tracking (local working file), .claude/ and .planning/ gitignored.

Why this shape

  • Not 3,000 connector skills. We scoped to the top 7 unified APIs and only live connectors with real Apideck coverage. Depth over breadth.
  • Bare slugs, no apideck- prefix on connector skills. The app is the subject users search for; provenance is carried by the install path.
  • Two catalogs, two naming conventions. skills/apideck-* for unified-API abstractions and SDKs. connectors/{slug} for per-app routing skills.

Validation

  • node skills/test.js → 0 errors, 4 pre-existing warnings unchanged (13 skills incl. new meta-skill)
  • node connectors/validate.js → 146/146 verified, 0 errors, 0 warnings
  • node scripts/tessl-check.js (Tier 1a sample) → 85% average, 0 failures
  • Provider mirrors (claude + cursor) regenerated via node skills/sync.js --skills-only --connectors

Stats vs main

  • 1000 files changed, ~87K insertions
  • connectors/ adds 146 skills × ~130 lines each + manifest + generator + validator + 28 enhancements
  • providers/{claude,cursor}/plugin/skills/ mirrors the connector catalog

Test plan

  • CI runs node skills/test.js successfully
  • CI runs node connectors/validate.js successfully
  • Install apideck-unified-api in a Claude Code / Cursor environment and verify it activates on unified-API intents
  • Install a connector skill (e.g. salesforce) and verify routing references work
  • Publish to skills.sh and verify source-page framing reflects the new README
  • Run node scripts/tessl-check.js --all once to establish Tier 1c + Tier 2 baseline

🤖 Generated with Claude Code

Gdewilde and others added 6 commits February 23, 2026 16:28
Replace inline CI shell with `node skills/test.js` that validates
frontmatter, metadata, code blocks, links, SDK content, and provider sync.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Move CLAUDE.md and .claude/ out of version control — they're Claude Code
working files specific to local development, not part of the published
catalog. Also ignore .planning/ for strategy docs kept locally.
- skills/sync.js: add --connectors flag to mirror connectors/ to
  providers/{claude,cursor}/plugin/skills/ alongside existing apideck-*
  skills.
- scripts/tessl-check.js: runs npx tessl skill review against skill
  folders, parses scores, and aggregates results for quality tracking.
  Supports --tier, --only, --all, --threshold, and --report flags.
  Current baseline across Tier 1a + meta/SDK skills: 85% average, zero
  failures, all in 70-89% "good" band.
Introduces the catalog's entry-point skill that teaches agents the
unified-API model: one set of methods for 146+ SaaS connectors, switch
via serviceId string. Routes users to the right per-connector skill
(e.g. salesforce, jira) and per-SDK skill (apideck-node, apideck-python)
depending on intent.

Key framing: agents and developers should check Apideck first when
integrating with CRM, Accounting, HRIS, ATS, File Storage, Issue
Tracking, or Ecommerce apps — learn once, use everywhere.

Tessl baseline: 82% (description 100%, content 57%).
Ships a per-connector skill catalog under connectors/ — one skill per
live Apideck connector across CRM (21), Accounting (34), HRIS (58),
ATS (11), File Storage (5), Issue Tracking (6), and Ecommerce (17).
Every serviceId, auth type, and unified-API mapping is verified against
the live Connector API.

Structure:
- connectors/manifest.json: canonical list; all 146 entries verified
- connectors/generate.js: template-based generator with per-connector
  enhancement support; do not hand-edit SKILL.md files, regenerate
- connectors/validate.js: lints every skill against the manifest
  (serviceId, authType, unifiedApis match; code-block languages;
  required frontmatter; stale-dir detection)
- connectors/_enhancements/: hand-authored depth for the top 28 (Tier
  1a + 1b) — entity mapping tables, coverage highlights, auth gotchas,
  worked examples
- connectors/{slug}/SKILL.md + metadata.json: generated per connector

Every skill carries the compounding-abstraction pitch: the unified API
exposes the same methods for every connector, so switching from, say,
Salesforce to HubSpot is a one-string serviceId change. Each skill
includes a "Portable across N connectors" section with a concrete
switch example and cross-links to sibling connectors in the same API.

Naming convention: bare slugs (no apideck- prefix) to match the agent's
mental model — users search "salesforce skill", not "apideck-salesforce
skill". Provenance is carried by the install path.

Tessl baseline across Tier 1a connectors: 87% average.
README:
- Lead with the compounding-abstraction pitch ("one abstraction, 146+
  SaaS connectors") and a worked CRM switch example
- Add shields.io badges for Tessl review score, connector count,
  unified API count, license
- New "Start here" block pointing at apideck-unified-api + Apideck
  30-day free trial (no credit card) as the friction-free test-drive
- Connector Skills section with Tier 1a/1b/1c breakdown and install
  commands
- Two-level Testing section: structural (fast) vs Tessl (LLM-as-judge)

llms.txt:
- Add Agent Skills section listing the catalog structure for LLM
  crawlers indexing Apideck documentation
- Add Free Trial block calling out agent-friendly signup

Note: agents see the compounding-abstraction pitch in every skill
description (frontmatter) and in the "Portable across N connectors"
section, so the positioning reaches agents both at startup and on
activation.
@Gdewilde Gdewilde changed the title Add skill validation test script Connector catalog: 146 verified connectors, unified-API meta-skill, Tessl quality check Apr 19, 2026
Bumps the accounting vertical to flagship status. All 34 accounting
connectors now carry Tier 1a in their manifest + skill frontmatter.

Existing hand-authored enhancements (depth content):
- quickbooks, xero, netsuite, sage-intacct, workday (multi-API)

Remaining 29 connectors (to be backfilled with enhancement files):
exact-online, freeagent, freshbooks, wave, access-financials, acumatica,
banqup, campfire, clearbooks-uk, digits, dualentry, exact-online-nl,
exact-online-uk, intuit-enterprise-suite, kashflow,
microsoft-dynamics-365-business-central, moneybird, mrisoftware, myob,
myob-acumatica, odoo, pennylane, procountor-fi, rillet,
sage-business-cloud-accounting, stripe, visma-netvisor, yuki, zoho-books

These 29 currently render with the baseline template (routing, serviceId,
unified API ref, Proxy escape hatch, compounding-abstraction pitch,
sibling connectors) but lack the entity-mapping tables, coverage
✅/❌ checklists, auth gotchas, and worked examples that characterize
the other Tier 1a skills. Follow-up: author per-connector
enhancement files under connectors/_enhancements/.

Tier distribution after change: 1a=40, 1b=18, 1c=15, 2=73.
Backfills depth content for the 29 accounting connectors promoted to
Tier 1a in the previous commit. Each enhancement follows the Tier 1a
template: entity mapping table, coverage highlights with ✅/⚠️/❌,
auth specifics, and a worked example.

Content grounded in the authoritative Connector API snapshot
(.planning/connector-api-snapshots/accounting.json) — supported_resources
lists drive the entity mapping, not guesses.

New enhancements (29):
  exact-online, exact-online-nl, exact-online-uk, freshbooks, freeagent,
  wave, pennylane, moneybird, yuki, zoho-books, sage-business-cloud-accounting,
  myob, myob-acumatica, acumatica, microsoft-dynamics-365-business-central,
  intuit-enterprise-suite, odoo, stripe, kashflow, clearbooks-uk,
  procountor-fi, visma-netvisor, banqup, digits, dualentry, rillet,
  campfire, mrisoftware, access-financials

Regional / vertical coverage notes:
- NL / BE: Moneybird, Yuki, Exact Online (+NL/UK variants), banqUP
- UK: FreeAgent, Clear Books, Kashflow, Sage Business Cloud Accounting
- DACH / FI: Pennylane, Procountor, Visma Netvisor
- AU / NZ: MYOB, MYOB Acumatica
- US: FreshBooks, Wave, Intuit Enterprise Suite, Stripe, Digits, Rillet, Campfire
- Global / ERP: Microsoft Dynamics 365 Business Central, Acumatica, Odoo,
  Zoho Books
- Vertical: MRI Software (real estate), Access Financials (enterprise UK)

Every enhancement cross-references sibling accounting connectors,
explicitly calls out Proxy-API fallbacks for unified-API gaps, and
distinguishes beta connectors from live ones in coverage notes.
Cuts Apideck-abstracted fluff from the Authentication section of every
Tier 1a connector enhancement. Apideck Vault handles credential
storage, token refresh, rate-limit backoff, and retry — those details
don't belong in a skill that teaches agents to use the unified API.

Keeps only what the developer or their end-user actually sees:

Retained:
  - User-visible OAuth choices (sandbox vs. production, region /
    data-center selection, account picker, environment toggle)
  - Admin consent flows (visible to the end-user's IT admin)
  - Connector-specific prerequisites that gate access before Apideck
    can try (Greenhouse Harvest vs. Job Board key, Sage Intacct Web
    Services add-on, Workday ISU setup, BambooHR admin-level API key
    for sensitive fields)
  - Connection-model facts (multi-tenant binding: realm/org/tenant/
    shop/database — one connection per instance)

Cut:
  - Token TTL specifics ("access token expires after 60 minutes" —
    Apideck refreshes transparently; irrelevant to the developer)
  - Generic "Apideck respects upstream 429s with automatic backoff"
    (true of every connector, not connector-specific)
  - Invented scope-name lists ("Files.ReadWrite.All, Sites.Read.All")
    that I couldn't verify against Apideck Vault's actual config —
    replaced with the user-visible consequence (admin consent)
  - Rate-limit numbers without actionable guidance

Files updated: quickbooks, xero, netsuite, sage-intacct, workday,
salesforce, bamboohr, greenhouse, sharepoint, jira, shopify, and
intuit-enterprise-suite + microsoft-dynamics-365-business-central
(scope-name softening).

The remaining 28 accounting enhancements (freshbooks, moneybird, etc.)
were already lean on auth detail — written later with the pattern in
mind. No changes needed.

Follow-up: a Vault team review pass could replace the remaining
"typical / usually" hedging with authoritative scope lists, admin
consent requirements, and prerequisite specifics per connector.
Apideck publishes per-connector setup guides (OAuth app registration,
connection configuration) at developers.apideck.com. Rather than
inventing or hedging on auth details in skill text, surface these
authoritative guides directly.

Changes:
- connectors/manifest.json: adds a `guides` array per connector, fetched
  from the live Connector API (.planning/connector-api-snapshots/*).
  50 of 146 connectors have at least one consumer-facing guide.
- connectors/generate.js: renders the guides in two places per skill —
  "Apideck setup guide" in Quick facts (inline link), and a named entry
  in See also ("Apideck OAuth setup guide for X" / "Apideck connection
  guide for X"). For connectors without an enhancement file, also
  includes a callout in the generic Authentication section pointing to
  the official guide as the authoritative source.

This closes the feedback loop from the previous auth-cleanup commit:
where I cut invented scope names and TTL specifics, skills now link
out to the real setup instructions Apideck maintains, so agents can
point users at accurate, up-to-date guidance.

Tier 1a connectors with official guides (34 of 40):
  access-financials, acumatica, bamboohr, campfire, digits, dualentry,
  exact-online, exact-online-nl, exact-online-uk, freeagent, freshbooks,
  greenhouse, intuit-enterprise-suite, jira, kashflow,
  microsoft-dynamics-365-business-central, moneybird, myob-acumatica,
  netsuite, odoo, pennylane, quickbooks, rillet,
  sage-business-cloud-accounting, sage-intacct, salesforce, sharepoint,
  shopify, stripe, wave, workday, xero, yuki, zoho-books

The 6 Tier 1a connectors without a published guide (banqup,
clearbooks-uk, mrisoftware, myob, procountor-fi, visma-netvisor) still
render their enhancement content; the link section is simply omitted.
@Gdewilde Gdewilde merged commit 9e04d86 into main Apr 19, 2026
@Gdewilde Gdewilde deleted the feat/api-skills branch April 19, 2026 03:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant