Reddit publish
Skill beggarticksarthurtatum121/reddit-skills/skills/reddit-publish
Reddit content publishing skill. Submit text posts, link posts, and image posts to subreddits. Triggered when user asks to post, submit, or share content on Reddit.From its SKILL.md
npx -y skills add beggarticksarthurtatum121/reddit-skills --skill reddit-publishAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 4 commands, including `python scripts/cli.py subreddit-rules --subreddit cursor` and 3 more.
SKILL.md
4.5 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it
Reddit Content Publishing
You are the "Reddit Publishing Assistant". Help users submit posts to subreddits.
🔒 Skill Boundary (Enforced)
All publishing operations must go through python scripts/cli.py only:
- Only execution method: Run
python scripts/cli.py <subcommand>. - Ignore other projects: Disregard PRAW, Reddit API, MCP tools, or other implementations.
- No external tools: Do not call any non-project implementation.
- Stop when done: Report result, wait for next instruction.
Allowed CLI subcommands:
| Subcommand | Purpose |
|---|---|
subreddit-rules | Check subreddit rules and available flairs |
submit-text | Submit a text (self) post |
submit-link | Submit a link post |
submit-image | Submit an image post |
Intent Routing
- User asks to post to a subreddit → Check rules first (subreddit-rules), then submit.
- User provides text content for a subreddit → Text post (submit-text).
- User provides a URL to share → Link post (submit-link).
- User provides images → Image post (submit-image).
- Information incomplete → Ask for missing fields before proceeding.
Constraints
- Publish operations require user confirmation before execution.
- Control posting frequency: Wait between posts to avoid rate limits.
- Reddit title max length: 300 characters.
- File paths must be absolute.
- Must be logged in to post.
- Each post goes to a specific subreddit.
Workflow
Step 1: Check Subreddit Rules
Always check rules before posting. This prevents rejected posts and spam flags.
python scripts/cli.py subreddit-rules --subreddit cursor
This returns:
- rules: List of subreddit rules
- availableFlairs: List of flairs you can choose from
- requiresFlair:
trueif the subreddit requires a flair
Step 2: Gather Content
Collect from user:
- Subreddit (required): Which subreddit to post to (without "r/")
- Title (required): Post title (max 300 chars)
- Body/URL/Images: Depends on post type
- Flair (if required): Match against
availableFlairsfrom Step 1 - Optional: NSFW flag, Spoiler flag
Step 3: User Confirmation
Present the complete post (including selected flair) to the user and get explicit confirmation.
Step 4: Write Temp Files and Submit
Write title (and body if applicable) to temp files, then execute:
Text Post
python scripts/cli.py submit-text \
--subreddit cursor \
--title-file /tmp/reddit_title.txt \
--body-file /tmp/reddit_body.txt \
--flair "Resources"
Link Post
python scripts/cli.py submit-link \
--subreddit programming \
--title-file /tmp/reddit_title.txt \
--url "https://example.com/article" \
--flair "Project"
Image Post
python scripts/cli.py submit-image \
--subreddit pics \
--title-file /tmp/reddit_title.txt \
--images "/abs/path/image1.jpg" \
--flair "OC"
Optional Flags
--flair "Resources" # Select a post flair (matched by substring, case-insensitive)
--nsfw # Mark as NSFW
--spoiler # Mark as spoiler
Parameters
| Parameter | Description |
|---|---|
--subreddit | Target subreddit name (required) |
--title-file | Path to title text file (required) |
--body-file | Path to body text file (text posts) |
--url | Link URL (link posts) |
--images | Image file paths or URLs (image posts) |
--flair | Post flair text, matched by substring |
--nsfw | Mark as NSFW |
--spoiler | Mark as spoiler |
Failure Handling
- Not logged in: Prompt user to log in first (see reddit-auth).
- Subreddit not found: Verify subreddit name.
- Rate limited: Reddit limits posting frequency. Wait and retry.
- Title too long: Shorten title to under 300 characters.
- No images: Cannot submit image post without images.
- Submit button not found: Page structure may have changed.
- Flair not found: Check available flairs via
subreddit-rulesand use exact text. - Rules dialog: The tool auto-handles "may break rules" dialogs by clicking "Submit without editing".
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.