Commit Graph

14943 Commits

Author SHA1 Message Date
Peter Steinberger
9d3394b459 fix(cron): use --session-target and --session flags (#27167) (thanks @Matt-Hulme) 2026-02-26 13:27:46 +01:00
Peter Steinberger
912b55ac18 fix(config): harden include file loading path checks 2026-02-26 12:53:44 +01:00
Peter Steinberger
9560d8cf9a chore: bump versions to 2026.2.26 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
d50e2677b6 chore(acpx): bump package version to 2026.2.25 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
a043668ba4 docs(changelog): thank @emanuelst for telegram preview fix (#27449) 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
0d020469e4 fix(telegram): prime final preview before stop flush 2026-02-26 12:53:44 +01:00
Gustavo Madeira Santana
5be223ec1c Tests: tighten discord work account type in doctor config flow 2026-02-26 12:53:44 +01:00
Gustavo Madeira Santana
9426abbccb Doctor: keep allowFrom account-scoped in multi-account configs 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
2963f49659 fix: changelog for NO_REPLY streaming fix (#19576) (thanks @aldoeliacim) 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
37b8606e48 docs(auto-reply): align silent token comment with regex 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
2620f30500 fix(auto-reply): tighten silent token semantics and prefix streaming 2026-02-26 12:53:44 +01:00
HAL
f7b031f2dd fix: tighten isSilentReplyText to match whole-text only
The suffix regex matched NO_REPLY at the end of any response,
suppressing substantive replies when models (e.g. Gemini 3 Pro)
appended NO_REPLY to real content.

Replace prefix+suffix regexes with a single whole-string match.
Only responses that are entirely the silent token (with optional
whitespace) are now suppressed.

Add unit tests for the fix.

Fixes #19537
2026-02-26 12:53:44 +01:00
Onur Solmaz
57e7299e20 feat: ACP thread-bound agents (#23580)
* docs: add ACP thread-bound agents plan doc

* docs: expand ACP implementation specification

* feat(acp): route ACP sessions through core dispatch and lifecycle cleanup

* feat(acp): add /acp commands and Discord spawn gate

* ACP: add acpx runtime plugin backend

* fix(subagents): defer transient lifecycle errors before announce

* Agents: harden ACP sessions_spawn and tighten spawn guidance

* Agents: require explicit ACP target for runtime spawns

* docs: expand ACP control-plane implementation plan

* ACP: harden metadata seeding and spawn guidance

* ACP: centralize runtime control-plane manager and fail-closed dispatch

* ACP: harden runtime manager and unify spawn helpers

* Commands: route ACP sessions through ACP runtime in agent command

* ACP: require persisted metadata for runtime spawns

* Sessions: preserve ACP metadata when updating entries

* Plugins: harden ACP backend registry across loaders

* ACPX: make availability probe compatible with adapters

* E2E: add manual Discord ACP plain-language smoke script

* ACPX: preserve streamed spacing across Discord delivery

* Docs: add ACP Discord streaming strategy

* ACP: harden Discord stream buffering for thread replies

* ACP: reuse shared block reply pipeline for projector

* ACP: unify streaming config and adopt coalesceIdleMs

* Docs: add temporary ACP production hardening plan

* Docs: trim temporary ACP hardening plan goals

* Docs: gate ACP thread controls by backend capabilities

* ACP: add capability-gated runtime controls and /acp operator commands

* Docs: remove temporary ACP hardening plan

* ACP: fix spawn target validation and close cache cleanup

* ACP: harden runtime dispatch and recovery paths

* ACP: split ACP command/runtime internals and centralize policy

* ACP: harden runtime lifecycle, validation, and observability

* ACP: surface runtime and backend session IDs in thread bindings

* docs: add temp plan for binding-service migration

* ACP: migrate thread binding flows to SessionBindingService

* ACP: address review feedback and preserve prompt wording

* ACPX plugin: pin runtime dependency and prefer bundled CLI

* Discord: complete binding-service migration cleanup and restore ACP plan

* Docs: add standalone ACP agents guide

* ACP: route harness intents to thread-bound ACP sessions

* ACP: fix spawn thread routing and queue-owner stall

* ACP: harden startup reconciliation and command bypass handling

* ACP: fix dispatch bypass type narrowing

* ACP: align runtime metadata to agentSessionId

* ACP: normalize session identifier handling and labels

* ACP: mark thread banner session ids provisional until first reply

* ACP: stabilize session identity mapping and startup reconciliation

* ACP: add resolved session-id notices and cwd in thread intros

* Discord: prefix thread meta notices consistently

* Discord: unify ACP/thread meta notices with gear prefix

* Discord: split thread persona naming from meta formatting

* Extensions: bump acpx plugin dependency to 0.1.9

* Agents: gate ACP prompt guidance behind acp.enabled

* Docs: remove temp experiment plan docs

* Docs: scope streaming plan to holy grail refactor

* Docs: refactor ACP agents guide for human-first flow

* Docs/Skill: add ACP feature-flag guidance and direct acpx telephone-game flow

* Docs/Skill: add OpenCode and Pi to ACP harness lists

* Docs/Skill: align ACP harness list with current acpx registry

* Dev/Test: move ACP plain-language smoke script and mark as keep

* Docs/Skill: reorder ACP harness lists with Pi first

* ACP: split control-plane manager into core/types/utils modules

* Docs: refresh ACP thread-bound agents plan

* ACP: extract dispatch lane and split manager domains

* ACP: centralize binding context and remove reverse deps

* Infra: unify system message formatting

* ACP: centralize error boundaries and session id rendering

* ACP: enforce init concurrency cap and strict meta clear

* Tests: fix ACP dispatch binding mock typing

* Tests: fix Discord thread-binding mock drift and ACP request id

* ACP: gate slash bypass and persist cleared overrides

* ACPX: await pre-abort cancel before runTurn return

* Extension: pin acpx runtime dependency to 0.1.11

* Docs: add pinned acpx install strategy for ACP extension

* Extensions/acpx: enforce strict local pinned startup

* Extensions/acpx: tighten acp-router install guidance

* ACPX: retry runtime test temp-dir cleanup

* Extensions/acpx: require proactive ACPX repair for thread spawns

* Extensions/acpx: require restart offer after acpx reinstall

* extensions/acpx: remove workspace protocol devDependency

* extensions/acpx: bump pinned acpx to 0.1.13

* extensions/acpx: sync lockfile after dependency bump

* ACPX: make runtime spawn Windows-safe

* fix: align doctor-config-flow repair tests with default-account migration (#23580) (thanks @osolmaz)
2026-02-26 12:53:44 +01:00
Gustavo Madeira Santana
49ae78865a chore(changelog): move post release entries to unreleased section 2026-02-26 12:53:44 +01:00
Gustavo Madeira Santana
150d4a7cc7 Doctor: ignore slash sessions in transcript integrity check
Merged via deterministic merge flow.

Prepared head SHA: e5cee7a2ec

Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
2026-02-26 12:53:44 +01:00
Ayaan Zaidi
1e1180d142 fix(ssrf): honor global family policy for pinned dispatcher 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
31cb9e44dd fix: changelog for telegram group inline callbacks (#27343) (thanks @GodsBoy) 2026-02-26 12:53:44 +01:00
GodsBoy
133dc7956f fix(telegram): allow inline button callbacks in groups when command was authorized (#27309) 2026-02-26 12:53:44 +01:00
Gustavo Madeira Santana
8bc56095ed Channels: move single-account config into accounts.default (#27334)
Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: 50b5771808
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-02-26 12:53:44 +01:00
Ayaan Zaidi
640df8608a fix: update changelog for notifications list land (#27344) (thanks @obviyus) 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
317063754b refactor(agents): dedupe node read invoke commands 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
588dbe510f refactor(android): unify notifications.list status flow 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
b71877bb58 feat(agents): add nodes notifications_list action 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
8c17cff3d4 feat(gateway): allow notifications.list for android nodes 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
bef4f37446 feat(android): add notifications.list node command 2026-02-26 12:53:44 +01:00
Sid
9c6dc098ce fix(config): preserve agent-level apiKey/baseUrl during models.json merge (#27293)
Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: 6b4b37b03d
Co-authored-by: Sid-Qin <201593046+Sid-Qin@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-02-26 12:53:44 +01:00
yinghaosang
28a3fc49b5 docs: fix wrong Providers link in configuration examples 2026-02-26 12:53:44 +01:00
Gustavo Madeira Santana
cb43285e52 Daemon tests: guard undefined runtime status 2026-02-26 12:53:44 +01:00
Gustavo Madeira Santana
a09e37bcbb fix(daemon): keep launchd KeepAlive while preserving restart hardening 2026-02-26 12:53:44 +01:00
Frank Yang
9b03530a21 fix(daemon): stabilize LaunchAgent restart and proxy env passthrough (#27276)
Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: b08797a995
Co-authored-by: frankekn <4488090+frankekn@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-02-26 12:53:44 +01:00
Gustavo Madeira Santana
2621ce491f Agents: add account-scoped bind and routing commands (#27195)
Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: ad35a458a5
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-02-26 12:53:44 +01:00
Ayaan Zaidi
e23915c501 fix: update changelog for android invoke distill (#27257) (thanks @obviyus) 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
755d4f2d39 refactor(android): unify invoke availability gating 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
e7b5fb824d fix(android): require gateway device auth store 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
0c1731136d fix(android): omit websocket Origin for native gateway connect 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
efc7c4f339 refactor(android): unify invoke error parsing 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
512a6e4f9a refactor(android): distill invoke dispatcher command flow 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
968c2a7010 refactor(android): centralize invoke command registry 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
334da9ec46 test(android): cover invoke paramsJSON and error mapping 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
df8a40f7e2 fix(nodes): default camera snap to front high-quality image 2026-02-26 12:53:44 +01:00
Ayaan Zaidi
43762330cd test(android): add GatewaySession invoke roundtrip test 2026-02-26 12:53:43 +01:00
Josh Avant
0e812c0e4f CI: shard Windows test lane for faster CI critical path (#27234)
Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: f7c41089e0
Co-authored-by: joshavant <830519+joshavant@users.noreply.github.com>
Co-authored-by: joshavant <830519+joshavant@users.noreply.github.com>
Reviewed-by: @joshavant
2026-02-26 12:53:43 +01:00
Gustavo Madeira Santana
8f8a85567f Onboarding: support plugin-owned interactive channel flows (#27191)
Merged via /review-pr -> /prepare-pr -> /merge-pr.

Prepared head SHA: 53872cf8e7
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com>
Reviewed-by: @gumadeiras
2026-02-26 12:53:43 +01:00
Gustavo Madeira Santana
356e9706f2 chore(ci): fix cross-platform symlink path assertions in agents file tests 2026-02-26 12:53:43 +01:00
Gustavo Madeira Santana
3bb94559d6 pairing: enforce strict account-scoped state 2026-02-26 12:53:43 +01:00
Gustavo Madeira Santana
4c560d0f41 plugin-sdk: export shared timezone formatting helpers (#27196) 2026-02-26 12:53:43 +01:00
Gustavo Madeira Santana
8c4dbc0f71 pairing: isolate account-scoped allowlist and pending requests 2026-02-26 12:53:43 +01:00
Peter Steinberger
ea5cb56e61 fix: harden Docker/GCP onboarding flow (#26253) (thanks @pandego) 2026-02-26 12:53:43 +01:00
pandego
40f343e5d3 Docker/docs: reduce docker build OOM risk on small GCP hosts 2026-02-26 12:53:43 +01:00
Peter Steinberger
1404eb575f docs: fix onboarding markdown list spacing 2026-02-26 12:53:43 +01:00