713 Commits
Author SHA1 Message Date
藍+85CD 2f40ba120f docs: update skill 2026-03-13 19:18:45 +08:00
藍+85CD 505df94812 docs(readme): sort badges 2026-03-13 18:59:23 +08:00
藍+85CD 88fe1bfbf8 docs: update skill 2026-03-13 18:48:36 +08:00
藍+85CD 4fb8f10189 docs(readme): update 2026-03-13 18:31:14 +08:00
藍+85CD 945c34fce2 feat: responses (#263)
* chore(packages-ext): init openresponses package

* chore(openresponses): types

* fix: snake case

* chore: remove useless script

* feat: basic function

* chore: rename package

* docs(responses): update readme

* feat: codegen types

* refactor: transform stream

* chore: regenerate pnpm lock

* [autofix.ci] apply automated fixes

* refactor: split options

* feat: event stream

* fix: close stream, update test

* chore: tool

* feat: execute tool

* refactor: tee

* chore: regenerate pnpm lock

* chore: update pnpm workspace config

* chore: clean deps

* chore: update options

* chore: mark as experimental

* feat: usage, total usage

* chore: step type

* refactor: return steps

* chore(deps): bump version

* chore: lint code

* fix(responses): emit terminal events before continuing tool loop

* fix(responses): reject result promises when initial stream setup fails

* test(responses): cover terminal event and initial stream failure handling

* refactor(responses): return steps as a promise

* feat(responses): derive high-level step fields from terminal responses

* chore(responses): export tool

* test(responses): fix integration and mocked stream coverage

* refactor(responses): export public types

* chore: lint code

* fix: apply review changes
2026-03-13 18:05:14 +08:00
藍+85CD a87ee151ec chore: release v0.4.4 2026-03-12 22:37:27 +08:00
樱吹雪 0209298ab0 fix(shared-chat): clean execute only (#270) 2026-03-12 22:27:45 +08:00
RainbowBirdand藍+85CD 4083aa48d9 docs: add agent skills (#268)
* docs: add agent skills

* Update skills/xsai/SKILL.md

* Update skills/xsai/SKILL.md

---------

Co-authored-by: 藍+85CD <50108258+kwaa@users.noreply.github.com>
2026-03-08 23:38:18 +08:00
Liet Blueand藍+85CD e23b9da368 fix(shared-chat): handle empty tool call arguments in executeTool (#266)
* fix(shared-chat): handle empty tool call arguments in executeTool

When an LLM calls a tool with no parameters (e.g. empty object schema),
some providers stream no argument deltas, leaving the accumulated
arguments as an empty string. `JSON.parse("")` then throws
"Unexpected end of JSON input". Fallback to `'{}'` for empty strings.

* refactor: apply review

---------

Co-authored-by: 藍+85CD <50108258+kwaa@users.noreply.github.com>
2026-03-03 01:11:06 +08:00
藍+85CD d9c6f75971 chore: release v0.4.3 2026-02-03 21:25:10 +08:00
藍+85CD 539f999376 chore(deps): bump version (#265) 2026-02-03 21:14:14 +08:00
Delton Dingand藍+85CD 9241e2efa1 perf: use Promise.all for tool calling (#264)
* feat: add parallel tool calling

* improve code

* updates

* Update packages/shared-chat/src/utils/chat.ts

* [autofix.ci] apply automated fixes

---------

Co-authored-by: 藍+85CD <50108258+kwaa@users.noreply.github.com>
2026-02-03 20:24:19 +08:00
藍+85CD 96292a340a chore: release v0.4.2 2026-01-18 18:28:22 +08:00
藍+85CD 6fa8d69dc0 feat(providers): cohere 2026-01-18 18:28:06 +08:00
藍+85CD 72f1b3245c refactor(providers)!: sync upstream, rename novita 2026-01-18 18:24:12 +08:00
藍+85CD fb3714b2b0 chore: release v0.4.1 2026-01-06 16:25:50 +08:00
藍+85CD aef1dd762d docs: fix pkg size compare 2026-01-06 15:40:27 +08:00
藍+85CD 93c40fdcfb feat(telemetry): embed, embedMany (#260)
* refactor(telemetry): move to wrapped

* feat(telemetry): embed

* refactor(telemetry): simplify impl

* chore(telemetry): add embed test

* refactor: simplify

* chore(telemetry): update test snapshot
2026-01-06 15:39:40 +08:00
藍+85CD 66b893d1a3 feat: support reasoning field (#259)
* feat: support `reasoning` field

* chore: add reasoning test
2026-01-06 15:01:51 +08:00
藍+85CD 4895bc974e chore: lint code 2026-01-06 14:20:48 +08:00
藍+85CD a717026c6c perf: use oxlint 2026-01-06 14:18:58 +08:00
藍+85CD c97c2d1651 feat: reasoning effort (#257)
* feat: reasoning effort

* chore: add comments
2026-01-06 14:14:04 +08:00
藍+85CD e8486d36f0 docs: update pkg size chart 2026-01-06 13:02:47 +08:00
藍+85CD e8e0312cd7 docs(readme): update 2026-01-06 12:59:11 +08:00
藍+85CD bade407047 docs: update banner 2025-12-30 16:41:18 +08:00
藍+85CD 519322e963 chore: release v0.4.0 2025-12-30 14:33:52 +08:00
藍+85CD a8484f0625 fix(xsai): export stream transcription 2025-12-30 14:26:38 +08:00
藍+85CD af41c03a72 refactor(xsschema)!: remove sync method (#254)
* refactor(xsschema)!: remove sync method

* chore(xsschema): update test

* fix(xsschema): update exports

* docs(xsschema): update
2025-12-30 14:22:28 +08:00
藍+85CD 4128bc6b0e refactor(providers)!: remove deprecated providers (#253) 2025-12-30 14:05:35 +08:00
藍+85CD 494e381f9d chore: release v0.4.0-beta.13 2025-12-29 22:54:39 +08:00
藍+85CD 1f281fd0a4 docs(telemetry): update 2025-12-29 22:53:06 +08:00
藍+85CD 9806076528 refactor!: remove old providers package (#252)
* refactor(providers): copy shared utils

* refactor!: remove old providers package
2025-12-29 22:50:32 +08:00
藍+85CD a7f9006172 feat(providers)!: special providers, move azure, workers-ai (#251)
* feat(providers): special providers

* refactor(providers)!: move azure, workers-ai to special

* fix: simplify telemetry test

* fix(telemetry): remove output tokens
2025-12-29 22:34:32 +08:00
藍+85CD 1564b69c1b chore: test telemetry (#250)
* chore: test telemetry

* fix: test
2025-12-29 21:51:05 +08:00
藍+85CD 78d70feee2 feat: top_k (#249) 2025-12-29 21:23:46 +08:00
藍+85CD 24432f881c refactor(test): use granite4 instead of granite3.3, qwen3 (#248)
* refactor(test): use `granite4:350m-h` instead of `granite3:2b`, `qwen3:0.6b`

* refactor(test): add 1b-h model, update test snapshot

* refactor: simplify embed test

* chore: revert changes

* fix: test

* fix: test

* fix: try another seed

* fix: test
2025-12-29 21:14:45 +08:00
藍+85CD d9a8b7bba4 chore(deps): bump version, follow upstream changes (#247)
* chore(deps): bump version, follow upstream changes

* chore: lint code

* chore(deps): remove dotenv

* fix: install

* ci: unlock node version
2025-12-29 20:32:24 +08:00
藍+85CD 399a3098d4 refactor(telemetry)!: gen_ai (#244)
* refactor(telemetry)!: gen_ai

* refactor(telemetry/generate-text): clean

* refactor(telemetry/generate-text): clean

* feat(telemetry): trace execute tool

* [autofix.ci] apply automated fixes

* ci(autofix): remove push trigger

* refactor(telemetry): update

* chore(telemetry): add lang fuse span processor

* refactor(telemetry): remove gen_ai.system

* chore: update

* chore: update

* chore: update snap

* chore: update

* chore: update

* feat(telemetry): with version

* refactor(telemetry): rename overrides to types, update docs
2025-12-29 18:08:08 +08:00
藍+85CD e5d8f2de9d chore: clean 2025-12-22 20:20:56 +08:00
藍+85CD f18dc80998 fix(telemetry/generate-text): sync changes 2025-12-22 20:20:15 +08:00
藍+85CD 0a9ea9d66c fix(telemetry/stream-text): sync changes 2025-12-22 19:52:35 +08:00
藍+85CD 188f3f73dd fix(stream-text): avoid empty array tool calls 2025-12-22 19:37:58 +08:00
藍+85CD 514cbede8a refactor(shared-chat): check tool call 2025-12-22 19:36:48 +08:00
藍+85CD a925b23a31 chore: release v0.4.0-beta.12 2025-12-22 16:27:15 +08:00
藍+85CD 856ddfc80c feat(embed): add dimensions option (#243)
* feat(embed): add dimensions option

* chore: update comments
2025-12-22 16:20:07 +08:00
藍+85CD 7f06c7ec54 feat(stream-text): return reasoning text (#242)
* feat(stream-text): return reasoning text

* fix(stream-text): close stream

* fix(stream-text): non null content
2025-12-22 16:03:19 +08:00
藍+85CD 46112b08e6 fix(generate-text): no longer remove reasoning content (#241) 2025-12-22 15:45:51 +08:00
藍+85CD bf2ea4d48f chore: release v0.4.0-beta.11 2025-12-20 21:32:23 +08:00
藍+85CD 4c7cca7851 feat(providers): add ollama, litellm 2025-12-20 21:22:46 +08:00
藍+85CD 868f880a54 chore(providers): update codegen script 2025-12-20 21:11:12 +08:00