Peter Steinberger
5ebfbbf8d7
fix(plugins): honor per-agent runtime config ( #124978 )
...
* fix(plugins): resolve per-agent config through SDK
* test(codex): preserve agent runtime exports
* test(telegram): make default owner explicit
* refactor(plugins): use lightweight agent scope runtime
* fix(codex): preserve multi-agent execution ownership
* chore(plugin-sdk): record approved agent scope exports
* fix(codex): keep scoped sandbox ownership authoritative
* fix(codex): preserve agent scope in native side actions
* fix(ci): avoid counting node check as environment variable
2026-08-17 01:53:08 -07:00
Peter Steinberger
12165769c7
refactor(agents): move OpenRouter failover ownership to its plugin and derive reason schemas from one tuple ( #121898 )
...
* refactor(agents): centralize failover ownership and reasons
* test(agents): move OpenRouter failover cases to plugin owner
* fix(agents): preserve prepared provider failover ownership
* test(agents): avoid failover mock shadowing
* fix(agents): preserve provider owner in error copy
* fix(agents): complete provider owner propagation
* chore(plugins): refresh failover type closure hashes
2026-08-11 04:30:18 -07:00
Peter Steinberger
830ab164ef
fix(openrouter): isolate custom proxy credentials and transport security ( #118773 )
...
* fix(openrouter): confine custom endpoint credentials and transport policy
* test(openrouter): preserve typed fetch arguments in proxy fixtures
2026-08-03 10:32:06 -07:00
Peter Steinberger
d92d68ac77
fix(providers): canonicalize model families and stream outcomes ( #116998 )
...
* fix(providers): canonicalize live model families and stream finalization
* test(openrouter): use canonical typed stream fixture
---------
Co-authored-by: Peter Steinberger <steipete@macos.shared >
2026-07-31 15:29:26 -07:00
Peter Steinberger
5bfc65d7f4
refactor: remove 3,543 lines of redundant runtime and tests ( #115961 )
...
* refactor: remove 3,543 lines of redundant runtime and tests
* refactor: ratchet production environment variable budget
2026-07-29 11:43:41 -04:00
Peter Steinberger
eec2c0cc26
refactor(providers): unify lifecycle-safe manifest registration ( #114381 )
...
* refactor(providers): canonicalize manifest-driven registration
* fix(zai): eliminate type-only SDK import side effects
2026-07-27 03:20:02 -04:00
Jason (Json)
55cf9523e0
feat: discover models from live provider catalogs ( #112412 )
...
* feat: discover models from live provider catalogs
* fix(provider-catalog): satisfy current catalog contracts
* fix(deps): update fast-uri past new advisory
* fix(deps): refresh fast-uri shrinkwraps
* fix(openrouter): satisfy provider catalog lint
* fix(agents): preserve refreshable catalog metadata
* test(agents): keep catalog fallback proof within lint budget
* fix(provider-catalog): honor live model contracts
* fix(minimax): type discovery headers explicitly
* docs(plugin-sdk): define live model discovery contract
2026-07-21 19:29:57 -06:00
Peter Steinberger
c7e7ac2728
refactor: remove expired plugin compatibility surfaces ( #111451 )
...
* docs(secrets): remove retired web credential paths
* refactor(web): remove retired provider compatibility paths
* refactor(providers): delete retired compatibility routes
* refactor(secrets): remove retired credential aliases
* refactor(plugin-sdk): delete retired compatibility surfaces
* docs(plugin-sdk): remove retired migration guidance
* chore(plugin-sdk): refresh rebased surface budgets
* chore(plugin-sdk): refresh API removal baseline
* refactor(compat): migrate retired internal callers
* chore(plugin-sdk): refresh current-main baselines
* test(config): migrate plugin-owned secret assertions
* test(gateway): narrow plugin secret refs
* fix(plugin-sdk): preserve private boundary type identity
* chore(compat): remove stale sweep references
* chore(lint): lower max-lines budget
* refactor(secrets): remove unused web helper
* build(plugin-sdk): drop removed compat entries
* chore(plugin-sdk): refresh rebased API baseline
* chore(plugin-sdk): use Linux API baseline hash
* fix(plugin-sdk): preserve private bundled build entries
* fix(plugin-sdk): package private runtime facades
* fix(plugins): preserve external credential contracts
2026-07-19 11:04:48 -07:00
Peter Steinberger
0393189243
chore(plugins): gate deprecation hygiene in CI and purge internal deprecated usage ( #108261 )
...
* chore(plugins): gate deprecation hygiene in CI and purge internal deprecated usage
* fix(agents): migrate auth-profiles oauth import to OAuthProviderId
* fix(whatsapp): use durability param in delivery-recovery test
* chore(scripts): declare shouldRunDeprecationHygieneChecks in check-changed types
* test(plugins): update runtime-api guard for ssrf policy rename
2026-07-15 04:15:23 -07:00
xingzhou
03558dc008
fix(openrouter): Fusion prompt corrupts boundary emoji in model IDs ( #104433 )
...
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-07-11 12:11:36 -07:00
Peter Steinberger
07e2d633cc
feat: show auto-detected provider plans and billing ( #100520 )
...
* feat(providers): auto-discover usage billing
* feat(ui): show provider plans and billing
* fix(ui): translate provider billing labels
2026-07-06 04:53:09 +01:00
Sally O'Malley
7e12a3326d
feat(openrouter): surface Fusion panel config ( #93005 )
...
Signed-off-by: sallyom <somalley@redhat.com >
2026-06-14 12:44:49 -04:00
liuhao1024
6314c377bb
fix(openrouter): normalize provider-qualified model IDs ( #92627 )
...
Normalize provider-qualified OpenRouter model IDs before capability lookup and transport while preserving native OpenRouter namespace IDs.
Fixes #92611 .
Co-authored-by: liuhao1024 <sunsky.lau@gmail.com >
2026-06-13 12:05:28 +01:00
kenny
b9280d5863
feat: add OpenRouter OAuth login
...
(cherry picked from commit dccfb60656 )
2026-06-09 21:59:56 -07:00
Peter Steinberger
4fa5092cdc
docs: document small extension sources
2026-06-04 21:02:07 -04:00
Peter Steinberger
304e2c83c0
chore(lint): enable stricter oxlint rules
2026-05-31 18:59:02 +01:00
rain
ad1d8bf990
fix(openrouter): apply strict9 ids to Mistral routes
...
Fixes #58012 .
Applies strict9 replay tool call id sanitization to OpenRouter Mistral-family model routes, including unprefixed Mistral/Codestral/Devstral aliases, while preserving existing passthrough behavior for Gemini and other OpenRouter-backed routes.
Adds focused unit coverage plus a live OpenRouter model catalog test so new Mistral-family routes are checked against the replay policy. Also keeps the current core lint gate green by switching the tool schema cache key sort to a non-mutating sorted array.
Co-authored-by: Pluviobyte <Pluviobyte@users.noreply.github.com >
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-28 16:14:32 +01:00
Alex Knight
ac69776330
Add OpenRouter provider routing params ( #84579 )
...
Co-authored-by: Alex Knight <15041791+amknight@users.noreply.github.com >
2026-05-20 23:27:34 +10:00
Peter Steinberger
f453904165
feat: add fal and OpenRouter music generation ( #82789 )
...
* feat: add fal and OpenRouter music generation
* fix: repair music generation CI gates
* chore: refresh proof gate
2026-05-17 02:05:22 +01:00
Peter Steinberger
07df423557
fix(openrouter): honor model tool support metadata
2026-05-10 06:54:57 +01:00
Peter Steinberger
311e4608d1
feat: unify model catalog registration
2026-05-09 02:34:56 -04:00
Vincent Koc
63ebe372e8
fix(openrouter): expose DeepSeek V4 xhigh thinking
...
Fixes #74788 .
2026-05-03 10:51:05 -07:00
Gabriel Kripalani
17ef9ef895
feat(openrouter): add video generation provider ( #72700 )
...
Adds OpenRouter video generation via video_generate, with hardened async polling/download handling, docs, and regression coverage.
Validation:
- pnpm test src/plugins/plugin-lookup-table.test.ts src/secrets/target-registry.fast-path.test.ts src/gateway/server-startup-post-attach.test.ts extensions/openrouter/video-generation-provider.test.ts src/video-generation/live-test-helpers.test.ts src/media-generation/provider-capabilities.contract.test.ts src/agents/pi-embedded-helpers/failover-matches.test.ts src/plugins/manifest-metadata-scan.test.ts src/agents/openai-transport-stream.test.ts src/media-understanding/openai-compatible-audio.test.ts src/agents/schema-normalization-runtime-contract.test.ts src/agents/provider-request-config.test.ts src/plugin-sdk/provider-stream.test.ts src/agents/pi-embedded-runner/run/attempt.spawn-workspace.websocket.test.ts -- --reporter=verbose
- OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_TEST_QUIET=0 OPENCLAW_LIVE_VIDEO_GENERATION_MODELS=openrouter/google/veo-3.1-fast pnpm test:live src/video-generation/video-generation.live.test.ts -- --runInBand
Co-authored-by: notamicrodose <gabrielkripalani@me.com >
2026-04-28 10:57:31 +01:00
Peter Steinberger
f3528e7755
fix(openrouter): retire stealth model catalog entries
2026-04-27 13:36:49 +01:00
Peter Steinberger
d79b9e0af4
fix(openrouter): allow DeepSeek cache-ttl eligibility
2026-04-25 06:38:34 +01:00
Peter Steinberger
7875092f4d
feat(openrouter): add tts provider
2026-04-25 04:36:49 +01:00
Gabriel Kripalani
0f026addaa
feat: add OpenRouter image generation ( #67668 )
...
Adds OpenRouter image generation support for image_generate. Fixes #55066 . Thanks @notamicrodose.
2026-04-24 01:39:19 +01:00
Shakker
04ecf284fc
fix: use static provider catalogs for model listing
2026-04-22 04:51:38 +01:00
Vincent Koc
791dbf4f9d
fix(openrouter): heal stale provider base urls ( #68574 )
...
* fix(openrouter): heal stale provider base urls
* chore(changelog): fix openrouter baseurl entry placement
* fix(arcee): keep catalog config optional
2026-04-18 08:42:51 -07:00
Vincent Koc
4c15f1310b
fix(plugin-sdk): share canonical replay hook families
2026-04-14 16:34:09 +01:00
Vincent Koc
3f8c6dd341
fix(openrouter): reuse shared replay hooks
2026-04-14 16:15:22 +01:00
Peter Steinberger
af62a2c2e4
style: fix extension lint violations
2026-04-06 14:53:55 +01:00
Peter Steinberger
be526d6423
refactor: split provider stream sdk seams
2026-04-05 11:19:05 +01:00
Peter Steinberger
fb580b551e
fix: restore provider and config compatibility checks
2026-04-05 03:47:57 +01:00
Vincent Koc
b56517b0ee
refactor(providers): tighten family outlier contracts
2026-04-05 11:09:26 +09:00
Peter Steinberger
ca200eb480
fix(providers): stabilize runtime normalization hooks
2026-04-04 19:34:56 +01:00
Peter Steinberger
fb59b5c461
fix(ci): sync openrouter stream hook seams
2026-04-04 15:09:49 +01:00
Vincent Koc
9cc300be78
fix(ci): restore main follow-up checks
2026-04-04 22:51:31 +09:00
Vincent Koc
a6707c2e1f
refactor(providers): flatten shared stream hooks
2026-04-04 21:51:58 +09:00
Peter Steinberger
8cf6e4b5df
fix(plugin-sdk): unblock gateway test surfaces
2026-04-04 21:02:04 +09:00
Vincent Koc
8f7b02e567
refactor(providers): share openai stream families
2026-04-04 20:29:11 +09:00
Vincent Koc
39d2a719c9
refactor(providers): add family replay and tool hooks
2026-04-04 19:33:31 +09:00
Vincent Koc
0a3211df2d
fix(openrouter): gate prompt cache markers by endpoint ( #60761 )
...
* fix(openrouter): gate prompt cache markers by endpoint
* test(openrouter): use claude sonnet 4.6 cache model
2026-04-04 19:32:13 +09:00
Vincent Koc
ede6d03850
refactor(openrouter): lazy-load provider registration
2026-04-04 14:54:59 +09:00
Peter Steinberger
41243529fb
refactor(providers): centralize provider model policy
2026-04-04 06:16:48 +01:00
Vincent Koc
761bd3bbd0
refactor(providers): share passthrough replay helpers
2026-04-04 11:22:41 +09:00
Vincent Koc
30479b4ee0
refactor(providers): compose provider stream wrappers
2026-04-04 11:03:28 +09:00
Josh Lehman
799c6f40aa
refactor: move provider replay runtime ownership into plugins ( #60126 )
...
* refactor: move provider replay runtime ownership into plugins
* fix(provider-runtime): address review followups
---------
Co-authored-by: Vincent Koc <vincentkoc@ieee.org >
2026-04-03 23:14:37 +09:00
Peter Steinberger
edc58a6864
refactor: generalize provider transport hooks
2026-03-29 23:05:58 +09:00
Peter Steinberger
b39a7e8073
fix: break plugin-sdk provider barrel recursion
2026-03-27 23:47:04 +00:00