repo-homepage-set
Skill2 starsChanged 6 months agoApache-2.0View on GitHub
Audit and set the GitHub repo homepage URL — the link on the repo card's "About" panel and every search result. Detects candidates from docs sites, registries, and demos; applies via gh repo edit after approval. Sub-skill of repo-seo-curator.
In this repository43 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- break-glassSkill
- claim-ledgerSkill
- contract-parity-auditSkill
- counterfactual-auditSkill
- design-doc-reviewSkill
- diagram-gen-emergentSkill
- diagram-gen-specSkill
- doc-triageSkill
- explain-workSkill
- feature-implSkill
- finding-triageSkill
- first-party-auditSkill
- gh-token-rotateSkill
- handoffSkill
- implementSkill
- jj-stackSkill
- linear-escalation-triageSkill
- mache-usageSkill
- park-workSkill
- pr-boardSkill
- pr-bucketsSkill
- prior-art-cartographerSkill
- problem-decomposerSkill
- pr-review-kitSkill
- pr-reviewSkill
- pr-suggestionSkill
- readme-restructureSkill
- repo-description-polishSkill
- repo-social-previewSkill
- repo-topic-taggerSkill
- review-prepSkill
- review-queueSkill
- reviewSkill
- self-auditSkill
- structural-pr-reviewSkill
- surveySkill
- taskfile-ci-paritySkill
- test-fidelitySkill
- workflow-auditSkill
- work-scopeSkill
- writing-pr-descriptionsSkill
The file
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 5 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈5
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 47
Never point at a 404 or a placeholder: If the docs site is "coming soon," leave the field empty.
- Distinctive: line 92
Never propose a URL that fails the health check.
- Distinctive: line 114
If no candidates pass health check, propose leaving it unset and report what was tried.
- Distinctive: line 162
Verify before proposing: Never propose a URL you haven't health-checked.
- Distinctive: line 164
One field per pass: Don't bundle with topic or description changes.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
<!-- Author: jamestexas — drafted by claude-opus-4-7 (2026-05-16) -->/repo-homepage-set — GitHub Repo Homepage URL
Set the homepageUrl field on a GitHub repository. This is the small link icon on the repo card's "About" panel.
Arguments
$ARGUMENTS
<owner/repo>— one or more target repos. Defaults to the repo containing the current working directory.--dry-run(default) — propose only.--apply— present proposal, prompt for approval, then write viagh repo edit.
What this solves
The homepage URL is the one outbound link GitHub gives a repository card. Setting it sends interested readers somewhere useful instead of nowhere. Surfaces:
- Repo's About panel (top right of the repo page)
- GitHub search results (shown below the description)
- Topic browser cards
- Some integrations (e.g. Slack unfurls)
Most of the user's public repos have no homepage set, which means a visitor who's interested has no obvious "next step."
Candidate sources, by priority
For each repo, the homepage should be the most useful place a stranger could go after the README. In priority order:
- Dedicated docs site — e.g.
docs.mache.dev,https://mache.io - Published package page —
crates.io/crates/<name>,npmjs.com/package/<name>,pypi.org/project/<name> - Live demo / hosted app — for things that have a runnable UI
- Org homepage — for repos that are part of a named ecosystem (e.g.
agentic-research/*→ someagentic-research.orgURL if one exists) - Parent project page — for sub-components, point at the parent's docs
- Leave unset — when none of the above apply, an unset homepage is better than a guessed one
Hard rules
- Never point at the GitHub repo itself. That's where the visitor already is. Setting
homepageUrltohttps://github.com/owner/repois a no-op that wastes a click. - Never point at a 404 or a placeholder. If the docs site is "coming soon," leave the field empty.
- Prefer HTTPS. Convert
http://tohttps://if both work. - No trailing slashes unless the URL canonically has one.
- No query strings or anchors — the homepage should be a stable landing surface.
- No URL shorteners — bare domains only. Tracking links here are user-hostile.
Workflow
Phase 1: Inventory
gh repo view <owner/repo> --json name,description,homepageUrl,visibility,isFork,isArchived,repositoryTopicsSkip with a printed reason if isFork or isArchived.
Phase 2: Signal gathering
For each repo, look for candidates in this order:
- README — first search for an obvious "Documentation:" or "Docs:" link near the top. Many READMEs already point at their docs site, you just need to detect it.
- Package manifests:
Cargo.toml→documentation = "..."orhomepage = "..."fieldspackage.json→"homepage": "..."field (note: npm uses this same field name)pyproject.toml→[project.urls]table, look forDocumentationorHomepage
- Probe registries for published packages — for each detected package name:
- Rust:
curl -fsI https://crates.io/crates/<name>(200 = exists) - Node:
curl -fsI https://www.npmjs.com/package/<name> - Python:
curl -fsI https://pypi.org/project/<name>/
- Rust:
- Search the README for explicit URLs —
https://*.dev,https://*.io,https://docs.* - Check the org
.githubrepo for an org-level homepage - Check repositoryTopics for ecosystem hints —
agentic-research,art-ecosystemmay map to an ecosystem page
Phase 3: Verify candidates
For each candidate URL, run a quick health check:
curl -fsLI "<url>" -o /dev/null -w "%{http_code} %{url_effective}\n" --max-time 5- 200 — usable
- 3xx ending at 200 — usable; record the final URL
- 4xx / 5xx / timeout — discard
Never propose a URL that fails the health check.
Phase 4: Proposal
## <owner/repo>
Current homepage: <url or "(not set)">
Candidates found:
1. https://docs.mache.dev [200 OK] ← recommended
2. https://crates.io/crates/mache [200 OK]
3. https://github.com/agentic-research [200 OK, org page]
Recommendation: https://docs.mache.dev
Why: dedicated docs site, README references it as primary entry point.
Rejected:
- https://mache-demo.dev — returned 404
- https://github.com/agentic-research/mache — same as the repo itselfIf no candidates pass health check, propose leaving it unset and report what was tried.
Phase 5: Approval
--dry-run(default): stop. Print hint to re-run with--apply.--apply: print "Apply N homepage changes? (yes/no)" and wait.
Phase 6: Apply
gh repo edit "<owner>/<repo>" --homepage "<url>"Verify by re-reading:
gh repo view "<owner>/<repo>" --json homepageUrlPhase 7: Report
Applied:
agentic-research/mache → https://docs.mache.dev
agentic-research/cloister → https://crates.io/crates/cloister
Skipped:
agentic-research/cloister-fork — fork, skipped
agentic-research/x-ray — no usable candidates, left unset
Failed:
agentic-research/foo — gh edit returned: <error>Examples
/repo-homepage-set agentic-research/mache
→ dry-run proposal
/repo-homepage-set agentic-research/{mache,rosary,ley-line-open} --apply
→ proposal for three, prompts, writes
/repo-homepage-set
→ uses current working directory's repoImportant rules
- Default to
--dry-run. The homepage is publicly visible immediately. - Verify before proposing. Never propose a URL you haven't health-checked.
- If unsure, leave it unset. An unset homepage is honest. A wrong one is worse than nothing.
- One field per pass. Don't bundle with topic or description changes.
- Don't touch forks or archived repos unless explicitly named.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

