scheduled-job-best-practices
Patterns for resilient, non-interactive scheduled opencode jobs
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Menu
Patterns for resilient, non-interactive scheduled opencode jobs
Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Baseado na classificação ocupacional SOC
Create and manage isolated git worktrees safely.
Opinionated workflow for submodule development + PRs + control-center pointer bumps.
Store Apple notarization IDs in Keychain and notarize/staple OpenWork DMGs locally.
Sync control-center master and update submodule pointers safely.
Require every OpenCode plugin to expose get_skills and get_version tools.
Use client.app.log() instead of console.log in OpenCode plugins
| name | scheduled-job-best-practices |
| description | Patterns for resilient, non-interactive scheduled opencode jobs |
Put this line at the very top of any scheduled job prompt:
@scheduled-job-best-practices
Then write your task below it.
If you need local dates, compute them at runtime.
TODAY="$(date +%F)"
TOMORROW="$(date -v+1d +%F)"
TODAY="$(date +%F)"
TOMORROW="$(date -d 'tomorrow' +%F)"
if [ "$(uname)" = "Darwin" ]; then
TODAY="$(date +%F)"
TOMORROW="$(date -v+1d +%F)"
else
TODAY="$(date +%F)"
TOMORROW="$(date -d 'tomorrow' +%F)"
fi
If timezone matters, set TZ explicitly (example: TZ=America/Los_Angeles date +%F).
Before doing any expensive work:
Prefer the Telegram Bot API (non-interactive) over web.telegram.org.
End every run with a compact summary:
When notifying about “new” items (deals, alerts, etc.):