尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Daily tech-news zine for engineers — Claude-authored prose, bespoke HTML, CJK typography. Deployed on Cloudflare Pages.
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
Public personal tech blog. Daily news authored by a Claude routine.
Bespoke HTML deep-stories, persona-driven editing, CJK typography,
hosted on Cloudflare Pages.
• Live:
• RSS:
• Codename: vatt'ghern (Elder Speech for "witcher")
• Sibling: kaer-morhen (internal wiki — not a content source)
The repo's GitHub social preview image is src/static/social-preview.png
(1280×640查看完整 README ↗Public personal tech blog. Daily news authored by a Claude routine. Bespoke HTML deep-stories, persona-driven editing, CJK typography, hosted on Cloudflare Pages.
| Surface | What it is |
|---|---|
src/posts/YYYY/MM/DD/ | Bespoke HTML for one daily roundup + up to three deep-stories |
src/_includes/layouts/ | Nunjucks layouts (base, post, archetype) |
src/_includes/widgets/ | Reusable catalog widgets — summon with {% widget "name" %}; gallery at /widgets/ |
src/_data/sources.yml | 45 priority-tiered sources the daily-news skill crawls |
skills/daily-news/ | Claude skill: persona, archetypes, source dispatcher, anti-dup |
commands/ | Slash commands: /vatt-ghern:daily-news, :weekly, :monthly |
mcp/ | Cloudflare Worker exposing the archive over MCP |
scripts/ | Build helpers (OG image, today.svg card, sigil) |
nvm use # node 20 per .nvmrc
npm install
npm run dev # http://localhost:8080
npm run build # writes _site/ (runs prebuild: OG + today.svg)
npm run lint:html # validates _site/**/*.html
npm test # node --test tests/*.mjs
Useful one-offs:
npm run og # rebuild OG images
npm run card # rebuild today.svg
npm run social # rebuild repo social preview
npm run sigil # rebuild sigil webp variants
npm run widgets:catalog # refresh routine-facing widget-catalog.md from sidecars
npm run sources:list # list daily-news sources
npm run sources:dry-run -- --type=arxiv # dry-fetch one source type
The repo's GitHub social preview image is src/static/social-preview.png
(1280×640). After regenerating, upload via the GitHub web UI at
Settings → Social preview.
Cloudflare Pages auto-builds:
main → production at https://vatt-ghern.pages.devGitHub Actions runs .github/workflows/quality.yml (build + html-validate) on every PR.
The Claude routine (or /vatt-ghern:daily-news slash command) executes
the daily-news skill which:
src/_data/sources.yml via scripts/fetch-all.mjsWeekly + monthly rollups follow the same machinery via
/vatt-ghern:weekly and /vatt-ghern:monthly.
mcp/worker.mjs is a thin Cloudflare Worker that exposes the archive
over MCP — list_posts, get_post, latest, search. See
mcp/README.md for tool schemas and Claude Desktop
config.
MIT © 2026 Tony Hu.
The MIT licence applies to all code and templates. Authored prose
inside src/posts/** carries the author's voice — please credit if you
quote at length.
DESIGN.md — design rationale (typography, OKLCH palette, sigil)PRODUCT.md — product vision, anti-references, pipeline notesCONTRIBUTING.md — commit conventions, CJK typography rulesSECURITY.md — how to report vulnerabilities