Skip to content
Back to skills

Acp Extensions Authoring

ASecurity

Author custom ACP extensions — composable protocol add-ons with JSONPath targeting, schema composition, and independent versioning. Use when building proprietary or domain-specific extensions beyond the built-in ones.

  • 39 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added May 29, 2026
ai-agentsgotestinggit

Security analysis

A100/100

Scanned May 29, 2026

npx -y skills add OrcaQubits/agentic-commerce-skills-plugins --skill acp-extensions-authoring --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Acp Extensions Authoring?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Acp Extensions Authoring
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/orcaqubits-acp-extensions-authoring/badge)](https://www.skillsdirectory.com/skills/orcaqubits-acp-extensions-authoring)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: acp-extensions-authoring
description: >
  Author custom ACP extensions — composable protocol add-ons with JSONPath
  targeting, schema composition, and independent versioning. Use when building
  proprietary or domain-specific extensions beyond the built-in ones.
---

# ACP Custom Extension Authoring

## Before writing code

**Fetch live docs**:
1. Web-search `site:github.com agentic-commerce-protocol rfcs extensions` for the extensions framework RFC
2. Web-search `site:github.com agentic-commerce-protocol examples` for extension examples
3. Fetch `https://developers.openai.com/commerce/specs/checkout/` for how extensions integrate with checkout
4. Study the built-in discount extension as a reference: web-search `site:github.com agentic-commerce-protocol rfcs discount_extension`

## Conceptual Architecture

### What Extensions Are

Extensions are **composable, optional add-ons** that augment ACP's core capabilities. They allow the protocol to grow without bloating the core spec — new features are added as extensions with independent lifecycles.

### Extension Properties

Every extension defines:
- **Name** — Core extensions use simple names (`discount`); third-party use reverse-domain (`com.example.loyalty`)
- **Version** — Calendar versioned (`YYYY-MM-DD`)
- **Parent capability** — `extends` field linking to the parent (e.g., extends `checkout`)
- **JSONPath targets** — Where in the core schema this extension adds fields
- **Schema** — JSON Schema for the extension's data

### JSONPath Targeting

Extensions use JSONPath (RFC 9535) to inject fields into core schema locations:
- `$.CheckoutSessionCreateRequest.discounts` — Add fields to the create request
- `$.CheckoutSession.discounts` — Add fields to the response
- Multiple targets per extension are allowed

### Extension Lifecycle

```
draft → experimental → stable → deprecated → retired
```

- **draft** — In development, not for production
- **experimental** — Available for testing, may change
- **stable** — Production-ready, backwards-compatible changes only
- **deprecated** — Still functional, but replacement available
- **retired** — No longer supported

### Schema Composition Rules

- Extension schemas are composed alongside (not inside) core schemas
- Extensions must not conflict with core fields
- Extensions must not introduce authentication bypasses
- Extension data follows the same PCI/PII rules as core fields
- Extensions can reference other extensions (dependency chain)

### Naming Conventions

- **Core extensions**: Simple lowercase names — `discount`, `intent_traces`, `affiliate_attribution`
- **Third-party**: Reverse-domain notation — `com.mycompany.loyalty`, `io.myplatform.subscription`

### Built-in Extensions as Reference

Study these before authoring custom extensions:
1. **Discount** — Discount codes, applied/rejected discounts, allocations
2. **Intent Traces** — Cart abandonment signals with reason codes
3. **Affiliate Attribution** — Privacy-preserving attribution tracking

### Custom Extension Ideas

- Loyalty program integration
- Subscription management
- Gift wrapping options
- Delivery instructions
- Tax exemption certificates
- Custom buyer preferences

### Best Practices

- Start in `draft` lifecycle, graduate through `experimental` to `stable`
- Use reverse-domain naming for all non-core extensions
- Define clear JSON Schemas with validation rules
- Document the extension's purpose, fields, and interaction with core checkout
- Test that your extension survives capability negotiation pruning
- Version independently from the core protocol

Fetch the extensions framework RFC for the exact extension manifest structure, JSONPath targeting syntax, and schema composition rules before implementing.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…