Will Pfleger
b4d8574e1d
Merge remote-tracking branch 'origin/main' into test/cli-612-613
...
* origin/main:
fix(infra): pin PGDATA path for forward-compatible Postgres upgrades (#707 )
fix(deps): upgrade redis 1.0 and deadpool-redis 0.23 together (#703 )
Fix SPROUT_SHARE_IDENTITY worktree dev workflow breaks (#702 )
fix(mobile): rename IOSOptions/MacOsOptions to AppleOptions (#706 )
fix(frontend): remove deprecated baseUrl for TypeScript 6 compatibility (#705 )
fix(deps): upgrade getrandom to 0.4 with fill() rename (#704 )
feat(sprout-agent): auto-fallback to Databricks OAuth (#699 )
fix(relay): avoid websocket writes in stall watchdog (#697 )
2026-05-21 17:58:41 -04:00
Will Pfleger
091e38ff0a
Fix SPROUT_SHARE_IDENTITY worktree dev workflow breaks ( #702 )
2026-05-21 17:53:20 -04:00
Will Pfleger
6fe557852c
fix(frontend): remove deprecated baseUrl for TypeScript 6 compatibility ( #705 )
2026-05-21 17:40:54 -04:00
tlongwell-block
4373a13fb3
fix(relay): avoid websocket writes in stall watchdog ( #697 )
...
Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com >
Co-authored-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: Dawn (sprout agent) <c6237ef84fa537c78dcee78efd2d4e59f728859c7f194da42ac51ededfa0be05@sprout-oss.stage.blox.sqprod.co >
2026-05-21 12:56:12 -04:00
Will Pfleger
4ee1a5b65a
Merge remote-tracking branch 'origin/cli-agent-skill' into test/cli-612-613
...
* origin/cli-agent-skill:
docs(cli-skill): update skill file to match CLI parity changes
style: fix rustfmt formatting after rebase
fix(nest): update skill content for CLI parity changes
fix(nest): correct skill content inaccuracies + chmod intermediate dirs
feat(nest): add sprout-cli agent skill to nest initialization
2026-05-21 12:32:07 -04:00
Will Pfleger
bcb8279f34
docs(cli-skill): update skill file to match CLI parity changes
...
Brings the agent skill file to parity with all 62 CLI subcommands
across 13 command groups after PR #612 's output normalization and bug
fixes. Adds 5 missing command groups (social, repos, upload, mem,
pack), 5 missing subcommands in existing groups (channels update/
add-member/remove-member, workflows update/delete), missing flags
(--file, --mention, --kinds, --depth-limit, --limit), fixes output
contract inaccuracies (channels get pubkey field, workflows list
pubkey, exit code 5, feed description), and restructures the Quick
Reference table by output pattern for scannability.
2026-05-21 12:12:34 -04:00
renovate[bot]
26a2107523
chore(deps): update rust crate tokio to v1.52.3 ( #658 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-21 01:27:18 +00:00
renovate[bot]
aff627d901
chore(deps): update rust crate sherpa-onnx to v1.13.2 ( #657 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-21 01:26:24 +00:00
renovate[bot]
109c7d9a8a
chore(deps): update rust crate reqwest to v0.13.3 ( #639 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 23:08:09 +00:00
renovate[bot]
7d4c129002
chore(deps): update rust crate sherpa-onnx to v1.12.40 ( #640 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 23:07:37 +00:00
renovate[bot]
55abbfdec6
fix(deps): update rust crate bzip2 to 0.6 ( #661 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:52:18 +00:00
renovate[bot]
f55dc46c4c
chore(deps): update rust crate uuid to v1.23.1 ( #648 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:50:02 +00:00
renovate[bot]
3935885bb9
chore(deps): update rust crate tauri-plugin-dialog to v2.7.1 ( #644 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:49:41 +00:00
renovate[bot]
42d9eafabd
chore(deps): update rust crate tokio to v1.51.3 ( #646 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:49:13 +00:00
renovate[bot]
576ef8cf86
chore(deps): update rust crate tauri-plugin-opener to v2.5.4 ( #645 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:48:56 +00:00
renovate[bot]
73b4cb797e
chore(deps): update rust crate tauri to v2.11.2 ( #642 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:48:26 +00:00
renovate[bot]
cbe6f415bd
chore(deps): update rust crate tar to v0.4.46 ( #641 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 22:47:24 +00:00
Will Pfleger
3474e1e5f0
style: fix rustfmt formatting after rebase
...
Reformat code after rebasing onto main (which includes PR #614 's
nest.rs additions). No logic changes.
2026-05-20 17:56:37 -04:00
Will Pfleger
f60f36e6b1
fix(nest): update skill content for CLI parity changes
...
Sync SKILL.md descriptions with post-review CLI output shapes: canvas
get returns markdown string or null (not event array), reactions get
returns grouped {emoji, count, pubkeys} (not raw events), users get
always returns array, workflows get documents normalized shape, workflows
runs notes empty-result limitation. Quick reference table updated.
2026-05-20 17:56:37 -04:00
Will Pfleger
8339e5f832
fix(nest): correct skill content inaccuracies + chmod intermediate dirs
...
Four inaccuracies in nest_skill.md caught by comparing against CLI source:
1. canvas get returns a JSON array of kind:40100 events (markdown in
`content`), not a plain markdown string. Agents parsing this as a
raw string would get the Nostr event wrapper, not the content.
2. reactions get returns a raw JSON array of kind:7 events, not the
aggregated {"reactions": [...]} shape. No aggregation happens in
cmd_get_reactions.
3. Error stderr category field values were placeholder text ("input error",
"network/relay error") instead of the actual enum values emitted by
error.rs: user_error, relay_error, network_error, auth_error, key_error.
4. set-presence documents as working but cmd_set_presence has an explicit
comment noting it always fails — kind:20001 is ephemeral and the relay
rejects it over HTTP POST. Added a "this will fail" caveat.
Also fixes a permission gap in nest.rs: create_dir_all(".claude/skills/
sprout-cli") created the intermediate .claude/ and .claude/skills/ dirs
with umask-default permissions (typically 755), but only the final
sprout-cli/ dir was chmod'd to 700. Lock down all three dirs in the
skill path, matching how NEST_DIRS are handled. Test updated to assert
all three dirs get 700 on Unix.
Docstring for ensure_nest_at updated to mention SKILL.md.
2026-05-20 17:56:37 -04:00
Will Pfleger
6946ab03fd
feat(nest): add sprout-cli agent skill to nest initialization
...
Agents migrating from the MCP server to the CLI have no structured
guidance on command usage, output formats, or polling patterns. Ships
a 1,350-word SKILL.md covering all 12 command groups, written to
~/.sprout/.claude/skills/sprout-cli/ on first launch using the same
idempotent O_CREAT|O_EXCL pattern as AGENTS.md.
2026-05-20 17:56:37 -04:00
renovate[bot]
f62707f4dc
chore(deps): update rust crate earshot to v1.1.0 ( #654 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-05-20 17:43:33 -04:00
tlongwell-block
a96cb487f4
fix(desktop): project home read-state from the shared NIP-RS marker ( #631 )
...
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com >
Co-authored-by: Dawn (sprout agent) <c6237ef84fa537c78dcee78efd2d4e59f728859c7f194da42ac51ededfa0be05@sprout-oss.stage.blox.sqprod.co >
2026-05-20 17:13:59 -04:00
Taylor Ho
af08b0f0e8
fix: prevent agent proliferation when adding bots to channels ( #621 )
2026-05-20 12:08:34 -07:00
Will Pfleger
c8f99bbc31
fix: surface swallowed errors across crates and emit turn failures to activity log ( #628 )
2026-05-20 14:55:20 -04:00
thomaspblock
b5e5a39bf0
Refine Pulse composer and post actions ( #629 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-20 13:04:47 -04:00
Mat Balez
2da3402f10
[codex] Add copy button for rendered code blocks ( #619 )
...
Signed-off-by: Mat Balez <60949391+matbalez@users.noreply.github.com >
2026-05-20 14:25:03 +00:00
tlongwell-block
5370a75ca4
feat(relay): surface connection loss in the workspace header ( #623 )
...
Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com >
Co-authored-by: Dawn <c6237ef84fa537c78dcee78efd2d4e59f728859c7f194da42ac51ededfa0be05@sprout-oss.stage.blox.sqprod.co >
2026-05-20 09:36:52 -04:00
Will Pfleger
582cfc8885
Bundle sprout CLI in DMG release + agent PATH discoverability ( #614 )
2026-05-19 20:53:46 -04:00
tlongwell-block
2392e6523a
fix(composer): use native ProseMirror inserts for autocomplete (mentions / channels / emoji) ( #618 )
...
Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com >
Co-authored-by: Quinn (sprout agent) <96f056ad5f2305c8ddf637dc65d048aa4c12d7daeb8867690e34fca46b0ef64c@sprout-oss.stage.blox.sqprod.co >
2026-05-19 20:28:40 -04:00
thomaspblock
b881d5319c
Refine thread reply alignment ( #620 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-19 19:11:49 -04:00
tlongwell-block
2fed74bdcd
Show channels in command search ( #617 )
...
Signed-off-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@sprout-oss.stage.blox.sqprod.co >
2026-05-19 14:33:53 -04:00
thomaspblock
3973080dce
Refine conversation visual affordances ( #615 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-19 08:54:41 -04:00
Will Pfleger
50b350dc58
fix(desktop): worktree support — workspace boundary + shared identity ( #610 )
2026-05-18 19:11:34 -04:00
tlongwell-block
6e1418e571
feat(huddle): fix concurrent-speaker mixing + jitter buffer + protocol v2 (up to 10 peers) ( #609 )
...
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com >
2026-05-18 16:34:52 -04:00
tlongwell-block
c0eb5affcf
refactor(huddle): switch local TTS to Pocket TTS (Kyutai/sherpa-onnx) ( #607 )
...
Signed-off-by: Tyler Longwell <tlongwell@squareup.com >
Signed-off-by: npub1cc3ha7z055mu0rwwu7806t2wt8mj3pvu0uv5mfp2c50dahaqhczshdalg6 <c6237ef84fa537c78dcee78efd2d4e59f728859c7f194da42ac51ededfa0be05@sprout-oss.stage.blox.sqprod.co >
Co-authored-by: npub1cc3ha7z055mu0rwwu7806t2wt8mj3pvu0uv5mfp2c50dahaqhczshdalg6 <c6237ef84fa537c78dcee78efd2d4e59f728859c7f194da42ac51ededfa0be05@sprout-oss.stage.blox.sqprod.co >
2026-05-18 14:28:27 -04:00
thomaspblock
137a4e268f
Update inbox conversation experience ( #608 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-18 13:48:47 -04:00
thomaspblock
17eea2d267
Fix full-width message layouts ( #591 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-17 09:04:09 -04:00
tlongwell-block
3daf8d6ae1
feat(huddle): swap STT default to Parakeet TDT-CTC 110M (EN, int8) ( #562 )
...
Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com >
Signed-off-by: Tyler Longwell <tlongwell@squareup.com >
2026-05-15 22:22:05 -04:00
tlongwell-block
d1097aa91f
chore(desktop): upgrade Tauri to 2.11.x to fix blank window after sleep on macOS ( #600 )
...
Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com >
2026-05-15 18:59:16 -04:00
tlongwell-block
7171d4954d
fix(relay,desktop): only advertise NIP-43 when enforced; probe pairing by supported_nips ( #601 )
...
Signed-off-by: Tyler Longwell <tlongwell@squareup.com >
2026-05-15 15:11:37 -04:00
tlongwell-block
7763072ef9
fix(desktop): derive unread state from NIP-RS + relay catch-up only ( #599 )
...
Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com >
2026-05-15 14:46:33 -04:00
tlongwell-block
32347d117c
feat(desktop): per-persona and per-agent env var overrides ( #594 )
2026-05-15 10:43:00 -04:00
tlongwell-block
13dc0df688
fix(desktop): stop pinning agents to deprecated SPROUT_ACP_TURN_TIMEOUT ( #592 )
...
Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com >
2026-05-14 21:51:38 -04:00
tlongwell-block
5cdb3062ed
fix(desktop): populate member_count in get_channels so channel browser shows real counts ( #548 )
...
Signed-off-by: tlongwell-block <109685178+tlongwell-block@users.noreply.github.com >
2026-05-14 20:38:01 -04:00
tlongwell-block
3a3501c77b
fix(desktop): autofocus message composer on channel/thread open ( #572 )
...
Signed-off-by: Tyler Longwell <109685178+tlongwell-block@users.noreply.github.com >
2026-05-14 20:35:44 -04:00
Wes
4425f1f713
feat(desktop): add message more-actions dropdown menu ( #590 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-05-14 15:31:55 -07:00
thomaspblock
8a2d24e4fd
Redesign Home as an inbox ( #582 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-14 13:35:17 -07:00
tlongwell-block
1858e98d5e
fix(desktop): drive unread badges from live subscription, not refetched lastMessageAt ( #581 )
...
Signed-off-by: Tyler Longwell <tlongwell@squareup.com >
2026-05-14 13:25:24 -04:00
thomaspblock
9e76a08a47
fix(desktop): refine header scaling and shadow ( #573 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-14 10:07:15 -07:00