Skip to content

Releases: jaysonventura/claude-dev-team

v1.57.0

Choose a tag to compare

@jaysonventura jaysonventura released this 01 Jul 13:28
40c89aa

Notarized CDT Usage menu bar app.

v1.56.0

Choose a tag to compare

@jaysonventura jaysonventura released this 27 Jun 03:23
e937514

Notarized CDT Usage menu bar app.

v1.55.0 — menu bar reads usage from the CLI status line (no oauth/usage fetch)

Choose a tag to compare

@jaysonventura jaysonventura released this 26 Jun 15:29
f6cca2a

Menu bar drops its own subscription-% fetch — 429s killed at the root

The macOS menu bar no longer calls /api/oauth/usage itself. That token-shared burst across clients (the app launch fetch, the status line, every cdt-menubar status) was the sole cause of the recurring 429 rate limited state — the v1.54.0 cadence/jitter/launch-guard work only tamed it.

It is now a pure reader of ~/.claude/.cdt-usage.json, the cache the CLI status line already fills from Claude Code's native rate_limits payload. No network call and no Keychain read anywhere in the app — the strongest form of the read-only-credentials principle.

Changed

  • Deleted SubscriptionAPI.swift + Keychain.swift and all the backoff/heartbeat/in-flight/rate-limit/token-fingerprint machinery in UsageStore.swift (~280 → ~115 lines). A 30s timer re-reads the local cache; refreshNow() / wake-from-sleep just re-read.
  • The badge still shows session % over weekly %; the dropdown now shows Usage → Session / Weekly. Dropped (endpoint/Keychain-only) the plan label Max 5x, weekly-Sonnet %, reset countdowns, and the 429 retry note.
  • Staleness, not errors: a reading older than 30 min is grayed with an "as of" time; an empty cache prompts cdt-config statusline on (the status line is now the sole writer of session/weekly %).
  • cdt-menubar status is cache-only (no --live/--fresh).

Notes

  • Enable the CDT status line (cdt-config statusline on) so the menu bar has data to read.
  • After /plugin update, run cdt-menubar build (or it auto-updates next session) to get the v1.55.0 app. A notarized DMG is a separate signed step (menubar/release.sh).

🤖 Generated with Claude Code

v1.54.0 — gentle menu-bar polling + cache-first status (stop usage 429s)

Choose a tag to compare

@jaysonventura jaysonventura released this 25 Jun 06:22
bc29942

Stops the menu bar's /api/oauth/usage 429 (`rate limited`) state while keeping the subscription % on screen. The 429s came from event-driven bursts across multiple clients (the app's launch fetch, the status line, every cdt-menubar status), not the steady heartbeat — so this coalesces/defers those calls.

Changed

  • Cadence 5→10 min + 0–60s jitter — the % moves slowly, so no real freshness lost; jitter stops clients syncing into a burst.
  • Launch guard — defer the first live fetch on launch when the on-disk cache is already fresh (relaunching can't burst the endpoint).
  • Cache-first cdt-menubar status — reuses the menu bar's fresh reading ((cached, as of …)), only fetches live when stale/missing or --live/--fresh; a live fetch is persisted so cdt-budget / the next status get it for free.
  • New UsageCache.swift centralizes cache read/write/freshness (shared poll-interval constant + atomic write that won't clobber the status line's writer); pure freshness math unit-tested.
  • 429 back-off unchanged; monitor stays read-only on credentials (no OAuth minting). Independent security PASS + code-review APPROVE; 46 tests green.

Full diff: #27

v1.53.0 — Obsidian read-back recall (bidirectional)

Choose a tag to compare

@jaysonventura jaysonventura released this 25 Jun 00:09
e5087c0

The Obsidian bridge is now bidirectional. CDT syncs its vault into Obsidian and reads back: at task start cdt-recall ranks your Obsidian vault (your curated notes + synced CDT content) with a dependency-free BM25 ranker and surfaces the most relevant notes alongside the vault's own lessons — so Obsidian knowledge actively informs CDT's work. New cdt-obsidian recall <query> (self-gating, fail-open) + cdt-config obsidian-recall-root <path>. Pure stdlib, no embeddings. TDD'd + wired into CI. Full notes in CHANGELOG.

v1.52.1 — doctor reports Obsidian auto-use state

Choose a tag to compare

@jaysonventura jaysonventura released this 24 Jun 23:49
a27932d

Patch: cdt-doctor now reports the Obsidian sync's effective state — a path-enabled vault (v1.52.0 auto-use) showed as off; it now shows ON (auto) → <vault>, matching cdt-obsidian status and cdt-config show. Display-only; no behavior change. Full notes in CHANGELOG.

v1.52.0 — premium design · account swap · Obsidian bridge

Choose a tag to compare

@jaysonventura jaysonventura released this 24 Jun 23:35
e128e6e

Three features, built via a multi-agent workflow and shipped through PR #24 (CI green; security review on the credential path = risk none).

Premium-design mandate

frontend-engineer / mobile-engineer now require ui-ux-pro-max on every UI task (frontend also web-design-guidelines + frontend-design; mobile also Apple HIG / Material). Generic AI aesthetics = non-negotiable rejection bar.

Menu-bar account swap (cswap-delegated)

New Accounts section in the menu bar: per-account 5h/7d usage, switch (with confirm), Switch-Best, post-switch refresh. All credential writes delegated to the cswap CLI — the menu bar never writes the Keychain. Requires cswap 0.14+ (--list --json); degrades to an install hint otherwise.

CDT vault → Obsidian bridge

cdt-obsidian CLI + session-end auto-sync exports ~/.claude/vault to an Obsidian vault as linked markdown (frontmatter + [[wikilinks]] + index). Auto-use: cdt-config obsidian-vault <path> auto-enables it; obsidian off overrides; off by default until a path is set. /cdt:obsidian for manual sync.

Upgrade: /plugin update (re-cache), then rebuild the menu bar app for the swap UI. Full notes in CHANGELOG.

v1.51.1

Choose a tag to compare

@jaysonventura jaysonventura released this 22 Jun 04:30
4baca87

Patch on top of v1.51.0 — no runtime change, CI/repo hygiene only.

Fixed

  • scripts/e2e.sh status-line assertion now matches the new plain-text line (… <N>% weekly) — v1.51.0 changed the format but the test still checked the old wk segment, turning CI red.
  • Untracked accidentally-committed hooks/__pycache__/*.pyc and added a Python .gitignore rule.

v1.51.0 is the substantive release (builders→Opus, worktrees + dynamic workflows on by default, plain-text status line, emoji removed). See CHANGELOG.md.

v1.51.0

Choose a tag to compare

@jaysonventura jaysonventura released this 22 Jun 04:20
00ceb33

Changed

  • Engineering builders + technical-writer run on Opus — reverting the v1.50.0 Sonnet pin. The seven builders (backend, frontend, mobile, data, devops, qa, diagrams) and technical-writer are now pinned model: opus for production-grade output. Combined with the judgment/review panel and the Bug Council ×5 (already Opus), every substantive agent is now Opus — only fast-ops runs Haiku. lint-agents.sh enforces this Opus floor (the Sonnet tier set was removed).
  • Worktrees + dynamic workflows are on by default. autonomy=auto, CDT_TEAMS=on, CDT_SCALE=on — the orchestrator runs parallel git-worktree sessions and dynamic-workflow fan-out freely. The only governor left is a weekly-budget safety valve (ASK near the rate-limit ceiling). Effort stays xhigh — never max.
  • Status line is minimal, plain text: CDT on · <model> · <N>% session · <N>% weekly (added current-session %; removed effort/context/duration/running-agents/phase).
  • Removed all custom emoji from CLI/terminal output (status line, per-agent dispatch/finish lines, running-agents); cdt_emoji.py reduced to the role-name helper.

Full changelog: CHANGELOG.md

v1.50.0

Choose a tag to compare

@jaysonventura jaysonventura released this 19 Jun 06:07
43d5c55

Model routing — role-based, deterministic, and lint-enforced

Routing was inherited from the session model (default Opus), so every implementation engineer, QA, docs, diagrams, and the Bug Council silently ran on Opus. This pins each agent to the right tier so cost savings are the default without dropping review/diagnosis quality.

  • Sonnet (pinned): backend-/frontend-/mobile-/data-/devops-engineer, qa-engineer, diagrams, technical-writer. data-/devops-engineer are hybrid — destructive/irreversible migration or infra change escalates to Opus + the mandatory security-veto.
  • Opus (pinned): review panel (product-manager, architect, ui-ux-engineer, code-reviewer, security-reviewer) + the gated Bug Council ×5 (was inherit).
  • Haiku: fast-ops only (unchanged).
  • lint-agents.sh now enforces all three tiers — CI fails if a tier silently regresses.
  • Escalation policy documented (README + orchestration skill): per-dispatch model: opus override on architecture / security / prod-deploy / destructive-infra-DB / complex-root-cause / release-blocker / repeated-test-failure / unclear-requirements triggers, and FULL: lifts builders to Opus.

Gates: lint-agents.sh PASS · validate.sh PASS (CI green on #20).

Full diff: #20