@seanyao/roll 2026.517.1 → 2026.517.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/bin/roll +20 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## v2026.517.2
|
|
4
|
+
- **Fixed**: `roll dream`、`roll brief`、`roll loop` 的定时任务不再被 Claude 升级后的弹窗拦住,悄悄失效
|
|
5
|
+
|
|
3
6
|
## v2026.517.1
|
|
4
7
|
|
|
5
8
|
- **New**: loop 自动修复 story 引入的 CI 红 — 不再每次 CI 红都停下等人,修不好才写 ALERT `[loop]`
|
|
9
|
+
- **New**: Roll 官网上线 — 装、用、原理一站讲清楚
|
|
10
|
+
- **Fixed**: mac 休眠不再打断 loop cycle — 全程保持唤醒 `[loop]`
|
|
11
|
+
- **Fixed**: agent 假死时 loop 自动接管,不再无限挂起 `[loop]`
|
|
12
|
+
- **Fixed**: PR / 合并失败时 — loop 仍能把代码备份到独立分支不丢失 `[loop]`
|
|
13
|
+
- **Fixed**: loop 启动时自动恢复上一轮中断的工作,意外中断的代码不再失踪 `[loop]`
|
|
14
|
+
- **Fixed**: `roll loop now` 现在卡住状态也会先自愈再启动 `[loop]`
|
|
15
|
+
- **Fixed**: 自治 loop 不再被权限弹窗卡住 `[loop]`
|
|
16
|
+
- **Fixed**: `roll peer` 多轮 review 不再中途断线 `[peer]`
|
|
17
|
+
- **Fixed**: `roll loop runs` 现在跨子目录都能显示历史 `[loop]`
|
|
18
|
+
- **Fixed**: loop 空跑也会清理 worktree,不再随时间堆积 `[loop]`
|
|
6
19
|
|
|
7
20
|
## v2026.515.1
|
|
8
21
|
|
package/bin/roll
CHANGED
|
@@ -4,7 +4,7 @@ set -euo pipefail
|
|
|
4
4
|
# Roll — AI Agent Convention Manager
|
|
5
5
|
# Single source of truth for how all AI coding agents behave.
|
|
6
6
|
|
|
7
|
-
VERSION="2026.517.
|
|
7
|
+
VERSION="2026.517.2"
|
|
8
8
|
ROLL_HOME="${ROLL_HOME:-${HOME}/.roll}"
|
|
9
9
|
ROLL_CONFIG="${ROLL_HOME}/config.yaml"
|
|
10
10
|
ROLL_GLOBAL="${ROLL_HOME}/conventions/global"
|
|
@@ -1898,6 +1898,20 @@ _agent_cmd_str() {
|
|
|
1898
1898
|
printf '%s' "$out"
|
|
1899
1899
|
}
|
|
1900
1900
|
|
|
1901
|
+
# Splice --dangerously-skip-permissions into _AGENT_ARGV for claude. Used by
|
|
1902
|
+
# trusted, human-triggered, or autonomous flows that should not be blocked by
|
|
1903
|
+
# Claude Code's pre-write "approve diff" UX (which silently never gets
|
|
1904
|
+
# approved in `claude -p` pipe mode). No-op for non-claude agents and for
|
|
1905
|
+
# already-bypassed argvs.
|
|
1906
|
+
_agent_bypass_claude_perms() {
|
|
1907
|
+
[[ "${_AGENT_ARGV[0]}" == "claude" ]] || return 0
|
|
1908
|
+
local arg
|
|
1909
|
+
for arg in "${_AGENT_ARGV[@]}"; do
|
|
1910
|
+
[[ "$arg" == "--dangerously-skip-permissions" ]] && return 0
|
|
1911
|
+
done
|
|
1912
|
+
_AGENT_ARGV=("${_AGENT_ARGV[@]:0:2}" --dangerously-skip-permissions "${_AGENT_ARGV[@]:2}")
|
|
1913
|
+
}
|
|
1914
|
+
|
|
1901
1915
|
_agent_run_skill() {
|
|
1902
1916
|
local skill="$1"
|
|
1903
1917
|
local agent; agent=$(_project_agent)
|
|
@@ -2587,6 +2601,11 @@ _agent_skill_cmd() {
|
|
|
2587
2601
|
err "Unknown agent '${agent}'. Run: roll agent use <claude|kimi|deepseek|pi|codex|opencode>"
|
|
2588
2602
|
return 1
|
|
2589
2603
|
}
|
|
2604
|
+
# Cron-installed skills (dream / brief / loop) run autonomously and need to
|
|
2605
|
+
# Edit files (docs/dream/, docs/briefs/, BACKLOG, etc.). Claude Code 2.1.x's
|
|
2606
|
+
# pre-write approval UX silently blocks `claude -p` from applying edits in
|
|
2607
|
+
# non-interactive pipe mode — bypass it for the cron context.
|
|
2608
|
+
_agent_bypass_claude_perms
|
|
2590
2609
|
# In cron context, use absolute claude path so a fresh shell can find it.
|
|
2591
2610
|
[[ "$agent" == "claude" ]] && _AGENT_ARGV[0]="$(command -v claude 2>/dev/null || echo claude)"
|
|
2592
2611
|
# Drop the prompt sentinel (always last), re-emit head args + quoted $(strip).
|