Peter Steinberger
6ba7238ac6
build: bump versions to 2026.3.2
2026-03-02 04:55:53 +00:00
Agent
e7cafed424
chore(release): bump version to 2026.3.1
2026-03-01 21:14:17 +00:00
Peter Steinberger
fe807e4bed
chore(release): bump 2026.2.27 and split changelog
2026-02-27 16:09:28 +01:00
Peter Steinberger
caace61ba1
chore: bump versions to 2026.2.26
2026-02-26 12:11:02 +01:00
Shakker
2652bb1d7d
Release: sync plugin versions to 2026.2.25
2026-02-25 04:19:59 +00:00
Shakker
955cc9029f
chore: sync plugin versions to 2026.2.24
2026-02-24 22:45:46 +00:00
Peter Steinberger
0183610db3
refactor: de-duplicate channel runtime and payload helpers
2026-02-23 21:25:28 +00:00
Peter Steinberger
75423a00d6
refactor: deduplicate shared helpers and test setup
2026-02-23 20:40:44 +00:00
边黎安
a4c373935f
fix(agents): fall back to agents.defaults.model when agent has no model config ( #24210 )
...
Merged via /review-pr -> /prepare-pr -> /merge-pr.
Prepared head SHA: 0f272b1027
Co-authored-by: bianbiandashen <16240681+bianbiandashen@users.noreply.github.com >
Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com >
Reviewed-by: @gumadeiras
2026-02-23 03:18:55 -05:00
Vignesh Natarajan
8d9d01447e
chore: align plugin versions and harden outbound cross-provider test
2026-02-22 23:04:17 -08:00
Peter Steinberger
59807efa31
refactor(plugin-sdk): unify channel dedupe primitives
2026-02-22 10:46:34 +01:00
Peter Steinberger
ae8d4a8eec
fix(security): harden channel token and id generation
2026-02-22 10:16:02 +01:00
Peter Steinberger
549549f6a0
fix(ci): sync plugin versions and harden install smoke
2026-02-21 20:18:37 +01:00
Peter Steinberger
bdfb97afad
chore: prep 2026.2.22 unreleased and publish new npm plugins
2026-02-21 19:05:35 +01:00
Peter Steinberger
9231d7d30f
chore: bump version to 2026.2.21
2026-02-21 11:02:30 +01:00
Peter Steinberger
f66b23de75
chore(release): bump versions to 2026.2.20
2026-02-20 00:02:53 +01:00
Peter Steinberger
b0e55283d5
chore: bump release metadata to 2026.2.19
2026-02-19 16:17:34 +01:00
Peter Steinberger
d51929ecb5
fix: block ISATAP SSRF bypass via shared host/ip guard
2026-02-19 09:59:47 +01:00
Peter Steinberger
4bf3338834
chore: bump version to 2026.2.18 unreleased
2026-02-18 04:40:06 +01:00
Peter Steinberger
b8b43175c5
style: align formatting with oxfmt 0.33
2026-02-18 01:34:35 +00:00
Peter Steinberger
31f9be126c
style: run oxfmt and fix gate failures
2026-02-18 01:29:02 +00:00
Peter Steinberger
9a2c39419e
chore(release): bump version to 2026.2.17
2026-02-17 23:08:55 +01:00
cpojer
d0cb8c19b2
chore: wtf.
2026-02-17 13:36:48 +09:00
Sebastian
ed11e93cf2
chore(format)
2026-02-16 23:20:16 -05:00
cpojer
72f00df95a
chore: Fix more extension test type 1/N.
2026-02-17 10:14:01 +09:00
cpojer
90ef2d6bdf
chore: Update formatting.
2026-02-17 09:18:40 +09:00
Peter Steinberger
544ffbcf7b
refactor(extensions): dedupe connector helper usage
2026-02-16 14:59:30 +00:00
Peter Steinberger
39fa81dc96
chore: bump version to 2026.2.16
2026-02-16 06:08:47 +01:00
Peter Steinberger
de103773c7
refactor(tlon): share urbit poke/scry ops
2026-02-15 19:21:42 +00:00
Peter Steinberger
379b445582
chore: bump version to 2026.2.15
2026-02-15 04:50:31 +01:00
Peter Steinberger
1ff15e60d3
chore(release): bump versions to 2026.2.14
2026-02-15 02:53:35 +01:00
Peter Steinberger
d0f64c955e
refactor(tlon): centralize Urbit request helpers
2026-02-14 19:22:29 +01:00
Peter Steinberger
bfa7d21e99
fix(security): harden tlon Urbit requests against SSRF
2026-02-14 18:42:10 +01:00
Peter Steinberger
67251e97bd
fix(ci): sync extension versions to root release ( #15199 )
2026-02-13 05:54:03 +01:00
Peter Steinberger
7695b4842b
chore: bump version to 2026.2.12
2026-02-12 18:20:46 +01:00
Peter Steinberger
1872d0c592
chore: bump version to 2026.2.10
2026-02-11 11:27:23 +01:00
Peter Steinberger
53273b490b
fix(auto-reply): prevent sender spoofing in group prompts
2026-02-10 00:44:38 -06:00
Peter Steinberger
33c75cb6bf
chore(extensions): mark bundled packages private
2026-02-09 12:59:06 -06:00
max
40b11db80e
TypeScript: add extensions to tsconfig and fix type errors ( #12781 )
...
* TypeScript: add extensions to tsconfig and fix type errors
- Add extensions/**/* to tsconfig.json includes
- Export ProviderAuthResult, AnyAgentTool from plugin-sdk
- Fix optional chaining for messageActions across channels
- Add missing type imports (MSTeamsConfig, GroupPolicy, etc.)
- Add type annotations for provider auth handlers
- Fix undici/fetch type compatibility in zalo proxy
- Correct ChannelAccountSnapshot property usage
- Add type casts for tool registrations
- Extract usage view styles and types to separate files
* TypeScript: fix optional debug calls and handleAction guards
2026-02-09 10:05:38 -08:00
Peter Steinberger
fb8c653f53
chore(release): 2026.2.9
2026-02-09 11:19:07 -06:00
max
223eee0a20
refactor: unify peer kind to ChatType, rename dm to direct ( #11881 )
...
* fix: use .js extension for ESM imports of RoutePeerKind
The imports incorrectly used .ts extension which doesn't resolve
with moduleResolution: NodeNext. Changed to .js and added 'type'
import modifier.
* fix tsconfig
* refactor: unify peer kind to ChatType, rename dm to direct
- Replace RoutePeerKind with ChatType throughout codebase
- Change 'dm' literal values to 'direct' in routing/session keys
- Keep backward compat: normalizeChatType accepts 'dm' -> 'direct'
- Add ChatType export to plugin-sdk, deprecate RoutePeerKind
- Update session key parsing to accept both 'dm' and 'direct' markers
- Update all channel monitors and extensions to use ChatType
BREAKING CHANGE: Session keys now use 'direct' instead of 'dm'.
Existing 'dm' keys still work via backward compat layer.
* fix tests
* test: update session key expectations for dmdirect migration
- Fix test expectations to expect :direct: in generated output
- Add explicit backward compat test for normalizeChatType('dm')
- Keep input test data with :dm: keys to verify backward compat
* fix: accept legacy 'dm' in session key parsing for backward compat
getDmHistoryLimitFromSessionKey now accepts both :dm: and :direct:
to ensure old session keys continue to work correctly.
* test: add explicit backward compat tests for dmdirect migration
- session-key.test.ts: verify both :dm: and :direct: keys are valid
- getDmHistoryLimitFromSessionKey: verify both formats work
* feat: backward compat for resetByType.dm config key
* test: skip unix-path Nix tests on Windows
2026-02-09 09:20:52 +09:00
Peter Steinberger
9f703a44dc
chore(release): 2026.2.6-3
2026-02-07 00:44:32 -08:00
Peter Steinberger
ad4dd0422e
chore(release): 2026.2.6-2
2026-02-07 00:30:43 -08:00
Peter Steinberger
677450cd9b
chore(release): bump version to 2026.2.6
2026-02-06 15:37:31 -08:00
Gustavo Madeira Santana
4629054403
chore: apply local workspace updates ( #9911 )
...
* chore: apply local workspace updates
* fix: resolve prep findings after rebase (#9898 ) (thanks @gumadeiras)
* refactor: centralize model allowlist normalization (#9898 ) (thanks @gumadeiras)
* fix: guard model allowlist initialization (#9911 )
* docs: update changelog scope for #9911
* docs: remove model names from changelog entry (#9911 )
* fix: satisfy type-aware lint in model allowlist (#9911 )
2026-02-05 16:54:44 -05:00
Peter Steinberger
5031b283a5
chore: bump version to 2026.2.4
2026-02-05 00:38:50 -08:00
Peter Steinberger
f895c9fba1
chore: sync plugin versions to 2026.2.3
2026-02-04 17:55:13 -08:00
mudrii
5d82c82313
feat: per-channel responsePrefix override ( #9001 )
...
* feat: per-channel responsePrefix override
Add responsePrefix field to all channel config types and Zod schemas,
enabling per-channel and per-account outbound response prefix overrides.
Resolution cascade (most specific wins):
L1: channels.<ch>.accounts.<id>.responsePrefix
L2: channels.<ch>.responsePrefix
L3: (reserved for channels.defaults)
L4: messages.responsePrefix (existing global)
Semantics:
- undefined -> inherit from parent level
- empty string -> explicitly no prefix (stops cascade)
- "auto" -> derive [identity.name] from routed agent
Changes:
- Core logic: resolveResponsePrefix() in identity.ts accepts
optional channel/accountId and walks the cascade
- resolveEffectiveMessagesConfig() passes channel context through
- Types: responsePrefix added to WhatsApp, Telegram, Discord, Slack,
Signal, iMessage, Google Chat, MS Teams, Feishu, BlueBubbles configs
- Zod schemas: responsePrefix added for config validation
- All channel handlers wired: telegram, discord, slack, signal,
imessage, line, heartbeat runner, route-reply, native commands
- 23 new tests covering backward compat, channel/account levels,
full cascade, auto keyword, empty string stops, unknown fallthrough
Fully backward compatible - no existing config is affected.
Fixes #8857
* fix: address CI lint + review feedback
- Replace Record<string, any> with proper typed helpers (no-explicit-any)
- Add curly braces to single-line if returns (eslint curly)
- Fix JSDoc: 'Per-channel' → 'channel/account' on shared config types
- Extract getChannelConfig() helper for type-safe dynamic key access
* fix: finish responsePrefix overrides (#9001 ) (thanks @mudrii)
* fix: normalize prefix wiring and types (#9001 ) (thanks @mudrii)
---------
Co-authored-by: Gustavo Madeira Santana <gumadeiras@gmail.com >
2026-02-04 16:16:34 -05:00
Peter Steinberger
1c4db91593
chore: prepare 2026.2.2 release
2026-02-03 10:02:01 -08:00
Peter Steinberger
85cd55e22b
chore: bump to 2026.2.1
2026-02-02 08:51:54 +00:00