Agent Skills for AppDirect marketplace work — usable with Claude Code, Cowork, and any Claude client that loads Agent Skills.
Two production-tested skills that teach Claude the AppDirect ISV workflow — the submission process and the platform APIs — so it stops hallucinating mutation names and missing the manual steps that stall publications.
| Skill | What it does |
|---|---|
appdirect-submission |
App submission runbook — take a SaaS product from zero to approved publication with a 100% profile-completion score. Covers the six scoring segments (with exact GraphQL/REST field names), the publication-request flow, immutable core-data decisions, rejection recovery, and the human blockers (Marketplace Manager approval, the manual UI-only Integration report, EA API gating). |
appdirect-api-integration |
Platform API integration — OAuth clients & scopes, GraphQL product/edition/pricing mutations, event-notification endpoints (SUBSCRIPTION_ORDER/CHANGE/CANCEL, USER_ASSIGNMENT), SSO (OIDC/SAML/bookmark), inbound vs. outbound credentials, ping tests, and a debugging quick-table. Ships TypeScript scaffolds for the event handlers and OAuth token client. |
AppDirect's product APIs are Early Availability and its docs are spread across user guides, two API references, and a help portal. Untrained models reliably invent mutation names (createIntegrationConfiguration instead of createProductIntegration), invert the credential directions, and never mention userErrors or lastTest — the two things you actually need when calls fail. These skills bake in the verified sequences and point Claude at AppDirect's AI-readable doc dumps for anything that might have changed:
developer.appdirect.com/llms.txt— doc page indexdeveloper.appdirect.com/llms-full.txt— full documentation dumpdeveloper.appdirect.com/schema/llms-full.txt— GraphQL schema dump- Context7: AppDirect docs — indexed and queryable via the Context7 MCP, curated by yours truly
Each skill was tested against baseline (no-skill) runs on realistic tasks, graded on doc-verified assertions:
| Skill | With skill | Baseline | Notable baseline failures |
|---|---|---|---|
appdirect-submission |
100% (12/12) | 62% | Missed the manual Integration report; claimed submission isn't score-gated |
appdirect-api-integration |
100% (12/12) | 50% | Hallucinated mutation names & input shapes; inverted credential directions; no userErrors/lastTest |
.claude-plugin/
├── marketplace.json # marketplace manifest → enables /plugin install
└── plugin.json # plugin manifest (name, version, metadata)
skills/
├── appdirect-submission/
│ ├── SKILL.md # triggering + workflow + hard-won rules
│ └── references/
│ └── submission-checklist.md # full phased runbook w/ exact field names
└── appdirect-api-integration/
├── SKILL.md # workflow + debugging quick-table
├── references/
│ ├── graphql-mutations.md # verified copy-paste mutations, every step
│ └── auth-and-scopes.md # grant types, scopes ↔ roles, credential directions
└── assets/scaffold/
├── event-handlers.ts # Express endpoints for all marketplace events
└── oauth-client.ts # client-credentials token helper + GraphQL/REST client
dist/ # packaged .skill bundles for client import
Option 1 — install as a Claude Code plugin (recommended; no cloning, auto-updates):
/plugin marketplace add webdevtodayjason/appdirect-skills
/plugin install appdirect@appdirect-skills
The two skills install as appdirect:appdirect-submission and appdirect:appdirect-api-integration.
Option 2 — copy the folders into your skills directory:
git clone https://github.com/webdevtodayjason/appdirect-skills
cp -R appdirect-skills/skills/appdirect-* ~/.claude/skills/ # global (all projects)
# or per-project: cp -R appdirect-skills/skills/appdirect-* /path/to/project/.claude/skills/Option 3 — import the packaged bundles: open the .skill files in dist/ with your Claude client's skill importer (Cowork and Claude Desktop render a "Save skill" button).
Skills activate automatically when your request matches — e.g. "submit my product to AppDirect", "why is my completion score stuck at 85%", "scaffold AppDirect event endpoints", "my createProduct mutation fails with no detail".
- AppDirect's product GraphQL APIs are Early Availability; the async publication API additionally requires enablement by an AppDirect technical representative.
- Exact input shapes can vary by marketplace version — the skills instruct Claude to verify via schema introspection or the llms.txt dumps before running mutations against a live marketplace.
- Publication approval is a human Marketplace Manager decision; a 100% completion score is necessary but not sufficient.
Built by Jason Brashear — Director of AI Development & Cybersecurity at Titanium Computing, founder of ArgentOS.ai, building software since 1994 and AI-powered SaaS since before it was cool.
- 🌐 Website: jasonbrashear.com
- ✍️ Substack: Frontier Operations — intent engineering, agentic architecture, frontier ops
- 🛰️ Open standards: frontierinfra.org
- 📺 YouTube: @titaniumcomputing
Verified against developer.appdirect.com on 2026-07-08. AppDirect is a trademark of AppDirect, Inc.; this is an independent community project, not affiliated with or endorsed by AppDirect.
MIT — see LICENSE.