/ralph-marketer
Start the Ralph Marketer autonomous copywriter loop
> /plugin marketplace add muratcankoylan/ralph-wiggum-marketer > /plugin install ralph-wiggum-marketer@ralph-wiggum-marketer
How it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/ralph-marketer
Context preview
What this command does when you run it.
Start the Ralph Marketer autonomous copywriter loop
Command definition
ralph-marketer.mddescription: Start the Ralph Marketer autonomous copywriter loop
argument-hint: [--max-iterations <n>] [--completion-promise <text>]
allowed-tools: [Read, Write, Edit, Glob, Grep, Bash, WebFetch]
model: sonnet
Ralph the Marketer - Autonomous Copywriter Loop
You are starting the **Ralph the Marketer** autonomous copywriting agent. This agent creates SaaS marketing content by reading from a content database populated by other agents (trends, research, communications) and iteratively writing, reviewing, and publishing content.
Setup (First Run Only)
If this is your first time running Ralph the Marketer in this project, you need to initialize the content database:
# From the plugin directory
cd ${CLAUDE_PLUGIN_ROOT}
npm install
npm run db:resetOr set up the project structure in your current directory:
# Copy templates to your project
cp -r ${CLAUDE_PLUGIN_ROOT}/templates/ralph ./scripts/ralph
cp ${CLAUDE_PLUGIN_ROOT}/templates/package.json ./package.json
cp -r ${CLAUDE_PLUGIN_ROOT}/scripts/src ./src
mkdir -p content/{drafts,published} data
npm install
npm run db:resetYour Task
You are now in a Ralph loop. Each iteration:
1. **Read the PRD**: Check `scripts/ralph/prd.json` for user stories 2. **Check Progress**: Read `scripts/ralph/progress.txt` for patterns and learnings 3. **Pick Next Story**: Find highest priority story where `passes: false` 4. **Execute**: Complete the story following its acceptance criteria 5. **Verify**: Run `npm test` to ensure quality 6. **Commit**: `git commit -m "content: [ID] - [Title]"` 7. **Update**: Mark story as `passes: true`, log to progress.txt
Content Sources
Check what's available in the database:
npm run db:status # Pipeline overview
node src/content/list.js # Available trends, research, comms
Story Types
- **SETUP-xxx**: Initialize/configure something
- **PLAN-xxx**: Create a content plan from sources
- **WRITE-xxx**: Write content (drafts to `content/drafts/`)
- **REVIEW-xxx**: Self-review and improve drafts
- **PUBLISH-xxx**: Finalize and publish (`content/published/`)
- **SOCIAL-xxx**: Create social media posts
- **NEWSLETTER-xxx**: Draft newsletters
Completion Signal
When ALL stories in `prd.json` have `passes: true`, output:
<promise>COMPLETE</promise>
Arguments
$ARGUMENTS
- `--max-iterations <n>`: Stop after N iterations (default: unlimited)
- `--completion-promise <text>`: Custom completion signal (default: "COMPLETE")
Begin
Read the PRD. Find your next task. Ship great content.
You have unlimited iterations. Persistence wins.
Read more
description: Start the Ralph Marketer autonomous copywriter loop argument-hint: [--max-iterations <n>] [--completion-promise <text>] allowed-tools: [Read, Write, Edit, Glob, Grep, Bash, WebFetch] model: sonnet
Ralph the Marketer - Autonomous Copywriter Loop
You are starting the **Ralph the Marketer** autonomous copywriting agent. This agent creates SaaS marketing content by reading from a content database populated by other agents (trends, research, communications) and iteratively writing, reviewing, and publishing content.
Setup (First Run Only)
If this is your first time running Ralph the Marketer in this project, you need to initialize the content database:
# From the plugin directory
cd ${CLAUDE_PLUGIN_ROOT}
npm install
npm run db:resetOr set up the project structure in your current directory:
# Copy templates to your project
cp -r ${CLAUDE_PLUGIN_ROOT}/templates/ralph ./scripts/ralph
cp ${CLAUDE_PLUGIN_ROOT}/templates/package.json ./package.json
cp -r ${CLAUDE_PLUGIN_ROOT}/scripts/src ./src
mkdir -p content/{drafts,published} data
npm install
npm run db:resetYour Task
You are now in a Ralph loop. Each iteration:
1. **Read the PRD**: Check `scripts/ralph/prd.json` for user stories 2. **Check Progress**: Read `scripts/ralph/progress.txt` for patterns and learnings 3. **Pick Next Story**: Find highest priority story where `passes: false` 4. **Execute**: Complete the story following its acceptance criteria 5. **Verify**: Run `npm test` to ensure quality 6. **Commit**: `git commit -m "content: [ID] - [Title]"` 7. **Update**: Mark story as `passes: true`, log to progress.txt
Content Sources
Check what's available in the database:
npm run db:status # Pipeline overview node src/content/list.js # Available trends, research, comms
Story Types
- **SETUP-xxx**: Initialize/configure something
- **PLAN-xxx**: Create a content plan from sources
- **WRITE-xxx**: Write content (drafts to `content/drafts/`)
- **REVIEW-xxx**: Self-review and improve drafts
- **PUBLISH-xxx**: Finalize and publish (`content/published/`)
- **SOCIAL-xxx**: Create social media posts
- **NEWSLETTER-xxx**: Draft newsletters
Completion Signal
When ALL stories in `prd.json` have `passes: true`, output:
<promise>COMPLETE</promise>
Arguments
$ARGUMENTS
- `--max-iterations <n>`: Stop after N iterations (default: unlimited)
- `--completion-promise <text>`: Custom completion signal (default: "COMPLETE")
Begin
Read the PRD. Find your next task. Ship great content.
You have unlimited iterations. Persistence wins.
A Claude Code Plugin that provides an autonomous AI copywriter for SaaS content marketing. Uses the Ralph Wiggum pattern - an iterative AI loop that ships content while you sleep.
Other commands on ralph-wiggum-marketer.
ralph-init
Initialize a new Ralph Marketer project in the current directory

