Peter Steinberger
54d667f194
fix: localize system event timestamps
2026-01-22 04:15:39 +00:00
Peter Steinberger
69aad2d1b2
fix: default envelope timestamps to local
2026-01-22 04:10:06 +00:00
Peter Steinberger
b1e3eafc0d
Merge pull request #1329 from dlauer/feature/agent-avatar-support
...
feat: add avatar support for agent identity
2026-01-22 04:09:00 +00:00
Peter Steinberger
a283afbde9
Merge pull request #1204 from cpojer/reminders
...
Improve `cron` reminder tool description.
2026-01-22 04:06:50 +00:00
Peter Steinberger
82cec75f25
fix: align exec approvals default agent
2026-01-22 04:05:54 +00:00
Peter Steinberger
311c02c88d
fix: map OpenCode Zen models to correct APIs
2026-01-22 04:02:53 +00:00
Peter Steinberger
1d1ee40d6e
fix: default exec approvals to main agent ( #1417 ) (thanks @czekaj)
2026-01-22 03:58:53 +00:00
Lucas Czekaj
0d6fb4c841
fix(exec): derive agentId from sessionKey for allowlist lookup
...
When creating exec tools via chat/Discord, agentId was not passed,
causing allowlist lookup to use 'default' key instead of 'main'.
User's allowlist entries in agents.main were never matched.
Now derives agentId from sessionKey if not explicitly provided,
ensuring correct allowlist lookup for all exec paths.
2026-01-22 03:58:53 +00:00
Peter Steinberger
08803015bd
Merge pull request #1103 from mkbehr/feat/cron-context-messages
...
feat(cron): Add parameter to control context messages
2026-01-22 03:52:34 +00:00
Peter Steinberger
0eba1aefd4
fix: cap cron context messages ( #1103 ) (thanks @mkbehr)
2026-01-22 03:52:03 +00:00
Peter Steinberger
c2b25dac8e
fix: msteams attachments + plugin prompt hints
...
Co-authored-by: Christof <10854026+Evizero@users.noreply.github.com>
2026-01-22 03:37:29 +00:00
Michael Behr
2fa222f550
update description
2026-01-22 03:37:20 +00:00
Michael Behr
40363547fa
feat(cron): add contextMessages param to control reminder context
2026-01-22 03:37:20 +00:00
Peter Steinberger
1e143239a4
fix: prevent memory CLI hangs
2026-01-22 03:14:59 +00:00
Peter Steinberger
16a5fcd629
Merge pull request #1414 from czekaj/fix/discord-exec-resolvedpath-validation
...
fix(exec): pass undefined instead of null for optional approval params
2026-01-22 03:11:26 +00:00
Peter Steinberger
668f1454fb
fix: reduce invalid config log noise
2026-01-22 02:48:01 +00:00
Peter Steinberger
2f9b614678
test: avoid downgrade prompt in update fallback
2026-01-22 02:44:13 +00:00
Peter Steinberger
9ac8f0521d
Merge pull request #1373 from yazinsai/main
...
Add auto-refresh polling for debug view
2026-01-22 02:25:24 +00:00
Peter Steinberger
a55e0ad311
fix: sync debug polling with route changes ( #1373 ) (thanks @yazinsai)
2026-01-22 02:24:19 +00:00
Peter Steinberger
6c347f39d2
test: fix await-thenable in signal typing test
2026-01-22 02:20:42 +00:00
Lucas Czekaj
698e8f4c0c
fix(exec): pass undefined instead of null for optional approval params
...
TypeBox Type.Optional(Type.String()) accepts string|undefined but NOT null.
Discord exec was failing with 'resolvedPath must be string' because callers
passed null explicitly. Web UI worked because it skipped the approval request.
Fixes exec approval validation error in Discord-triggered sessions.
2026-01-21 18:14:51 -08:00
Peter Steinberger
2828d59782
test: stabilize exec approvals path resolution
2026-01-22 02:07:40 +00:00
Peter Steinberger
ca67b686ac
feat(signal): add typing + read receipts
2026-01-22 02:04:59 +00:00
Peter Steinberger
aa877337cb
test: avoid hardcoded version strings
2026-01-22 02:01:11 +00:00
Peter Steinberger
567415d38f
chore: bump version to 2026.1.21
2026-01-22 01:59:16 +00:00
Peter Steinberger
258fe35d5b
fix: finish model list alias + heartbeat session ( #1256 ) (thanks @zknicker)
2026-01-22 01:36:58 +00:00
Zach Knickerbocker
66810207e2
feat: configurable heartbeat session
2026-01-22 01:36:28 +00:00
Peter Steinberger
9e96b74a13
fix: handle Windows safe-bin exe names
2026-01-22 01:30:06 +00:00
Peter Steinberger
4d39cba023
Merge pull request #1372 from zerone0x/fix/openrouter-tool-call-id-alphanumeric
...
fix(agents): use alphanumeric-only tool call IDs for OpenRouter compatibility
2026-01-22 01:17:16 +00:00
Peter Steinberger
ca5b9edbdf
test: update fuzzy model selection expectations ( #1372 ) (thanks @zerone0x)
2026-01-22 01:16:59 +00:00
Peter Steinberger
e16601b92c
fix: unify exec approval ids
2026-01-22 00:59:29 +00:00
Peter Steinberger
ee4e9b0758
fix: enforce Mistral tool call ids ( #1372 ) (thanks @zerone0x)
2026-01-22 00:43:15 +00:00
Peter Steinberger
8dbf803b1b
fix: remove setup-token run option in onboarding
2026-01-22 00:42:04 +00:00
zerone0x
ecb8997da0
fix(agents): make tool call ID sanitization conditional with standard/strict modes
...
- Add ToolCallIdMode type ('standard' | 'strict') for provider compatibility
- Standard mode (default): allows [a-zA-Z0-9_-] for readable session logs
- Strict mode: only [a-zA-Z0-9] for Mistral via OpenRouter
- Update sanitizeSessionMessagesImages to accept toolCallIdMode option
- Export ToolCallIdMode from pi-embedded-helpers barrel
Addresses review feedback on PR #1372 about readability.
2026-01-22 00:41:22 +00:00
zerone0x
923f28a128
fix(agents): use alphanumeric-only tool call IDs for OpenRouter compatibility
...
Some providers like Mistral via OpenRouter require strictly alphanumeric
tool call IDs. The error message indicates: "Tool call id was
whatsapp_login_1768799841527_1 but must be a-z, A-Z, 0-9, with a length
of 9."
Changes:
- Update sanitizeToolCallId to strip all non-alphanumeric characters
(previously allowed underscores and hyphens)
- Update makeUniqueToolId to use alphanumeric suffixes (x2, x3, etc.)
instead of underscores
- Update isValidCloudCodeAssistToolId to validate alphanumeric-only IDs
- Update tests to reflect stricter sanitization
Fixes #1359
Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-22 00:41:22 +00:00
Peter Steinberger
cf3666c416
fix: refine model directive handling
2026-01-22 00:29:27 +00:00
Peter Steinberger
e49887e1d0
fix: warn on unset gateway.mode
2026-01-22 00:21:08 +00:00
Peter Steinberger
e9245837ea
fix: enforce secure control ui auth
2026-01-21 23:58:42 +00:00
Peter Steinberger
c8442c572d
fix: type gateway lock handle
2026-01-21 23:05:11 +00:00
Peter Steinberger
6b7bcc9e8e
fix: stabilize ci
2026-01-21 22:59:11 +00:00
Peter Steinberger
1ee83caed4
fix(gateway): enforce singleton lock
2026-01-21 22:47:18 +00:00
Peter Steinberger
147e28ba95
Merge pull request #1398 from vignesh07/feat/models-command
...
fix(chat): add /models and stop /model from dumping full model list
2026-01-21 21:54:16 +00:00
Peter Steinberger
3161a0ea0a
feat: tighten exec allowlist gating
2026-01-21 21:45:50 +00:00
Vignesh Natarajan
71a2cf71ad
fix(models): include configured providers/models + ignore page with all
2026-01-21 13:14:18 -08:00
Vignesh Natarajan
8cfa2a6728
fix(models): handle out-of-range pages
2026-01-21 12:54:02 -08:00
Peter Steinberger
7efa487150
fix: add explicit tailnet gateway bind
2026-01-21 20:36:09 +00:00
Peter Steinberger
d3647b2c65
refactor: unify threading contexts
2026-01-21 20:35:12 +00:00
Peter Steinberger
55ef663003
fix: correct nodes exec config typing
2026-01-21 20:32:43 +00:00
Peter Steinberger
b0b96fe731
feat: add heartbeat active hours
2026-01-21 20:30:37 +00:00
Peter Steinberger
3cbd187a13
feat: make nodes run exec-style
2026-01-21 20:25:12 +00:00