Prompt file imported from TimeKast/big-bold-bbq (
.claude/commands/publish.md). Fill in{{arguments}}before use. Copyright stays with the author.
/publish
Sube a proposals.timekast.mx el entregable estático que generó /mockup
(project/mockup/). Modelo de seguridad honesto: link no-adivinable + noindex
(no es password). Detalle: proposal-publishing.md.
/publish proposales solo-mockup ahora./proposalya no emite un one-pager HTML — entrega vía Gamma (Markdown → Gamma deck), así que no hay artefacto HTML de propuesta que publicar a este hub. La rutaproposalquedó sin entregable: si el usuario pide publicar una propuesta, redirígelo al flujo de Gamma de/proposal. La ruta CLIfactory publish proposalqueda temporalmente rota — el motivo y el defer consciente están documentados enproposal-publishing.md.
Invocación: este wrapper llama
npx @timekast/factory publishdirecto, NUNCA el scriptfactory:publishdel package.json (no todos los repos lo tienen). El motor (auth, clone del hub, push) vive en el CLI; esto solo detecta, confirma y surfacea las URLs.
Procedimiento
-
Detectar qué hay. Glob
project/mockup/(→ mockup). La rutaproposalya no tiene entregable HTML (/proposalentrega vía Gamma post-pivot), así que esta ruta publica solo mockup. Si{{arguments}}traeproposal→ STOP plain: "/publish proposalya no está disponible:/proposalentrega vía Gamma, no genera un one-pager HTML para este hub. Usa el flujo de Gamma de/proposalpara tu entrega de propuesta." Si no hayproject/mockup/→ STOP plain: "No hay entregable que publicar. Corre/mockupprimero." -
Version guard (capability-detection). Corre
npx @timekast/factory --helpy verifica que listepublish. Si no aparece (el npx resolvió una versión vieja, anterior alcli-v1.2.0) → STOP plain: "Tu CLI de Factory no tienepublishtodavía. Corre connpx @timekast/factory@latest publish …o espera a la versión publicada." -
Confirmar — CP plain es-MX con opciones explícitas y excluyentes: estructuradas (
AskUserQuestion) por default, tabla numerada como fallback sin la tool (CC.md §3). Headless: resuelve por su fallback declarado, sin intentar la tool.Voy a publicar a proposals.timekast.mx: <mockup> 1. No, cancelar 2. Sí, publicarRecuerda el modelo honesto: link no-adivinable, sin password — no mandes entregables con datos muy sensibles hasta que exista el escalón de password.
-
Publicar. Si el user elige Sí, corre por Bash:
npx @timekast/factory publish mockup(agrega--opaque-urlsi vino en{{arguments}}). El CLI resuelve auth (gh), clona el hub, copia, pushea y escribeproject/.publish.json. -
Surfacear el resultado. Muestra al user las URL(s) que imprimió el CLI, tal cual. Recuérdale: el CLI no commitea tu repo — commitea
project/mockupproject/.publish.jsontú (o déjalo al cierre del workflow si vienes de/mockup).
Reglas
- NO redefinir la lógica del CLI ni el modelo de identidad/URL — eso vive en
factory publish. - NO usar el script
factory:publishinternamente (ver nota arriba). - Para bajar un mockup:
npx @timekast/factory unpublish mockup.
