Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
309 commits
Select commit Hold shift + click to select a range
fa56f8d
Merge pull request #140 from smarzban/tsk/t164-make-picker-cleanup-ca…
smarzban Oct 4, 2026
215de28
T154: short deterministic dispatch branch, worktree, and workspace names
smarzban Oct 4, 2026
7417797
T163: cleanup card rows, bulk card, option-A layout, clickable footer
smarzban Oct 4, 2026
0f54228
T163: bulk cleanup, parked-preview, mouse and render tests
smarzban Oct 4, 2026
50dd5c7
T163: docs for the bulk cleanup card and option-A layout
smarzban Oct 4, 2026
a14baf2
T163: fmt, clippy, loop test wording
smarzban Oct 4, 2026
4524964
T163: bulk card owns Esc and M under marks; n reports worktrees kept
smarzban Oct 4, 2026
7db0a0c
T154 review: cut on alphanumeric words, one cut for slug and label, U…
smarzban Oct 4, 2026
a91fb23
Merge pull request #141 from smarzban/tsk/t154-shorter-dispatch-branc…
smarzban Oct 4, 2026
941fb65
T163 review F-7: a failed or timed-out merged check keeps the branch
smarzban Oct 4, 2026
dc0ab40
T163 review F-2: converge a missing worktree only for the inspected d…
smarzban Oct 4, 2026
8540df4
T163 review F-1: save recovery and the outcome of a parked preview's …
smarzban Oct 4, 2026
399d211
T163 review F-9: the cleanup card's counts move into the body rather …
smarzban Oct 4, 2026
ed265aa
Merge remote-tracking branch 'origin/dispatch' into tsk/t163-bulk-don…
smarzban Oct 4, 2026
0604cc6
T163 review: unix-only test imports for Windows clippy; llms.txt with…
smarzban Oct 4, 2026
3c9bfcf
T163 review 2 F-1: cleanup touches only the dispatch its card inspected
smarzban Oct 4, 2026
30d7d9a
T163 review 2 F-2: Retry and Cancel resolve the board that owns the f…
smarzban Oct 4, 2026
2c959b8
T163 final: palette Retry/Cancel route to the recovery owner like the…
smarzban Oct 5, 2026
5db08a0
Merge pull request #142 from smarzban/tsk/t163-bulk-done-should-offer…
smarzban Oct 5, 2026
5168889
T159: retry spawning the copied Homebrew binary on ETXTBSY
smarzban Oct 5, 2026
9ce9d09
T152: symlinked project paths are one project
smarzban Oct 5, 2026
a3700e8
T159 review: move spawn_fresh_copy into tests/support
smarzban Oct 5, 2026
735c1e0
T168: keep the branch when cleanup cannot fetch the recorded base
smarzban Oct 5, 2026
6360ca1
T167: ctrl+g on a marked set opens one bulk dispatch card and launche…
smarzban Oct 5, 2026
7eacc98
T167: clippy nonminimal_bool
smarzban Oct 5, 2026
c6b6204
Merge pull request #145 from smarzban/tsk/t159-flaky-test-homebrew-up…
smarzban Oct 5, 2026
259ec0d
T168: offline warning names the fetch error once
smarzban Oct 5, 2026
5901634
T133: tabbed Filter picker (threads · @assignees) on project board an…
smarzban Oct 5, 2026
ad2d616
T167: unix-gate bulk test helpers; a panicking launch lands as a fail…
smarzban Oct 5, 2026
8a82c71
T133: tighten picker paint assertion; cover Tab fallback in untabbed …
smarzban Oct 5, 2026
a111ab0
Merge remote-tracking branch 'origin/dispatch' into tsk/t133-filter-b…
smarzban Oct 5, 2026
a0dec9a
T168 review: cli.md --json warning describes an unconfirmed merge, no…
smarzban Oct 5, 2026
b0b0643
T152 review: adoption never hides the launch name; aliases dedupe eve…
smarzban Oct 5, 2026
6f73f87
Merge pull request #147 from smarzban/tsk/t168-keep-the-branch-when-c…
smarzban Oct 5, 2026
9908a55
Merge remote-tracking branch 'origin/dispatch' into tsk/t133-filter-b…
smarzban Oct 5, 2026
2c7f9f2
Merge origin/dispatch into T167
smarzban Oct 5, 2026
df312e5
T133 review F-1/F-2: wrap the filter chip and footer context; board s…
smarzban Oct 5, 2026
084351d
T167 review: batch outlives the preview, outcomes survive store failu…
smarzban Oct 5, 2026
25150d4
T152 review 2: PTY tests drive board quick add and the capture popup …
smarzban Oct 5, 2026
8782d7d
Merge remote-tracking branch 'origin/dispatch' into tsk/t152-same-pro…
smarzban Oct 5, 2026
610b121
Merge pull request #146 from smarzban/tsk/t152-same-project-counted-t…
smarzban Oct 5, 2026
0e3d97a
T133 review 2 F-1: the wrapped footer reservation ignores messages an…
smarzban Oct 5, 2026
dee061d
Merge remote-tracking branch 'origin/dispatch' into tsk/t133-filter-b…
smarzban Oct 5, 2026
94d37ec
T167 review 2: landing recovery never owns an open form, unreadable s…
smarzban Oct 5, 2026
b2b7815
T167 review 2: fmt; probe reader is unix-only
smarzban Oct 5, 2026
6956426
Merge pull request #148 from smarzban/tsk/t167-bulk-dispatch-ctrl-g-on-a
smarzban Oct 5, 2026
b148964
T133 final: reserve the taller of the update notice and filter footer…
smarzban Oct 5, 2026
5585f98
T186: harden flaky tests (git deadlines, ETXTBSY stubs, setup lock, T…
smarzban Oct 5, 2026
bdbfa2d
Merge remote-tracking branch 'origin/dispatch' into tsk/t133-filter-b…
smarzban Oct 5, 2026
80d64a1
T186: load the stub helper once from the shared harness
smarzban Oct 5, 2026
f5b4819
Merge remote-tracking branch 'origin/dispatch' into tsk/t186-test-fla…
smarzban Oct 5, 2026
0e9dc27
Merge pull request #149 from smarzban/tsk/t133-filter-by-assignee-tabbed
smarzban Oct 5, 2026
0414445
T169: cleanup never freezes the board
smarzban Oct 5, 2026
d9e0c69
T186 review: release builds compile no deadline hooks; cleanup tests …
smarzban Oct 5, 2026
7f1dd1d
Merge origin/dispatch into T169
smarzban Oct 5, 2026
93c8ead
Merge pull request #150 from smarzban/tsk/t186-test-flake-hardening-git
smarzban Oct 5, 2026
9ce9866
T169 review: shared cleanup slot, completion at y, per-row binding be…
smarzban Oct 5, 2026
1e47ec3
T169 review: tests for each review fix
smarzban Oct 5, 2026
daedf62
T169 review: docs for completion at y, shared run, kept trash
smarzban Oct 6, 2026
c7e698a
T169: drop the move-aside step; worktree removal is in place again, o…
smarzban Oct 6, 2026
2c7b1f5
T169 review 2: global ctrl+d busy guard, parked preview reports on th…
smarzban Oct 6, 2026
a02db88
T169 final: clear the busy refusal on the outer board and the preview…
smarzban Oct 6, 2026
e78cb60
Merge pull request #151 from smarzban/tsk/t169-cleanup-never-freezes-the
smarzban Oct 6, 2026
c496bb1
Remove dead pub items left by the dispatch feature
smarzban Oct 6, 2026
83fc005
Drop legacy base inference from dispatch cleanup
smarzban Oct 6, 2026
dd6e16e
Drop history and review-round narration from dispatch-era comments
smarzban Oct 6, 2026
4e9a0b6
Give test hosts exact base refs, as the real host records
smarzban Oct 6, 2026
ebc2927
T188: release readiness for v0.12.0
smarzban Oct 6, 2026
b333fe1
Trim unused AgentProfiles methods and share CLI refusal formatting
smarzban Oct 6, 2026
4bd1db0
Simplify the cleanup host seam
smarzban Oct 6, 2026
ccf175a
T188: clean help lists unknown-task; changelog skill refresh and filt…
smarzban Oct 6, 2026
b41ad23
Remove the orphaned assign-through-the-form route
smarzban Oct 6, 2026
372d905
Drop the dead task-page layout chain and share the bulk card trailer
smarzban Oct 6, 2026
39a682a
Fold small duplicates in the board's cleanup and dispatch plumbing
smarzban Oct 6, 2026
ec7e6f4
Share the task-base scope and branch check
smarzban Oct 6, 2026
6ad531d
T188 review: restore changelog preamble and empty Unreleased; dispatc…
smarzban Oct 6, 2026
aaf1261
Cover marked-set assignment save failure through the @ picker
smarzban Oct 6, 2026
f82c7c5
Merge pull request #152 from smarzban/tsk/t188-release-readiness-for-…
smarzban Oct 6, 2026
cbfb646
Merge remote-tracking branch 'origin/dispatch' into tsk/t189-pre-merg…
smarzban Oct 6, 2026
7b24368
Review round: plain no-recorded-base wording, card reason, doc and te…
smarzban Oct 6, 2026
c818d99
Merge pull request #153 from smarzban/tsk/t189-pre-merge-audit-remove…
smarzban Oct 6, 2026
cd778be
Keep the agents feature unreleased: version back to 0.11.6, concise c…
smarzban Oct 7, 2026
03b3224
Merge pull request #154 from smarzban/changelog-unreleased
smarzban Oct 7, 2026
dca4da4
status done --clean succeeds with nothing to clean
smarzban Oct 7, 2026
c84873b
Windows dispatch (preview): PowerShell launcher, process-tree timeout…
smarzban Oct 7, 2026
6b0d496
Docs for Windows dispatch preview; clean refusal codes in help
smarzban Oct 7, 2026
9fb2014
Windows cleanup: close the workspace, check nothing holds the worktre…
smarzban Oct 7, 2026
7e71e6d
Restore a checkout an interrupted removal check left aside; list laun…
smarzban Oct 7, 2026
a97b9a9
Merge pull request #155 from smarzban/tsk/t192-status-done-clean-succ…
smarzban Oct 7, 2026
e750665
Review pass 1: refuse batch wrappers, absolute launcher and PowerShel…
smarzban Oct 7, 2026
6972f06
Review pass 2: Windows removal git outlives tsk, unsettled removals r…
smarzban Oct 7, 2026
c676354
Review pass 3: recheck after close, deletions-only partial removals, …
smarzban Oct 7, 2026
8a68de1
Treat git's own dirty refusal as uncommitted work and clear the remov…
smarzban Oct 7, 2026
3e85c5c
Move a test's doc comment back onto its test
smarzban Oct 7, 2026
0001bff
Merge pull request #156 from smarzban/tsk/t191-windows-dispatch-preview
smarzban Oct 7, 2026
2601792
Windows tree-kill test: a fast native sleep grandchild instead of Pow…
smarzban Oct 7, 2026
51f9683
Tree-kill test: record the sleeper's pid only after exec, prove it is…
smarzban Oct 7, 2026
bea0672
Tree-kill test: publish no pid when the child never shows as sleep
smarzban Oct 7, 2026
1d20b1c
Merge pull request #157 from smarzban/tsk/t191-arm-grandchild-test
smarzban Oct 7, 2026
dbba867
Windows dispatch polish: 30 s naming window, no-default-base code, al…
smarzban Oct 8, 2026
35fe804
Review pass 1: workspace outcome on the missing-worktree path; CLI na…
smarzban Oct 8, 2026
459f0ba
Merge remote-tracking branch 'origin/main' into sync/main-into-dispat…
smarzban Oct 8, 2026
1ad7166
Merge pull request #163 from smarzban/sync/main-into-dispatch-t195
smarzban Oct 8, 2026
f1b9c40
Review pass 2: naming helper gets a hidden console on Windows; unchec…
smarzban Oct 8, 2026
3db6ec0
Naming helper: bound each herdr rename by the remaining window, killi…
smarzban Oct 8, 2026
0996c2e
Merge pull request #162 from smarzban/tsk/t196-windows-dispatch-polis…
smarzban Oct 8, 2026
705752a
Cleanup card says kept once; load-proof ceilings for timing-sensitive…
smarzban Oct 8, 2026
1be593c
Clippy: pass the cleanup error by value
smarzban Oct 8, 2026
bc04575
Review pass 1: drive kept rows through the cleanup loop; per-query bo…
smarzban Oct 8, 2026
a5da04b
Merge pull request #164 from smarzban/tsk/t198-cleanup-card-double-ke…
smarzban Oct 8, 2026
051ee72
Merge remote-tracking branch 'origin/main' into sync/main-into-dispat…
smarzban Oct 8, 2026
a080b5e
Merge pull request #165 from smarzban/sync/main-into-dispatch-2
smarzban Oct 8, 2026
997ac18
Merge remote-tracking branch 'origin/main' into sync/main-into-dispat…
smarzban Oct 8, 2026
e51bbee
Merge pull request #170 from smarzban/sync/main-into-dispatch-3
smarzban Oct 8, 2026
791f103
Add blocks to the task model (store v7)
smarzban Oct 9, 2026
26ad57e
Block with reasons and reply from the CLI; dispatch sets TSK_AGENT
smarzban Oct 9, 2026
113b9d8
Board: blocked-elsewhere rows ride IN MOTION with □, row trailers, pe…
smarzban Oct 9, 2026
0a79b54
Board: block card, BLOCKED section on the task page, reply box
smarzban Oct 9, 2026
c6c0251
Board: trailer on the title's last row, help entries, regenerated gol…
smarzban Oct 9, 2026
5ace017
Test: re-blocking a legacy blocked task from the CLI
smarzban Oct 9, 2026
8295863
Docs: blocks on the board, task page, CLI, storage v7; demo block tra…
smarzban Oct 9, 2026
fe22578
Clippy: type alias and evaluation-order-preserving Tab ring
smarzban Oct 9, 2026
afbb0a7
Board: reply + unblock lands as one change for the locked merge-save
smarzban Oct 9, 2026
ce4ec40
Blocks: bind the reply box to its block, hold the block card through …
smarzban Oct 9, 2026
5c45109
Merge pull request #176 from smarzban/tsk/t202-blocked-why-needs-repl…
smarzban Oct 9, 2026
a577a85
Start dispatches assigned tasks; retire ctrl+g (T206)
smarzban Oct 9, 2026
b963f37
Review pass 1: keep the start target, typed root-pane errors, fresh r…
smarzban Oct 9, 2026
1d94ce7
Palette start on a launching set corrects done and archived tasks
smarzban Oct 9, 2026
aac41cd
Start an assigned task plainly where dispatch cannot work, and say why
smarzban Oct 9, 2026
32339ed
Merge pull request #177 from smarzban/tsk/t206-start-dispatches-assigned
smarzban Oct 9, 2026
fb6f8ed
Deliver a reply-box unblock to the running agent (T203)
smarzban Oct 9, 2026
c9416ce
Reply inline under a blocked board row with r (T203)
smarzban Oct 9, 2026
1323c20
tsk reply --send delivers to the running agent (T203)
smarzban Oct 9, 2026
e96b07a
Docs: reply inline on board rows, delivery to the running agent, repl…
smarzban Oct 9, 2026
e86b7e1
Merge remote-tracking branch 'origin/main' into sync/main-into-dispat…
smarzban Oct 9, 2026
c9127cd
Merge pull request #180 from smarzban/sync/main-into-dispatch-4
smarzban Oct 9, 2026
3cf7748
Review pass 1: deliver only to the dispatched agent, only this action…
smarzban Oct 9, 2026
df36182
Merge pull request #179 from smarzban/tsk/t203-blocked-follow-up-deliver
smarzban Oct 9, 2026
bae1dde
Review rounds: done, checks, next, feedback, send back and approve (T…
smarzban Oct 9, 2026
241e9a3
Docs: review rounds, the review card and feedback (T204)
smarzban Oct 9, 2026
e226d08
Classify the review card row in the keys.md parity check (T204)
smarzban Oct 9, 2026
571f3ac
Test the REVIEW section at 40 and 120 columns (T204)
smarzban Oct 9, 2026
58d9942
Review pass 1: approve only the box's round; send back an empty box w…
smarzban Oct 9, 2026
3333b79
Merge pull request #181 from smarzban/tsk/t204-review-card-done-check…
smarzban Oct 9, 2026
344f2c5
Paper trail: who and what on every event, the task page section and t…
smarzban Oct 9, 2026
d19f1c1
Docs: the paper trail, activity JSON, store v10, and the footer witho…
smarzban Oct 9, 2026
7e6d1de
Refresh the skill hash pin (T205)
smarzban Oct 9, 2026
d7d42ea
Parity: the demo's task page shows the paper trail and no footer date…
smarzban Oct 9, 2026
80d5872
Paint the paper trail in the wide task column too (T205)
smarzban Oct 9, 2026
bc7ba08
Review pass 1: wrap a long author lead onto its own row on the paper …
smarzban Oct 9, 2026
bcf6da7
Merge pull request #182 from smarzban/tsk/t205-activity-who-what-hist…
smarzban Oct 9, 2026
35f429c
Drop the three redundant PTY root-Esc tests in starter_guides (T209)
smarzban Oct 9, 2026
dbeaad2
Merge pull request #183 from smarzban/tsk/t209-drop-the-three-redunda…
smarzban Oct 9, 2026
65e1c43
Review checks keep their row while cycled; passed checks fold when th…
smarzban Oct 9, 2026
f2c2b82
Review pass 1: folding an emptied fold keeps the cursor on a painted …
smarzban Oct 9, 2026
3c2cdf3
Merge pull request #184 from smarzban/tsk/t208-review-checks-fold-passed
smarzban Oct 9, 2026
e546c9f
Domain: after links, store v11, released starts, delete unlinks (T207)
smarzban Oct 9, 2026
d4b6a18
Pin store v11 in the git_base test (T207)
smarzban Oct 9, 2026
55c901e
CLI: edit --after/--clear-after, plan after, list after/before, start…
smarzban Oct 9, 2026
e42a98a
Tests: list rows and edit usage carry after (T207)
smarzban Oct 9, 2026
d48c9e4
Board: after on rows, peek, page footer and edit ring; task picker; c…
smarzban Oct 9, 2026
66cfc5c
Tests: the edit ring, footer and palette carry after (T207)
smarzban Oct 9, 2026
e56923f
Docs: after on the board, task page, quick-add, keys, CLI, storage, l…
smarzban Oct 9, 2026
8eb64f9
Refresh the skill hash pin (T207)
smarzban Oct 9, 2026
17f16e3
Board tests: release on done, dispatch, failed launch, start-anyway, …
smarzban Oct 9, 2026
7a8a646
Clippy: allow sits on run_board_dispatch again; list rows borrow once…
smarzban Oct 9, 2026
b232857
llms.txt stays under 60 lines (T207)
smarzban Oct 9, 2026
dbb77ba
Palette offers chain in order while it is open over marks (T207)
smarzban Oct 9, 2026
1c94f4f
Releases are decided on the merged state under the save lock; no laun…
smarzban Oct 9, 2026
dd3563e
A delete leaves already-deleted dependents' links alone so their undo…
smarzban Oct 9, 2026
3a67403
Tests: populated v10 round trip, !w parsing, expanded quick-add after…
smarzban Oct 9, 2026
560a228
Done and released starts land in one save; the dispatch record follow…
smarzban Oct 9, 2026
9374b3f
Say a released task is started with no agent when its rollback to rea…
smarzban Oct 9, 2026
4ca0120
Merge pull request #185 from smarzban/tsk/t207-after-task-dependencie…
smarzban Oct 9, 2026
e5f7433
Board rows carry a dim live line in plain words; right edge empty; bl…
smarzban Oct 9, 2026
864a0e4
cargo fmt (T222)
smarzban Oct 9, 2026
c574e3f
Parity: check the blocked row's live line against the app; keep the 4…
smarzban Oct 9, 2026
32ddce8
A blocked or review task without a recorded block peeks its notes as …
smarzban Oct 9, 2026
0d39300
Review 1: pinned board clock for goldens and parity; follow keeps the…
smarzban Oct 9, 2026
e3229bc
Review 2: from_tasks keeps its doc; input_target_mut is doc-hidden, p…
smarzban Oct 9, 2026
9473e1b
Merge pull request #186 from smarzban/tsk/t222-live-line-under-board-…
smarzban Oct 9, 2026
1f830c6
Accept any section header in the cold-start bench frame
smarzban Oct 9, 2026
414b9f9
Merge pull request #187 from smarzban/fix/bench-section-header
smarzban Oct 9, 2026
659f223
WIP: task page BLOCKED/REVIEW redesign and collapsible paper trail (T…
smarzban Oct 9, 2026
676acfd
Tests: collapsed paper trail, redesigned BLOCKED/REVIEW sections, num…
smarzban Oct 9, 2026
15a73fe
Tests: review states and fold at 40 and 110, first unmarked check, pa…
smarzban Oct 9, 2026
a1006c4
Docs: task page BLOCKED/REVIEW sections, number keys, page ctrl+s, co…
smarzban Oct 9, 2026
bc55420
Demo: collapsible dim paper trail with g and a click, BLOCKED section…
smarzban Oct 9, 2026
d2c4c5b
cargo fmt (T223)
smarzban Oct 9, 2026
ddfdd33
LATEST doc: only the plain listing uses it now (T223)
smarzban Oct 9, 2026
b34a265
F-8: Esc out of a task edit keeps the PAPER TRAIL's expansion on the …
smarzban Oct 9, 2026
e3fc44f
F-2: the action line says enter collapse on an open trail record (T223)
smarzban Oct 9, 2026
aa87d54
F-5: the empty reply and feedback hint wraps at the draft's width (T223)
smarzban Oct 9, 2026
59678c9
F-7, F-1, F-6 (demo): the trail lives on the page's step binding and …
smarzban Oct 9, 2026
2cd94b2
The BLOCKED/REVIEW page ring wraps both ways: Shift+Tab before the to…
smarzban Oct 9, 2026
0885f8a
Merge pull request #188 from smarzban/tsk/t223-task-page-redesign-blo…
smarzban Oct 10, 2026
06d1a5c
Gutter on wrapped title lines above the live line (T224) (#194)
smarzban Oct 11, 2026
43f0c39
Merge a task's PR from the cleanup card; clean squash/rebase-merged b…
smarzban Oct 11, 2026
7b114fd
Send back and unblock deliver every entry of the round, not just the …
smarzban Oct 11, 2026
0e676a0
Merge main into dispatch (AltGr fix #193)
smarzban Oct 11, 2026
9cf04d7
Cleanup card: each option says what it does to the PR, branch and wor…
smarzban Oct 11, 2026
5d22ce7
Same option selector on the relaunch, start-anyway, bulk start and la…
smarzban Oct 11, 2026
cfffc85
Undo: done restores its status; status, steps and archive undoable; e…
smarzban Oct 11, 2026
e5c2f1d
Merge main into dispatch (T214 T213 T211 T215 T236 T218)
smarzban Oct 11, 2026
65e88e3
Merge main into dispatch (T216 group, sort, fold, row labels)
smarzban Oct 12, 2026
cffe096
Make step moves undoable: alt+↑/↓ then ctrl+u puts the order back (T2…
smarzban Oct 12, 2026
9d51bab
Marked-set m acts on every task in the mix (T239) (#208)
smarzban Oct 12, 2026
9c9480e
Group, sort and filter by assignee; [board] defaults in config.toml (…
smarzban Oct 12, 2026
bca40cc
Merge main into dispatch (T240 delete notice, T243 CLI list group/sor…
smarzban Oct 12, 2026
de08569
Help, footers and palette: short, verb-first wording (T235) (#211)
smarzban Oct 15, 2026
e428fb6
Merge main into dispatch (#210 setup path escaping, #212 text editing…
smarzban Oct 15, 2026
d711741
Merge main into dispatch (#214 demo thread names)
smarzban Oct 16, 2026
98c1088
Back up and restore the task store (T220, #128 part 1) (#215)
smarzban Oct 16, 2026
72c119a
Merge main into dispatch (v0.12.0 release: renumber dispatch notice t…
smarzban Oct 16, 2026
a4f5c68
Footers drop whole hints that don't fit instead of cutting with … (T2…
smarzban Oct 17, 2026
280cfb2
Close the dispatch's workspace when its worktree is already gone (T23…
smarzban Oct 17, 2026
f0b8dad
Word jumps match macOS Option+arrow (T254) (#217)
smarzban Oct 17, 2026
0d0b0ee
Board rows: the asker's words under blocked/review rows; after and → …
smarzban Oct 18, 2026
6ab54dd
Docs: rewrite board.md and split out a Dispatch page (T297) (#224)
smarzban Oct 20, 2026
5ec2825
Docs: storage, install, overview, README and landing copy (T300) (#227)
smarzban Oct 20, 2026
aef045a
Docs: AGENTS.md writing guide, CONTEXT.md glossary, packaging README …
smarzban Oct 20, 2026
81d5e2e
Docs: keys, task page, steps and capture pages (T299) (#230)
smarzban Oct 20, 2026
dcec744
Demo: match the dispatch board's footers, row labels and seed (T303) …
smarzban Oct 20, 2026
e07d597
Docs: changelog, llms.txt, What's new, starter tasks and config (T301…
smarzban Oct 20, 2026
e5f7958
Docs: cli.md, agent skill, CLI help (T298) (#228)
smarzban Oct 20, 2026
7cd393d
Merge main into dispatch (#220: landing status cycle labels)
smarzban Oct 20, 2026
7b05190
Board and task-page bugs from the docs audit (T304) (#231)
smarzban Oct 20, 2026
ae0ed20
Dispatch and CLI fixes from the docs audit (T306) (#232)
smarzban Oct 20, 2026
c163723
Hand off from the board: waiting-on changes and person assignees (T23…
smarzban Oct 20, 2026
e09a3ac
tsk edit --append-notes: add to a task's notes without rewriting them…
smarzban Oct 20, 2026
1f582c2
Assignee list: ctrl+x removes a name; waiting on: w key and a steady …
smarzban Oct 20, 2026
2aac8a4
Footer: always show : commands next to ? help (T310) (#235)
smarzban Oct 20, 2026
51b4b27
Hide agent messages under board rows with z (T305) (#234)
smarzban Oct 20, 2026
40ac58e
Ship the tsk-coordinator skill with tsk setup (T312) (#239)
smarzban Oct 20, 2026
1436629
After picker: search box with pinned tasks; before numbers open their…
smarzban Oct 20, 2026
9aee409
Flaky tests: fix root causes (T233) (#240)
smarzban Oct 20, 2026
444a687
Collapse dispatch store bumps into one v5 -> v6; open dev v7..v15 sto…
smarzban Oct 20, 2026
94d759c
Backup URL credentials redacted everywhere; restore id past 20; help …
smarzban Oct 20, 2026
0e0c04f
Backup token test: drop the file:// run Git for Windows rewrites (T31…
smarzban Oct 21, 2026
82a1790
T316: no duplicate task numbers after restore; capture honours --stat…
smarzban Oct 21, 2026
6f4a666
Dispatch: Unix agents launch through a private launcher; no task text…
smarzban Oct 21, 2026
4c9b6cb
Final docs pass before #120: docs vs code, CHANGELOG, What's new 6 (T…
smarzban Oct 21, 2026
647e35d
Restore: a stale snapshot cannot save over a whole-store restore; tra…
smarzban Oct 21, 2026
14b9dc5
Agent prompt: generic default, prompt_append layers, project review_o…
smarzban Oct 21, 2026
6def2b3
Merge main into dispatch (#251 vite bump, #246 nightly cleanup)
smarzban Oct 21, 2026
5c90541
Changelog: underscore emphasis fix from #246
smarzban Oct 21, 2026
dd9c063
Board: ctrl+s starts a blocked task (#252); sort the project lists (#…
smarzban Oct 21, 2026
7ffaa91
Tests: match the prompt preview's worktree name on Windows paths too …
smarzban Oct 21, 2026
4108cc1
Merge main into dispatch (#257 site deps, Dependabot #19 #20)
smarzban Oct 21, 2026
ffeaf69
Backups: a broken [[backup]] config shows on the board (T325) (#256)
smarzban Oct 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
394 changes: 255 additions & 139 deletions AGENTS.md

Large diffs are not rendered by default.

68 changes: 67 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,72 @@
# Changelog

One `## vX.Y.Z` section per release, newest first, with `## Unreleased
One `## vX.Y.Z` section per release, newest first, with `## Unreleased` on top. Inside a
section the subsections are, in this order and only when non-empty: `### Breaking`,
`### Added`, `### Changed`, `### Fixed`. Every user-visible change lands here in the PR
that makes it, written for a user, not a contributor: omit demo alignment, CI wiring,
review history, and other maintainer-only work. On release the version's section becomes
the GitHub release notes verbatim.

Each change is one line of at most 30 words; details live in the docs. A fix to something
first added in the same Unreleased section is not an entry: edit that entry instead.

## Unreleased

### Breaking

- Store format 6: assignees, dispatch, blocks, reviews, after, paper trail, wider undo. Older tsk refuses it; to roll back, restore the `tsk.json.v5` copy.

### Added

- Agent profiles in `config.toml`. The first board open writes a commented starter with examples for Claude Code, Codex, Pi, and Grok.
- Agent prompts: `prompt_append` adds to the default prompt, and `[project."<path>"]` adds per-repository lines and `review_on`. `tsk dispatch T12 --show-prompt` previews it.
- Assign a task to an agent profile, yourself, or a named person with `@`, `!a name`, or `--assignee`. Only an agent dispatches. `v` on Projects shows one assignee's tasks.
- Dispatch: in Herdr, starting an assigned project task (`ctrl+s`, `tsk status T12 started`, `tsk dispatch`) launches its agent in its own Git worktree and workspace. Windows: preview.
- Set the branch a dispatch starts from with `!b branch`, the task page's Base field, or `tsk add`/`tsk edit --base`; otherwise it is the repository's default branch.
- A dispatched task whose agent is gone asks before relaunching in the same worktree (`--again` in the CLI). Starting a marked set opens one card listing what launches.
- Completing a dispatched task offers to remove its worktree and merged branch; with `gh`, squash and rebase merges count. `tsk clean` does the same from a script.
- `m` on the cleanup card merges the task's pull request with `gh`, then completes the task and cleans up. `[merge] method` in `config.toml` picks the method; CLI: `--merge`.
- Block with a reason: `ctrl+b` asks why and what you need. Answer on the task page, under the row (`r`), or with `tsk reply`. Unblocking sends replies to the agent.
- Review with checks: `ctrl+r` asks what was done and what to check. Mark checks, give feedback (`r`, `tsk reply`), then approve (`ctrl+d`) or send back (`ctrl+s`).
- Change who a block or review waits on, keeping its replies: `w` on its task page, palette **set waiting on…**, or `tsk edit --on`.
- A blocked or review row addressed to you shows the asker's words on a dim line under it. `z` hides these lines, leaving `✉`; `[board] messages` sets the default.
- Paper trail: the task page lists who did what, newest first, below the steps, and drops created and updated dates from its footer. `tsk list T12` shows it as `activity`.
- After: a task can wait for other tasks in any project (`!w T202`, the After field, `tsk edit --after`). When the last one is done, a waiting ready task starts.
- Agents block and hand back for review with `tsk status`, and use `tsk dispatch`, `tsk clean`, and `tsk reply`. Agent skill 1.6.0 covers them; `tsk update` refreshes installed copies.
- `ctrl+u` undoes status changes, step changes, and archiving; a marked set is one step. Undoing a start that launched an agent leaves the agent running. Thanks @LukasGold (#173).
- Group and sort by assignee with `g` and `s` or `tsk list --group assignee` and `--sort assignee`. The `t` filter gains an `@assignees` tab.
- `[board]` in `config.toml` sets the group and sort a fresh desk or project board opens with, and `me` the name the board calls you.
- Back up tasks and `config.toml` to git on every save or daily. `tsk backup setup` makes a private GitHub repository with `gh`; `tsk backup add <git-url>` adds any other.
- `tsk edit --append-notes` adds text below a task's notes after a blank line, without rewriting them.
- `tsk setup` also installs the `tsk-coordinator` skill: your agent can brief builder agents, gate their pull requests with a review, live-test, and report back on the board.
- `tsk restore` lists the newest 20 backed-up versions per machine (`--all` for every one) and puts the one you pick back, keeping the replaced store.
- Sort the project picker and the Projects view by name or age with `s`. Both list projects A–Z by name by default. Thanks @LukasGold (#250).

### Changed

- `ctrl+b` and `ctrl+r` open the block and review cards; `Enter` on an empty card still blocks or sets review at once.
- A footer too narrow for its actions drops whole actions, least likely first, instead of cutting the last one with `…`.
- Board footers show `: commands` next to `? help`, and the task page's action bar ends with it; clicking it opens the command palette.
- Word jumps match macOS Option+arrow: `alt+→` or `ctrl+→` lands at the end of the next word, `alt+←` or `ctrl+←` at the start of the previous one.
- A row whose title wraps above an open peek or live line shows a dim `│` beside each wrapped line, so the row reads as one block.
- Help, footers, and the palette name each action verb first and in full (`ctrl+b` **block / unblock**). Help's **SURFACE CONTROLS** group is renamed **PICKERS & EDITING**.
- The archived-project launch card puts each option on its own line; `↑`/`↓` and `Enter` pick one, as on the cleanup card.
- `ctrl+s` starts a blocked task, closing its block; one `ctrl+u` reopens it. On a task it cannot start, the status row says why. Thanks @LukasGold (#252).

### Fixed

- `tsk help capture` and `tsk capture --help` print the capture reference instead of failing or opening the popup.
- `ctrl+u` names what it undid or why it refused, and undoing a done puts back the task's earlier status instead of open. Thanks @LukasGold (#173).
- Saving a task with a step's text cleared reopens that step with `text required` on its row, as for an empty new step. Thanks @LukasGold (#173).
- A project reached through a symlinked path, such as `/tmp/repo` and `/private/tmp/repo` on macOS, is one project.
- With tasks marked, `Esc` in the thread or view picker closes the picker and keeps the marks.
- With tasks marked, `ctrl+b` and `ctrl+r` skip done tasks, as starting does, and the status row counts them.
- `Esc` on a selected Thread on the task page cancels only the thread, not the whole edit.
- `ctrl+x` in a new step's row discards that row, instead of removing the step above it or deleting a task.
- `tsk steps` takes `--` before step text that starts with `-`, as `tsk reply` does.
- `tsk trash restore` gives a task the next free number when another task holds its old one, so no two tasks share a number.
- `tsk capture --state-dir <dir>` saves into that store instead of the default one; any other argument is refused.
- Notes keep underscores inside words, such as `file_name`, instead of turning them into emphasis.

## v0.12.0

Expand Down
Loading
Loading