v0.14
What's Changed
- feat: allow editing persona slug (#69) by @mattmezza in #72
- feat(jobs): hide completed jobs from main list behind a 'Show completed' toggle by @mattmezza in #73
- fix(scheduler): run scheduled jobs in the originating agent/chat (#71) by @mattmezza in #74
- fix(llm): config-driven max_tokens + truncation detection (#77) by @mattmezza in #85
- feat(logs): multi-agent log streams in the Logs tab (#75) by @mattmezza in #83
- feat: coding harness — confined file read/write/edit/list/grep/run tools (#76) by @mattmezza in #86
- fix(agent): tool-exec resilience — guard params, catch errors, break repeat-failure loops (#78) by @mattmezza in #87
- fix(permissions): close catch-all ALWAYS rule + fail-open approval (#79) by @mattmezza in #88
- fix(telegram): chunk long messages + cap command in approval text (#80) by @mattmezza in #89
- feat(artifacts): reuse coding-harness file tools instead of a separate artifact mechanism (#82) by @mattmezza in #91
- feat(telegram): emoji reactions via set_reaction tool (#70) by @mattmezza in #92
- feat(voice): add Kokoro 82M offline TTS backend (#84) by @mattmezza in #90
- fix(voice): condition TTS on the reply language (#95) by @mattmezza in #96
- feat: per-persona tool identities (own gh token + browser profile) (#93) by @mattmezza in #94
- fix(personae): renaming/deleting a starter persona no longer duplicates or resurrects it (#102) by @mattmezza in #103
- feat: convert WhatsApp from channel to tool (#97) by @mattmezza in #105
- feat(jobs): scope jobs per persona — show + filter in UI (#101) by @mattmezza in #106
- Remove personalia field — merge into character & tone (#98) by @mattmezza in #107
- Replace Chats tab with developer Inspect tab (last-sent LLM payload per context) (#99) by @mattmezza in #104
- feat: scope permissions per agent/persona (#100) by @mattmezza in #108
- Improve agent context quality and add structured memory write by @mattmezza in #109
Full Changelog: v0.13...v0.14