mykg-github-pages
Set up and maintain the GitHub Pages site for the mykg repo (SenolIsci/mykg) — a purpose-built pages/ folder (landing page adapted from README.md, blog posts, diagrams), built by a GitHub Actions workflow that runs Jekyll and deploys the result to a gh-pages branch. Use whenever the user wants to publish project documentation or blog articles as a website, create a landing page, turn the project into a public site, enable/configure/troubleshoot GitHub Pages or the gh-pages branch, add a new page/blog post/diagram to the published site, fix a broken/failing Pages build, or asks things like "can
npx skills add SenolIsci/mykg --skill mykg-github-pages --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Publishes a purpose-built pages/ folder from the SenolIsci/mykg main branch as a website, via a GitHub Actions workflow that builds it with Jekyll and pushes the built _site/ to a gh-pages branch, which GitHub Pages serves.
- Targets the mykg repository and confines publish surface to pages/ and its gh-pages publishing pipeline.
- Includes scaffolding steps for landing page (
pages/index.md), blog posts (pages/_posts/), a blog listing (pages/blog.md), and configuration (pages/_config.yml). - Uses a dedicated workflow (
.github/workflows/pages.yml) to trigger builds onmainwith changes underpages/**and deploys viapeaceiris/actions-gh-pagestogh-pages. - Emphasizes setup, maintenance, and troubleshooting for Pages or custom domain (CNAME) requests.
How it works
- Check state: determine if
pages/,gh-pagesbranch, and thepages.ymlworkflow exist; if missing, perform a full first-time setup (Steps 1–5). If they exist, treat as maintenance (add pages/posts, fix builds) and follow relevant steps. - Scaffold the site content in
pages/by creating:pages/index.mdadapted from the repository README for landing content.pages/_posts/YYYY-MM-DD-slug.mdwith front matter for blog posts when adding articles.pages/blog.mdwith a Liquid loop listing posts.pages/_config.ymlwith title, description, theme, andbaseurl: "/mykg".pages/assets/andpages/diagrams/for assets and diagrams referenced by the site.
- Copy or reference artifacts from the repo into
pages/(e.g., logos, diagrams) only after user confirmation; copy intopages/assets/,pages/diagrams/as needed. - Create and adjust the Actions workflow by copying
assets/pages.ymlto.github/workflows/pages.yml, ensuring path filters, build commands, and deploy settings match the project’s choices. The workflow builds withruby/setup-ruby+bundle install+jekyll build --source pages --destination _siteand deploys_siteviapeaceiris/actions-gh-pages@v4withpublish_dir: ./_siteandpublish_branch: gh-pages. - Manage secrets and deployment token: use a classic PAT with
reposcope stored as a repository secret (e.g.,PAGES_DEPLOY_TOKEN), and configuregithub_token: ${{ secrets.PAGES_DEPLOY_TOKEN }}in the workflow. If a fine-grained PAT was used and caused 403 on push, replace with a classic PAT as described. - First push and enable Pages: commit
pages/and workflow, push to main, monitor the run, and then configure Pages to point togh-pageswithbuild_type=legacywhen enabling.
When to use it
Use when publishing project documentation or blog articles as a website, creating a landing page, turning the project into a public site, enabling/troubleshooting GitHub Pages or the gh-pages branch, adding a new page/blog post/diagram, fixing a broken Pages build, or handling custom domain requests.
What it can touch
- Tools:
claude-code(as declared) - Repositories: modifies
pages/,_site/generated content,gh-pagesbranch, and.github/workflows/pages.yml. - Secret management: adds/updates repository secrets for deployment tokens.
Caveats
- Requires a classic PAT with
reposcope for the deploy step (notGITHUB_TOKENor a fine-grained PAT). - The live URL may 404 if the Pages configuration or deployment token is misconfigured; fix requires updating the secret and possibly the workflow deploy step.
- Base URL must be set to
"/mykg"inpages/_config.ymlto ensure assets load correctly.
# mykg GitHub Pages Publishes a purpose-built `pages/` folder from the `SenolIsci/mykg` `main` branch as a website, via a GitHub Actions workflow that builds it with Jekyll and pushes the built `_site/` output to a `gh-pages` branch, which is what GitHub Pages actually serves. ``` main branch gh-pages branch ├── src/ ← software ├── index.html ← built site ├── pages/ ← Pages source ├── blog/... │ ├── _config.yml └── ... (generated — never hand-edit) │ ├── _posts/ (blog articles) │ ├── index.md (landing page, adapted from README.md) │ └── diagrams/ └── .github/workflows/pages.yml pages.yml: on push to main (pages/** changes) → jekyll build pages/ → _site/ → peaceiris/actions-gh-pages pushes _site/ to gh-pages Settings > Pages: source = gh-pages branch ``` ## Why a dedicated `pages/` folder A dedicated `pages/` folder holds *only* content written for the public site, so there's never anything to accidentally publish. This skill's default and only source for initial content is `README.md` (see Step 1) — it never assumes any other folder in the repo is publishable. Any other repo artifact (a diagram, a logo, a screenshot, an existing doc) is fair game to feature on the site, but only wh
- Why a dedicated pages/ folder
- Check state before doing anything
- Step 1 — Scaffold pages/ and the landing page
- Step 2 — Blog articles
- Step 3 — Jekyll config
- Sourcing artifacts from the repo
- Step 4 — Write the Actions workflow
- Step 5 — First push and enabling Pages
- Step 6 — Verify
- Maintenance tasks (pages/ + workflow + gh-pages already set up)
- Troubleshooting a failing build
- What NOT to do
gh api repos/SenolIsci/mykg/pages 2>&1 git ls-remote --heads origin gh-pages cat .github/workflows/pages.yml 2>&1 ls pages/ 2>&1 gh repo view --json nameWithOwner # confirm this really is SenolIsci/mykg first git add pages/ .github/workflows/pages.yml git commit -m "Add GitHub Pages site (pages/ + Actions build)" git push gh run watch --exit-status gh api -X POST repos/SenolIsci/mykg/pages \
What does the mykg-github-pages skill do?
Set up and maintain the GitHub Pages site for the mykg repo (SenolIsci/mykg) — a purpose-built pages/ folder (landing page adapted from README.md, blog posts, diagrams), built by a GitHub Actions workflow that runs Jekyll and deploys the result to a gh-pages branch. Use whenever the user wants to publish project documentation or blog articles as a website, create a landing page, turn the project into a public site, enable/configure/troubleshoot GitHub Pages or the gh-pages branch, add a new page/blog post/diagram to the published site, fix a broken/failing Pages build, or asks things like "can
How do I install it?
Run `npx skills add SenolIsci/mykg --skill mykg-github-pages --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From SenolIsci/mykg, a repository with 63 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
