What PACT enables
PACT connects personal agents with a business's support agents. Signed requests make the agent's identity verifiable. If the business also offers OAuth delegation, the user can grant the agent access to selected functions of their customer account.
Connections with other protocols
- PACT builds on A2A 1.0 and uses its communication between agents. The Agent Card describes connectivity and the access rights on offer.
- OAuth adds approval for customer account access, such as reading orders. Poppy also addresses personal agents accessing businesses.
Versions and licence
- Published version
- No separate version stated
- Working draft
- —
The specification uses A2A 1.0. Workspace packages carry version 0.1.0; this is not a separate protocol revision.
- Licence / terms
- Apache-2.0
Licence and terms ↗
An example flow
- The personal agent reads the business's Agent Card and discovers its functions.
- It sends a signed request, for example about the user's order.
- For account access, the user signs in to the business and approves the required OAuth scopes.
- The business agent verifies identity and approval and responds in the customer's context.
SDKs and examples
These libraries and examples help you get started. Each entry lists the language, package and supported version.
From the protocol projectTypeScript
PACT TypeScript packages
Includes: Schemas, signer/client and reference provider
Package / module: @openpactprotocol/protocol; @openpactprotocol/client
Version & compatibility: Workspace packages 0.1.0; both package manifests are marked private.
Practical integration
- The personal agent registers with the provider. Businesses reachable through it publish their own Agent Cards.
- The TypeScript packages are used within the monorepo. The reference provider is based on Next.js and PostgreSQL.