skills/tvb-wiki-static-site/SKILL.md
Build and deploy the TVB research wiki as a static site using MkDocs and GitHub Pages.
npx skillsauth add maedoc/tvb-wiki tvb-wiki-static-siteInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Skill for building the TVB research wiki into a static website with MkDocs, deploying to GitHub Pages, and managing the deployment pipeline.
Use this skill when:
~/tvb‑wiki (or WIKI_PATH environment variable)pip install -r requirements.txt)origin points to [email protected]:maedoc/tvb‑wiki)gh‑pages branch)~/tvb‑wiki/
├── docs/ # MkDocs source (synced from wiki)
├── site/ # Built static site (output of `mkdocs build`)
├── mkdocs.yml # MkDocs configuration
├── .github/workflows/deploy.yml # GitHub Actions workflow
└── scripts/
├── sync_to_docs.py # Sync entities/concepts → docs/
└── convert_wikilinks.py # Convert Obsidian [[links]] → relative links
The static‑site pipeline consists of three phases:
entities/, concepts/, index.md) to docs/mkdocs build to generate HTML in site/gh‑pagesThe sync script copies wiki pages to the MkDocs source directory, preserving directory structure:
cd ~/tvb‑wiki
python3 scripts/sync_to_docs.py
What it does:
entities/*.md → docs/entities/concepts/*.md → docs/concepts/index.md, SCHEMA.md, about.md → docs/Obsidian‑style [[page]] links are not understood by MkDocs. The conversion script transforms them to standard relative Markdown links:
python3 scripts/convert_wikilinks.py
Conversion rules:
[[page]] → [page](page.md) (if target exists in same directory)[[page|display]] → [display](page.md)‑, –, —, U+2011) to regular hyphensmeta/lint.logBuild the site with MkDocs:
mkdocs build
Output is written to site/. Verify the build succeeded:
ls -la site/
cat site/index.html | head -5
The repository includes a GitHub Actions workflow (.github/workflows/deploy.yml) that automatically rebuilds and deploys the site on every push to main. To trigger a deployment:
git add .
git commit -m "Build static site $(date '+%Y‑%m‑%d %H:%M')"
git push origin main
Workflow steps:
mkdocs buildsite/ directory to the gh‑pages branch using peaceiris/actions‑gh‑pagesManual deployment (without push): You can also run the workflow manually from the GitHub UI (Actions → “Deploy to GitHub Pages” → Run workflow).
Check the live site:
curl -I https://maedoc.github.io/tvb‑wiki/
Expected response: HTTP/2 200. If 404, wait a few minutes for GitHub Pages propagation.
Check the GitHub Actions run status:
curl -s -H "Accept: application/vnd.github.v3+json" \
"https://api.github.com/repos/maedoc/tvb‑wiki/actions/runs" | \
jq '.workflow_runs[0] | {status, conclusion, html_url}'
mkdocs.yml)site_name: TVB Research Wiki
site_description: A growing knowledge base for connectome‑based whole‑brain modeling.
theme:
name: material
palette:
- scheme: default
primary: indigo
accent: indigo
features:
- navigation.tabs
- navigation.sections
- search.suggest
- search.highlight
- content.tabs.link
- content.code.copy
markdown_extensions:
- admonition
- pymdownx.details
- pymdownx.superfences
- pymdownx.tabbed
- attr_list
- def_list
- footnotes
plugins:
- search
nav:
- Home: index.md
- Entities: entities/index.md
- Concepts: concepts/index.md
- Comparisons: comparisons/index.md
- Queries: queries/index.md
- About: about.md
deploy.yml)See .github/workflows/deploy.yml in the repo for the exact steps.
Agents that discover this skill can:
sync_to_docs.py, convert_wikilinks.pymkdocs.yml or the workflow as needed.This skill is listed in the repo’s skill‑manifest.json:
{
"name": "tvb‑wiki‑static‑site",
"path": "skills/tvb‑wiki‑static‑site/SKILL.md",
"description": "Build and deploy static site with MkDocs and GitHub Pages.",
"entry_point": "mkdocs build",
"dependencies": ["python3", "mkdocs", "git"],
"schedule": "hourly (via full pipeline)"
}
meta/lint.log.gh‑pages branch contains index.html and the Pages source is set correctly.requirements.txt.[[wikilinks]] may remain as placeholders (e.g., in SCHEMA.md). These are flagged by the daily lint.After building and deploying:
site/index.html exists and contains expected content.gh‑pages branch – updated with latest site/ contents.Run a quick link check:
cd ~/tvb‑wiki
python3 -m mkdocs build --strict 2>&1 | grep -i error
automated‑research‑wiki – includes static‑site deployment as part of the full pipelinecronjob – scheduling regular buildsgithub‑pr‑workflow – alternative deployment via pull requestresearch
Set up a recurring research watch on a topic, company, paper area, or product surface. Use when the user asks to monitor a field, track new papers, watch for updates, or set up alerts on a research area.
development
Full pipeline for maintaining the TVB research wiki: hourly arXiv ingestion, static site build, git commit, and GitHub Pages deployment.
documentation
arXiv paper ingestion for the TVB research wiki: fetch new papers, extract entities/concepts, update raw/ and meta/.
tools
Compare multiple sources on a topic and produce a grounded comparison matrix. Use when the user asks to compare papers, tools, approaches, frameworks, or claims across multiple sources.