Sono
sonojs.com

Sono

Release notes

What ships, when it ships — the calm journal of a workspace built for teams who refuse template noise.

2.1

2.1 — Cycles that feel inevitable

FeaturePerfImprove

Sono 2.1 is about momentum without theatre. Cycles now surface what actually moved, not what looked busy — so standups stay short and launches stay honest.

Shipping this release means three things for product teams: clearer capacity, sharper cycle reviews, and fewer tabs between “what’s next” and “what shipped.”

Highlights

  • Cycle pulse — live health on scope, focus, and slippage without another dashboard
  • Insight strips — one glance at throughput, carryover, and quiet risks
  • Smarter triage — suggested next issues based on WIP and owner load
  • Faster board paint — ~40% snappier on large workspaces
  • Keyboard-first moves — assign, cycle, and close without leaving the flow
  • Calmer notifications — signal when a cycle actually needs you
  • Exportable reviews — share a clean cycle summary with stakeholders
  • Timezone-honest dates — planning that matches how distributed teams work
import { Sono } from "@sonojs/sdk"

const cycle = await Sono.cycles.open({
  team: "product",
  lengthDays: 14,
  focus: ["launch-readiness", "debt-budget"],
})

await cycle.attachInsights(["throughput", "carryover", "focus-drift"])

1.4

1.4 — Resource flow, finally visible

FeatureImprove

Allocation used to live in spreadsheets. 1.4 puts capacity next to the work — so you stop guessing who is free and start protecting focus.

Resource allocation in Sono

When a team is overloaded, Sono now shows it before the week collapses. When someone has room, the right issues surface without another planning meeting.

Highlights

  • Allocation canvas — people × projects with honest load bars
  • Focus guards — soft caps that warn before context-switching explodes
  • Reusable issue templates — briefs that ship with the work, not after
  • Discussion threads on tasks — context stays attached to the issue
  • Drag-to-rebalance — move load without breaking cycle membership
  • Role-aware views — IC vs lead surfaces without duplicate boards
  • Export for finance — optional capacity snapshots for planning packs
  • Audit trail — who changed allocation and when
await Sono.resources.rebalance({
  teamId: "design",
  strategy: "protect-focus",
  maxProjectsPerPerson: 2,
})

1.2

1.2 — Notifications that earn attention

FeatureImprovePerf

Most tools shout. Sono 1.2 listens first — then notifies when your attention actually changes an outcome.

Focused notifications

We rebuilt the notification graph around project motion: blockers, review asks, cycle risks, and mentions that need a decision — not every comment ping.

Highlights

  • Intent filters — decide by outcome: decide / review / blocked / FYI
  • Digest that respects deep work — batch FYI while surfacing blockers live
  • Channel routing — Slack for urgency, inbox for narrative, email for weekly
  • Mute with memory — snooze a thread without losing the trail
  • Owner-aware escalations — escalate only if the owner is idle
  • Quiet hours that honor local timezones
  • Performance — inbox loads in under ~200ms on typical workspaces
  • Mobile parity — the same filters, not a watered-down feed
# Prefer blockers in Slack; keep FYI in Sono inbox
sono notify route \
  --intent blocked \
  --channel slack \
  --team product

1.0

1.0 — Sono is generally available

LaunchFeature

Today Sono leaves private beta. Same calm chrome. Same ruthless focus. Now ready for teams that want a workspace that feels expensive in the best way.

Sono general availability

We built Sono for product teams who are tired of tool sprawl: issues in one place, rituals in another, and a third tab pretending to be “the source of truth.” GA means one surface — plan, ship, stay aligned.

What’s included

  • Teams & cycles with healthy defaults, not ceremony
  • Issues that stay readable — hierarchy without Jira archaeology
  • Docs beside the work — briefs that don’t rot in a wiki
  • Slack & GitHub connections that respect attention
  • Roles that match reality — member, lead, admin without enterprise theatre
  • Dark by default — light when you need daylight
  • Startup-ready plans — Free to explore, Startup when you scale
  • Migration guides from Linear and Jira for afternoon imports
// Create a workspace the way your team actually works
const workspace = await Sono.workspaces.create({
  name: "Northline Product",
  defaults: {
    cycleLength: 14,
    theme: "dark",
    integrations: ["github", "slack"],
  },
})

0.9

0.9 — Polish before the curtain

ImproveFixPerf

Last private build before GA. 0.9 is craft — the unglamorous work that makes Sono feel inevitable the first week you live in it.

We spent this cycle on keyboard paths, contrast, board density, and the sharp edges beta teams reported. Nothing flashy. Everything tactile.

Improvements

  • Redesigned navigation with clearer hierarchy and fewer dead ends
  • Full keyboard paths for triage, assign, and cycle moves
  • High-contrast mode that still looks like Sono, not a medical chart
  • Touch targets and swipe patterns that respect mobile thumbs
  • Denser board cards without sacrificing readability
  • Faster cold start on large workspaces (~25% improvement)
  • Clearer empty states that teach the next action
  • Typographic polish on release-facing surfaces (yes, including this journal)

Fixes

  • Screen reader announcements for issue state changes
  • Focus rings no longer clipped inside sticky headers
  • Board filters persist after refresh
  • Duplicate “you were mentioned” mail on long threads
  • Safari sticky date column overlap on changelog-style layouts
  • Wrong week boundary when workspace timezone ≠ browser timezone
  • Modal scroll lock leaking into the page behind
  • Rare race when two leads reassigned the same issue