qwoted-seo-backlinks-skill
Health Warn
- No license — Repository has no license file
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 15 GitHub stars
Code Pass
- Code scan — Scanned 5 files during light audit, no dangerous patterns found
Permissions Pass
- Permissions — No dangerous permissions requested
This tool is an AI agent skill that automates public relations and SEO tasks on the Qwoted platform. It uses browser automation to log into a user's account, find journalist queries, build statistical web pages, and submit pitches.
Security Assessment
Risk Rating: Medium
The tool inherently requires handling sensitive data, specifically your Qwoted login credentials and browser session cookies, which it saves locally to maintain access. It utilizes browser automation via Playwright (which downloads and executes a Chromium instance) and operates by making external network requests to Qwoted. The automated code scan did not flag any dangerous patterns, malicious code, or hardcoded secrets. However, because the tool actively interacts with authenticated web sessions on your behalf, the potential impact of a flawed or manipulated script is higher than a purely local utility.
Quality Assessment
The project is actively maintained, with repository activity as recent as today. It has garnered 15 GitHub stars, indicating a small but present level of community trust. The codebase is small and easy to review. The primary concern is the complete lack of a licensing file. Without an explicit open-source license, the legal terms of use, modification, and distribution remain strictly reserved by the creator, which may be a blocker for commercial environments.
Verdict
Use with caution: the code is clean and active, but you should inspect it yourself to ensure you are comfortable with how it manages your browser sessions, and be aware of the unlicensed status.
Claude Code skill: find PR/backlink opportunities on Qwoted, build a sourced statistics page as a linkable asset, and pitch journalists — all from your AI agent.
Qwoted SEO Backlinks Skill
Built by the team at Distribb — the SEO & backlinks autopilot for operators.
→ Automate your SEO and backlinks with us at distribb.io
AI-powered PR automation for Qwoted, with linkable-asset
generation built in. Let your Claude Code agent set up your
expert profile, find journalist requests, research and build a
sourced statistics page on the topic (the kind journalists love
to cite), and send pitches that link to it — earning press
mentions and recurring high-DR backlinks while you focus on the
work that matters.
Qwoted is the modern HARO replacement: every day,
journalists at TechCrunch, Forbes, Inc., 1851 Franchise, Adweek and
6,000+ other publications post requests for expert sources on a topic
they're writing about. Reply with a thoughtful pitch and you might land
in the article — usually with a do-follow link back to your site (which
is why this is one of the best white-hat SEO backlink channels in 2026).
The unique move in this skill is Stage 3: instead of just sending
a naked opinion pitch, Claude can research and generate a
comprehensive HTML statistics page on the topic (40-80 sourced stats,
Chart.js charts, schema.org markup, ready to publish on your CMS).
You publish it, Claude pitches with the link. The journalist gets
quotable numbers; you get one-shot mentions plus recurring
citations for months as other reporters discover your page through
search.
This skill teaches Claude Code (or any AI agent that can shell out) how
to drive Qwoted end-to-end on your behalf, so you can say things like:
- "Find me PR opportunities about marketing automation today."
- "Build me a sourced stats page on AI in marketing, then pitch
the top 3 opportunities about it." - "Update my Qwoted bio to reflect my new role."
…and have it actually happen.
Install as a Claude Code skill
npx skills add Bomx/qwoted-seo-backlinks-skill
Or clone manually:
git clone https://github.com/Bomx/qwoted-seo-backlinks-skill.git
cd qwoted-seo-backlinks-skill
pip install -r requirements.txt
playwright install chromium
That's it. Claude reads SKILL.md to learn the workflow.
Setup (3 minutes, one time)
1. Sign up for Qwoted
Free account at qwoted.com. Pick the "I am a
source / brand" option (not "I am media"). You'll get an email to
verify.
2. Tell Claude to set you up
Once the skill is installed, just say:
"Set me up on Qwoted. My name is Jane Doe, I'm the founder of Acme
Inc, our website is acme.com and my LinkedIn is /in/jane-doe. We do
marketing automation for B2B SaaS."
Claude will:
- Run
qwoted_login.py— a Chromium window opens; you sign in to
Qwoted (this includes MFA, captchas, anything Qwoted asks for). - Save your session cookies to
~/.qwoted/storage_state.json. - Run
qwoted_profile.py --action create ...to fill out your
"expert" Source persona (the thing Qwoted attaches to every pitch
so reporters know who's pitching them). - Confirm everything is wired up correctly.
3. Done — start pitching
"Find Qwoted opportunities about SaaS pricing this week, then pitch
the top 3."
Claude will search the index, draft a custom pitch per opportunity
based on your bio, show each pitch to you for approval, and then
submit only the ones you say yes to. Sent pitches are logged to~/.qwoted/sent_pitches.json so the same opportunity never gets
pitched twice.
What the skill ships
| File | What it does |
|---|---|
qwoted_login.py |
One-time browser login. Saves cookies to ~/.qwoted/. Re-runs only if cookies expire (typically every 30 days). |
qwoted_profile.py |
Get / create / update your Qwoted "Source" persona — the bio, employer, location and contact links every pitch is attached to. |
qwoted_search.py |
Searches the same Algolia index Qwoted's website uses. Returns clean JSON with deadline, publication, request type, hashtags, etc. |
qwoted_pitch.py |
Drafts and (optionally) submits pitches via Qwoted's internal API. Defaults to dry-run; you must pass --send to actually fire. Optional --research-page-url flag logs the linked stats-page URL for traceability. |
STATISTICS_PAGE_PLAYBOOK.md |
The research methodology Claude follows when building a Stage-3 stats page: source quality bar, anti-hallucination rules, structure, length targets, anti-patterns. |
templates/statistics_page_example.html |
Self-contained HTML scaffold (modern responsive CSS, Chart.js charts, Article + FAQPage schema markup, print-friendly). Claude fills in the placeholders. |
SKILL.md |
The Claude Code playbook itself — frontmatter + 4-stage workflow. |
All four scripts are pure Python (requests + playwright) and have
an opinionated RESULT: { ... } JSON output line so AI agents can
chain them together reliably.
The 4-stage workflow
┌──────────────┐ ┌──────────────┐ ┌──────────────────┐ ┌──────────────┐
│ 1. Onboard │ → │ 2. Find │ → │ 3. Research + │ → │ 4. Pitch │
│ (login + │ │ opportunity │ │ publish a stats │ │ with the │
│ profile) │ │ │ │ page (linkable │ │ page URL │
│ │ │ │ │ asset) │ │ │
└──────────────┘ └──────────────┘ └──────────────────┘ └──────────────┘
once every session once per topic every pitch
Stage 3 is the multiplier. A naked pitch lands one quote in one
article. A pitch that links to a thoroughly-sourced stats page lands
recurring citations for months because the next reporter who
searches "<topic> statistics 2026" finds the page on your domain
and cites it on their own.
State directory
Everything lives under ~/.qwoted/ and ./statistics_pages/:
~/.qwoted/
├── storage_state.json # session cookies (full account access — do NOT share)
├── chromium-profile/ # persistent Chromium profile so re-logins are 1-click
├── profile_state.json # snapshot of your Sources/Products/Companies
├── sent_pitches.json # append-only log w/ research_page_url tracking
└── opportunities/ # JSON dumps from each search
└── marketing_20260422_153058.json
./statistics_pages/ # generated stats pages (Stage 3 output)
└── ai-in-marketing-statistics-2026.html
Override the ~/.qwoted/ location with QWOTED_HOME=/some/path.
Reset by deleting the folder.
Running the scripts directly (no AI)
You can use this skill as a regular CLI too:
# Set up
python3 qwoted_login.py
python3 qwoted_profile.py --action get
# Find opportunities about SaaS pricing
python3 qwoted_search.py --query "saas pricing" --max-hits 20
# Dry-run a pitch (no email sent)
python3 qwoted_pitch.py \
--source-request-id 235897 \
--pitch-text-file ./my_pitch.txt
# Actually send it
python3 qwoted_pitch.py \
--source-request-id 235897 \
--pitch-text-file ./my_pitch.txt \
--send
Run any script with --help for the full flag list.
Why a separate "expert" Source persona is required
Qwoted's pitch API will happily accept a submission without a
pitchable entity attached (HTTP 200, draft=false), but the reporter
is never notified. The pitch is functionally dead. We learned this
the hard way; the skill now refuses to fire --send if no Source /
Product is attached, and the setup wizard makes sure you have one
before you can pitch.
Privacy + security
- No telemetry. Every script makes one of: a Qwoted API call, an
Algolia search, or a local file write. There is no third-party
reporting, analytics or "phone home". Read the source, all 5 files
are < 700 lines each. - Cookies stay local.
~/.qwoted/storage_state.jsonnever leaves
your machine. It IS effectively your Qwoted password —.gitignore
blocks it from being committed accidentally. - MIT license. Fork it, ship a paid SaaS on top of it, whatever.
Troubleshooting
| Symptom | Fix |
|---|---|
No Qwoted session found |
python3 qwoted_login.py |
| Login window opens but never closes | You're stuck on Qwoted's login page. Sign in fully. |
Cannot --send: no pitchable Source/Company/Product |
Run qwoted_profile.py --action create ... first. |
already has a SENT pitch |
Qwoted only allows one pitch per source-request. Pick a different one. |
Playwright says Executable doesn't exist |
Run playwright install chromium once. |
Want your entire SEO engine on autopilot?
This skill is one piece of a bigger system. Distribb
handles the rest:
- Keyword research with real buyer-intent signals
- Original-data research pages (exactly like Stage 3 of this skill, but
automated across your whole content calendar) - Publishing to WordPress / Webflow / Shopify
- A high-DR backlink-exchange network with 200+ DR40+ sites
- Internal linking + social-media repurposing
→ Automate your SEO and backlinks at distribb.io
Built by Borja Obeso, founder of
Distribb. Related: the
Distribb Claude skill for keyword
research, backlink exchange and CMS publishing.
Related searches this repo answers
qwoted automation, qwoted api, qwoted skill claude, claude code seo skill, auto pr backlinks, journalist pitch automation, haro alternative automation, pr outreach ai agent, expert source pr tool, automated press mentions, ai-generated statistics page,linkable asset for seo, journalist citation backlinks,programmatic seo pr, claude code stats page generator,haro pitch automation 2026.
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found