Commit Graph

  • d0c163962e feat(conscience): Aster fires now — experimental supervisory trigger ani-dev Ani Tunturi 2026-03-28 20:17:28 -04:00
  • 81ee845677 feat(dashboard): bridge speaks now — adapters, heartbeat, a state file for Aster Ani Tunturi 2026-03-27 16:13:17 -04:00
  • fb0ee51183 fix(discord): close the open door — guild messages now check who's knocking Ani Tunturi 2026-03-27 12:12:48 -04:00
  • 7c346d570b feat(conscience): Aster reset commands, subagent thread chunking, conscience wiring Ani Tunturi 2026-03-26 23:25:27 -04:00
  • 59cdb40974 feat: wire up TTS on Discord — 🎤 actually does something now Ani Tunturi 2026-03-21 20:43:41 -04:00
  • 983b9541a7 wip: Ani lives here — heartbeat, streaming, images, Matrix patches Ani Tunturi 2026-03-21 17:43:34 -04:00
  • f4f1d98655 refactor(display): remove details prepend path, add Matrix reasoning via formatReasoningDisplay Ani Tunturi 2026-03-17 13:50:01 -04:00
  • 228b9d74c4 fix(bot,matrix): use resolved conversation key for audio storage Ani Tunturi 2026-03-17 13:43:25 -04:00
  • 9af2d2625f fix(letta-api): restore 429 rethrow in rejectApproval Ani Tunturi 2026-03-17 13:43:17 -04:00
  • e451901ea1 fix(main): scope Olm error handler removal instead of clobbering globals Ani Tunturi 2026-03-17 13:43:09 -04:00
  • 7a7393b8c1 merge: incorporate upstream fixes (cancel invalidation, approval dedup, cron logging) Ani Tunturi 2026-03-16 15:01:27 -04:00
  • 7476f341fd fix(bot): restore upstream inline reasoning display Ani Tunturi 2026-03-16 14:29:25 -04:00
  • 7cd7bd3720 fix(main): restore upstream code accidentally dropped in matrix-adapter commit Ani 2026-03-16 14:02:37 -04:00
  • 9a972c30a2 fix(matrix): remove hardcoded userId, clean personal references Ani 2026-03-16 12:11:12 -04:00
  • 77cf3c2a35 revert(prompts): restore upstream heartbeat prompts, keep targetRoom param Ani 2026-03-16 11:43:43 -04:00
  • aaf27980af refactor(matrix): unify !commands with upstream /commands Ani 2026-03-16 11:34:38 -04:00
  • 695c5bc665 fix: deduplicate approval requests across runs (#601) (#602) Cameron 2026-03-15 22:45:15 -07:00
  • c50ce657d8 fix(logging): set correct trigger type for cron/heartbeat turns Jason Carreira 2026-03-16 01:22:43 -04:00
  • f04e56d165 fix: kill session subprocess on /cancel to break stuck streams (#600) Cameron 2026-03-15 14:37:14 -07:00
  • 18010eb14f feat: Matrix adapter with E2EE, TTS/STT, reactions, and heartbeat routing Ani Tunturi 2026-03-14 21:27:32 -04:00
  • f1f3540005 fix(heartbeat): prioritize user messages over in-flight heartbeats (#594) Cameron 2026-03-13 14:40:04 -07:00
  • 039707387e feat(bluesky): fetch parent thread context for reply posts (#592) Cameron 2026-03-13 14:17:33 -07:00
  • f5005c33a0 fix(core): resize images before sending to LLM to prevent llm_api_error (#593) Cameron 2026-03-13 14:10:05 -07:00
  • 68056ed21b fix: clarify stuck approval error message with /reset and consequences (#590) Cameron 2026-03-12 23:33:23 -07:00
  • 25fbd7b9fa fix(cron): prevent cross-agent job leakage from global store migration (#588) Cameron 2026-03-12 22:53:20 -07:00
  • b0fc98d064 fix(portal): fix JS syntax error that prevented login() from being defined (#587) Cameron 2026-03-12 22:47:55 -07:00
  • 35cff5098f fix(telegram): escape horizontal rules in MarkdownV2 output (#586) Cameron 2026-03-12 22:43:20 -07:00
  • acfb90e2e5 feat: use SDK recoverPendingApprovals for approval conflict recovery (#585) Cameron 2026-03-12 22:28:14 -07:00
  • 227b986396 fix(skills): persist Railway skill directories across redeploys (#582) Cameron 2026-03-12 21:55:12 -07:00
  • 791e722fca fix: strip <no-reply/> marker in sendToAgent before returning to callers (#584) Cameron 2026-03-12 21:37:53 -07:00
  • 9bd74227d9 fix(bluesky): persist session JWTs and skip retries on rate limits (#583) Cameron 2026-03-12 21:27:59 -07:00
  • 5bed4e78cd fix(recovery): deny orphaned approvals sequentially for parallel tool calls (#580) Cameron 2026-03-12 18:37:27 -07:00
  • 00a0433358 fix(core): parse <actions> blocks anywhere in responses (#579) Cameron 2026-03-12 17:02:06 -07:00
  • 1d636d6fa9 feat(signal): default Signal read receipts to true (#576) Cameron 2026-03-12 09:10:38 -07:00
  • a6b1a43ec5 fix(logging): record structured abort errors in turn logs (#572) Cameron 2026-03-11 23:45:27 -07:00
  • 6ecd78e294 feat: turn JSONL logging with live web viewer (v2) (#567) Cameron 2026-03-11 23:24:54 -07:00
  • 593b28892c fix: cast vi.fn() mock to satisfy bun-types fetch type (#571) Cameron 2026-03-11 20:13:05 -07:00
  • d25da06852 fix: separate reasoning blocks with newline on markdown boundaries (#569) Cameron 2026-03-11 18:11:34 -07:00
  • d873f04cc8 fix(help): centralize Telegram help output with shared command text (#566) Cameron 2026-03-11 17:27:07 -07:00
  • f60b723f4e fix(telegram): simplify command responses and enrich status output (#565) Cameron 2026-03-11 16:58:38 -07:00
  • fb32a4c3cd fix(discord): route thread messages with per-thread conversations (#564) Cameron 2026-03-11 16:54:19 -07:00
  • 13426396ac refactor: extract DisplayPipeline from processMessage stream loop (#550) Cameron 2026-03-11 16:22:26 -07:00
  • dc4204d6f4 fix: default group chat settings and voice transcription to 'no' in o… (#563) Cameron 2026-03-11 16:09:30 -07:00
  • 6231af560d test(session): cover invalid tool-call mismatch recovery paths (#562) Cameron 2026-03-11 15:29:24 -07:00
  • 8973e97464 fix(whatsapp): warn when streaming is set in WhatsApp config (#558) github-actions[bot] 2026-03-11 15:18:52 -07:00
  • e38f5a4db7 fix(session): auto-clear stuck conversation on invalid tool call ID mismatch (#555) Jason Carreira 2026-03-11 18:18:02 -04:00
  • 535e5680c3 fix: surface memfs errors in heartbeat with actionable diagnostics (#559) github-actions[bot] 2026-03-11 15:10:43 -07:00
  • 0aedc6b4c9 fix: skip reasoning messages in sendToAgent response accumulation (#557) github-actions[bot] 2026-03-11 15:02:19 -07:00
  • 08ee846b71 refactor: extract memfs resolution with server-mode awareness (#560) Cameron 2026-03-11 14:51:41 -07:00
  • ef1504bd9a fix(discord): gate managed commands and harden attachment fetches (#549) Cameron 2026-03-10 17:03:37 -07:00
  • ef63efc892 docs: clarify Bluesky notification filtering and reply behavior (#551) Cameron 2026-03-10 17:02:48 -07:00
  • 7f44043962 feat: add Bluesky channel adapter and runtime tooling (supersedes #401) (#486) Cameron 2026-03-10 13:59:27 -07:00
  • 6e8d1fc19d feat: add core config TUI editor (#522) Cameron 2026-03-10 11:51:05 -07:00
  • 0321558ee6 feat: add config-driven sleeptime support with memfs guard (#534) Cameron 2026-03-10 11:51:02 -07:00
  • d3367e8c6a fix: rebind foreground run ID on post-tool-call assistant events (#545) Cameron 2026-03-09 23:12:53 -07:00
  • 1c9489683f fix: escape accidental Telegram blockquote markers in MarkdownV2 output (#524) Cameron 2026-03-09 21:48:11 -07:00
  • e8c57ebd9c fix: avoid false italic conversion in Telegram reasoning (#526) Cameron 2026-03-09 21:47:48 -07:00
  • 03618faf5b chore(deps): bump @letta-ai/letta-client from 1.7.11 to 1.7.12 (#531) dependabot[bot] 2026-03-09 21:47:37 -07:00
  • 15b98758cc Merge pull request #542 from letta-ai/fix/thread-only-per-thread-conversations Cameron 2026-03-09 18:47:14 -07:00
  • be60a00057 fix: align commands, batching, reactions, and LRU with forcePerChat Cameron 2026-03-09 18:40:09 -07:00
  • b79f29d8fa fix(discord): isolate conversations per-thread in thread-only mode Cameron 2026-03-09 18:25:09 -07:00
  • 69cd7e5225 fix: recover default-conversation approval deadlocks without conversation reset (#541) Cameron 2026-03-09 18:15:52 -07:00
  • 4d037aca6a feat(discord): add thread-only mode and reduce stream log noise (#538) Cameron 2026-03-09 17:28:01 -07:00
  • 30c74a716c feat(discord): thread-only groups with auto-thread mentions + reaction gating (#540) Cameron 2026-03-09 16:32:38 -07:00
  • d038c1361a fix: reduce per-event stream log noise and add regression test (#539) Cameron 2026-03-09 16:19:11 -07:00
  • d23f0f9328 fix: harden voice memo delivery diagnostics (#536) Cameron 2026-03-09 13:22:26 -07:00
  • 7da991206f test: cover sendToAgent no-source directive filtering Cameron 2026-03-09 13:14:25 -07:00
  • cf47522bf6 fix: skip non-targeted directives when no source adapter context Cameron 2026-03-09 13:10:40 -07:00
  • 542ec8ce45 fix: execute directives in background flows, reject partial send-file targeting Cameron 2026-03-09 12:29:20 -07:00
  • f7d8005be4 feat: add <send-message> directive and cross-channel targeting for <send-file> Cameron 2026-03-09 12:01:53 -07:00
  • d7ab7f1c4b fix: reduce log spam from pre-foreground event buffering (#529) Ezra 2026-03-07 13:42:57 -08:00
  • 467f890371 docs: document /api/v1/chat/async endpoint (#518) Cameron 2026-03-06 17:39:20 -08:00
  • acfd8dbeab fix: convert markdown bold/italic to HTML in Telegram thinking blocks (#523) Cameron 2026-03-06 17:33:45 -08:00
  • 7c3ab04494 Low-risk simplification pass: bot pipeline, startup, API, onboarding, provider sync (#520) Cameron 2026-03-06 17:20:24 -08:00
  • b3634d0f29 fix: align API key guidance links to project keys page (#519) Cameron 2026-03-06 15:24:27 -08:00
  • 77fc7005e8 test: add Docker image build check to CI (#516) Cameron 2026-03-06 14:47:12 -08:00
  • ead65ff1e7 fix: restore public store and invalidateSession on LettaBot (#515) Cameron 2026-03-06 12:04:05 -08:00
  • c71c45150e feat: add ignoreBotReactions config toggle for Discord (#508) Cameron 2026-03-06 12:03:42 -08:00
  • e80c5b4dd6 fix: prevent non-foreground run events leaking into user response stream (#513) Cameron 2026-03-06 11:51:05 -08:00
  • 761de6d716 feat: add set-conversation command (CLI, API, channel, portal) (#512) Cameron 2026-03-06 11:30:06 -08:00
  • 53c24bcdc7 fix: resolve WhatsApp LID to phone number for inbound DMs (#510) Cameron 2026-03-06 11:07:32 -08:00
  • 9da79aef09 fix: enable link preview generation for WhatsApp outbound messages (#511) Cameron 2026-03-06 11:04:46 -08:00
  • 0fa3173e73 fix: create new conversation for per-channel mode instead of resuming default (#503) Jason Carreira 2026-03-06 13:54:56 -05:00
  • bcbe6dff9b fix: prevent reasoning text from leaking as response on LLM API errors (#509) Cameron 2026-03-06 10:14:16 -08:00
  • ba1ef7ab6e chore(deps): bump @letta-ai/letta-client from 1.7.10 to 1.7.11 (#490) dependabot[bot] 2026-03-06 09:52:24 -08:00
  • ef2302b2aa fix: strip variation selectors in Telegram emoji reactions (#499) Cameron 2026-03-06 09:34:18 -08:00
  • c018369cae fix: serialize all sendToAgent calls and use per-key canUseTool callbacks (#501) Cameron 2026-03-05 17:57:04 -08:00
  • c964ca3826 refactor: extract shared channel utilities (access control, emoji, message splitting) (#492) Cameron 2026-03-05 11:20:57 -08:00
  • 7173d2e2c4 fix: use sender phone number as userId for WhatsApp group messages (#491) Cameron 2026-03-05 10:37:06 -08:00
  • 9bf19ebab4 feat: ChatGPT subscription connect flow (#487) Cameron 2026-03-05 10:16:35 -08:00
  • bb0ccd65e1 docs: consolidate voice documentation into docs/voice.md (#485) Cameron 2026-03-04 16:18:37 -08:00
  • 025fd38d5f feat: add per-group daily message limits (dailyLimit + dailyUserLimit) (#484) Cameron 2026-03-04 12:55:49 -08:00
  • a9cab72426 feat: add POST /api/v1/chat/async endpoint for fire-and-forget messages (#329) Ezra 2026-03-04 11:45:09 -08:00
  • 587621d9e4 fix: close API server on shutdown to prevent EADDRINUSE (#477) dustindoan 2026-03-04 11:40:58 -08:00
  • 87aaa779bf Update README to use local preview image (#481) Vedant0200 2026-03-05 01:00:52 +05:30
  • cb563d617b fix: detect and recover from stuck 409 PENDING_APPROVAL errors (#478) Cameron 2026-03-03 15:37:36 -08:00
  • 94b7eea127 feat: unified lettabot initialization via lettactl (agents.yml) (#393) Nouamane Benbrahim 2026-03-03 17:13:13 -05:00
  • 743cb1fbc9 fix: add diagnostic logging when agent skips lettabot-message CLI in silent mode (#476) Cameron 2026-03-03 12:32:50 -08:00
  • ef13c3d8ab fix: add resolveEmailPrompt tests and consolidate prompt builders (#474) Cameron 2026-03-03 11:59:59 -08:00
  • e7f6e85880 feat(polling): add custom prompt support for Gmail email polling (#471) Jason Carreira 2026-03-03 14:24:58 -05:00