pseo-internal-linkinglisted
Install: claude install-skill josephbedminster/indie-marketing-skills
# Internal linking for programmatic SEO
At a few thousand pages nobody links by hand, and an LLM that "adds relevant
links" invents sentences, links to the wrong level and costs real money. The
approach that works splits the job three ways:
**code finds candidates → a decision model answers closed questions → code
decides.**
The decision model is a typed classifier (see the `decision-model-batch`
skill of this plugin for the call format and calibration method). At fractions
of a cent per page, the whole corpus costs about a dollar.
## Before you start
Read `.claude/seo-config.md`: where pages live, the audit / apply commands,
thresholds already chosen, the sitemap script, the Search Console property.
Missing? Ask at most five questions in one message (where the page content
lives and in which format; how pages are rendered; which languages or
countries; whether a linking script already exists; how Search Console is
accessed), then write it from `references/config-template.md`. Read the
**Project conventions** of `.claude/posthog-funnel-map.md` if present.
## Architecture
### Audit (paid, cached)
1. **Load the corpus**: id, URL, title, level or tier if any, category, a
category family (subjects grouped by family through regex rules), section
headings, plain text, word count.
2. **Retrieve candidates in code**, per page:
- TF-IDF neighbours (top ~12), limited to nearby levels (distance ≤ 2);
- **mentions**: titles of other pages already written in this page'