Commit Graph
314 Commits
Author SHA1 Message Date
WesandClaude Opus 4.6 02cbc39fa4 fix: resolve pre-existing clippy collapsible_match warnings
Collapse nested if blocks into match guard patterns in messages.rs
and ingest.rs to satisfy clippy::collapsible_match.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-21 15:33:00 -07:00
WesandClaude Opus 4.6 d40c918f09 feat: add Project entity with auto-injected agent context
Introduces a first-class Project entity that groups channels and
provides shared context to agents — eliminating the need to
copy-paste canvas instructions into every new channel.

Projects are relay-stored Nostr events (kinds 50001-50003) with a
full CRUD pipeline: DB table, relay ingest/side-effects, REST API,
SDK builders, and 5 MCP tools (create, get, list, update, delete).

Channels gain an optional project_id FK. When a channel belongs to
a project, the ACP harness automatically injects the project's
prompt, repos, and environment into the [Context] block that agents
receive — no manual setup required.

Includes 21 tests (SDK builders, ingest classification, DB CRUD),
environment validation, empty-update guards, and updates to
VISION.md and TESTING.md.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-21 15:30:11 -07:00
725dc351d7 Desktop UX polish: chat input, agent bulk actions, starting badge (#378)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-21 10:42:11 -07:00
818b4885e2 fix(desktop): plug memory leaks from log reads, stale caches, and unbounded maps (#377)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-21 07:44:58 -07:00
60b51806dd feat(desktop): improve new user defaults for presence and notifications (#376)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-21 06:48:15 -07:00
f57e5493d5 fix(desktop): expand ACP discovery to include version-manager shim dirs (#375)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-20 16:48:26 -07:00
2a131df718 fix(desktop): eliminate agent startup beachball (#374)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-20 14:34:26 -07:00
c6c27481a3 fix(desktop): resolve agent command path for DMG builds (#372)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-20 13:16:20 -07:00
WesandGitHub 28bf8bfeee fix(desktop): remove stale sprout-admin prereq, add sidecar tooling (#371) 2026-04-20 12:30:37 -07:00
fa5a0b77fe Add server cross-compile and macOS desktop build CI jobs (#369)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-20 11:52:39 -07:00
1df5f186a6 Fix forum post card bugs on desktop and mobile (#370)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-20 11:14:57 -07:00
eda85c8446 fix(desktop): kill WebSocket flood and fix Markdown <p><div> nesting (#368)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-20 10:53:54 -07:00
tlongwell-blockandGitHub b9250081cb perf: caching, batched DM resolution, bounded audit, global kind index (#367) 2026-04-20 12:58:58 -04:00
WesandGitHub baecb99550 fix: staging to generate stubs as needed (#366) 2026-04-20 15:16:44 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
12afa16cb1 chore(deps): update rust crate axum to v0.8.9 (#365)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 06:28:22 -07:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
44f41f1aeb chore(deps): update dependency @tanstack/react-router to v1.168.22 (#364)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-20 06:28:10 -07:00
11410be09b feat(desktop): autoscroll thread sidebar for new replies (#363)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-18 10:38:02 -07:00
fe93ac05a2 fix(desktop): eliminate 10+ second UI freeze on startup (#361)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-18 10:06:55 -07:00
9db198a332 feat(desktop): bundle sprout-acp and sprout-mcp-server as Tauri sidecars (#362)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-18 08:38:27 -07:00
cca1d51012 Remove release pipeline from public repo (#360)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-18 06:55:09 -07:00
13a14b11ec feat(desktop): rich text forum composer, autocomplete fix, version in settings (#358)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
canary
2026-04-17 13:50:04 -07:00
Luis PadronandGitHub 136961a074 feat(ios): name the iOS app Sprout instead of Runner / sprout_mobile (#357) 2026-04-17 13:08:25 -07:00
43a152e262 nip-ab: Tamarin formal verification (strengthened) (#349)
Co-authored-by: Jordan Mecom <jm@squareup.com>
2026-04-17 15:56:40 -04:00
Luis PadronandGitHub f33adc3124 fix: unquoted xcodeproj and setup release config (#355) 2026-04-17 11:39:15 -07:00
24576c906c feat(mobile): implement forum posts and threads (#356)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 11:25:56 -07:00
Luis PadronandGitHub 560d330059 feat(ios): make app bundle identifier configurable at build time (#354) 2026-04-17 17:41:39 +00:00
Luis PadronandGitHub 232f6f0b20 chore: add cmake to Hermit (#353) 2026-04-17 13:13:34 -04:00
691a0ef077 fix(ci): work around CMake 3.31+ rejecting audiopus_sys bundled Opus build (#352)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 10:04:57 -07:00
79d089d87e feat(mobile): rich compose bar with mentions, emoji, formatting, and typing indicators (#351)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 09:22:52 -07:00
b106fba815 feat(mobile): DM avatars, member roles, pairing fixes, and offline UX (#348)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 20:17:55 -07:00
tlongwell-blockandGitHub 9cce7b8bbb nip-ab: clarify transcript_hash role and fix protocol diagram (#346) 2026-04-16 20:25:47 -04:00
e970f0baaf chore: fix deprecation warnings and decompose AgentsView (#347)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 17:21:34 -07:00
Taylor HoandGitHub 355c39538c chore: improve thread panel inline replies and nesting behavior (#339) 2026-04-16 16:24:18 -07:00
fc67dac4c6 feat: NIP-AB device pairing — Phase 2 (desktop + mobile UI) (#343)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 15:25:18 -07:00
tlongwell-blockandGitHub 0c5904b9a2 fix(huddle): prevent phantom huddle from late-arriving relay events (#344) 2026-04-16 18:19:17 -04:00
tlongwell-blockandGitHub 70059efa4a perf(tts): reduce Kokoro time-to-first-audio with session warmup and threading (#342) 2026-04-16 17:37:38 -04:00
tlongwell-blockandGitHub 2506341a28 fix(relay): persist huddle lifecycle events to DB (#341) 2026-04-16 15:37:59 -04:00
12dca80e1a feat(desktop): improve huddle bar UX + audio device selection (#340)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 19:36:46 +00:00
tlongwell-blockandGitHub b8d6a5cf8b feat: NIP-AB device pairing — Phase 1 (core library + CLI) (#333) 2026-04-16 14:56:36 -04:00
cd6fc96fc5 feat(mobile): implement message thread support (#338)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 10:00:02 -07:00
Jordan MecomandGitHub 6c0e363bdd [codex] Fix authz, scope propagation, and shell-injection bugs (#320) 2026-04-16 12:03:35 -04:00
7cc9104ef2 feat(mobile): implement Activity tab with personalized feed (#337)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 09:02:29 -07:00
a43c6df878 feat(mobile): upgrade mobile_scanner to v7 (Apple Vision) (#336)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 08:28:27 -07:00
2b69879994 feat(mobile): app branding — icon, name, launch screen (#335)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-16 08:03:26 -07:00
tlongwell-blockandGitHub d99332e169 fix: cancel TTS on remote human speech in multi-participant huddles (#332) 2026-04-15 21:23:51 -04:00
d283f0894d feat(mobile): design refresh — navigation, search, reactions (#334)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
desktop/v0.1.0-rc12
2026-04-15 17:20:25 -07:00
f03bbe3dd7 feat(desktop+acp+mcp): deterministic nested thread replies via persisted reply context (#322)
Co-authored-by: Tyler Longwell <tlongwell@squareup.com>
2026-04-15 17:58:50 -04:00
affeee60c2 feat(mobile): channel management — create, browse, join/leave, DMs, canvas (#331)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-15 21:28:46 +00:00
711e8213ac fix: derive staging ports from worktree to avoid collisions (#329)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-15 13:49:00 -07:00
Taylor HoandGitHub 0f93ef4471 fix: mentions survive copy/paste from chat into composer (#328) 2026-04-15 13:48:36 -07:00