Commands
Curfew keeps the command surface intentionally small. Most day-to-day use comes down to setup, status checks, runtime controls, rules, and local history.
Setup
curfew # first-run setup or dashboard
curfew install --shell zsh
curfew uninstall --shell zsh
curfew init zsh
curfew doctorcurfewlaunches first-run setup if you do not have a config yet. Otherwise it opens the dashboard in an interactive terminal.curfew installadds a managed rc block forzsh,bash, orfish.curfew uninstallremoves that managed block.curfew init <shell>prints the raw shell snippet.curfew doctorshows shell detection, managed block status, hook activity, config path, runtime path, history path, and resolved timezone.
Status and checks
curfew status
curfew check git push
curfew check --json --shell zsh git pushcurfew statusprints the current curfew state.curfew check <cmd>is the internal command the shell hook uses before running an interactive command.--jsonreturns machine-readable output.--shellrecords which shell backend invoked the check.
curfew check is designed for the shell hot path. Keep it boring, predictable, and fast.
Runtime controls
curfew start
curfew stop
curfew snooze
curfew snooze 30m
curfew skip tonightcurfew startforce-enables curfew for the current session.curfew stopdisables curfew for the rest of the current session, with friction.curfew snooze [duration]extends your runway for a short period.curfew skip tonightskips the whole curfew session, also with friction.
Rules
curfew rules
curfew rules list
curfew rules add "git push*" --action warn
curfew rules rm "git push*"Rules are first-match-wins and support three matching shapes:
- exact command word:
claude - multi-word prefix:
git commit - trailing
*prefix:git push*
Allowlist entries always bypass curfew before rules are checked.
History and stats
curfew history --days 7
curfew history show 2026-04-20
curfew stats --days 30historyshows recent nightly summaries.history show <YYYY-MM-DD>expands one curfew night with events.statsshows aggregate counts, streaks, adherence rate, and top after-hours commands.
Both history and stats also support --json.
Configuration
curfew config
curfew config editcurfew configopens the schedule tab in the TUI if you are interactive and already configured.curfew config editruns the first-run style config editor explicitly.
Version
curfew version
curfew --versionBoth forms print the current Curfew version string.