How the MarketingSkills Project Is Structured: A Complete Technical Guide
The MarketingSkills repository organizes 40+ AI marketing agent skills and 51 zero-dependency CLI tools into a flat, content-only hierarchy under skills/ and tools/ directories, enabling direct installation via Claude Code plugins or manual copy without build steps.
The MarketingSkills project by coreyhaines31/marketingskills is a curated collection of Agent Skills and standalone CLI utilities designed to automate marketing workflows for AI agents like Claude Code, OpenAI Codex, and Cursor. The marketingskills project structure follows a strict, agent-first philosophy where every asset is discoverable, versionable, and executable without compilation or build pipelines.
Top-Level Directory Layout
The repository root contains four primary content areas and configuration files. According to the source code in AGENTS.md and README.md, the layout is:
marketingskills/
├── .claude-plugin/
│ └── marketplace.json # Claude Code plugin manifest
├── skills/ # 40+ marketing Agent Skills
│ └── <skill-name>/
│ └── SKILL.md # Required markdown instructions
├── tools/
│ ├── clis/ # 51 single-file Node.js CLIs (zero deps)
│ ├── composio/ # Composio integration layer (OAuth → MCP)
│ ├── integrations/ # API guides per tool (ga4, stripe, …)
│ └── REGISTRY.md # Master index of every supported tool
├── CONTRIBUTING.md # Guidelines for adding new skills/tools
├── LICENSE
├── README.md # Human-readable project intro
├── VERSIONS.md # Skill version table for update checks
└── AGENTS.md # Agent-oriented documentation & conventions
This structure is content-only—there is no compiled code or build pipeline. Assets are designed to be copied directly into a project's .agents/skills/ directory or installed via the Claude Code plugin system.
The Skills Directory Structure
Each subfolder under skills/ represents a standalone marketing capability (e.g., page-cro, copywriting). The core of every skill is the SKILL.md file, which must be ≤ 500 lines and resides at skills/<skill-name>/SKILL.md.
Every skill file follows a strict front-matter schema:
---
name: <skill-name>
description: <short description with trigger phrases>
---
Optional supporting subdirectories include:
references/—supporting documentationscripts/—sample code snippetsassets/—templates or media
Validation rules for front-matter, file naming, and line limits are enforced by validate-skills.sh and validate-skills-official.sh in the repository root.
The Tools Ecosystem
The tools/ directory provides the execution layer for third-party marketing APIs.
Zero-Dependency CLI Tools
The tools/clis/ folder contains 51 single-file Node.js scripts that require only an environment-variable API key. For example, tools/clis/ga4.js handles Google Analytics 4 interactions:
node tools/clis/ga4.js properties list --dry-run
Tools follow a consistent dry-run pattern (--dry-run) allowing agents to preview requests before execution.
Integration Guides
Each supported service has a dedicated markdown guide in tools/integrations/ (e.g., tools/integrations/ga4.md, tools/integrations/stripe.md). These documents detail API authentication methods, rate limits, and common operations.
The Tool Registry
tools/REGISTRY.md serves as the single source of truth, mapping each tool to its available interfaces:
| Tool | Category | API | MCP | CLI | Guide |
|---|---|---|---|---|---|
ga4 |
Analytics | ✅ | ✅ | ✅ (clis/ga4.js) |
ga4.md |
stripe |
Payments | ✅ | ✅ | ✅ (clis/stripe.js) |
stripe.md |
mailchimp |
✅ | ✅ | ✅ (clis/mailchimp.js) |
mailchimp.md |
Composio MCP Layer
For tools lacking native MCP (Model Context Protocol) servers, the tools/composio/ directory supplies an integration layer that proxies OAuth authentication to Standardized MCP endpoints. The tools/integrations/composio.md file documents token handling and endpoint patterns.
Installation and Discovery Mechanisms
The marketingskills project structure supports two primary installation paths documented in README.md:
Claude Code Plugin (Recommended):
/plugin marketplace add coreyhaines31/marketingskills
/plugin install marketing-skills
NPM-based Skills CLI:
npx skills add coreyhaines31/marketingskills # all skills
npx skills add coreyhaines31/marketingskills --skill page-cro copywriting
Versioning and Validation
VERSIONS.md contains an auto-generated table of every skill version. Agents fetch this file on first use to implement the Check-for-Updates flow described in AGENTS.md. If a major version bump or two-plus updates exist, the agent surfaces a non-blocking notification to the user.
The repository maintains strict compliance through:
validate-skills.sh—local validation scriptvalidate-skills-official.sh—official registry validation
Both enforce the front-matter schema, file naming conventions, and the 500-line limit for SKILL.md files.
Summary
- Top-level folders:
.claude-plugin/,skills/,tools/, plus documentation files (AGENTS.md,VERSIONS.md,README.md) - Skills: Content-only markdown (
SKILL.md) with strict YAML front-matter; grouped by marketing domain; validated by shell scripts - Tools: Registry-driven ecosystem (
tools/REGISTRY.md) with zero-dependency Node.js CLIs and Composio-backed MCP integrations - Installation: Via Claude Code plugin marketplace or
npx skillsCLI without build steps - Updates: Agents compare local versions against
VERSIONS.mdto trigger update notifications
Frequently Asked Questions
What is the purpose of the SKILL.md file in the marketingskills project structure?
The SKILL.md file is the mandatory instruction set that AI agents read at runtime. Located at skills/<skill-name>/SKILL.md, it contains YAML front-matter defining the skill name and description, followed by markdown instructions that guide the agent through marketing workflows. Each file must stay under 500 lines to ensure efficient parsing.
How do the CLI tools in tools/clis/ work without dependencies?
Each file in tools/clis/ is a single-file Node.js script that uses only native Node.js APIs and environment variables for API keys. This zero-dependency design allows immediate execution via node tools/clis/<tool>.js without installing npm packages, making them ideal for agent environments where build steps are prohibited.
What is the difference between the Tool Registry and the Composio integration?
The Tool Registry (tools/REGISTRY.md) is a documentation index listing which marketing tools support API, MCP, and CLI interfaces. The Composio integration (tools/composio/) is an actual proxy layer that converts OAuth-protected APIs into MCP-compatible endpoints, enabling agents to use tools that don't natively support the Model Context Protocol.
How does the marketingskills project handle version updates?
The project uses VERSIONS.md as a centralized version table. When an agent first loads a skill, it fetches this file and compares the local skill version against the repository version. If the remote version is newer by a major bump or multiple minor versions, the agent displays a notice prompting the user to update, as detailed in the AGENTS.md Check-for-Updates workflow.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →