Fetches Reddit posts, comments, and listings via Gemini CLI in tmux or curl JSON API fallback. Use for Reddit URLs, topic research, or 403 blocks.
From dxnpx claudepluginhub ykdojo/claude-code-tips --plugin dxThis skill uses the workspace's default tool permissions.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Provides C# and .NET testing patterns with xUnit, FluentAssertions, NSubstitute/Moq mocking, Testcontainers integration tests, and Arrange-Act-Assert structure.
Use Gemini CLI via tmux. It can browse, summarize, and answer complex questions about Reddit content.
Pick a unique session name (e.g., gemini_abc123) and use it consistently throughout.
tmux new-session -d -s <session_name> -x 200 -y 50
tmux send-keys -t <session_name> 'gemini -m gemini-3-pro-preview' Enter
sleep 3 # wait for Gemini CLI to load
tmux send-keys -t <session_name> 'Your Reddit query here' Enter
sleep 30 # wait for response (adjust as needed, up to 90s for complex searches)
tmux capture-pane -t <session_name> -p -S -500 # capture output
If the captured output shows an API error (e.g., quota exceeded, model unavailable), kill the session and retry without the -m flag (just gemini with no model argument). This falls back to the default model.
Look for YOUR QUERY TEXT specifically. Is it inside or outside the bordered box?
Enter NOT sent - your query is INSIDE the box:
╭─────────────────────────────────────╮
│ > Your actual query text here │
╰─────────────────────────────────────╯
Enter WAS sent - your query is OUTSIDE the box, followed by activity:
> Your actual query text here
⠋ Our hamsters are working... (processing)
╭────────────────────────────────────────────╮
│ > Type your message or @path/to/file │
╰────────────────────────────────────────────╯
Note: The empty prompt Type your message or @path/to/file always appears in the box - that's normal. What matters is whether YOUR query text is inside or outside the box.
If your query is inside the box, run tmux send-keys -t <session_name> Enter to submit.
tmux kill-session -t <session_name>
If retrying without -m also fails, fall back to Method 2 below.
Reddit's public JSON API works by appending .json to any Reddit URL. Use this when Gemini is unavailable (quota exhausted, API errors, etc.).
curl -s -L -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" \
"https://old.reddit.com/r/SUBREDDIT/hot.json?limit=15"
Replace hot with new, top, or rising as needed. For top, add &t=day (or week, month, year, all).
curl -s -L -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" \
"https://old.reddit.com/r/SUBREDDIT/comments/POST_ID.json?limit=20"
The response is a JSON array: [0] is the post, [1] is the comment tree.
curl -s -L -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" \
"https://old.reddit.com/r/SUBREDDIT/search.json?q=QUERY&restrict_sr=on&sort=new&limit=15"
Use jq to extract what you need:
# List posts
curl -s -L -o /tmp/reddit_result.txt -w "%{http_code}" \
-H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" \
'https://old.reddit.com/r/SUBREDDIT/hot.json?limit=15'
jq -r '.data.children[] | .data | "\(.title)\n \(.score) pts | \(.num_comments) comments | u/\(.author) | id: \(.id)\n"' /tmp/reddit_result.txt
# List comments from a specific post (the [1] element has comments)
jq -r '.[1].data.children[] | select(.kind == "t1") | .data | "u/\(.author) (\(.score) pts):\n \(.body[:300])\n"' /tmp/reddit_thread.txt
Key details:
-o /tmp/file and -w "%{http_code}" saves the response and prints the HTTP status (useful for debugging empty responses)-L follows redirects (old.reddit.com sometimes redirects)& in query strings.body[:300] truncates long comment bodies (jq 1.7+)Reddit's JSON API rate-limits aggressively:
sleep 2 or sleep 3 between each.