Start here

Platform Readiness Scorecard

Can a client build anything on Agend? The primitives ledger, scored against the repo as of 2026-07-07. Companion docs: ADR-001-object-registry-system-and-custom-objects.md, public-api-external-tenant-hardening.md, writeback-two-way-sync.md, wordpress-integration-plugin-spec.md

The ledger

#PrimitiveStatusEvidence / gap
1Public versioned API + scoped keys + entitlements✅ Shippedapps/api, 169 /v1 routes, unified ag_* keys
2Webhooks (signed, replayable)✅ Shipped@agend/webhooks, subscriptions + deliveries + replay
3SSO / embed✅ Shipped@agend/sso, @agend/embed
4Metered billing on API usage✅ ShippedGateway after() metering — platform is monetisable day one
5Sandbox✅ Shippedag_test_ keys
6Client-side components🟡 Half@agend/elementor-widgets built; WP plugin glue missing → SPEC written (BOA-08)
7Workflows for clients🟡 Exists internallyapps/workflows (visual DAG, Inngest) is internal-only. Exposing it to client accounts is the cheapest big win — soaks up a large class of "build us X" requests with zero client code
8Data extensibility (custom objects)🟡 Decided, not builtADR-001: registry + object_definitions/object_records; first slice = relationship-type custom fields. Sized: MVP ~4–6 wks (custom-objects-build-plan.md) — existing custom_field_definitions engine shrinks it
9Platform contract❌ MissingVersioning/deprecation policy, SLA, changelog channel, SDKs. Boring, decisive: it is what makes an agency willing to build on you. v0 clauses drafted in ahri-operating-model.md
10External-tenant hardening❌ GatedDistributed rate limiting + RLS backstop (P1s in the hardening findings) before external write keys
11AI/agent surface (MCP)🟡 Exists internally@agend/mcp-tools + MCP server + agents registry shipped but absent from the client offer. The object registry (ADR-001) can drive REST + widgets + MCP tools from one catalogue — design the registry for it now (opportunity O2, platform-opportunities.md)

Score: 5 shipped · 4 half · 2 missing (of 11).

The compounding plays live across rows, not in them — #7 × #8 = the "Programs" no-code product, #11 × #8 = AI-accessible objects: see platform-opportunities.md (O1, O2) and the full Upbeat entity homing in upbeat-data-bridge-map.md.

Transactional write coverage (the other axis)

Reads: open today for synced entities (contacts, sales). Writes that must reach Upbeat: phased W1–W4 per the write-back design. Writes to Agend-native products (LMS, community, directory, jobs): already open.

  1. Hardening P1s (#10) — gate for everything external
  2. WP integration plugin (#6) — unlocks the AHRI pilot visibly
  3. Relationship-type custom fields (#8 slice 1) — builds the field engine on a shipped feature
  4. Platform contract v1 (#9) — publish alongside the pilot
  5. Workflows exposure (#7) — scoped beta for one client account (AHRI) before general release
  6. Custom objects proper (#8) and write-back phases proceed on their own tracks

The strategic trade (recorded)

Platform = trading bespoke services revenue for stickiness and scale: client devs/agencies do the long-tail work, Agend stops being the resented bottleneck, and every feature a client builds on the API raises switching cost. The existential risk is not clients building too much — it is breaking the contract they built on. Hence #9 outranking its apparent boringness.