一键导入
deploy
Deploy benebsworth.com to production or staging. The live site is on Cloudflare Pages (AWS S3+CloudFront is a dormant fallback).
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Deploy benebsworth.com to production or staging. The live site is on Cloudflare Pages (AWS S3+CloudFront is a dormant fallback).
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Use when placing, captioning, or auto-tagging uploaded hike photos on benebsworth.com — running the tools/hike-annotate pipeline (or its hike-annotate MCP) that classifies each photo with the Antigravity CLI (agy, Gemini vision), geo-matches it to the hike's waypoints, and writes slot/caption/alt into the GCS gallery manifest. Also the reference for the child-CLI-orchestration + MCP-for-images pattern. Part of the hiking workflow; for authoring the guide itself use writing-trail-guides.
Use when publishing hiking content on this site (benebsworth.com) — adding or editing a hike, writing a long-form trail guide with the bespoke Trailkit MDX components (TrailSummary, TrailMap, Stages/StageProfile/Checkpoint, Stop, Landmark, Quest, Flora, Fauna, GearList, TrailFigure), placing photos via the /admin GCS console, or cross-linking the two. Covers the full "contribute a new hike" flow end-to-end. For general (non-hiking) posts, use writing-blog-posts instead.
Use when extending, running, or modifying the LLM benchmark section on benebsworth.com — adding models, tasks, demos, results, harness runners, scoring, caching, or operational changes.
Use when deploying benebsworth.com (staging or prod) or changing its infra/DNS/headers. The live site is on CLOUDFLARE PAGES (deploy via `npm run deploy:pages:*`; DNS/zone in `infra/cloudflare/` Terraform; headers/CSP in `public/_headers`; GA4 + CF analytics). The legacy AWS S3+CloudFront path (3-pass `aws s3 sync`, adopted prod Terraform, DNSimple) is kept DORMANT as the rollback fallback — documented below.
Use when modeling, validating, drawing, simulating, or extending the /lab/circuit-sim circuit simulator — adding component types, MNA/transient/AC/nonlinear solver work, terminals and symbol drawing, probes, the oscilloscope/Bode views, or YAML/samples/share links.
Use when writing, editing, or adding a blog post on this site (benebsworth.com) — authoring MDX, setting frontmatter, adding post images, choosing topic/tags, or building bespoke interactive MDX components for richer posts.
| name | deploy |
| description | Deploy benebsworth.com to production or staging. The live site is on Cloudflare Pages (AWS S3+CloudFront is a dormant fallback). |
The site is a fully static export (next build → out/) served by Cloudflare Pages
(migrated off AWS S3+CloudFront on 2026-06-23).
benebsworth (prod) and benebsworth-next (staging).luke/mckinley.ns.cloudflare.com).
benebsworth.com + www + next.benebsworth.com are CNAMEs → <project>.pages.dev.public/_headers; www→apex 301 is a
Cloudflare dynamic-redirect ruleset.infra/cloudflare/ (Terraform; DNS, zone settings, Pages projects). Pages
custom domains, the www-redirect, and the google-verify TXT are API/dashboard-managed.NEXT_PUBLIC_GA_MEASUREMENT_ID, prod-only); CF Web Analytics via the
Pages dashboard toggle.# staging → next.benebsworth.com (project benebsworth-next)
CLOUDFLARE_API_TOKEN=… CLOUDFLARE_ACCOUNT_ID=… npm run deploy:pages:next
# prod → benebsworth.com (project benebsworth)
CLOUDFLARE_API_TOKEN=… CLOUDFLARE_ACCOUNT_ID=… npm run deploy:pages:prod
scripts/deploy-pages.sh runs next build then wrangler pages deploy out --project-name=<…> --branch=<production-branch> (the --branch makes it a production deploy, not a preview).
AWS S3 + both CloudFront distributions are still live-but-unused (0 DNS points at them).
To roll back, point the apex/www/next CNAME content back at the CloudFront targets
(d1nnawiq8qdjgb.cloudfront.net prod, d1qwco52fxejjm.cloudfront.net next) — a DNS change,
no rebuild. The legacy AWS deploy (npm run deploy:aws:* → scripts/deploy.sh → 3-pass
aws s3 sync + CloudFront invalidation, SKIP_ARCHIVE=1 to skip the flaky Gatsby archive)
still works if you ever re-point DNS at it.
SKIP_ARCHIVE=1 npm run deploy:aws:prod # legacy AWS path (dormant)
Full detail + the migration play-by-play: .claude/skills/deploying-the-site/SKILL.md and
docs/superpowers/{specs,plans}/2026-06-23-cloudflare-*.