acp-extensions-authoring
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.
Best use case
acp-extensions-authoring is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
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.
Teams using acp-extensions-authoring should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/acp-extensions-authoring/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How acp-extensions-authoring Compares
| Feature / Agent | acp-extensions-authoring | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
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.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# 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.
Related Skills
ucp-schema-authoring
Author custom UCP schemas and extensions — create capability schemas, extension schemas, and type definitions using JSON Schema 2020-12 composition. Use when extending UCP with custom capabilities or building domain-specific extensions.
spree-extensions
Build Spree extensions as Rails engines — gem scaffolding, `bin/rails g spree:extension`, mounting routes/migrations/assets, the modern `prepend` decorator pattern (`*_decorator.rb` with `self.prepended(base)`), generators (`spree:model_decorator`, `spree:controller_decorator`), the four customization surfaces in preference order (Events > Webhooks > Dependencies > Decorators), Spree::Dependencies for swapping service objects, gem release/versioning, and the deprecated Deface engine. Use when building a reusable Spree extension or adding non-trivial customization to an app.
woo-testing
Test WooCommerce extensions — PHPUnit unit/integration tests, WP test suite, WooCommerce test helpers, E2E with Playwright, and WP-CLI test scaffolding. Use when writing tests for WooCommerce plugins or setting up a test environment.
woo-shipping
Build WooCommerce shipping methods — WC_Shipping_Method, shipping zones, shipping classes, rate calculation, tracking, and integration with carriers. Use when creating custom shipping integrations or configuring shipping logic.
woo-setup
Install WooCommerce, configure the development stack, and set up a local dev environment with WP-CLI, Docker, or wp-env. Use when setting up a new WooCommerce project or development environment.
woo-security
Implement WooCommerce security — nonces, capabilities, input sanitization, output escaping, data validation, PCI compliance considerations, and WordPress security best practices. Use when hardening a WooCommerce store or reviewing security posture.
woo-plugin-dev
Create WooCommerce extensions/plugins — file structure, main plugin file, activation/deactivation hooks, custom database tables, autoloading, and WordPress plugin API. Use when building new WooCommerce extensions or structuring plugin code.
woo-performance
Optimize WooCommerce performance — object caching, transients, HPOS, database optimization, Action Scheduler, lazy loading, and query optimization. Use when improving store performance or diagnosing slowness.
woo-payments
Build WooCommerce payment gateways — WC_Payment_Gateway, direct/redirect/hosted integrations, tokenization, subscriptions support, refunds, and PCI compliance. Use when creating custom payment method integrations.
woo-hooks-filters
Master the WordPress hook system for WooCommerce — actions, filters, hook priorities, WooCommerce-specific hooks, and extensibility patterns. Use when adding functionality via hooks or understanding the WooCommerce execution flow.
woo-frontend
Customize WooCommerce frontend — template overrides, theme integration, shortcodes, hooks for product/cart/checkout display, and WooCommerce block themes. Use when modifying the storefront appearance or building WooCommerce themes.
woo-deploy
Deploy WooCommerce — WP-CLI automation, database migrations, zero-downtime updates, staging workflows, environment configuration, and CI/CD patterns. Use when deploying WooCommerce stores or setting up deployment pipelines.