Commit Graph

905 Commits

Author SHA1 Message Date
Peter Steinberger
faa6063c0b feat: mirror delivered outbound messages (#1031)
Co-authored-by: T Savo <TSavo@users.noreply.github.com>
2026-01-17 02:03:18 +00:00
Peter Steinberger
c27814437a style: apply oxfmt 2026-01-17 01:55:42 +00:00
Peter Steinberger
b1d85b357b fix: queue subagent announce delivery 2026-01-17 01:44:13 +00:00
Peter Steinberger
77df4e344f feat: enhance web_fetch fallbacks 2026-01-17 00:43:37 +00:00
Sash Catanzarite
37a36e4b4f fix: honor message tool channel for tool dedupe (#1053)
- Treat message tool `channel` as provider hint for dedupe/suppression.
- Prefer NO_REPLY after message tool sends to avoid duplicate replies.

Co-authored-by: Sash Catanzarite <1166151+thesash@users.noreply.github.com>
2026-01-17 00:23:51 +00:00
Peter Steinberger
7457e80ade style: format with oxfmt 2026-01-17 00:03:00 +00:00
Peter Steinberger
491f45f058 feat: enhance web_fetch fallbacks 2026-01-17 00:00:49 +00:00
Peter Steinberger
f89fb0eeb9 feat: improve web_fetch readability extraction 2026-01-16 23:18:01 +00:00
Yurii Chukhlib
c0323db3cc docs(web-search): document country and language parameters
Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-16 23:14:33 +00:00
Yurii Chukhlib
4efd83ac67 test(web-search): add tests for country and language parameters
Added three new test cases to verify the new country, search_lang, and ui_lang
parameters are correctly passed to the Brave Search API.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-16 23:14:33 +00:00
Yurii Chukhlib
f9119ab38b feat(web-search): pass country and language params to Brave API
- Add country, search_lang, and ui_lang optional parameters to runWebSearch
- Pass new parameters to Brave Search API as URL query parameters
- Update cache key to include localization parameters
- Wire parameters through createWebSearchTool execute function
2026-01-16 23:14:33 +00:00
Yurii Chukhlib
d355c841de feat(web-search): add country and language optional parameters to schema 2026-01-16 23:14:33 +00:00
Peter Steinberger
d333a9453c fix: stabilize transport-ready test timing 2026-01-16 23:03:12 +00:00
Peter Steinberger
e3ac816fc4 fix: drop unsigned gemini tool calls from history 2026-01-16 22:43:16 +00:00
Peter Steinberger
4fc8d1940a fix: align ZAI thinking toggles 2026-01-16 22:26:43 +00:00
Peter Steinberger
dee91322f9 fix: /stop aborts subagents 2026-01-16 21:37:22 +00:00
Peter Steinberger
3094c55303 style: run oxfmt 2026-01-16 21:11:55 +00:00
Timo Lins
e8d6e5836a Models: add Vercel AI Gateway auth 2026-01-16 21:00:15 +00:00
Peter Steinberger
784fceb930 fix: repair orphaned user turns before embedded prompts 2026-01-16 20:52:18 +00:00
Peter Steinberger
def1f6d70e fix: quiet skill command normalization logs 2026-01-16 20:37:23 +00:00
Peter Steinberger
0085231c40 feat: default telegram reaction level minimal 2026-01-16 20:35:47 +00:00
Marc
082e890637 fix: merge subagent auth profiles 2026-01-16 20:20:26 +00:00
Marc
5e98e1fb44 fix: avoid format keyword in tool schemas
Co-authored-by: marcmarg <marcmarg@users.noreply.github.com>
2026-01-16 20:20:26 +00:00
Peter Steinberger
ef2990e32d feat: expand skill command registration 2026-01-16 20:17:32 +00:00
Peter Steinberger
3c7f860e59 feat: scope telegram inline buttons 2026-01-16 20:16:41 +00:00
Peter Steinberger
d3fe866525 chore: tweak tool call narration guidance (#1008)
Co-authored-by: Christoph Nakazawa <christoph.pojer@gmail.com>
2026-01-16 19:56:04 +00:00
Peter Steinberger
8e7b087a90 test: deflake background exec timeout 2026-01-16 19:48:52 +00:00
Wilkins
d2b93eed12 fix: truncate skill command descriptions to 100 chars for Discord (#1018)
* fix: truncate skill command descriptions to 100 chars for Discord

Discord slash commands have a 100 character limit for descriptions.
Skill descriptions were not being truncated, causing command registration
to fail with an empty error from the Discord API.

* style: format

* style: format
2026-01-16 10:01:59 -06:00
Peter Steinberger
ef6aa6a81f feat: add user-invocable skill commands 2026-01-16 12:10:29 +00:00
Peter Steinberger
7ea3f984da fix: stabilize docker test suite 2026-01-16 11:47:14 +00:00
Peter Steinberger
c981eca2ed fix: expand exec abort/timeout coverage 2026-01-16 10:43:22 +00:00
gerardward2007
db27fc3673 chore: ignore local identity files (#1001) (thanks @gerardward2007)
* chore: ignore local identity files (IDENTITY.md, USER.md)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* chore: ignore local identity files (#1001) (thanks @gerardward2007)

* chore: format session status tool

* chore: format bash exec background abort test

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-01-16 10:30:04 +00:00
Roshan Singh
a35d0d907e fix: keep background exec aborts from killing sessions (#1000) (thanks @roshanasingh4)
When exec returns early in background mode, the tool-call AbortSignal can fire and previously caused killProcessTree(SIGKILL). Ignore abort after yielding/backgrounding so background sessions keep running.
2026-01-16 10:01:39 +00:00
Peter Steinberger
371d76acf9 fix: drop oauth status from session status 2026-01-16 09:39:12 +00:00
Peter Steinberger
adc765a797 fix: correct minimax usage + show reset 2026-01-16 09:36:45 +00:00
Peter Steinberger
d86a3d1294 chore: run format and fix sandbox browser timeouts 2026-01-16 09:18:58 +00:00
Peter Steinberger
89c5c831b9 fix: reset sessions after role ordering conflicts 2026-01-16 09:04:04 +00:00
Muhammed Mukhthar CM
ad983ae7d6 fix: exclude google-antigravity from history downgrade hack (#894)
* Agent: exclude google-antigravity from history downgrade hack

* Lint: fix formatting in test

* Lint: formatting and unused vars in test

* fix: preserve google-antigravity tool calls (#894) (thanks @mukhtharcm)

---------

Co-authored-by: Peter Steinberger <steipete@gmail.com>
2026-01-16 08:14:56 +00:00
Peter Steinberger
9b72339d80 fix: port OpenRouter Gemini sanitization to split files (#845) (thanks @MatthieuBizien) 2026-01-16 08:02:56 +00:00
Matthieu Bizien
e06149b5b7 Agents: sanitize OpenRouter Gemini thoughtSignature 2026-01-16 07:51:49 +00:00
Peter Steinberger
60ac7fd68b Merge pull request #992 from tyler6204/fix/tool-typing-race-condition
fix: send text between tool calls to channel immediately
2026-01-16 07:26:10 +00:00
Peter Steinberger
5d0af26cc3 fix(google): scrub tool schemas for gemini 2026-01-16 06:57:54 +00:00
Jamie Openshaw
f134e2d17f fix(config): allow discord action flags in schema
Ensure discord action flags survive config validation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-16 06:48:25 +00:00
Peter Steinberger
52d3334d2b Merge pull request #993 from cpojer/reminder-improvement
Improve reminder text generation.
2026-01-16 06:03:04 +00:00
Peter Steinberger
ace70322b9 feat: add plugin update tracking 2026-01-16 05:55:05 +00:00
Tyler Yust
f62484da50 fix: handle async tool start handler rejections
Add .catch() to handleToolExecutionStart call to prevent unhandled
promise rejections when onAgentEvent or typing signaling fails.
2026-01-15 21:10:52 -08:00
cpojer
9eb64de2c0 Improve reminder text generation. 2026-01-16 14:03:17 +09:00
Tyler Yust
9263f96ca4 fix: send text between tool calls to channel immediately
Previously, when block streaming was disabled (the default), text generated
between tool calls would only appear after all tools completed. This was
because onBlockReply wasn't passed to the subscription when block streaming
was off, so flushBlockReplyBuffer() before tool execution did nothing.

Now onBlockReply is always passed, and when block streaming is disabled,
block replies are sent directly during tool flush. Directly sent payloads
are tracked to avoid duplicates in final payloads.

Also fixes a race condition where tool summaries could be emitted before
the typing indicator started by awaiting onAgentEvent in tool handlers.
2026-01-15 20:55:52 -08:00
Peter Steinberger
7f3557bc8e fix: repair CI formatting + launchd test 2026-01-16 03:52:47 +00:00
Peter Steinberger
cc145407c3 feat: mac node exec policy + remote skills hot reload 2026-01-16 03:45:06 +00:00