Every open work item now stands on one horizon (triage, now, next, later or set_aside), and within a horizon its place is its priority: a fractional rank, so moving one item rewrites only that item. New work items start in Triage. Each view is bounded: Now has a soft cap (6, set per workspace with configure_plan), Next shows its top 10, Later is grouped by repository, Set aside only counts. Appetite (small, medium, large), a dollar budget and urgent (first in Now until it closes) are optional.
Work service: migration 0056_plan (work_items.horizon, rank, appetite, budget_usd, urgent, planned_at; plan_settings), and plan_work_item, get_plan, next_work_item (the first unclaimed in Now, else the top of Next, skipping blocked, claimed and others' work) and configure_plan; list_work_items takes horizon and limit. Triage on the item plans; moving into or out of Now, ranking Now and urgent need the right to manage labels and milestones. Each move publishes work_item.planned and notes a horizon change in the conversation.
API and MCP: POST /workspaces/{workspace}/work/{number}/plan, GET and PATCH /workspaces/{workspace}/plan, GET /workspaces/{workspace}/plan/next; work_item actions plan, next and get_plan, workspace action configure_plan; scopes, webhooks and Actions events.
CLI 0.4.2: g1t work plan (show, or move with --now/--next/--later/--set-aside/--triage, --before/--after/--top, --appetite, --budget, --urgent), g1t work next [--claim], g1t work list --horizon, and g1t work dispatch with no number takes what is next.
Web: -/work opens on the Plan (drag and drop, and a menu for every move), with tabs Plan, Board, Triage, All items, Milestones and Sessions; the list moves to -/work/all (old filtered links redirect) with Newer/Older paging and a horizon filter; Triage has quick actions; an item's sidebar has a Plan box. The Board's unbounded Backlog becomes Up next (Now not started, then the top of Next) and it reads about 200 open items instead of 1,000. Home's Start here falls back to what is next, and your Now items join Your move.
Docs: work/plan (new), board, home, cli, agents, webhooks and the MCP and CLI references; plugin 0.3.2's work-on-item skill takes g1t work next when no item is named.
Checked: cargo test -p g1t-work --lib (298), -p g1t-api (222), -p g1t-contracts --lib (352), -p g1t-actions, -p g1t (117 unit; cli integration test any_harness_checking_its_updates_says_which_files_it_changed fails the same on main here); cargo check --workspace --tests; cargo check -p g1t-api -p g1t-work --target wasm32-unknown-unknown; apps/web npm run typecheck and npm test (1117); packages/contracts tsc and tests; prettier; docs build. Pages rendered with mock data in headless Chrome at desktop and 375px, dark and light; drag and drop not yet tried in a real browser. G1t-Session: ses_01m5bgsckce7gt943v64h219yy