Skill Personalizer
hqhq1025/skill-optimizer
A skill your agent uses when auditing or adapting newly created, downloaded, forked, installed, or community Agent Skills to the user's tools, habits, directories, session history, and preferred…
Run BookLooky's Looky Rating System (LRS) content rating and minimum-age recommendation on a HAXcms site's aggregated content — either a local site checkout or a live published URL like btopro.com —…
$ npx skills add haxtheweb/haxcms-php --skill haxcms-lrs-rater -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install haxtheweb/haxcms-php haxcms-lrs-rater --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/haxtheweb/haxcms-php.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.well-known/agent-skills/haxcms-lrs-rater .claude/skills/haxcms-lrs-rater && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "haxcms-lrs-rater" agent skill from https://github.com/haxtheweb/haxcms-php/tree/master/.well-known/agent-skills/haxcms-lrs-rater into .claude/skills/haxcms-lrs-rater/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "haxcms-lrs-rater", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/haxtheweb/haxcms-php/tree/master/.well-known/agent-skills/haxcms-lrs-raterType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add haxtheweb/haxcms-php --skill haxcms-lrs-rater -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install haxtheweb/haxcms-php haxcms-lrs-rater --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/haxtheweb/haxcms-php.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.well-known/agent-skills/haxcms-lrs-rater .agents/skills/haxcms-lrs-rater && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "haxcms-lrs-rater" agent skill from https://github.com/haxtheweb/haxcms-php/tree/master/.well-known/agent-skills/haxcms-lrs-rater into .agents/skills/haxcms-lrs-rater/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "haxcms-lrs-rater", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add haxtheweb/haxcms-php --skill haxcms-lrs-rater -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install haxtheweb/haxcms-php haxcms-lrs-rater --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/haxtheweb/haxcms-php.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.well-known/agent-skills/haxcms-lrs-rater .cursor/skills/haxcms-lrs-rater && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "haxcms-lrs-rater" agent skill from https://github.com/haxtheweb/haxcms-php/tree/master/.well-known/agent-skills/haxcms-lrs-rater into .cursor/skills/haxcms-lrs-rater/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "haxcms-lrs-rater", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/haxtheweb/haxcms-php.git --path .well-known/agent-skills/haxcms-lrs-rater--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add haxtheweb/haxcms-php --skill haxcms-lrs-rater -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install haxtheweb/haxcms-php haxcms-lrs-rater --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/haxtheweb/haxcms-php.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.well-known/agent-skills/haxcms-lrs-rater .gemini/skills/haxcms-lrs-rater && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "haxcms-lrs-rater" agent skill from https://github.com/haxtheweb/haxcms-php/tree/master/.well-known/agent-skills/haxcms-lrs-rater into .gemini/skills/haxcms-lrs-rater/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "haxcms-lrs-rater", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install haxtheweb/haxcms-php haxcms-lrs-raterInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add haxtheweb/haxcms-php --skill haxcms-lrs-rater -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/haxtheweb/haxcms-php.git skills-src && mkdir -p .github/skills && cp -r skills-src/.well-known/agent-skills/haxcms-lrs-rater .github/skills/haxcms-lrs-rater && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "haxcms-lrs-rater" agent skill from https://github.com/haxtheweb/haxcms-php/tree/master/.well-known/agent-skills/haxcms-lrs-rater into .github/skills/haxcms-lrs-rater/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "haxcms-lrs-rater", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add haxtheweb/haxcms-php --skill haxcms-lrs-rater -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install haxtheweb/haxcms-php haxcms-lrs-rater --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/haxtheweb/haxcms-php.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.well-known/agent-skills/haxcms-lrs-rater .opencode/skills/haxcms-lrs-rater && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "haxcms-lrs-rater" agent skill from https://github.com/haxtheweb/haxcms-php/tree/master/.well-known/agent-skills/haxcms-lrs-rater into .opencode/skills/haxcms-lrs-rater/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "haxcms-lrs-rater", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
haxcms-lrs-raterRun BookLooky's Looky Rating System (LRS) content rating and minimum-age recommendation on a HAXcms site's aggregated content — either a local site checkout or a live published URL like btopro.com —…
Haxcms Lrs Rater is an agent skill from haxtheweb/haxcms-php. Run BookLooky's Looky Rating System (LRS) content rating and minimum-age recommendation on a HAXcms site's aggregated content — either a local site checkout or a live published URL like btopro.com — entirely through the invoking agent's own reasoning, no API key or network call to an LLM required. Use this whenever the user asks to "rate this HAXcms site", "run an LRS scan on my site/domain", "what age is btopro.com appropriate for", "check this site for violence/romance/language/etc. content", "score this site…
Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including reference files (for example `references/LRS-SPEC.md`, `references/age-recommendation-prompt.md` and `references/category-focus-prompt.md`).
It sits in Marketing & SEO, covering AI search optimization. The repository describes itself as: HAX + CMS to manage your microsite universe with PHP backend. The licence is Apache-2.0.
8 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 3542096. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
nodeFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
btopro.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Haxcms Lrs Rater loads about 2.2k tokens when it runs, and up to ~7k if it reads all its reference files. Until then it costs about 207 tokens; SKILL.md has 926 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from haxtheweb/haxcms-php at commit 3542096, republished under its Apache-2.0 licence (© haxtheweb). 926 words, ~2,155 tokens.
.claude/skills/haxcms-lrs-rater/SKILL.md (or your agent's skills folder). This skill also uses 5 other files; get the full folder from GitHub.This skill runs BookLooky's official LRS content-rating rubric against a whole HAXcms site by reading its llms.txt manifest (which lists every page's .md URL in one fetch), stitching all page content into one aggregate "transcript," and then reasoning through the same rubric booklooky-lrs-rater uses for books — 10 categories (0-5), evidence-backed excerpts, and a minimum-age recommendation. No LLM API key or network call is needed for the actual rating: you (the invoking agent) are the reasoning engine, exactly as in booklooky-lrs-rater.
This skill only adds the site-specific extraction step (Step 0 below). Steps 1-7 are the same LRS methodology, scripts, and prompts as booklooky-lrs-rater — bundled here as a self-contained copy so this skill works standalone.
A HAXcms site's content is scattered across many small pages, not one linear manuscript. Rating individual pages in isolation would miss context (e.g. a "themes" page might only make sense next to the "characters" page) and would produce 10 disconnected mini-reports instead of one coherent site-level rating. So Step 0 first assembles a single ordered "transcript" from the site's outline — mirroring how a reader would actually encounter the content — and everything downstream treats that exactly like a book transcript.
Just as with booklooky-lrs-rater, every non-zero rating MUST be backed by a real quoted excerpt from the aggregated site content. reconcile-evidence.js will downgrade any unsupported positive rating to 0. Locate and quote actual page text — don't estimate.
Two source types, both handled by the same script:
Live URL (a published HAXcms site, e.g. https://btopro.com):
node scripts/extract-site-content.js https://btopro.com <scratchDir>Local HAXcms site checkout (a directory containing llms.txt, or site.json + pages/ as fallback):
node scripts/extract-site-content.js /path/to/site-root <scratchDir>Either way this writes <scratchDir>/site-transcript.txt (all pages' text, each prefixed with === PAGE N: <title> ===) and <scratchDir>/page-manifest.json (index/id/title/slug/location per page, for citing which page an excerpt came from later).
How it works:
<url>/llms.txt (or reads <root>/llms.txt locally). HAXcms generates this file automatically — it lists every page's title and .md URL in its ## Pages section. One fetch gives the full page list, no site.json tree-walking or per-page HTML parsing required. The script then fetches each page's .md for clean markdown text..html fallback: Some static hosts (e.g. GitHub Pages) don't serve .md files. When an .md fetch 404s, the script automatically falls back to the .html version and strips tags to plain text. This is the case for btopro.com — the script prints a note when this happens.site.json fallback (local only): If no llms.txt exists in a local checkout, the script falls back to reading site.json, walking the JOS outline depth-first, and reading .md (or .html) sidecars from disk.For very large sites, treat site-transcript.txt like a long book transcript — the chunking in Step 1 handles that the same way.
node scripts/chunk-transcript.js <scratchDir>/site-transcript.txt <scratchDir>Writes <scratchDir>/chunks.json (~100k characters per chunk, 4k overlap). Small sites will produce a single chunk — proceed the same way regardless.
For each chunk, read references/segment-scan-prompt.md and references/category-scope-rules.md, then reason through that chunk yourself to produce its signals JSON (all 10 category keys present, each an array of {quote, why}, capped at 3 per category). Write each result to <scratchDir>/scans/<chunkIndex>.json.
Do this for every chunk before moving on. If resuming across turns, skip chunks that already have a scan file.
node scripts/rank-candidate-chunks.js <scratchDir>/scansSave the output as <scratchDir>/candidates.json.
For each of the 10 categories, using its candidate chunk indexes from candidates.json, read references/category-focus-prompt.md plus that category's scope block(s) from references/category-scope-rules.md, then reason directly over those chunks' text to produce {category, rating, rationale, excerpts}. Write each result to <scratchDir>/focus/<category>.json. When quoting, prefer noting which === PAGE N: <title> === block an excerpt came from (cross-reference page-manifest.json) as the locationHint instead of a chapter name.
node scripts/reconcile-evidence.js <scratchDir>/focus/<category>.json <scratchDir>/scansApplies the innuendo backstop and requires validated excerpts for positive ratings. Write each result to <scratchDir>/reconciled/<category>.json.
Once all 10 categories are reconciled, read references/age-recommendation-prompt.md. Assemble the "LOCKED LRS RATINGS" block from the 10 reconciled results, gather notes from the segment scans, and use the first chunk's text (truncated to 1500 characters) as the "voice sample". For a site, treat minimumAge as the minimum age of the site's intended audience rather than a book reader. Save the result as <scratchDir>/age-recommendation.json.
node scripts/build-report.js <scratchDir>/reconciled <scratchDir>/age-recommendation.json <scratchDir>/report.jsonProduces the final report in the same OfficialScanReport + ContentAnalysis shape as booklooky-lrs-rater.
First, output the BookLooky-style emoji summary (the same compact format used on booklooky.com book pages):
node scripts/format-emoji-summary.js <scratchDir>/report.json "<site title>" "" "<site URL>"For a site, pass an empty string for the author argument. This produces:
BookLooky Rating for:
📚 "bto-pro"
Looky Rating System (LRS)
•💥Violence: 0/5
•❤️Love & Romance: 1/5
•🧠Mental Health: 2/5
•🧙Fantasy: 0/5
•💬Language: 2/5
•🍷Substance Use: 1/5
•🏳️🌈Representation: 0/5
•😨Fear / Horror: 1/5
•sciFi: 0/5
•disability: 1/5
https://btopro.comThen lead with the minimum age and confidence, followed by the 6 Content Intensity and 4 Story Theme ratings with each rating's strongest excerpt — and cite which page (title/slug from page-manifest.json) it came from, since that's usually more useful for a site than for a single book. Mention this is a locally-generated LRS-style scan of the site's authored content, not an official BookLooky-certified rating.
scripts/chunk-transcript.js, scripts/rank-candidate-chunks.js, scripts/reconcile-evidence.js, scripts/build-report.js, and all of references/*.md are copied verbatim from the booklooky-lrs-rater skill (itself ported from the booklooky-official-lrs-rater npm library). Re-sync both copies together if the rubric, prompts, or scoring rules change upstream. scripts/extract-site-content.js and scripts/format-emoji-summary.js are specific to this skill — update extract-site-content.js if HAXcms's llms.txt format changes, and update format-emoji-summary.js if the BookLooky emoji summary template changes.
© haxtheweb, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. 1 hidden character (zero-width or bidirectional) removed. Raw file
SKILL.md and 5 other files (references) in .well-known/agent-skills/haxcms-lrs-rater of haxtheweb/haxcms-php.
Open the folder on GitHubat commit 3542096
Haxcms Lrs Rater next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Haxcms Lrs Rater this skillhaxtheweb/haxcms-php | 130 | — | ~2.2k | Automated safety check: Pass | Apache-2.0 | |
| Skill Personalizerhqhq1025/skill-optimizer | 181 | — | ~630 | Automated safety check: Pass | MIT | |
| Geo Fundamentalswasp-lang/wasp | 19k | 9 repos | ~861 | Automated safety check: Pass | MIT | |
| SEO GeoReScienceLab/opc-skills | 1.8k | 4 repos | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| GEO-First SEO Audit Toolzubair-trabzada/geo-seo-claude | 11k | — | ~2.8k | Automated safety check: Notes | MIT | |
| GEO Monthly Delta Reportzubair-trabzada/geo-seo-claude | 11k | — | ~2.4k | Automated safety check: Notes | MIT |
hqhq1025/skill-optimizer
A skill your agent uses when auditing or adapting newly created, downloaded, forked, installed, or community Agent Skills to the user's tools, habits, directories, session history, and preferred…
wasp-lang/wasp
Generative Engine Optimization for AI search engines (ChatGPT, Claude, Perplexity).
ReScienceLab/opc-skills
SEO & GEO (Generative Engine Optimization) for websites. An agent skill from ReScienceLab/opc-skills.
zubair-trabzada/geo-seo-claude
Audits a website for AI search visibility across ChatGPT, Claude, Perplexity and Google AI Overviews while checking traditional SEO, schema and E-E-A-T content quality.
zubair-trabzada/geo-seo-claude
Compares a baseline and a current GEO audit for a client, calculates score changes and action item progress, and writes a monthly progress report.
AgriciDaniel/codex-seo
Live SEO data via DataForSEO MCP server. An agent skill from AgriciDaniel/codex-seo.
haxtheweb/haxcms-php
DDEV local development environment guidance for Docker-based PHP/Node projects.
haxtheweb/haxcms-php
Apply the DDD (Design, Develop, Destroy) design system and manage SimpleColors legacy usage.
haxtheweb/haxcms-php
Design HAX course units via Understanding by Design (UbD) backward design — start from desired results, derive acceptable evidence, then plan learning experiences.
haxtheweb/haxcms-php
READ-ONLY diagnostic: review a HAX site/page against Universal Design for Learning (UDL) 3.0 — multiple means of Engagement, Representation, and Action & Expression — and emit a report with…
haxtheweb/haxcms-php
READ-ONLY diagnostic: scan HAX webcomponents, themes, CMS backends (PHP/NodeJS HAXcms), the VitePress plugin, and the Google Apps Script add-on for code surfaces that render or consume pedagogical…
haxtheweb/haxcms-php
READ-ONLY diagnostic: review authored HAX page/site content against WCAG 2.0 AA (image alt text, heading hierarchy, landmark structure, link text, form labels, color contrast, media…
Categories
Run BookLooky's Looky Rating System (LRS) content rating and minimum-age recommendation on a HAXcms site's aggregated content — either a local site checkout or a live published URL like btopro.com —…. Haxcms Lrs Rater is an agent skill from haxtheweb/haxcms-php.com — entirely through the invoking agent's own reasoning, no API key or network call to an LLM required.
Haxcms Lrs Rater fits situations like: asks to rate this HAXcms site; run an LRS scan on my site/domain; what age is btopro.com appropriate for; check this site for violence/romance/language/etc.
Run `npx skills add haxtheweb/haxcms-php --skill haxcms-lrs-rater -a claude-code`. Or copy the skill folder (.well-known/agent-skills/haxcms-lrs-rater in haxtheweb/haxcms-php) into .claude/skills/haxcms-lrs-rater in your project. Claude Code loads it when a task matches its description.
Run `npx skills add haxtheweb/haxcms-php --skill haxcms-lrs-rater -a codex`. Or copy the skill folder (.well-known/agent-skills/haxcms-lrs-rater in haxtheweb/haxcms-php) into .agents/skills/haxcms-lrs-rater in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add haxtheweb/haxcms-php --skill haxcms-lrs-rater -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/haxcms-lrs-rater, .gemini/skills/haxcms-lrs-rater, .github/skills/haxcms-lrs-rater and .opencode/skills/haxcms-lrs-rater in your project.
Going by SKILL.md and its folder, Haxcms Lrs Rater needs the command-line tools its instructions call (node).
SKILL.md names 1 domain. In commands or code: btopro.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Haxcms Lrs Rater is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.2k tokens (SKILL.md is roughly 8.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.9k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Haxcms Lrs Rater: Skill Personalizer (hqhq1025/skill-optimizer, 181 stars), Geo Fundamentals (wasp-lang/wasp, 19k stars), SEO Geo (ReScienceLab/opc-skills, 1.8k stars) and GEO-First SEO Audit Tool (zubair-trabzada/geo-seo-claude, 11k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
haxtheweb (a GitHub organization) maintains it in haxtheweb/haxcms-php, which has 130 GitHub stars. The repository holds 18 skills in this directory. The repository was last updated on October 10, 2026.
Source: haxtheweb/haxcms-php on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.