본문으로 건너뛰기
cccskills
무료GitHub에 공개

deploy-production

Deploy a crouton app to Cloudflare Workers PRODUCTION (<app>.friendlyinter.net). A deliberate, human-initiated action — separate from the default staging /deploy skill. Use ONLY when explicitly asked to ship/release to production. Never run as part of routine work or an automated flow.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구Cloudflare
설치 방법 보기

포함된 파일(1)

  • SKILL.md3.8 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Deploy to Production — Cloudflare Workers (deliberate)

The only place a crouton app ships to production. Everything routine goes to staging via the /deploy skill; production is split out here so it can never happen by accident or as a side effect of an agent flow.

🛑 Gate — run this skill ONLY on an explicit human request to deploy to production ("ship X to prod", "release to production", "promote to prod"). If the ask is just "deploy", that means staging → use /deploy. Before running anything, confirm: (1) which app, and (2) that production is genuinely intended. When in doubt, ask.

Target

Envwrangler envWorkerDomainScript
productiontop-level<app><app>.friendlyinter.netcf:deploy

(Staging — env.staging / <app>.pmcp.dev / cf:staging — is not here; that's /deploy.)

Pre-flight (confirm before deploying)

  1. The change is already on staging and verified there. Deploy to production only what staging has proven — never straight to prod. CI enforces this (#1107, the Rung 3 confidence gate): the production dispatch first smokes the app's live staging URL and refuses to deploy while it's red. Staging red → fix staging (merge to main redeploys it), see the smoke go green, re-dispatch. Genuine emergency with staging itself down → re-dispatch with skip_staging_smoke=true (loud warning on the run; never routine). The gate applies to the CI path — a local cf:deploy bypasses it, so hold yourself to the same bar there.
  2. App is Workers-ready — same checks as /deploy Step 2 (the shared mechanics live in that skill; don't duplicate them).
  3. Production Worker secrets are set — BETTER_AUTH_SECRET, BETTER_AUTH_URL = the production domain (https://<app>.friendlyinter.net), NUXT_*. Worker secrets persist across deploys, so this is a one-time bootstrap per worker: npx wrangler secret bulk secrets.json (no --env = production).
  4. Credentials — CLOUDFLARE_ACCOUNT_ID + CLOUDFLARE_API_TOKEN present (see /deploy → Credentials).

Deploy (both paths are explicit, human-initiated)

  • CI (preferred, canonical): GitHub → the app's deploy workflow → Run workflow (workflow_dispatch) with environment = production. Push/PR never deploys prod — only this manual dispatch does.
  • Local: from the app dir:
    cd apps/{app}
    pnpm cf:deploy   # build → wrangler deploy (auto-provision) → sync:ids → d1 migrations apply --remote
    # first bootstrap only — commit the written-back ids:
    git add apps/{app}/wrangler.jsonc && git commit -m "chore({app}): commit provisioned prod D1/KV ids"
    

Sandbox / no Cloudflare egress: you CANNOT run a production deploy. Prepare and verify the config, then hand the workflow_dispatch (or cf:deploy) to the user to run, and confirm the result with them.

After

  • Verify <app>.friendlyinter.net is live and the remote migration applied.
  • Production is never demo-seeded — the seed's known admin (--with-staff) is a staging/local-only login and must never run against the prod DB.

Shared mechanics

Pipeline scripts, auto-provisioning, Pages→Workers migration, credentials, and troubleshooting are documented once in the /deploy skill. This skill only adds the production trigger and its human gate.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

a11y

무료

Accessibility review for Vue surfaces — the code-cleaning analog of /code-review and /simplify, pointed at WCAG/ARIA. Reviews just your diff (or a package/file), rates findings by severity, and either comments inline on the PR (--comment) or applies the safe fixes for you (--fix). Steers the depth-aware `a11y` subagent. Use when asked to "check accessibility", "a11y this", "audit ARIA/keyboard", or run /a11y.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

FriendlyInternet/nuxt-crouton102026년 10월 20일 업데이트

ask-human

무료

Emit a blocking question the owner can read in ~10 seconds and answer in one reply — the scannable, recommendation-first handoff every agent posts when it hits a fork it can't own. Leads with the one decision + a recommendation, carries the 🤖 provenance header, doubles as the

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

FriendlyInternet/nuxt-crouton102026년 10월 20일 업데이트

audit

무료

Audit packages for documentation completeness, detect drift between code and docs, and maintain documentation quality across the monorepo. Use when checking package docs, running audits, or reviewing documentation health.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

FriendlyInternet/nuxt-crouton102026년 10월 20일 업데이트

Author a placeable layout block that looks right at ANY pane size. The one hard rule — size to the PANE with container queries (@container), never the viewport — plus list/form playbooks and the sizing contract (minWidth etc.) the viability metric reads. Use when adding/converting a croutonLayoutBlocks block, or when a block overflows/breaks in a narrow pane.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

FriendlyInternet/nuxt-crouton102026년 10월 20일 업데이트

When a bug or regression is reported, the FIRST step — before fixing — is to research how and when it was introduced (git archaeology), then record that finding on the tracking issue/PR. Use the moment a bug, error, broken build, or "this used to work" is reported, before writing a fix. Produces a first-bad-commit (or "not a code regression") note you paste onto the issue.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

FriendlyInternet/nuxt-crouton102026년 10월 20일 업데이트

commit

무료

Smart, granular git commits following monorepo conventions. Analyzes changes, filters to session-relevant files, groups by intent, and uses conventional commit format. Use when committing code changes.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

FriendlyInternet/nuxt-crouton102026년 10월 20일 업데이트

FriendlyInternet의 스킬 모두 보기

이 스킬의 문제 신고