☰
Nightshift setup 配置向导实战:5 步完成 AI Provider、项目选择与预算校准
2026/10/16 1:11:03 网站建设 项目流程

【免费下载链接】nightshift

Nightshift uses your leftover Claude / Codex budget to surprise you with useful PRs. Love them or leave them.

项目地址:https://gitcode.com/gh_mirrors/nightshi/nightshift
点击查看免费下载

Nightshift setup 是 Nightshift 内置的交互式配置向导,一条nightshift setup命令就能帮你完成 AI Provider 选择、项目选择、任务预设、预算校准(budget calibration)、调度设置和守护进程安装。对新手来说,它是从零配置 Nightshift 最快的路径:跟着屏幕提示按 Enter 和空格键,几分钟后你的 Claude / Codex 订阅余额就能在夜间自动转化为可用的 PR。

图:setup 向导完成后的 Nightshift 单次运行流程——调度器触发nightshift run,依次经过配置加载、预算计算、Provider 选择、任务编排,最后保存运行报告(源自 docs/guides/run-lifecycle.mmd)

开始前的环境自检

运行向导后,第一步就是环境自检页面,它会依次检查:

  • nightshift是否已在 PATH 中(没有的话向导后续可帮你添加)
  • tmux是否可用(用于订阅额度的用量抓取,缺失则校准退化为本地数据)
  • gh/copilotCLI 是否存在(用于 GitHub Copilot Provider)
  • 各 Provider 的数据目录(如~/.claude、~/.codex)是否存在

这些检查逻辑见 cmd/nightshift/commands/setup.go。看到 OK 提示后按 Enter 继续即可,注意项(Note)不阻断安装。

第 1 步:配置 AI Provider 与权限开关

向导会创建或更新全局配置文件~/.config/nightshift/config.yaml,其中 Provider 部分决定 Nightshift 用哪个 AI 干活:

providers: preference: # 优先级顺序:谁有余额、谁排前面就用谁 - claude - codex claude: enabled: true data_path: "~/.claude"

Nightshift 支持三个 Provider:Claude Code、Codex、GitHub Copilot(鉴权方式见 README.md 的 Authentication 章节)。

紧接着是权限与沙箱(Approvals & sandbox)页面,有三个开关:

开关对应 CLI 参数说明
Claude--dangerously-skip-permissions减少交互式确认,默认开启
Codex--dangerously-bypass-approvals-and-sandbox绕过审批与沙箱,默认开启
Copilot--allow-all-tools --allow-all-urls允许全部工具与 URL

用 ↑/↓ 移动、空格切换 ON/OFF。如果你希望 CLI 每次操作都先征求确认,可以全部关掉。

第 2 步:选择项目(Project Selection)

在Projects页面管理要交给 Nightshift 处理的仓库列表:

  • a添加项目路径(如~/code/my-project,会自动校验目录存在)
  • d删除选中项,↑/↓ 导航
  • 至少添加一个项目才能继续

确认后会写回projects配置段,向导还会自动为每个项目的.gitignore追加.nightshift-plan条目,让计划产物不会误入版本控制。多项目场景还可以用 glob 模式和priority字段,详见 website/docs/configuration.md。

第 3 步:设置预算默认值与预算校准

Budget defaults页面用 ↑/↓ 选择字段、e编辑,核心字段如下:

字段默认值含义
Modedaily按天或按周计算额度
Max percent75单次运行最多消耗的预算百分比
Reserve percent5永远保留给白天工作的预算
Billing modesubscription订阅制或 API 计费
Calibrate enabledtrue是否启用自动预算校准
Snapshot interval30m自动抓取用量快照的间隔
Week start daymonday周额度的起始日

预算校准(calibration)是 Nightshift 的亮点:订阅制账户看不到精确的 token 总额度,Nightshift 通过关联「本地解析的 token 计数」与「Provider 上报的用量百分比」来反推你的订阅额度,公式为inferred_budget = local_tokens / (scraped_pct / 100),并按样本稳定性给出 low/medium/high 置信度。向导在Snapshot 步骤会立刻抓取一次用量快照完成初始校准;之后如果估值不准,可手动执行:

nightshift budget snapshot --local-only # 手动抓一次快照 nightshift budget calibrate # 重新校准 nightshift budget history -n 10 # 查看快照历史

完整原理见 website/docs/budget.md;若怀疑某个 Provider 的 token 行为发生变化,还可以跑专门的对比工具 scripts/provider-calibration(用法见 docs/guides/provider-calibration.md)。

第 4 步:选择任务预设

Task presets页面提供三档预设,预设逻辑在 internal/setup/presets.go:

  • balanced(推荐):中等风险与成本的任务,剔除最重的 PR 类任务
  • safe:仅低风险、中低成本的保守任务
  • aggressive:加入高风险 PR 任务(仍排除最高风险项)

预设还会自动探测项目特征:仓库里有CHANGELOG.md或发布 workflow 才会放出 changelog 类任务,有docs/adr才会放出 ADR 草稿任务。选定预设后进入任务清单,用空格逐个勾选/取消,至少选中一个才能继续。

第 5 步:调度、预览与守护进程

最后是调度(Schedule)页面,支持两种模式:

  • interval:起始时间(默认 22:00)+ 循环次数(默认 3 次)+ 间隔(默认 30m),向导会自动算出窗口结束时间
  • cron:直接填 cron 表达式(如0 2 * * *表示每天凌晨 2 点)

保存后向导连续执行三个收尾动作:

  1. Preview 预览:展示下一次定时运行的任务列表,让你"先看见、后执行"
  2. PATH 配置:若nightshift不在 PATH 中,向导会把二进制安装到~/.local/bin并自动写入 shell 配置
  3. Daemon 守护进程:选择安装并启动系统服务,之后每个夜晚自动运行

setup 完成后如何验证

配置完成后,推荐按顺序跑一遍这条验证链:

nightshift doctor # 体检:配置、数据库、Provider、预算就绪状态 nightshift preview -n 3 # 预览接下来 3 次调度运行 nightshift budget # 查看各 Provider 剩余预算与校准结果 nightshift run --dry-run # 预检摘要:Provider、预算、项目、任务一览

一切正常后,运行nightshift run(或等守护进程夜间触发)即可。每次运行的结果都会以分支或 PR 形式落地,绝不直接写入主分支——不喜欢的直接关掉就是回滚方案。

常见问题 FAQ

Q:向导会覆盖已有配置吗?会就地更新~/.config/nightshift/config.yaml,向导启动时若检测到已有配置会提示 "will update in place",且只写全局配置,项目级nightshift.yaml不受影响。

Q:没有 tmux,预算校准还能用吗?可以。向导会提示 "calibration will be local-only",快照只依赖本地 CLI 会话文件,额度估算回退到配置值(weekly_tokens/per_provider作为兜底)。

Q:不想装守护进程怎么办?Daemon 步骤选择 Skip 即可,之后随时用nightshift run手动执行,或运行nightshift daemon start补装。

Q:想让配置更保守/更激进?直接重跑nightshift setup换预设,或手动编辑 website/docs/tasks.md 中的tasks.enabled、tasks.priorities、tasks.intervals段落。

更多细节可参考:quick-start 指南、配置文档、CLI 参考。

【免费下载链接】nightshift

Nightshift uses your leftover Claude / Codex budget to surprise you with useful PRs. Love them or leave them.

项目地址:https://gitcode.com/gh_mirrors/nightshi/nightshift
点击查看免费下载

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询