From e8285ab2533f4092ab91958cb23653b26f67cb35 Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Wed, 17 Dec 2025 14:41:46 +0000 Subject: [PATCH 1/9] chore: addd similarity --- flake.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/flake.nix b/flake.nix index 687f23f..55e31c4 100644 --- a/flake.nix +++ b/flake.nix @@ -20,8 +20,12 @@ { devShells.default = pkgs.mkShell { buildInputs = with pkgs; [ + # runtime nodejs_24 pnpm_10 + + # formatting and linting tools + similarity nixfmt-rfc-style ]; From 281df2bc18f77092edcb094e4c6cd9f2b21dd1ba Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Wed, 17 Dec 2025 14:41:58 +0000 Subject: [PATCH 2/9] chore: add typos --- flake.nix | 2 ++ typos.toml | 16 ++++++++++++++++ 2 files changed, 18 insertions(+) create mode 100644 typos.toml diff --git a/flake.nix b/flake.nix index 55e31c4..e953f20 100644 --- a/flake.nix +++ b/flake.nix @@ -27,6 +27,8 @@ # formatting and linting tools similarity nixfmt-rfc-style + typos + typos-lsp ]; shellHook = '' diff --git a/typos.toml b/typos.toml new file mode 100644 index 0000000..fcab1da --- /dev/null +++ b/typos.toml @@ -0,0 +1,16 @@ +[default] +locale = 'en-us' +extend-ignore-re = [ + "(?s)(#|//)\\s*spellchecker:off.*?\\n\\s*(#|//)\\s*spellchecker:on", + "(?s)", + "(?Rm)^.*#\\s*spellchecker:disable-line$", + "(?m)^.*\\n.*$" +] + +[files] +extend-exclude = [ + "node_modules", + "package.json", + "pnpm-lock.yaml", + "pnpm-workspace.yaml", +] From 86f31a48ead7ff75ca75b2badd4cd014632ada4a Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Wed, 17 Dec 2025 14:42:40 +0000 Subject: [PATCH 3/9] chore: format --- CHANGELOG.md | 171 ++++++++---------- README.md | 2 +- examples/ai-sdk-integration.ts | 2 +- examples/anthropic-integration.ts | 4 +- examples/claude-agent-sdk-integration.ts | 2 +- examples/fetch-tools-debug.ts | 2 +- examples/meta-tools.ts | 6 +- examples/openai-integration.test.ts | 2 +- examples/openai-integration.ts | 4 +- examples/openai-responses-integration.test.ts | 2 +- examples/openai-responses-integration.ts | 4 +- examples/tanstack-ai-integration.ts | 2 +- src/consts.ts | 6 +- src/headers.test.ts | 26 +-- src/headers.ts | 8 +- src/requestBuilder.test.ts | 12 +- src/requestBuilder.ts | 2 +- src/toolsets.test.ts | 14 +- src/toolsets.ts | 8 +- typos.toml | 1 + 20 files changed, 134 insertions(+), 146 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4ef5d62..010996c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,157 +2,144 @@ ## [2.0.9](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.8...v2.0.9) (2025-12-16) - ### Bug Fixes -* **toolsets:** add accountIds option to StackOneToolSetConfig ([#252](https://github.com/StackOneHQ/stackone-ai-node/issues/252)) ([33973ed](https://github.com/StackOneHQ/stackone-ai-node/commit/33973edd31c7b16cb55d53b4354069ed76da3d9b)) +- **toolsets:** add accountIds option to StackOneToolSetConfig ([#252](https://github.com/StackOneHQ/stackone-ai-node/issues/252)) ([33973ed](https://github.com/StackOneHQ/stackone-ai-node/commit/33973edd31c7b16cb55d53b4354069ed76da3d9b)) ## [2.0.8](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.7...v2.0.8) (2025-12-15) - ### Bug Fixes -* **ci:** revert changes 2.0.5 ~ 2.0.7 ([#246](https://github.com/StackOneHQ/stackone-ai-node/issues/246)) ([91909a2](https://github.com/StackOneHQ/stackone-ai-node/commit/91909a29cdb3131b7bc808722fb636e82856abd8)) +- **ci:** revert changes 2.0.5 ~ 2.0.7 ([#246](https://github.com/StackOneHQ/stackone-ai-node/issues/246)) ([91909a2](https://github.com/StackOneHQ/stackone-ai-node/commit/91909a29cdb3131b7bc808722fb636e82856abd8)) ## [2.0.7](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.6...v2.0.7) (2025-12-15) - ### Bug Fixes -* **ci:** pack ([#244](https://github.com/StackOneHQ/stackone-ai-node/issues/244)) ([21c4a45](https://github.com/StackOneHQ/stackone-ai-node/commit/21c4a452af692bd7a6933453a1c4932ee34489d2)) +- **ci:** pack ([#244](https://github.com/StackOneHQ/stackone-ai-node/issues/244)) ([21c4a45](https://github.com/StackOneHQ/stackone-ai-node/commit/21c4a452af692bd7a6933453a1c4932ee34489d2)) ## [2.0.6](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.5...v2.0.6) (2025-12-15) - ### Bug Fixes -* **ci:** remove --provenance ([#242](https://github.com/StackOneHQ/stackone-ai-node/issues/242)) ([86f18bf](https://github.com/StackOneHQ/stackone-ai-node/commit/86f18bfd08c5ac02c64783506f75c39a2c5c0816)) +- **ci:** remove --provenance ([#242](https://github.com/StackOneHQ/stackone-ai-node/issues/242)) ([86f18bf](https://github.com/StackOneHQ/stackone-ai-node/commit/86f18bfd08c5ac02c64783506f75c39a2c5c0816)) ## [2.0.5](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.4...v2.0.5) (2025-12-15) - ### Bug Fixes -* **ci:** move install to nix action ([#240](https://github.com/StackOneHQ/stackone-ai-node/issues/240)) ([fe729aa](https://github.com/StackOneHQ/stackone-ai-node/commit/fe729aa6a938a845b321739384ee1bc4e9d090f4)) +- **ci:** move install to nix action ([#240](https://github.com/StackOneHQ/stackone-ai-node/issues/240)) ([fe729aa](https://github.com/StackOneHQ/stackone-ai-node/commit/fe729aa6a938a845b321739384ee1bc4e9d090f4)) ## [2.0.4](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.3...v2.0.4) (2025-12-15) - ### Bug Fixes -* **ci:** latest -> lts ([#238](https://github.com/StackOneHQ/stackone-ai-node/issues/238)) ([2485a97](https://github.com/StackOneHQ/stackone-ai-node/commit/2485a97222182d507433f4a916370dc51fb98923)) +- **ci:** latest -> lts ([#238](https://github.com/StackOneHQ/stackone-ai-node/issues/238)) ([2485a97](https://github.com/StackOneHQ/stackone-ai-node/commit/2485a97222182d507433f4a916370dc51fb98923)) ## [2.0.3](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.2...v2.0.3) (2025-12-15) - ### Bug Fixes -* **release:** enable provence ([#236](https://github.com/StackOneHQ/stackone-ai-node/issues/236)) ([a784cd4](https://github.com/StackOneHQ/stackone-ai-node/commit/a784cd459d13a03daa791e363f56eaeebe43398a)) +- **release:** enable provence ([#236](https://github.com/StackOneHQ/stackone-ai-node/issues/236)) ([a784cd4](https://github.com/StackOneHQ/stackone-ai-node/commit/a784cd459d13a03daa791e363f56eaeebe43398a)) ## [2.0.2](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.1...v2.0.2) (2025-12-15) - ### Bug Fixes -* **release:** give permission to create id for publishing ([#234](https://github.com/StackOneHQ/stackone-ai-node/issues/234)) ([dd5b894](https://github.com/StackOneHQ/stackone-ai-node/commit/dd5b894352fc9d2ec45834537c243907404063f4)) +- **release:** give permission to create id for publishing ([#234](https://github.com/StackOneHQ/stackone-ai-node/issues/234)) ([dd5b894](https://github.com/StackOneHQ/stackone-ai-node/commit/dd5b894352fc9d2ec45834537c243907404063f4)) ## [2.0.1](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.0...v2.0.1) (2025-12-15) - ### Bug Fixes -* ignore changelog from oxfmt ([#232](https://github.com/StackOneHQ/stackone-ai-node/issues/232)) ([8ae4480](https://github.com/StackOneHQ/stackone-ai-node/commit/8ae4480306aa132334b2e3e8e4c33003285bab3d)) +- ignore changelog from oxfmt ([#232](https://github.com/StackOneHQ/stackone-ai-node/issues/232)) ([8ae4480](https://github.com/StackOneHQ/stackone-ai-node/commit/8ae4480306aa132334b2e3e8e4c33003285bab3d)) ## [2.0.0](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.0...v2.0.0) (2025-12-15) - ### ⚠ BREAKING CHANGES -* Remove unused public exports from the SDK -* remove unified API integration and migrate to connector-based naming ([#219](https://github.com/StackOneHQ/stackone-ai-node/issues/219)) -* **lint:** Linting rules are now significantly stricter. Code that previously passed Biome's checks may now fail with oxlint's pedantic, correctness, suspicious, performance, and style rule categories all set to error level. -* resolve typecheck errors by upgrading to zod v4 and ai SDK 5.0.108 ([#183](https://github.com/StackOneHQ/stackone-ai-node/issues/183)) -* BaseToolSetConfig.stackOneClient is now rpcClient -* bun -> pnpm+vitest && manage deps with flake.nix ([#143](https://github.com/StackOneHQ/stackone-ai-node/issues/143)) -* OpenAPI spec imports from src/openapi/ are removed -* **desp:** update openai sdk to v6 and deprecate v4 ([#120](https://github.com/StackOneHQ/stackone-ai-node/issues/120)) -* metaRelevantTools() renamed to metaTools() and now returns Promise +- Remove unused public exports from the SDK +- remove unified API integration and migrate to connector-based naming ([#219](https://github.com/StackOneHQ/stackone-ai-node/issues/219)) +- **lint:** Linting rules are now significantly stricter. Code that previously passed Biome's checks may now fail with oxlint's pedantic, correctness, suspicious, performance, and style rule categories all set to error level. +- resolve typecheck errors by upgrading to zod v4 and ai SDK 5.0.108 ([#183](https://github.com/StackOneHQ/stackone-ai-node/issues/183)) +- BaseToolSetConfig.stackOneClient is now rpcClient +- bun -> pnpm+vitest && manage deps with flake.nix ([#143](https://github.com/StackOneHQ/stackone-ai-node/issues/143)) +- OpenAPI spec imports from src/openapi/ are removed +- **desp:** update openai sdk to v6 and deprecate v4 ([#120](https://github.com/StackOneHQ/stackone-ai-node/issues/120)) +- metaRelevantTools() renamed to metaTools() and now returns Promise ### Features -* add Anthropic Claude integration ([#208](https://github.com/StackOneHQ/stackone-ai-node/issues/208)) ([08e7ae0](https://github.com/StackOneHQ/stackone-ai-node/commit/08e7ae0450e40f27947619124e00672509af4187)) -* add knip for unused code detection ([#174](https://github.com/StackOneHQ/stackone-ai-node/issues/174)) ([9df963d](https://github.com/StackOneHQ/stackone-ai-node/commit/9df963da3582712997564611ef170b78f5e5b6e4)) -* add meta tools for dynamic tool discovery and execution ([#84](https://github.com/StackOneHQ/stackone-ai-node/issues/84)) ([e1da427](https://github.com/StackOneHQ/stackone-ai-node/commit/e1da4276a5b00028fdfa6341a4c4d0898d187f88)) -* add pkg.pr.new ci ([#58](https://github.com/StackOneHQ/stackone-ai-node/issues/58)) ([4757773](https://github.com/StackOneHQ/stackone-ai-node/commit/4757773d238ea18427c520e83000813f9b376d62)) -* add provider and action filtering to fetchTools() ([#124](https://github.com/StackOneHQ/stackone-ai-node/issues/124)) ([71fe4a4](https://github.com/StackOneHQ/stackone-ai-node/commit/71fe4a476e9e07e1348381b9926bacdbb986549f)) -* add test coverage reporting with GitHub Pages deployment ([#188](https://github.com/StackOneHQ/stackone-ai-node/issues/188)) ([02a572e](https://github.com/StackOneHQ/stackone-ai-node/commit/02a572ede612db5e26b5f6c510c1b57a84ca050a)) -* breaking change ai sdk name and toolset config object ([#14](https://github.com/StackOneHQ/stackone-ai-node/issues/14)) ([ad1f207](https://github.com/StackOneHQ/stackone-ai-node/commit/ad1f2075a1fb9fd9e851577aef78b138ae8f3264)) -* build in ci ([#19](https://github.com/StackOneHQ/stackone-ai-node/issues/19)) ([40131d0](https://github.com/StackOneHQ/stackone-ai-node/commit/40131d08fae4f37007cc94be6980be6b2cf6e616)) -* check pr title ([#45](https://github.com/StackOneHQ/stackone-ai-node/issues/45)) ([56ce286](https://github.com/StackOneHQ/stackone-ai-node/commit/56ce2867bb2db3c7550eb083f06c8881f9ca85c6)) -* error from tools ([#31](https://github.com/StackOneHQ/stackone-ai-node/issues/31)) ([96e6745](https://github.com/StackOneHQ/stackone-ai-node/commit/96e6745da689da313658c881a2e144c238f85274)) -* **example:** add interactive CLI demo with @clack/prompts ([#203](https://github.com/StackOneHQ/stackone-ai-node/issues/203)) ([c5c6990](https://github.com/StackOneHQ/stackone-ai-node/commit/c5c699012b4e7260cb799a4fa7e2625bc69dc769)) -* **examples:** add TanStack AI and Claude Agent SDK integrations with E2E tests ([#222](https://github.com/StackOneHQ/stackone-ai-node/issues/222)) ([e890de1](https://github.com/StackOneHQ/stackone-ai-node/commit/e890de13e7e59abc77a3c66a441fe3715df5ca2a)) -* experimental doc handling ([#50](https://github.com/StackOneHQ/stackone-ai-node/issues/50)) ([366f3ca](https://github.com/StackOneHQ/stackone-ai-node/commit/366f3ca82e6f1acb19c6d62aa180efc4c8e6cdef)) -* feedback tool ([#125](https://github.com/StackOneHQ/stackone-ai-node/issues/125)) ([d943e60](https://github.com/StackOneHQ/stackone-ai-node/commit/d943e603db194646828243a5c7615beaa7c1b5c2)) -* init ([468ffea](https://github.com/StackOneHQ/stackone-ai-node/commit/468ffeae1f8ea9ec77637a1451e2040bcbd8adcf)) -* introduce MCP-backed dynamic tools ([#114](https://github.com/StackOneHQ/stackone-ai-node/issues/114)) ([ef5efc1](https://github.com/StackOneHQ/stackone-ai-node/commit/ef5efc172a863f692ab7da4573723ba77c9c1c19)) -* **lint:** configure unicorn/prefer-top-level-await rule ([#218](https://github.com/StackOneHQ/stackone-ai-node/issues/218)) ([1254196](https://github.com/StackOneHQ/stackone-ai-node/commit/1254196c7c8e063f56993bc1c65b185058c21a8d)) -* make AI SDK and OpenAI SDK optional peer dependencies ([#112](https://github.com/StackOneHQ/stackone-ai-node/issues/112)) ([e745640](https://github.com/StackOneHQ/stackone-ai-node/commit/e7456400c585f3dd4c39fa1d9977ecfd1bce225c)) -* **meta-tools:** add hybrid BM25 + TF-IDF search strategy ([#122](https://github.com/StackOneHQ/stackone-ai-node/issues/122)) ([46fc31a](https://github.com/StackOneHQ/stackone-ai-node/commit/46fc31acd60b03091b56fffb1486730e57d9ee72)) -* npm token ([#5](https://github.com/StackOneHQ/stackone-ai-node/issues/5)) ([1bb9095](https://github.com/StackOneHQ/stackone-ai-node/commit/1bb9095eb27a44888781fa892e68fb751cad2b20)) -* readme ai sdk ([#10](https://github.com/StackOneHQ/stackone-ai-node/issues/10)) ([34d39cd](https://github.com/StackOneHQ/stackone-ai-node/commit/34d39cd11619a95572cae063af5813444bad609d)) -* remove deprecated OAS-based getTools, migrate to fetchTools only ([#148](https://github.com/StackOneHQ/stackone-ai-node/issues/148)) ([aea526e](https://github.com/StackOneHQ/stackone-ai-node/commit/aea526e859af14c4280453ccd709c7e403e1901d)) -* **tool:** add OpenAI Responses API integration ([#206](https://github.com/StackOneHQ/stackone-ai-node/issues/206)) ([1e286cf](https://github.com/StackOneHQ/stackone-ai-node/commit/1e286cfa23eef54c5f81a1fb546586bcd4fe0c7f)) -* **toolsets:** add multi-account support for fetchTools ([#118](https://github.com/StackOneHQ/stackone-ai-node/issues/118)) ([926e625](https://github.com/StackOneHQ/stackone-ai-node/commit/926e6256174fe9aee1bdc54469f1cd545c9d706c)) -* update oas and add planner docs ([#21](https://github.com/StackOneHQ/stackone-ai-node/issues/21)) ([6dd4269](https://github.com/StackOneHQ/stackone-ai-node/commit/6dd42697b8ea11bc4d62e62a3bab16b34fb49f4a)) -* update schema ([#60](https://github.com/StackOneHQ/stackone-ai-node/issues/60)) ([03c9283](https://github.com/StackOneHQ/stackone-ai-node/commit/03c9283ab2169d29f24b0fd1f2c03700ce4500d3)) -* use any openapi spec as tools ([#18](https://github.com/StackOneHQ/stackone-ai-node/issues/18)) ([6dd7aeb](https://github.com/StackOneHQ/stackone-ai-node/commit/6dd7aebd1b7b24dfa52abfa6442a336666cedbca)) - +- add Anthropic Claude integration ([#208](https://github.com/StackOneHQ/stackone-ai-node/issues/208)) ([08e7ae0](https://github.com/StackOneHQ/stackone-ai-node/commit/08e7ae0450e40f27947619124e00672509af4187)) +- add knip for unused code detection ([#174](https://github.com/StackOneHQ/stackone-ai-node/issues/174)) ([9df963d](https://github.com/StackOneHQ/stackone-ai-node/commit/9df963da3582712997564611ef170b78f5e5b6e4)) +- add meta tools for dynamic tool discovery and execution ([#84](https://github.com/StackOneHQ/stackone-ai-node/issues/84)) ([e1da427](https://github.com/StackOneHQ/stackone-ai-node/commit/e1da4276a5b00028fdfa6341a4c4d0898d187f88)) +- add pkg.pr.new ci ([#58](https://github.com/StackOneHQ/stackone-ai-node/issues/58)) ([4757773](https://github.com/StackOneHQ/stackone-ai-node/commit/4757773d238ea18427c520e83000813f9b376d62)) +- add provider and action filtering to fetchTools() ([#124](https://github.com/StackOneHQ/stackone-ai-node/issues/124)) ([71fe4a4](https://github.com/StackOneHQ/stackone-ai-node/commit/71fe4a476e9e07e1348381b9926bacdbb986549f)) +- add test coverage reporting with GitHub Pages deployment ([#188](https://github.com/StackOneHQ/stackone-ai-node/issues/188)) ([02a572e](https://github.com/StackOneHQ/stackone-ai-node/commit/02a572ede612db5e26b5f6c510c1b57a84ca050a)) +- breaking change ai sdk name and toolset config object ([#14](https://github.com/StackOneHQ/stackone-ai-node/issues/14)) ([ad1f207](https://github.com/StackOneHQ/stackone-ai-node/commit/ad1f2075a1fb9fd9e851577aef78b138ae8f3264)) +- build in ci ([#19](https://github.com/StackOneHQ/stackone-ai-node/issues/19)) ([40131d0](https://github.com/StackOneHQ/stackone-ai-node/commit/40131d08fae4f37007cc94be6980be6b2cf6e616)) +- check pr title ([#45](https://github.com/StackOneHQ/stackone-ai-node/issues/45)) ([56ce286](https://github.com/StackOneHQ/stackone-ai-node/commit/56ce2867bb2db3c7550eb083f06c8881f9ca85c6)) +- error from tools ([#31](https://github.com/StackOneHQ/stackone-ai-node/issues/31)) ([96e6745](https://github.com/StackOneHQ/stackone-ai-node/commit/96e6745da689da313658c881a2e144c238f85274)) +- **example:** add interactive CLI demo with @clack/prompts ([#203](https://github.com/StackOneHQ/stackone-ai-node/issues/203)) ([c5c6990](https://github.com/StackOneHQ/stackone-ai-node/commit/c5c699012b4e7260cb799a4fa7e2625bc69dc769)) +- **examples:** add TanStack AI and Claude Agent SDK integrations with E2E tests ([#222](https://github.com/StackOneHQ/stackone-ai-node/issues/222)) ([e890de1](https://github.com/StackOneHQ/stackone-ai-node/commit/e890de13e7e59abc77a3c66a441fe3715df5ca2a)) +- experimental doc handling ([#50](https://github.com/StackOneHQ/stackone-ai-node/issues/50)) ([366f3ca](https://github.com/StackOneHQ/stackone-ai-node/commit/366f3ca82e6f1acb19c6d62aa180efc4c8e6cdef)) +- feedback tool ([#125](https://github.com/StackOneHQ/stackone-ai-node/issues/125)) ([d943e60](https://github.com/StackOneHQ/stackone-ai-node/commit/d943e603db194646828243a5c7615beaa7c1b5c2)) +- init ([468ffea](https://github.com/StackOneHQ/stackone-ai-node/commit/468ffeae1f8ea9ec77637a1451e2040bcbd8adcf)) +- introduce MCP-backed dynamic tools ([#114](https://github.com/StackOneHQ/stackone-ai-node/issues/114)) ([ef5efc1](https://github.com/StackOneHQ/stackone-ai-node/commit/ef5efc172a863f692ab7da4573723ba77c9c1c19)) +- **lint:** configure unicorn/prefer-top-level-await rule ([#218](https://github.com/StackOneHQ/stackone-ai-node/issues/218)) ([1254196](https://github.com/StackOneHQ/stackone-ai-node/commit/1254196c7c8e063f56993bc1c65b185058c21a8d)) +- make AI SDK and OpenAI SDK optional peer dependencies ([#112](https://github.com/StackOneHQ/stackone-ai-node/issues/112)) ([e745640](https://github.com/StackOneHQ/stackone-ai-node/commit/e7456400c585f3dd4c39fa1d9977ecfd1bce225c)) +- **meta-tools:** add hybrid BM25 + TF-IDF search strategy ([#122](https://github.com/StackOneHQ/stackone-ai-node/issues/122)) ([46fc31a](https://github.com/StackOneHQ/stackone-ai-node/commit/46fc31acd60b03091b56fffb1486730e57d9ee72)) +- npm token ([#5](https://github.com/StackOneHQ/stackone-ai-node/issues/5)) ([1bb9095](https://github.com/StackOneHQ/stackone-ai-node/commit/1bb9095eb27a44888781fa892e68fb751cad2b20)) +- readme ai sdk ([#10](https://github.com/StackOneHQ/stackone-ai-node/issues/10)) ([34d39cd](https://github.com/StackOneHQ/stackone-ai-node/commit/34d39cd11619a95572cae063af5813444bad609d)) +- remove deprecated OAS-based getTools, migrate to fetchTools only ([#148](https://github.com/StackOneHQ/stackone-ai-node/issues/148)) ([aea526e](https://github.com/StackOneHQ/stackone-ai-node/commit/aea526e859af14c4280453ccd709c7e403e1901d)) +- **tool:** add OpenAI Responses API integration ([#206](https://github.com/StackOneHQ/stackone-ai-node/issues/206)) ([1e286cf](https://github.com/StackOneHQ/stackone-ai-node/commit/1e286cfa23eef54c5f81a1fb546586bcd4fe0c7f)) +- **toolsets:** add multi-account support for fetchTools ([#118](https://github.com/StackOneHQ/stackone-ai-node/issues/118)) ([926e625](https://github.com/StackOneHQ/stackone-ai-node/commit/926e6256174fe9aee1bdc54469f1cd545c9d706c)) +- update oas and add planner docs ([#21](https://github.com/StackOneHQ/stackone-ai-node/issues/21)) ([6dd4269](https://github.com/StackOneHQ/stackone-ai-node/commit/6dd42697b8ea11bc4d62e62a3bab16b34fb49f4a)) +- update schema ([#60](https://github.com/StackOneHQ/stackone-ai-node/issues/60)) ([03c9283](https://github.com/StackOneHQ/stackone-ai-node/commit/03c9283ab2169d29f24b0fd1f2c03700ce4500d3)) +- use any openapi spec as tools ([#18](https://github.com/StackOneHQ/stackone-ai-node/issues/18)) ([6dd7aeb](https://github.com/StackOneHQ/stackone-ai-node/commit/6dd7aebd1b7b24dfa52abfa6442a336666cedbca)) ### Bug Fixes -* add baseURL default ([#164](https://github.com/StackOneHQ/stackone-ai-node/issues/164)) ([83ad198](https://github.com/StackOneHQ/stackone-ai-node/commit/83ad198be6f1482645f933723b76f8d1f2f3e30b)) -* building docs ([#4](https://github.com/StackOneHQ/stackone-ai-node/issues/4)) ([c5dc1d2](https://github.com/StackOneHQ/stackone-ai-node/commit/c5dc1d248f9415f4599739410060dcd802872c1b)) -* **deps:** move zod from dev to prod catalog ([#230](https://github.com/StackOneHQ/stackone-ai-node/issues/230)) ([176c53f](https://github.com/StackOneHQ/stackone-ai-node/commit/176c53fc3277035fa2f41b88ec80cf7c38f280fe)) -* docs action ([#2](https://github.com/StackOneHQ/stackone-ai-node/issues/2)) ([1717c31](https://github.com/StackOneHQ/stackone-ai-node/commit/1717c31a92c557aec023be7e89f19dab6ff10c32)) -* docs actions pt2 ([#3](https://github.com/StackOneHQ/stackone-ai-node/issues/3)) ([a9fbbc9](https://github.com/StackOneHQ/stackone-ai-node/commit/a9fbbc91446375b0916aacf5c13a9bdaec082680)) -* docs links ([#16](https://github.com/StackOneHQ/stackone-ai-node/issues/16)) ([29fc021](https://github.com/StackOneHQ/stackone-ai-node/commit/29fc021729504db78e11ffc261d9e48bf3dd3c98)) -* hook ([#57](https://github.com/StackOneHQ/stackone-ai-node/issues/57)) ([ae92968](https://github.com/StackOneHQ/stackone-ai-node/commit/ae9296898738413ca129cbdc7d415cf58604e1f2)) -* implement deep object serialization for nested filter parameters ([#40](https://github.com/StackOneHQ/stackone-ai-node/issues/40)) ([a5c3c1f](https://github.com/StackOneHQ/stackone-ai-node/commit/a5c3c1f1e4aae89e8ce9e75e98e123346969b331)) -* **lefthook:** use pnpm ([#217](https://github.com/StackOneHQ/stackone-ai-node/issues/217)) ([e65099b](https://github.com/StackOneHQ/stackone-ai-node/commit/e65099b4eab9d757113d5ddbfb113820f38f0a15)) -* **lint:** resolve all oxlint errors ([#193](https://github.com/StackOneHQ/stackone-ai-node/issues/193)) ([15e849f](https://github.com/StackOneHQ/stackone-ai-node/commit/15e849fa645e4df7280efe816bee8fecb1245177)) -* name ([#6](https://github.com/StackOneHQ/stackone-ai-node/issues/6)) ([0952512](https://github.com/StackOneHQ/stackone-ai-node/commit/0952512f14bc23ef34431de9fc7663a948382aba)) -* oas location ([#8](https://github.com/StackOneHQ/stackone-ai-node/issues/8)) ([380e495](https://github.com/StackOneHQ/stackone-ai-node/commit/380e49579ccff36f5de3a54aa349d39936add3bb)) -* oas location and file upload ([#9](https://github.com/StackOneHQ/stackone-ai-node/issues/9)) ([e514a0f](https://github.com/StackOneHQ/stackone-ai-node/commit/e514a0f2ca484a5a1f3824a88b850ab869a148c0)) -* oas regen ([#33](https://github.com/StackOneHQ/stackone-ai-node/issues/33)) ([80a8dbb](https://github.com/StackOneHQ/stackone-ai-node/commit/80a8dbb03e4e2324c351d34cfd7e88eb5058688f)) -* **package.json:** add engines ([#182](https://github.com/StackOneHQ/stackone-ai-node/issues/182)) ([ef2189d](https://github.com/StackOneHQ/stackone-ai-node/commit/ef2189d1eb5131652bf651965a18d79dc0ea1035)) -* remove an ambiguous keyword(saas) from package.json ([#145](https://github.com/StackOneHQ/stackone-ai-node/issues/145)) ([0e434e3](https://github.com/StackOneHQ/stackone-ai-node/commit/0e434e396777270c90ab7239b7f3e6b6f8832fd0)) -* remove dotenv ([#101](https://github.com/StackOneHQ/stackone-ai-node/issues/101)) ([f1e6997](https://github.com/StackOneHQ/stackone-ai-node/commit/f1e6997dc84716d7b96be6415156fa4067315879)) -* remove unecessary type assertion ([#111](https://github.com/StackOneHQ/stackone-ai-node/issues/111)) ([5d1502d](https://github.com/StackOneHQ/stackone-ai-node/commit/5d1502d977a5049cfe86704e66a7e4467102e6a7)) -* remove unified API integration and migrate to connector-based naming ([#219](https://github.com/StackOneHQ/stackone-ai-node/issues/219)) ([79e0bc2](https://github.com/StackOneHQ/stackone-ai-node/commit/79e0bc2146ed3000374879971ba63042e54d3650)) -* rename metaSearchTool ([#94](https://github.com/StackOneHQ/stackone-ai-node/issues/94)) ([e5a7279](https://github.com/StackOneHQ/stackone-ai-node/commit/e5a7279b7a46ad522e65f1e75dcbde58c010e312)) -* resolve linting errors in generated OpenAPI files and tests ([#80](https://github.com/StackOneHQ/stackone-ai-node/issues/80)) ([7fd5eea](https://github.com/StackOneHQ/stackone-ai-node/commit/7fd5eea4b5ff19c4c3b119590a52c95175da4fc7)) -* resolve type errors and ensure CI fails on errors ([#175](https://github.com/StackOneHQ/stackone-ai-node/issues/175)) ([4d465bf](https://github.com/StackOneHQ/stackone-ai-node/commit/4d465bfe461e7c34343fdc9b15c600ea2fb66544)) -* resolve typecheck errors by upgrading to zod v4 and ai SDK 5.0.108 ([#183](https://github.com/StackOneHQ/stackone-ai-node/issues/183)) ([a2a4aaa](https://github.com/StackOneHQ/stackone-ai-node/commit/a2a4aaa4105c6c40d2272b97987c0f0cf5c5812a)) -* **rpc:** send x-account-id as HTTP header in RPC requests ([#202](https://github.com/StackOneHQ/stackone-ai-node/issues/202)) ([b3843a5](https://github.com/StackOneHQ/stackone-ai-node/commit/b3843a5765b33767f452d8cca684e2429c5cbc99)) -* **test:** stabilise examples ([#90](https://github.com/StackOneHQ/stackone-ai-node/issues/90)) ([015660d](https://github.com/StackOneHQ/stackone-ai-node/commit/015660d430724756da4d106bab1c10dba5d186d4)) -* **tooling:** typecheck ([#54](https://github.com/StackOneHQ/stackone-ai-node/issues/54)) ([025ae5c](https://github.com/StackOneHQ/stackone-ai-node/commit/025ae5c2f503e3132fd2bcb5946a38128b701316)) -* types ([#13](https://github.com/StackOneHQ/stackone-ai-node/issues/13)) ([076766c](https://github.com/StackOneHQ/stackone-ai-node/commit/076766cc46c7bea8714f3f1aee7db0ff43f89979)) -* validate tool_names after whitespace filtering ([#130](https://github.com/StackOneHQ/stackone-ai-node/issues/130)) ([5ea1c04](https://github.com/StackOneHQ/stackone-ai-node/commit/5ea1c04b217b6eed9ef4ac26e7c55e57fd35ca65)) - +- add baseURL default ([#164](https://github.com/StackOneHQ/stackone-ai-node/issues/164)) ([83ad198](https://github.com/StackOneHQ/stackone-ai-node/commit/83ad198be6f1482645f933723b76f8d1f2f3e30b)) +- building docs ([#4](https://github.com/StackOneHQ/stackone-ai-node/issues/4)) ([c5dc1d2](https://github.com/StackOneHQ/stackone-ai-node/commit/c5dc1d248f9415f4599739410060dcd802872c1b)) +- **deps:** move zod from dev to prod catalog ([#230](https://github.com/StackOneHQ/stackone-ai-node/issues/230)) ([176c53f](https://github.com/StackOneHQ/stackone-ai-node/commit/176c53fc3277035fa2f41b88ec80cf7c38f280fe)) +- docs action ([#2](https://github.com/StackOneHQ/stackone-ai-node/issues/2)) ([1717c31](https://github.com/StackOneHQ/stackone-ai-node/commit/1717c31a92c557aec023be7e89f19dab6ff10c32)) +- docs actions pt2 ([#3](https://github.com/StackOneHQ/stackone-ai-node/issues/3)) ([a9fbbc9](https://github.com/StackOneHQ/stackone-ai-node/commit/a9fbbc91446375b0916aacf5c13a9bdaec082680)) +- docs links ([#16](https://github.com/StackOneHQ/stackone-ai-node/issues/16)) ([29fc021](https://github.com/StackOneHQ/stackone-ai-node/commit/29fc021729504db78e11ffc261d9e48bf3dd3c98)) +- hook ([#57](https://github.com/StackOneHQ/stackone-ai-node/issues/57)) ([ae92968](https://github.com/StackOneHQ/stackone-ai-node/commit/ae9296898738413ca129cbdc7d415cf58604e1f2)) +- implement deep object serialization for nested filter parameters ([#40](https://github.com/StackOneHQ/stackone-ai-node/issues/40)) ([a5c3c1f](https://github.com/StackOneHQ/stackone-ai-node/commit/a5c3c1f1e4aae89e8ce9e75e98e123346969b331)) +- **lefthook:** use pnpm ([#217](https://github.com/StackOneHQ/stackone-ai-node/issues/217)) ([e65099b](https://github.com/StackOneHQ/stackone-ai-node/commit/e65099b4eab9d757113d5ddbfb113820f38f0a15)) +- **lint:** resolve all oxlint errors ([#193](https://github.com/StackOneHQ/stackone-ai-node/issues/193)) ([15e849f](https://github.com/StackOneHQ/stackone-ai-node/commit/15e849fa645e4df7280efe816bee8fecb1245177)) +- name ([#6](https://github.com/StackOneHQ/stackone-ai-node/issues/6)) ([0952512](https://github.com/StackOneHQ/stackone-ai-node/commit/0952512f14bc23ef34431de9fc7663a948382aba)) +- oas location ([#8](https://github.com/StackOneHQ/stackone-ai-node/issues/8)) ([380e495](https://github.com/StackOneHQ/stackone-ai-node/commit/380e49579ccff36f5de3a54aa349d39936add3bb)) +- oas location and file upload ([#9](https://github.com/StackOneHQ/stackone-ai-node/issues/9)) ([e514a0f](https://github.com/StackOneHQ/stackone-ai-node/commit/e514a0f2ca484a5a1f3824a88b850ab869a148c0)) +- oas regen ([#33](https://github.com/StackOneHQ/stackone-ai-node/issues/33)) ([80a8dbb](https://github.com/StackOneHQ/stackone-ai-node/commit/80a8dbb03e4e2324c351d34cfd7e88eb5058688f)) +- **package.json:** add engines ([#182](https://github.com/StackOneHQ/stackone-ai-node/issues/182)) ([ef2189d](https://github.com/StackOneHQ/stackone-ai-node/commit/ef2189d1eb5131652bf651965a18d79dc0ea1035)) +- remove an ambiguous keyword(saas) from package.json ([#145](https://github.com/StackOneHQ/stackone-ai-node/issues/145)) ([0e434e3](https://github.com/StackOneHQ/stackone-ai-node/commit/0e434e396777270c90ab7239b7f3e6b6f8832fd0)) +- remove dotenv ([#101](https://github.com/StackOneHQ/stackone-ai-node/issues/101)) ([f1e6997](https://github.com/StackOneHQ/stackone-ai-node/commit/f1e6997dc84716d7b96be6415156fa4067315879)) +- remove unecessary type assertion ([#111](https://github.com/StackOneHQ/stackone-ai-node/issues/111)) ([5d1502d](https://github.com/StackOneHQ/stackone-ai-node/commit/5d1502d977a5049cfe86704e66a7e4467102e6a7)) +- remove unified API integration and migrate to connector-based naming ([#219](https://github.com/StackOneHQ/stackone-ai-node/issues/219)) ([79e0bc2](https://github.com/StackOneHQ/stackone-ai-node/commit/79e0bc2146ed3000374879971ba63042e54d3650)) +- rename metaSearchTool ([#94](https://github.com/StackOneHQ/stackone-ai-node/issues/94)) ([e5a7279](https://github.com/StackOneHQ/stackone-ai-node/commit/e5a7279b7a46ad522e65f1e75dcbde58c010e312)) +- resolve linting errors in generated OpenAPI files and tests ([#80](https://github.com/StackOneHQ/stackone-ai-node/issues/80)) ([7fd5eea](https://github.com/StackOneHQ/stackone-ai-node/commit/7fd5eea4b5ff19c4c3b119590a52c95175da4fc7)) +- resolve type errors and ensure CI fails on errors ([#175](https://github.com/StackOneHQ/stackone-ai-node/issues/175)) ([4d465bf](https://github.com/StackOneHQ/stackone-ai-node/commit/4d465bfe461e7c34343fdc9b15c600ea2fb66544)) +- resolve typecheck errors by upgrading to zod v4 and ai SDK 5.0.108 ([#183](https://github.com/StackOneHQ/stackone-ai-node/issues/183)) ([a2a4aaa](https://github.com/StackOneHQ/stackone-ai-node/commit/a2a4aaa4105c6c40d2272b97987c0f0cf5c5812a)) +- **rpc:** send x-account-id as HTTP header in RPC requests ([#202](https://github.com/StackOneHQ/stackone-ai-node/issues/202)) ([b3843a5](https://github.com/StackOneHQ/stackone-ai-node/commit/b3843a5765b33767f452d8cca684e2429c5cbc99)) +- **test:** stabilise examples ([#90](https://github.com/StackOneHQ/stackone-ai-node/issues/90)) ([015660d](https://github.com/StackOneHQ/stackone-ai-node/commit/015660d430724756da4d106bab1c10dba5d186d4)) +- **tooling:** typecheck ([#54](https://github.com/StackOneHQ/stackone-ai-node/issues/54)) ([025ae5c](https://github.com/StackOneHQ/stackone-ai-node/commit/025ae5c2f503e3132fd2bcb5946a38128b701316)) +- types ([#13](https://github.com/StackOneHQ/stackone-ai-node/issues/13)) ([076766c](https://github.com/StackOneHQ/stackone-ai-node/commit/076766cc46c7bea8714f3f1aee7db0ff43f89979)) +- validate tool_names after whitespace filtering ([#130](https://github.com/StackOneHQ/stackone-ai-node/issues/130)) ([5ea1c04](https://github.com/StackOneHQ/stackone-ai-node/commit/5ea1c04b217b6eed9ef4ac26e7c55e57fd35ca65)) ### Miscellaneous Chores -* bun -> pnpm+vitest && manage deps with flake.nix ([#143](https://github.com/StackOneHQ/stackone-ai-node/issues/143)) ([fb77062](https://github.com/StackOneHQ/stackone-ai-node/commit/fb77062f2dd0fd7dbc00f2e62ff2825b4e370b9f)) -* **desp:** update openai sdk to v6 and deprecate v4 ([#120](https://github.com/StackOneHQ/stackone-ai-node/issues/120)) ([417ffc5](https://github.com/StackOneHQ/stackone-ai-node/commit/417ffc553725dc005d55f324439117e67c22701e)) -* release 0.3.0 ([#88](https://github.com/StackOneHQ/stackone-ai-node/issues/88)) ([bd7c10c](https://github.com/StackOneHQ/stackone-ai-node/commit/bd7c10c11cf0b871e85533315c7543633fa56b1f)) -* trigger release 2.0.0 ([#224](https://github.com/StackOneHQ/stackone-ai-node/issues/224)) ([407fe98](https://github.com/StackOneHQ/stackone-ai-node/commit/407fe9845ccc2dcae31f1d5094b9e6b8989856c5)) - +- bun -> pnpm+vitest && manage deps with flake.nix ([#143](https://github.com/StackOneHQ/stackone-ai-node/issues/143)) ([fb77062](https://github.com/StackOneHQ/stackone-ai-node/commit/fb77062f2dd0fd7dbc00f2e62ff2825b4e370b9f)) +- **desp:** update openai sdk to v6 and deprecate v4 ([#120](https://github.com/StackOneHQ/stackone-ai-node/issues/120)) ([417ffc5](https://github.com/StackOneHQ/stackone-ai-node/commit/417ffc553725dc005d55f324439117e67c22701e)) +- release 0.3.0 ([#88](https://github.com/StackOneHQ/stackone-ai-node/issues/88)) ([bd7c10c](https://github.com/StackOneHQ/stackone-ai-node/commit/bd7c10c11cf0b871e85533315c7543633fa56b1f)) +- trigger release 2.0.0 ([#224](https://github.com/StackOneHQ/stackone-ai-node/issues/224)) ([407fe98](https://github.com/StackOneHQ/stackone-ai-node/commit/407fe9845ccc2dcae31f1d5094b9e6b8989856c5)) ### Code Refactoring -* flatten client structure and add Zod validation to RPC client ([#168](https://github.com/StackOneHQ/stackone-ai-node/issues/168)) ([53bce87](https://github.com/StackOneHQ/stackone-ai-node/commit/53bce8708ec2f6cdbb6a2bfd18521725caf784da)) -* remove unused exports and experimental features ([#221](https://github.com/StackOneHQ/stackone-ai-node/issues/221)) ([e131433](https://github.com/StackOneHQ/stackone-ai-node/commit/e1314333496de79aed06494dccb3314c5b46107d)) +- flatten client structure and add Zod validation to RPC client ([#168](https://github.com/StackOneHQ/stackone-ai-node/issues/168)) ([53bce87](https://github.com/StackOneHQ/stackone-ai-node/commit/53bce8708ec2f6cdbb6a2bfd18521725caf784da)) +- remove unused exports and experimental features ([#221](https://github.com/StackOneHQ/stackone-ai-node/issues/221)) ([e131433](https://github.com/StackOneHQ/stackone-ai-node/commit/e1314333496de79aed06494dccb3314c5b46107d)) ## [1.1.1](https://github.com/StackOneHQ/stackone-ai-node/compare/v1.1.0...v1.1.1) (2025-12-04) diff --git a/README.md b/README.md index 6c42758..b141736 100644 --- a/README.md +++ b/README.md @@ -458,7 +458,7 @@ You can use the `dryRun` option to return the api arguments from a tool call wit ```typescript import { StackOneToolSet } from "@stackone/ai"; -// Initialise the toolset +// Initialize the toolset const toolset = new StackOneToolSet({ baseUrl: "https://api.stackone.com", }); diff --git a/examples/ai-sdk-integration.ts b/examples/ai-sdk-integration.ts index d39b2dc..c44aabc 100644 --- a/examples/ai-sdk-integration.ts +++ b/examples/ai-sdk-integration.ts @@ -26,7 +26,7 @@ if (!apiKey) { const accountId = 'your-bamboohr-account-id'; const aiSdkIntegration = async (): Promise => { - // Initialise StackOne + // Initialize StackOne const toolset = new StackOneToolSet({ accountId, baseUrl: process.env.STACKONE_BASE_URL ?? 'https://api.stackone.com', diff --git a/examples/anthropic-integration.ts b/examples/anthropic-integration.ts index f92dc30..4003fc2 100644 --- a/examples/anthropic-integration.ts +++ b/examples/anthropic-integration.ts @@ -17,7 +17,7 @@ if (!apiKey) { const accountId = 'your-hris-account-id'; const anthropicIntegration = async (): Promise => { - // Initialise StackOne + // Initialize StackOne const toolset = new StackOneToolSet({ accountId, baseUrl: process.env.STACKONE_BASE_URL ?? 'https://api.stackone.com', @@ -29,7 +29,7 @@ const anthropicIntegration = async (): Promise => { }); const anthropicTools = tools.toAnthropic(); - // Initialise Anthropic client + // Initialize Anthropic client const anthropic = new Anthropic(); // Create a message with tool calls diff --git a/examples/claude-agent-sdk-integration.ts b/examples/claude-agent-sdk-integration.ts index 6057dc2..5008f78 100644 --- a/examples/claude-agent-sdk-integration.ts +++ b/examples/claude-agent-sdk-integration.ts @@ -21,7 +21,7 @@ if (!apiKey) { const accountId = 'your-bamboohr-account-id'; const claudeAgentSdkIntegration = async (): Promise => { - // Initialise StackOne + // Initialize StackOne const toolset = new StackOneToolSet({ accountId, baseUrl: process.env.STACKONE_BASE_URL ?? 'https://api.stackone.com', diff --git a/examples/fetch-tools-debug.ts b/examples/fetch-tools-debug.ts index f595e67..5195771 100644 --- a/examples/fetch-tools-debug.ts +++ b/examples/fetch-tools-debug.ts @@ -203,7 +203,7 @@ if ((typeof globalThis.Bun as any) !== 'undefined') { } const spinner = clack.spinner(); -spinner.start('Initialising StackOne client...'); +spinner.start('Initializing StackOne client...'); const toolset = new StackOneToolSet({ apiKey, diff --git a/examples/meta-tools.ts b/examples/meta-tools.ts index 42f964c..bcfb5fc 100644 --- a/examples/meta-tools.ts +++ b/examples/meta-tools.ts @@ -26,7 +26,7 @@ const accountId = 'your-bamboohr-account-id'; const metaToolsWithAISDK = async (): Promise => { console.log('šŸ” Example 1: Dynamic tool discovery with AI SDK\n'); - // Initialise StackOne toolset + // Initialize StackOne toolset const toolset = new StackOneToolSet({ accountId, baseUrl: process.env.STACKONE_BASE_URL ?? 'https://api.stackone.com', @@ -64,7 +64,7 @@ const metaToolsWithOpenAI = async (): Promise => { apiKey: process.env.OPENAI_API_KEY, }); - // Initialise StackOne toolset + // Initialize StackOne toolset const toolset = new StackOneToolSet({ accountId, baseUrl: process.env.STACKONE_BASE_URL ?? 'https://api.stackone.com', @@ -118,7 +118,7 @@ const metaToolsWithOpenAI = async (): Promise => { const directMetaToolUsage = async (): Promise => { console.log('\nšŸ› ļø Example 3: Direct meta tool usage\n'); - // Initialise toolset + // Initialize toolset const toolset = new StackOneToolSet({ accountId, baseUrl: process.env.STACKONE_BASE_URL ?? 'https://api.stackone.com', diff --git a/examples/openai-integration.test.ts b/examples/openai-integration.test.ts index fb59e1f..2eb93f9 100644 --- a/examples/openai-integration.test.ts +++ b/examples/openai-integration.test.ts @@ -33,7 +33,7 @@ describe('openai-integration example e2e', () => { expect(openAITools[0]).toHaveProperty('type', 'function'); expect(openAITools[0]).toHaveProperty('function'); - // Initialise OpenAI client + // Initialize OpenAI client const openai = new OpenAI(); // Create a chat completion with tool calls diff --git a/examples/openai-integration.ts b/examples/openai-integration.ts index 0a6fcdb..ed054c9 100644 --- a/examples/openai-integration.ts +++ b/examples/openai-integration.ts @@ -17,7 +17,7 @@ if (!apiKey) { const accountId = 'your-bamboohr-account-id'; const openaiIntegration = async (): Promise => { - // Initialise StackOne + // Initialize StackOne const toolset = new StackOneToolSet({ accountId, baseUrl: process.env.STACKONE_BASE_URL ?? 'https://api.stackone.com', @@ -27,7 +27,7 @@ const openaiIntegration = async (): Promise => { const tools = await toolset.fetchTools(); const openAITools = tools.toOpenAI(); - // Initialise OpenAI client + // Initialize OpenAI client const openai = new OpenAI(); // Create a chat completion with tool calls diff --git a/examples/openai-responses-integration.test.ts b/examples/openai-responses-integration.test.ts index 77269d5..f0bc286 100644 --- a/examples/openai-responses-integration.test.ts +++ b/examples/openai-responses-integration.test.ts @@ -32,7 +32,7 @@ describe('openai-responses-integration example e2e', () => { expect(Array.isArray(openAIResponsesTools)).toBe(true); expect(openAIResponsesTools.length).toBeGreaterThan(0); - // Initialise OpenAI client + // Initialize OpenAI client const openai = new OpenAI(); // Create a response with tool calls using the Responses API diff --git a/examples/openai-responses-integration.ts b/examples/openai-responses-integration.ts index 8dba1e6..08b5e4a 100644 --- a/examples/openai-responses-integration.ts +++ b/examples/openai-responses-integration.ts @@ -17,7 +17,7 @@ if (!apiKey) { const accountId = 'your-stackone-account-id'; const openaiResponsesIntegration = async (): Promise => { - // Initialise StackOne + // Initialize StackOne const toolset = new StackOneToolSet({ accountId }); // Fetch tools via MCP @@ -26,7 +26,7 @@ const openaiResponsesIntegration = async (): Promise => { }); const openAIResponsesTools = tools.toOpenAIResponses(); - // Initialise OpenAI client + // Initialize OpenAI client const openai = new OpenAI(); // Create a response with tool calls using the Responses API diff --git a/examples/tanstack-ai-integration.ts b/examples/tanstack-ai-integration.ts index fc20358..b95664e 100644 --- a/examples/tanstack-ai-integration.ts +++ b/examples/tanstack-ai-integration.ts @@ -23,7 +23,7 @@ if (!apiKey) { const accountId = 'your-bamboohr-account-id'; const tanstackAiIntegration = async (): Promise => { - // Initialise StackOne + // Initialize StackOne const toolset = new StackOneToolSet({ accountId, baseUrl: process.env.STACKONE_BASE_URL ?? 'https://api.stackone.com', diff --git a/src/consts.ts b/src/consts.ts index a02454c..11714fa 100644 --- a/src/consts.ts +++ b/src/consts.ts @@ -12,10 +12,10 @@ export const DEFAULT_BASE_URL = 'https://api.stackone.com'; * Default weight for BM25 in hybrid BM25 + TF-IDF search. * * - alpha=0.2 means: 20% BM25 + 80% TF-IDF - * - This value was optimised through validation testing + * - This value was optimized through validation testing * - Provides 10.8% improvement in tool discovery accuracy - * - Lower values favour BM25 scoring (better keyword matching) - * - Higher values favour TF-IDF scoring (better semantic matching) + * - Lower values favor BM25 scoring (better keyword matching) + * - Higher values favor TF-IDF scoring (better semantic matching) */ export const DEFAULT_HYBRID_ALPHA = 0.2; diff --git a/src/headers.test.ts b/src/headers.test.ts index 6a59343..3bb4f09 100644 --- a/src/headers.test.ts +++ b/src/headers.test.ts @@ -1,56 +1,56 @@ -import { normaliseHeaders } from './headers'; +import { normalizeHeaders } from './headers'; -describe('normaliseHeaders', () => { +describe('normalizeHeaders', () => { it('returns empty object for undefined input', () => { - expect(normaliseHeaders(undefined)).toEqual({}); + expect(normalizeHeaders(undefined)).toEqual({}); }); it('returns empty object for empty input', () => { - expect(normaliseHeaders({})).toEqual({}); + expect(normalizeHeaders({})).toEqual({}); }); it('preserves string values', () => { - expect(normaliseHeaders({ foo: 'bar', baz: 'qux' })).toEqual({ + expect(normalizeHeaders({ foo: 'bar', baz: 'qux' })).toEqual({ foo: 'bar', baz: 'qux', }); }); it('converts numbers to strings', () => { - expect(normaliseHeaders({ port: 8080, timeout: 30 })).toEqual({ + expect(normalizeHeaders({ port: 8080, timeout: 30 })).toEqual({ port: '8080', timeout: '30', }); }); it('converts booleans to strings', () => { - expect(normaliseHeaders({ enabled: true, debug: false })).toEqual({ + expect(normalizeHeaders({ enabled: true, debug: false })).toEqual({ enabled: 'true', debug: 'false', }); }); - it('serialises objects to JSON', () => { - expect(normaliseHeaders({ config: { key: 'value' } })).toEqual({ + it('serializes objects to JSON', () => { + expect(normalizeHeaders({ config: { key: 'value' } })).toEqual({ config: '{"key":"value"}', }); }); - it('serialises arrays to JSON', () => { - expect(normaliseHeaders({ tags: ['foo', 'bar'] })).toEqual({ + it('serializes arrays to JSON', () => { + expect(normalizeHeaders({ tags: ['foo', 'bar'] })).toEqual({ tags: '["foo","bar"]', }); }); it('skips null values', () => { - expect(normaliseHeaders({ foo: 'bar', baz: null })).toEqual({ + expect(normalizeHeaders({ foo: 'bar', baz: null })).toEqual({ foo: 'bar', }); }); it('handles mixed value types', () => { expect( - normaliseHeaders({ + normalizeHeaders({ string: 'text', number: 42, boolean: true, diff --git a/src/headers.ts b/src/headers.ts index 7e412f3..f30b474 100644 --- a/src/headers.ts +++ b/src/headers.ts @@ -18,13 +18,13 @@ export const stackOneHeadersSchema = z.record(z.string(), z.string()).brand<'Sta export type StackOneHeaders = z.infer; /** - * Normalises header values from JsonObject to StackOneHeaders (branded type) - * Converts numbers and booleans to strings, and serialises objects to JSON + * Normalizes header values from JsonObject to StackOneHeaders (branded type) + * Converts numbers and booleans to strings, and serializes objects to JSON * * @param headers - Headers object with JSON value types - * @returns Normalised headers with string values only (branded type) + * @returns Normalized headers with string values only (branded type) */ -export function normaliseHeaders(headers: JsonObject | undefined): StackOneHeaders { +export function normalizeHeaders(headers: JsonObject | undefined): StackOneHeaders { if (!headers) return stackOneHeadersSchema.parse({}); const result: Record = {}; for (const [key, value] of Object.entries(headers)) { diff --git a/src/requestBuilder.test.ts b/src/requestBuilder.test.ts index 028937e..258b2ec 100644 --- a/src/requestBuilder.test.ts +++ b/src/requestBuilder.test.ts @@ -62,7 +62,7 @@ describe('RequestBuilder', () => { server.events.removeAllListeners('request:start'); }); - it('should initialise with headers from constructor', () => { + it('should initialize with headers from constructor', () => { expect(builder.getHeaders()).toEqual({ 'Initial-Header': 'test' }); }); @@ -325,7 +325,7 @@ describe('RequestBuilder', () => { }); it('should throw error when circular reference is detected', async () => { - // Test runtime behaviour when circular reference is passed + // Test runtime behavior when circular reference is passed // Note: This tests error handling for malformed input at runtime const inner: Record = { b: 'test' }; const circular: Record = { a: inner }; @@ -356,7 +356,7 @@ describe('RequestBuilder', () => { }); it('should handle special types correctly at runtime', async () => { - // Test runtime behaviour when non-JSON types are passed + // Test runtime behavior when non-JSON types are passed // Note: Date and RegExp are not valid JsonValue types, but we test // the serialiser's runtime handling of these edge cases const testDate = new Date('2023-01-01T00:00:00.000Z'); @@ -370,7 +370,7 @@ describe('RequestBuilder', () => { nullField: null, emptyString: '', }, - } as unknown as JsonObject; // Cast to test runtime serialisation + } as unknown as JsonObject; // Cast to test runtime serialization const result = await builder.execute(params, { dryRun: true }); const url = new URL(result.url as string); @@ -444,7 +444,7 @@ describe('RequestBuilder', () => { }); it('should handle nested objects with special types at runtime', async () => { - // Test runtime serialisation of nested non-JSON types + // Test runtime serialization of nested non-JSON types const params = { pathParam: 'test-value', filter: { @@ -456,7 +456,7 @@ describe('RequestBuilder', () => { }, }, }, - } as unknown as JsonObject; // Cast to test runtime serialisation + } as unknown as JsonObject; // Cast to test runtime serialization const result = await builder.execute(params, { dryRun: true }); const url = new URL(result.url as string); diff --git a/src/requestBuilder.ts b/src/requestBuilder.ts index 2549a09..61bcf11 100644 --- a/src/requestBuilder.ts +++ b/src/requestBuilder.ts @@ -332,7 +332,7 @@ export class RequestBuilder { // If dryRun is true, return the request details instead of making the API call if (options?.dryRun) { - // Convert headers to a plain object for JSON serialisation + // Convert headers to a plain object for JSON serialization const headersObj = fetchOptions.headers instanceof Headers ? Object.fromEntries(fetchOptions.headers.entries()) diff --git a/src/toolsets.test.ts b/src/toolsets.test.ts index 735083d..d01a141 100644 --- a/src/toolsets.test.ts +++ b/src/toolsets.test.ts @@ -1,6 +1,6 @@ /** * StackOneToolSet tests - comprehensive test suite covering: - * - Initialisation and configuration + * - Initialization and configuration * - Authentication (basic, bearer) * - Glob and filter matching * - MCP fetch integration @@ -21,8 +21,8 @@ describe('StackOneToolSet', () => { vi.unstubAllEnvs(); }); - describe('initialisation', () => { - it('should initialise with API key from constructor', () => { + describe('initialization', () => { + it('should initialize with API key from constructor', () => { const toolset = new StackOneToolSet({ apiKey: 'custom_key' }); expect(toolset).toBeDefined(); @@ -30,7 +30,7 @@ describe('StackOneToolSet', () => { expect(toolset.authentication?.credentials?.username).toBe('custom_key'); }); - it('should initialise with API key from environment', () => { + it('should initialize with API key from environment', () => { const toolset = new StackOneToolSet(); expect(toolset).toBeDefined(); @@ -38,7 +38,7 @@ describe('StackOneToolSet', () => { expect(toolset.authentication?.credentials?.username).toBe('test_key'); }); - it('should initialise with custom values', () => { + it('should initialize with custom values', () => { const baseUrl = 'https://api.example.com'; const headers = { 'X-Custom-Header': 'test' }; @@ -83,7 +83,7 @@ describe('StackOneToolSet', () => { expect(toolset.accountIds).toEqual(['account-1', 'account-2']); }); - it('should initialise with multiple account IDs from constructor', () => { + it('should initialize with multiple account IDs from constructor', () => { const toolset = new StackOneToolSet({ apiKey: 'custom_key', accountIds: ['account-1', 'account-2', 'account-3'], @@ -93,7 +93,7 @@ describe('StackOneToolSet', () => { expect(toolset.accountIds).toEqual(['account-1', 'account-2', 'account-3']); }); - it('should initialise with empty accountIds array when not provided', () => { + it('should initialize with empty accountIds array when not provided', () => { const toolset = new StackOneToolSet({ apiKey: 'custom_key' }); // @ts-expect-error - Accessing private property for testing diff --git a/src/toolsets.ts b/src/toolsets.ts index ad31de4..03df7a4 100644 --- a/src/toolsets.ts +++ b/src/toolsets.ts @@ -2,7 +2,7 @@ import { defu } from 'defu'; import type { MergeExclusive, SimplifyDeep } from 'type-fest'; import { DEFAULT_BASE_URL, UNIFIED_API_PREFIX } from './consts'; import { createFeedbackTool } from './feedback'; -import { type StackOneHeaders, normaliseHeaders, stackOneHeadersSchema } from './headers'; +import { type StackOneHeaders, normalizeHeaders, stackOneHeadersSchema } from './headers'; import { createMCPClient } from './mcp-client'; import { type RpcActionResponse, RpcClient } from './rpc-client'; import { BaseTool, Tools } from './tool'; @@ -171,7 +171,7 @@ export class StackOneToolSet { private accountIds: string[] = []; /** - * Initialise StackOne toolset with API key and optional account ID(s) + * Initialize StackOne toolset with API key and optional account ID(s) * @param config Configuration object containing API key and optional account ID(s) */ constructor(config?: StackOneToolSetConfig) { @@ -211,7 +211,7 @@ export class StackOneToolSet { ...(accountId ? { 'x-account-id': accountId } : {}), }; - // Initialise base properties + // Initialize base properties this.baseUrl = config?.baseUrl ?? process.env.STACKONE_BASE_URL ?? DEFAULT_BASE_URL; this.authentication = authentication; this.headers = configHeaders; @@ -499,7 +499,7 @@ export class StackOneToolSet { const pathParams = this.extractRecord(parsedParams, 'path'); const queryParams = this.extractRecord(parsedParams, 'query'); const additionalHeaders = this.extractRecord(parsedParams, 'headers'); - const extraHeaders = normaliseHeaders(additionalHeaders); + const extraHeaders = normalizeHeaders(additionalHeaders); // defu merges extraHeaders into baseHeaders, both are already branded types const actionHeaders = defu(extraHeaders, baseHeaders) as StackOneHeaders; diff --git a/typos.toml b/typos.toml index fcab1da..7882ea9 100644 --- a/typos.toml +++ b/typos.toml @@ -13,4 +13,5 @@ extend-exclude = [ "package.json", "pnpm-lock.yaml", "pnpm-workspace.yaml", + "CHANGELOG.md", ] From c935c0fcbdcc6e385315d494a325a88eb9fb817f Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Wed, 17 Dec 2025 14:45:00 +0000 Subject: [PATCH 4/9] ci(lefthook): add typos check to pre-push hook - Add typos check to pre-push hook to catch spelling errors before pushing - Explicitly specify typos.toml configuration file - Runs after staged changes but before knip linter --- lefthook.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lefthook.yaml b/lefthook.yaml index 30a7558..21bf81b 100644 --- a/lefthook.yaml +++ b/lefthook.yaml @@ -16,5 +16,7 @@ pre-commit: pre-push: jobs: + - name: typos + run: typos --config typos.toml - name: knip run: pnpm run lint:knip From 54bb83ba047c8b8431e22bedf2f68c827fe092ab Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Wed, 17 Dec 2025 14:47:49 +0000 Subject: [PATCH 5/9] ci: add typos --- .github/workflows/ci.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 54282d9..fac4af8 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -16,7 +16,7 @@ permissions: id-token: write jobs: - ci: + typos: runs-on: ubuntu-latest steps: - name: Checkout repository @@ -25,6 +25,8 @@ jobs: - name: Setup Nix uses: ./.github/actions/setup-nix + - name: Run Typo Check + run: nix develop --command typos . - name: Run Lint run: nix develop --command pnpm run lint From 23a945fbeb19125b25a64073bf28953164b917e2 Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Wed, 17 Dec 2025 14:47:59 +0000 Subject: [PATCH 6/9] chore: make cis parallel --- .github/workflows/ci.yaml | 34 ++++++++++++++++++++++++++-------- 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index fac4af8..ba9c41f 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -27,36 +27,54 @@ jobs: - name: Run Typo Check run: nix develop --command typos . + + lint: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - name: Setup Nix + uses: ./.github/actions/setup-nix - name: Run Lint run: nix develop --command pnpm run lint + build-and-test: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + + - name: Setup Nix + uses: ./.github/actions/setup-nix + - name: Run Build run: nix develop --command pnpm run build - name: Run Tests - if: github.ref != 'refs/heads/main' run: nix develop --command pnpm test + coverage: + runs-on: ubuntu-latest + if: github.ref == 'refs/heads/main' + steps: + - name: Checkout repository + uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 + - name: Setup Nix + uses: ./.github/actions/setup-nix - name: Run Tests with Coverage - if: github.ref == 'refs/heads/main' run: nix develop --command pnpm run coverage - - name: Create Coverage Badge - if: github.ref == 'refs/heads/main' uses: jaywcjlove/coverage-badges-cli@bd6ccbf422c0ed54c01f283019fd2bc648f58541 # v2.2.0 with: source: coverage/coverage-summary.json output: coverage/badges.svg - - name: Upload coverage artifact - if: github.ref == 'refs/heads/main' uses: actions/upload-pages-artifact@7b1f4a764d45c48632c6b24a0339c27f5614fb0b # v4.0.0 with: path: coverage deploy-coverage: - if: github.ref == 'refs/heads/main' - needs: ci + needs: coverage runs-on: ubuntu-latest environment: name: github-pages From 4dc187765561be470620715a25e0284c90918b33 Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Wed, 17 Dec 2025 14:54:57 +0000 Subject: [PATCH 7/9] chore(lint): exclude CHANGELOG.md from oxlint checks Add CHANGELOG.md to oxlint ignorePatterns to prevent linting errors. The changelog is auto-generated and should not be linted alongside application code. It was already excluded from oxfmt. --- .oxlintrc.jsonc | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/.oxlintrc.jsonc b/.oxlintrc.jsonc index ceac526..9fb4bfe 100644 --- a/.oxlintrc.jsonc +++ b/.oxlintrc.jsonc @@ -9,7 +9,15 @@ "node": true, }, // Ignore patterns - "ignorePatterns": ["dist", "node_modules", ".claude", "tmp", "*.log", "/nix/store/**"], + "ignorePatterns": [ + "dist", + "node_modules", + ".claude", + "tmp", + "*.log", + "/nix/store/**", + "CHANGELOG.md", + ], // Rule categories - strict base configuration // - correctness (196 rules): Catch definite bugs and errors // - suspicious (47 rules): Flag potentially problematic patterns From 5e16ec6eb8e2a77b0fa831a3c0b30a5406103bba Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Wed, 17 Dec 2025 14:56:37 +0000 Subject: [PATCH 8/9] chore(changelog): revert format to match main branch Revert changelog formatting from dash bullets to asterisk bullets, and restore blank lines after section headers. This aligns with the canonical format maintained on the main branch. --- CHANGELOG.md | 171 +++++++++++++++++++++++++++------------------------ 1 file changed, 92 insertions(+), 79 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 010996c..4ef5d62 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,144 +2,157 @@ ## [2.0.9](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.8...v2.0.9) (2025-12-16) + ### Bug Fixes -- **toolsets:** add accountIds option to StackOneToolSetConfig ([#252](https://github.com/StackOneHQ/stackone-ai-node/issues/252)) ([33973ed](https://github.com/StackOneHQ/stackone-ai-node/commit/33973edd31c7b16cb55d53b4354069ed76da3d9b)) +* **toolsets:** add accountIds option to StackOneToolSetConfig ([#252](https://github.com/StackOneHQ/stackone-ai-node/issues/252)) ([33973ed](https://github.com/StackOneHQ/stackone-ai-node/commit/33973edd31c7b16cb55d53b4354069ed76da3d9b)) ## [2.0.8](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.7...v2.0.8) (2025-12-15) + ### Bug Fixes -- **ci:** revert changes 2.0.5 ~ 2.0.7 ([#246](https://github.com/StackOneHQ/stackone-ai-node/issues/246)) ([91909a2](https://github.com/StackOneHQ/stackone-ai-node/commit/91909a29cdb3131b7bc808722fb636e82856abd8)) +* **ci:** revert changes 2.0.5 ~ 2.0.7 ([#246](https://github.com/StackOneHQ/stackone-ai-node/issues/246)) ([91909a2](https://github.com/StackOneHQ/stackone-ai-node/commit/91909a29cdb3131b7bc808722fb636e82856abd8)) ## [2.0.7](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.6...v2.0.7) (2025-12-15) + ### Bug Fixes -- **ci:** pack ([#244](https://github.com/StackOneHQ/stackone-ai-node/issues/244)) ([21c4a45](https://github.com/StackOneHQ/stackone-ai-node/commit/21c4a452af692bd7a6933453a1c4932ee34489d2)) +* **ci:** pack ([#244](https://github.com/StackOneHQ/stackone-ai-node/issues/244)) ([21c4a45](https://github.com/StackOneHQ/stackone-ai-node/commit/21c4a452af692bd7a6933453a1c4932ee34489d2)) ## [2.0.6](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.5...v2.0.6) (2025-12-15) + ### Bug Fixes -- **ci:** remove --provenance ([#242](https://github.com/StackOneHQ/stackone-ai-node/issues/242)) ([86f18bf](https://github.com/StackOneHQ/stackone-ai-node/commit/86f18bfd08c5ac02c64783506f75c39a2c5c0816)) +* **ci:** remove --provenance ([#242](https://github.com/StackOneHQ/stackone-ai-node/issues/242)) ([86f18bf](https://github.com/StackOneHQ/stackone-ai-node/commit/86f18bfd08c5ac02c64783506f75c39a2c5c0816)) ## [2.0.5](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.4...v2.0.5) (2025-12-15) + ### Bug Fixes -- **ci:** move install to nix action ([#240](https://github.com/StackOneHQ/stackone-ai-node/issues/240)) ([fe729aa](https://github.com/StackOneHQ/stackone-ai-node/commit/fe729aa6a938a845b321739384ee1bc4e9d090f4)) +* **ci:** move install to nix action ([#240](https://github.com/StackOneHQ/stackone-ai-node/issues/240)) ([fe729aa](https://github.com/StackOneHQ/stackone-ai-node/commit/fe729aa6a938a845b321739384ee1bc4e9d090f4)) ## [2.0.4](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.3...v2.0.4) (2025-12-15) + ### Bug Fixes -- **ci:** latest -> lts ([#238](https://github.com/StackOneHQ/stackone-ai-node/issues/238)) ([2485a97](https://github.com/StackOneHQ/stackone-ai-node/commit/2485a97222182d507433f4a916370dc51fb98923)) +* **ci:** latest -> lts ([#238](https://github.com/StackOneHQ/stackone-ai-node/issues/238)) ([2485a97](https://github.com/StackOneHQ/stackone-ai-node/commit/2485a97222182d507433f4a916370dc51fb98923)) ## [2.0.3](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.2...v2.0.3) (2025-12-15) + ### Bug Fixes -- **release:** enable provence ([#236](https://github.com/StackOneHQ/stackone-ai-node/issues/236)) ([a784cd4](https://github.com/StackOneHQ/stackone-ai-node/commit/a784cd459d13a03daa791e363f56eaeebe43398a)) +* **release:** enable provence ([#236](https://github.com/StackOneHQ/stackone-ai-node/issues/236)) ([a784cd4](https://github.com/StackOneHQ/stackone-ai-node/commit/a784cd459d13a03daa791e363f56eaeebe43398a)) ## [2.0.2](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.1...v2.0.2) (2025-12-15) + ### Bug Fixes -- **release:** give permission to create id for publishing ([#234](https://github.com/StackOneHQ/stackone-ai-node/issues/234)) ([dd5b894](https://github.com/StackOneHQ/stackone-ai-node/commit/dd5b894352fc9d2ec45834537c243907404063f4)) +* **release:** give permission to create id for publishing ([#234](https://github.com/StackOneHQ/stackone-ai-node/issues/234)) ([dd5b894](https://github.com/StackOneHQ/stackone-ai-node/commit/dd5b894352fc9d2ec45834537c243907404063f4)) ## [2.0.1](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.0...v2.0.1) (2025-12-15) + ### Bug Fixes -- ignore changelog from oxfmt ([#232](https://github.com/StackOneHQ/stackone-ai-node/issues/232)) ([8ae4480](https://github.com/StackOneHQ/stackone-ai-node/commit/8ae4480306aa132334b2e3e8e4c33003285bab3d)) +* ignore changelog from oxfmt ([#232](https://github.com/StackOneHQ/stackone-ai-node/issues/232)) ([8ae4480](https://github.com/StackOneHQ/stackone-ai-node/commit/8ae4480306aa132334b2e3e8e4c33003285bab3d)) ## [2.0.0](https://github.com/StackOneHQ/stackone-ai-node/compare/v2.0.0...v2.0.0) (2025-12-15) + ### ⚠ BREAKING CHANGES -- Remove unused public exports from the SDK -- remove unified API integration and migrate to connector-based naming ([#219](https://github.com/StackOneHQ/stackone-ai-node/issues/219)) -- **lint:** Linting rules are now significantly stricter. Code that previously passed Biome's checks may now fail with oxlint's pedantic, correctness, suspicious, performance, and style rule categories all set to error level. -- resolve typecheck errors by upgrading to zod v4 and ai SDK 5.0.108 ([#183](https://github.com/StackOneHQ/stackone-ai-node/issues/183)) -- BaseToolSetConfig.stackOneClient is now rpcClient -- bun -> pnpm+vitest && manage deps with flake.nix ([#143](https://github.com/StackOneHQ/stackone-ai-node/issues/143)) -- OpenAPI spec imports from src/openapi/ are removed -- **desp:** update openai sdk to v6 and deprecate v4 ([#120](https://github.com/StackOneHQ/stackone-ai-node/issues/120)) -- metaRelevantTools() renamed to metaTools() and now returns Promise +* Remove unused public exports from the SDK +* remove unified API integration and migrate to connector-based naming ([#219](https://github.com/StackOneHQ/stackone-ai-node/issues/219)) +* **lint:** Linting rules are now significantly stricter. Code that previously passed Biome's checks may now fail with oxlint's pedantic, correctness, suspicious, performance, and style rule categories all set to error level. +* resolve typecheck errors by upgrading to zod v4 and ai SDK 5.0.108 ([#183](https://github.com/StackOneHQ/stackone-ai-node/issues/183)) +* BaseToolSetConfig.stackOneClient is now rpcClient +* bun -> pnpm+vitest && manage deps with flake.nix ([#143](https://github.com/StackOneHQ/stackone-ai-node/issues/143)) +* OpenAPI spec imports from src/openapi/ are removed +* **desp:** update openai sdk to v6 and deprecate v4 ([#120](https://github.com/StackOneHQ/stackone-ai-node/issues/120)) +* metaRelevantTools() renamed to metaTools() and now returns Promise ### Features -- add Anthropic Claude integration ([#208](https://github.com/StackOneHQ/stackone-ai-node/issues/208)) ([08e7ae0](https://github.com/StackOneHQ/stackone-ai-node/commit/08e7ae0450e40f27947619124e00672509af4187)) -- add knip for unused code detection ([#174](https://github.com/StackOneHQ/stackone-ai-node/issues/174)) ([9df963d](https://github.com/StackOneHQ/stackone-ai-node/commit/9df963da3582712997564611ef170b78f5e5b6e4)) -- add meta tools for dynamic tool discovery and execution ([#84](https://github.com/StackOneHQ/stackone-ai-node/issues/84)) ([e1da427](https://github.com/StackOneHQ/stackone-ai-node/commit/e1da4276a5b00028fdfa6341a4c4d0898d187f88)) -- add pkg.pr.new ci ([#58](https://github.com/StackOneHQ/stackone-ai-node/issues/58)) ([4757773](https://github.com/StackOneHQ/stackone-ai-node/commit/4757773d238ea18427c520e83000813f9b376d62)) -- add provider and action filtering to fetchTools() ([#124](https://github.com/StackOneHQ/stackone-ai-node/issues/124)) ([71fe4a4](https://github.com/StackOneHQ/stackone-ai-node/commit/71fe4a476e9e07e1348381b9926bacdbb986549f)) -- add test coverage reporting with GitHub Pages deployment ([#188](https://github.com/StackOneHQ/stackone-ai-node/issues/188)) ([02a572e](https://github.com/StackOneHQ/stackone-ai-node/commit/02a572ede612db5e26b5f6c510c1b57a84ca050a)) -- breaking change ai sdk name and toolset config object ([#14](https://github.com/StackOneHQ/stackone-ai-node/issues/14)) ([ad1f207](https://github.com/StackOneHQ/stackone-ai-node/commit/ad1f2075a1fb9fd9e851577aef78b138ae8f3264)) -- build in ci ([#19](https://github.com/StackOneHQ/stackone-ai-node/issues/19)) ([40131d0](https://github.com/StackOneHQ/stackone-ai-node/commit/40131d08fae4f37007cc94be6980be6b2cf6e616)) -- check pr title ([#45](https://github.com/StackOneHQ/stackone-ai-node/issues/45)) ([56ce286](https://github.com/StackOneHQ/stackone-ai-node/commit/56ce2867bb2db3c7550eb083f06c8881f9ca85c6)) -- error from tools ([#31](https://github.com/StackOneHQ/stackone-ai-node/issues/31)) ([96e6745](https://github.com/StackOneHQ/stackone-ai-node/commit/96e6745da689da313658c881a2e144c238f85274)) -- **example:** add interactive CLI demo with @clack/prompts ([#203](https://github.com/StackOneHQ/stackone-ai-node/issues/203)) ([c5c6990](https://github.com/StackOneHQ/stackone-ai-node/commit/c5c699012b4e7260cb799a4fa7e2625bc69dc769)) -- **examples:** add TanStack AI and Claude Agent SDK integrations with E2E tests ([#222](https://github.com/StackOneHQ/stackone-ai-node/issues/222)) ([e890de1](https://github.com/StackOneHQ/stackone-ai-node/commit/e890de13e7e59abc77a3c66a441fe3715df5ca2a)) -- experimental doc handling ([#50](https://github.com/StackOneHQ/stackone-ai-node/issues/50)) ([366f3ca](https://github.com/StackOneHQ/stackone-ai-node/commit/366f3ca82e6f1acb19c6d62aa180efc4c8e6cdef)) -- feedback tool ([#125](https://github.com/StackOneHQ/stackone-ai-node/issues/125)) ([d943e60](https://github.com/StackOneHQ/stackone-ai-node/commit/d943e603db194646828243a5c7615beaa7c1b5c2)) -- init ([468ffea](https://github.com/StackOneHQ/stackone-ai-node/commit/468ffeae1f8ea9ec77637a1451e2040bcbd8adcf)) -- introduce MCP-backed dynamic tools ([#114](https://github.com/StackOneHQ/stackone-ai-node/issues/114)) ([ef5efc1](https://github.com/StackOneHQ/stackone-ai-node/commit/ef5efc172a863f692ab7da4573723ba77c9c1c19)) -- **lint:** configure unicorn/prefer-top-level-await rule ([#218](https://github.com/StackOneHQ/stackone-ai-node/issues/218)) ([1254196](https://github.com/StackOneHQ/stackone-ai-node/commit/1254196c7c8e063f56993bc1c65b185058c21a8d)) -- make AI SDK and OpenAI SDK optional peer dependencies ([#112](https://github.com/StackOneHQ/stackone-ai-node/issues/112)) ([e745640](https://github.com/StackOneHQ/stackone-ai-node/commit/e7456400c585f3dd4c39fa1d9977ecfd1bce225c)) -- **meta-tools:** add hybrid BM25 + TF-IDF search strategy ([#122](https://github.com/StackOneHQ/stackone-ai-node/issues/122)) ([46fc31a](https://github.com/StackOneHQ/stackone-ai-node/commit/46fc31acd60b03091b56fffb1486730e57d9ee72)) -- npm token ([#5](https://github.com/StackOneHQ/stackone-ai-node/issues/5)) ([1bb9095](https://github.com/StackOneHQ/stackone-ai-node/commit/1bb9095eb27a44888781fa892e68fb751cad2b20)) -- readme ai sdk ([#10](https://github.com/StackOneHQ/stackone-ai-node/issues/10)) ([34d39cd](https://github.com/StackOneHQ/stackone-ai-node/commit/34d39cd11619a95572cae063af5813444bad609d)) -- remove deprecated OAS-based getTools, migrate to fetchTools only ([#148](https://github.com/StackOneHQ/stackone-ai-node/issues/148)) ([aea526e](https://github.com/StackOneHQ/stackone-ai-node/commit/aea526e859af14c4280453ccd709c7e403e1901d)) -- **tool:** add OpenAI Responses API integration ([#206](https://github.com/StackOneHQ/stackone-ai-node/issues/206)) ([1e286cf](https://github.com/StackOneHQ/stackone-ai-node/commit/1e286cfa23eef54c5f81a1fb546586bcd4fe0c7f)) -- **toolsets:** add multi-account support for fetchTools ([#118](https://github.com/StackOneHQ/stackone-ai-node/issues/118)) ([926e625](https://github.com/StackOneHQ/stackone-ai-node/commit/926e6256174fe9aee1bdc54469f1cd545c9d706c)) -- update oas and add planner docs ([#21](https://github.com/StackOneHQ/stackone-ai-node/issues/21)) ([6dd4269](https://github.com/StackOneHQ/stackone-ai-node/commit/6dd42697b8ea11bc4d62e62a3bab16b34fb49f4a)) -- update schema ([#60](https://github.com/StackOneHQ/stackone-ai-node/issues/60)) ([03c9283](https://github.com/StackOneHQ/stackone-ai-node/commit/03c9283ab2169d29f24b0fd1f2c03700ce4500d3)) -- use any openapi spec as tools ([#18](https://github.com/StackOneHQ/stackone-ai-node/issues/18)) ([6dd7aeb](https://github.com/StackOneHQ/stackone-ai-node/commit/6dd7aebd1b7b24dfa52abfa6442a336666cedbca)) +* add Anthropic Claude integration ([#208](https://github.com/StackOneHQ/stackone-ai-node/issues/208)) ([08e7ae0](https://github.com/StackOneHQ/stackone-ai-node/commit/08e7ae0450e40f27947619124e00672509af4187)) +* add knip for unused code detection ([#174](https://github.com/StackOneHQ/stackone-ai-node/issues/174)) ([9df963d](https://github.com/StackOneHQ/stackone-ai-node/commit/9df963da3582712997564611ef170b78f5e5b6e4)) +* add meta tools for dynamic tool discovery and execution ([#84](https://github.com/StackOneHQ/stackone-ai-node/issues/84)) ([e1da427](https://github.com/StackOneHQ/stackone-ai-node/commit/e1da4276a5b00028fdfa6341a4c4d0898d187f88)) +* add pkg.pr.new ci ([#58](https://github.com/StackOneHQ/stackone-ai-node/issues/58)) ([4757773](https://github.com/StackOneHQ/stackone-ai-node/commit/4757773d238ea18427c520e83000813f9b376d62)) +* add provider and action filtering to fetchTools() ([#124](https://github.com/StackOneHQ/stackone-ai-node/issues/124)) ([71fe4a4](https://github.com/StackOneHQ/stackone-ai-node/commit/71fe4a476e9e07e1348381b9926bacdbb986549f)) +* add test coverage reporting with GitHub Pages deployment ([#188](https://github.com/StackOneHQ/stackone-ai-node/issues/188)) ([02a572e](https://github.com/StackOneHQ/stackone-ai-node/commit/02a572ede612db5e26b5f6c510c1b57a84ca050a)) +* breaking change ai sdk name and toolset config object ([#14](https://github.com/StackOneHQ/stackone-ai-node/issues/14)) ([ad1f207](https://github.com/StackOneHQ/stackone-ai-node/commit/ad1f2075a1fb9fd9e851577aef78b138ae8f3264)) +* build in ci ([#19](https://github.com/StackOneHQ/stackone-ai-node/issues/19)) ([40131d0](https://github.com/StackOneHQ/stackone-ai-node/commit/40131d08fae4f37007cc94be6980be6b2cf6e616)) +* check pr title ([#45](https://github.com/StackOneHQ/stackone-ai-node/issues/45)) ([56ce286](https://github.com/StackOneHQ/stackone-ai-node/commit/56ce2867bb2db3c7550eb083f06c8881f9ca85c6)) +* error from tools ([#31](https://github.com/StackOneHQ/stackone-ai-node/issues/31)) ([96e6745](https://github.com/StackOneHQ/stackone-ai-node/commit/96e6745da689da313658c881a2e144c238f85274)) +* **example:** add interactive CLI demo with @clack/prompts ([#203](https://github.com/StackOneHQ/stackone-ai-node/issues/203)) ([c5c6990](https://github.com/StackOneHQ/stackone-ai-node/commit/c5c699012b4e7260cb799a4fa7e2625bc69dc769)) +* **examples:** add TanStack AI and Claude Agent SDK integrations with E2E tests ([#222](https://github.com/StackOneHQ/stackone-ai-node/issues/222)) ([e890de1](https://github.com/StackOneHQ/stackone-ai-node/commit/e890de13e7e59abc77a3c66a441fe3715df5ca2a)) +* experimental doc handling ([#50](https://github.com/StackOneHQ/stackone-ai-node/issues/50)) ([366f3ca](https://github.com/StackOneHQ/stackone-ai-node/commit/366f3ca82e6f1acb19c6d62aa180efc4c8e6cdef)) +* feedback tool ([#125](https://github.com/StackOneHQ/stackone-ai-node/issues/125)) ([d943e60](https://github.com/StackOneHQ/stackone-ai-node/commit/d943e603db194646828243a5c7615beaa7c1b5c2)) +* init ([468ffea](https://github.com/StackOneHQ/stackone-ai-node/commit/468ffeae1f8ea9ec77637a1451e2040bcbd8adcf)) +* introduce MCP-backed dynamic tools ([#114](https://github.com/StackOneHQ/stackone-ai-node/issues/114)) ([ef5efc1](https://github.com/StackOneHQ/stackone-ai-node/commit/ef5efc172a863f692ab7da4573723ba77c9c1c19)) +* **lint:** configure unicorn/prefer-top-level-await rule ([#218](https://github.com/StackOneHQ/stackone-ai-node/issues/218)) ([1254196](https://github.com/StackOneHQ/stackone-ai-node/commit/1254196c7c8e063f56993bc1c65b185058c21a8d)) +* make AI SDK and OpenAI SDK optional peer dependencies ([#112](https://github.com/StackOneHQ/stackone-ai-node/issues/112)) ([e745640](https://github.com/StackOneHQ/stackone-ai-node/commit/e7456400c585f3dd4c39fa1d9977ecfd1bce225c)) +* **meta-tools:** add hybrid BM25 + TF-IDF search strategy ([#122](https://github.com/StackOneHQ/stackone-ai-node/issues/122)) ([46fc31a](https://github.com/StackOneHQ/stackone-ai-node/commit/46fc31acd60b03091b56fffb1486730e57d9ee72)) +* npm token ([#5](https://github.com/StackOneHQ/stackone-ai-node/issues/5)) ([1bb9095](https://github.com/StackOneHQ/stackone-ai-node/commit/1bb9095eb27a44888781fa892e68fb751cad2b20)) +* readme ai sdk ([#10](https://github.com/StackOneHQ/stackone-ai-node/issues/10)) ([34d39cd](https://github.com/StackOneHQ/stackone-ai-node/commit/34d39cd11619a95572cae063af5813444bad609d)) +* remove deprecated OAS-based getTools, migrate to fetchTools only ([#148](https://github.com/StackOneHQ/stackone-ai-node/issues/148)) ([aea526e](https://github.com/StackOneHQ/stackone-ai-node/commit/aea526e859af14c4280453ccd709c7e403e1901d)) +* **tool:** add OpenAI Responses API integration ([#206](https://github.com/StackOneHQ/stackone-ai-node/issues/206)) ([1e286cf](https://github.com/StackOneHQ/stackone-ai-node/commit/1e286cfa23eef54c5f81a1fb546586bcd4fe0c7f)) +* **toolsets:** add multi-account support for fetchTools ([#118](https://github.com/StackOneHQ/stackone-ai-node/issues/118)) ([926e625](https://github.com/StackOneHQ/stackone-ai-node/commit/926e6256174fe9aee1bdc54469f1cd545c9d706c)) +* update oas and add planner docs ([#21](https://github.com/StackOneHQ/stackone-ai-node/issues/21)) ([6dd4269](https://github.com/StackOneHQ/stackone-ai-node/commit/6dd42697b8ea11bc4d62e62a3bab16b34fb49f4a)) +* update schema ([#60](https://github.com/StackOneHQ/stackone-ai-node/issues/60)) ([03c9283](https://github.com/StackOneHQ/stackone-ai-node/commit/03c9283ab2169d29f24b0fd1f2c03700ce4500d3)) +* use any openapi spec as tools ([#18](https://github.com/StackOneHQ/stackone-ai-node/issues/18)) ([6dd7aeb](https://github.com/StackOneHQ/stackone-ai-node/commit/6dd7aebd1b7b24dfa52abfa6442a336666cedbca)) + ### Bug Fixes -- add baseURL default ([#164](https://github.com/StackOneHQ/stackone-ai-node/issues/164)) ([83ad198](https://github.com/StackOneHQ/stackone-ai-node/commit/83ad198be6f1482645f933723b76f8d1f2f3e30b)) -- building docs ([#4](https://github.com/StackOneHQ/stackone-ai-node/issues/4)) ([c5dc1d2](https://github.com/StackOneHQ/stackone-ai-node/commit/c5dc1d248f9415f4599739410060dcd802872c1b)) -- **deps:** move zod from dev to prod catalog ([#230](https://github.com/StackOneHQ/stackone-ai-node/issues/230)) ([176c53f](https://github.com/StackOneHQ/stackone-ai-node/commit/176c53fc3277035fa2f41b88ec80cf7c38f280fe)) -- docs action ([#2](https://github.com/StackOneHQ/stackone-ai-node/issues/2)) ([1717c31](https://github.com/StackOneHQ/stackone-ai-node/commit/1717c31a92c557aec023be7e89f19dab6ff10c32)) -- docs actions pt2 ([#3](https://github.com/StackOneHQ/stackone-ai-node/issues/3)) ([a9fbbc9](https://github.com/StackOneHQ/stackone-ai-node/commit/a9fbbc91446375b0916aacf5c13a9bdaec082680)) -- docs links ([#16](https://github.com/StackOneHQ/stackone-ai-node/issues/16)) ([29fc021](https://github.com/StackOneHQ/stackone-ai-node/commit/29fc021729504db78e11ffc261d9e48bf3dd3c98)) -- hook ([#57](https://github.com/StackOneHQ/stackone-ai-node/issues/57)) ([ae92968](https://github.com/StackOneHQ/stackone-ai-node/commit/ae9296898738413ca129cbdc7d415cf58604e1f2)) -- implement deep object serialization for nested filter parameters ([#40](https://github.com/StackOneHQ/stackone-ai-node/issues/40)) ([a5c3c1f](https://github.com/StackOneHQ/stackone-ai-node/commit/a5c3c1f1e4aae89e8ce9e75e98e123346969b331)) -- **lefthook:** use pnpm ([#217](https://github.com/StackOneHQ/stackone-ai-node/issues/217)) ([e65099b](https://github.com/StackOneHQ/stackone-ai-node/commit/e65099b4eab9d757113d5ddbfb113820f38f0a15)) -- **lint:** resolve all oxlint errors ([#193](https://github.com/StackOneHQ/stackone-ai-node/issues/193)) ([15e849f](https://github.com/StackOneHQ/stackone-ai-node/commit/15e849fa645e4df7280efe816bee8fecb1245177)) -- name ([#6](https://github.com/StackOneHQ/stackone-ai-node/issues/6)) ([0952512](https://github.com/StackOneHQ/stackone-ai-node/commit/0952512f14bc23ef34431de9fc7663a948382aba)) -- oas location ([#8](https://github.com/StackOneHQ/stackone-ai-node/issues/8)) ([380e495](https://github.com/StackOneHQ/stackone-ai-node/commit/380e49579ccff36f5de3a54aa349d39936add3bb)) -- oas location and file upload ([#9](https://github.com/StackOneHQ/stackone-ai-node/issues/9)) ([e514a0f](https://github.com/StackOneHQ/stackone-ai-node/commit/e514a0f2ca484a5a1f3824a88b850ab869a148c0)) -- oas regen ([#33](https://github.com/StackOneHQ/stackone-ai-node/issues/33)) ([80a8dbb](https://github.com/StackOneHQ/stackone-ai-node/commit/80a8dbb03e4e2324c351d34cfd7e88eb5058688f)) -- **package.json:** add engines ([#182](https://github.com/StackOneHQ/stackone-ai-node/issues/182)) ([ef2189d](https://github.com/StackOneHQ/stackone-ai-node/commit/ef2189d1eb5131652bf651965a18d79dc0ea1035)) -- remove an ambiguous keyword(saas) from package.json ([#145](https://github.com/StackOneHQ/stackone-ai-node/issues/145)) ([0e434e3](https://github.com/StackOneHQ/stackone-ai-node/commit/0e434e396777270c90ab7239b7f3e6b6f8832fd0)) -- remove dotenv ([#101](https://github.com/StackOneHQ/stackone-ai-node/issues/101)) ([f1e6997](https://github.com/StackOneHQ/stackone-ai-node/commit/f1e6997dc84716d7b96be6415156fa4067315879)) -- remove unecessary type assertion ([#111](https://github.com/StackOneHQ/stackone-ai-node/issues/111)) ([5d1502d](https://github.com/StackOneHQ/stackone-ai-node/commit/5d1502d977a5049cfe86704e66a7e4467102e6a7)) -- remove unified API integration and migrate to connector-based naming ([#219](https://github.com/StackOneHQ/stackone-ai-node/issues/219)) ([79e0bc2](https://github.com/StackOneHQ/stackone-ai-node/commit/79e0bc2146ed3000374879971ba63042e54d3650)) -- rename metaSearchTool ([#94](https://github.com/StackOneHQ/stackone-ai-node/issues/94)) ([e5a7279](https://github.com/StackOneHQ/stackone-ai-node/commit/e5a7279b7a46ad522e65f1e75dcbde58c010e312)) -- resolve linting errors in generated OpenAPI files and tests ([#80](https://github.com/StackOneHQ/stackone-ai-node/issues/80)) ([7fd5eea](https://github.com/StackOneHQ/stackone-ai-node/commit/7fd5eea4b5ff19c4c3b119590a52c95175da4fc7)) -- resolve type errors and ensure CI fails on errors ([#175](https://github.com/StackOneHQ/stackone-ai-node/issues/175)) ([4d465bf](https://github.com/StackOneHQ/stackone-ai-node/commit/4d465bfe461e7c34343fdc9b15c600ea2fb66544)) -- resolve typecheck errors by upgrading to zod v4 and ai SDK 5.0.108 ([#183](https://github.com/StackOneHQ/stackone-ai-node/issues/183)) ([a2a4aaa](https://github.com/StackOneHQ/stackone-ai-node/commit/a2a4aaa4105c6c40d2272b97987c0f0cf5c5812a)) -- **rpc:** send x-account-id as HTTP header in RPC requests ([#202](https://github.com/StackOneHQ/stackone-ai-node/issues/202)) ([b3843a5](https://github.com/StackOneHQ/stackone-ai-node/commit/b3843a5765b33767f452d8cca684e2429c5cbc99)) -- **test:** stabilise examples ([#90](https://github.com/StackOneHQ/stackone-ai-node/issues/90)) ([015660d](https://github.com/StackOneHQ/stackone-ai-node/commit/015660d430724756da4d106bab1c10dba5d186d4)) -- **tooling:** typecheck ([#54](https://github.com/StackOneHQ/stackone-ai-node/issues/54)) ([025ae5c](https://github.com/StackOneHQ/stackone-ai-node/commit/025ae5c2f503e3132fd2bcb5946a38128b701316)) -- types ([#13](https://github.com/StackOneHQ/stackone-ai-node/issues/13)) ([076766c](https://github.com/StackOneHQ/stackone-ai-node/commit/076766cc46c7bea8714f3f1aee7db0ff43f89979)) -- validate tool_names after whitespace filtering ([#130](https://github.com/StackOneHQ/stackone-ai-node/issues/130)) ([5ea1c04](https://github.com/StackOneHQ/stackone-ai-node/commit/5ea1c04b217b6eed9ef4ac26e7c55e57fd35ca65)) +* add baseURL default ([#164](https://github.com/StackOneHQ/stackone-ai-node/issues/164)) ([83ad198](https://github.com/StackOneHQ/stackone-ai-node/commit/83ad198be6f1482645f933723b76f8d1f2f3e30b)) +* building docs ([#4](https://github.com/StackOneHQ/stackone-ai-node/issues/4)) ([c5dc1d2](https://github.com/StackOneHQ/stackone-ai-node/commit/c5dc1d248f9415f4599739410060dcd802872c1b)) +* **deps:** move zod from dev to prod catalog ([#230](https://github.com/StackOneHQ/stackone-ai-node/issues/230)) ([176c53f](https://github.com/StackOneHQ/stackone-ai-node/commit/176c53fc3277035fa2f41b88ec80cf7c38f280fe)) +* docs action ([#2](https://github.com/StackOneHQ/stackone-ai-node/issues/2)) ([1717c31](https://github.com/StackOneHQ/stackone-ai-node/commit/1717c31a92c557aec023be7e89f19dab6ff10c32)) +* docs actions pt2 ([#3](https://github.com/StackOneHQ/stackone-ai-node/issues/3)) ([a9fbbc9](https://github.com/StackOneHQ/stackone-ai-node/commit/a9fbbc91446375b0916aacf5c13a9bdaec082680)) +* docs links ([#16](https://github.com/StackOneHQ/stackone-ai-node/issues/16)) ([29fc021](https://github.com/StackOneHQ/stackone-ai-node/commit/29fc021729504db78e11ffc261d9e48bf3dd3c98)) +* hook ([#57](https://github.com/StackOneHQ/stackone-ai-node/issues/57)) ([ae92968](https://github.com/StackOneHQ/stackone-ai-node/commit/ae9296898738413ca129cbdc7d415cf58604e1f2)) +* implement deep object serialization for nested filter parameters ([#40](https://github.com/StackOneHQ/stackone-ai-node/issues/40)) ([a5c3c1f](https://github.com/StackOneHQ/stackone-ai-node/commit/a5c3c1f1e4aae89e8ce9e75e98e123346969b331)) +* **lefthook:** use pnpm ([#217](https://github.com/StackOneHQ/stackone-ai-node/issues/217)) ([e65099b](https://github.com/StackOneHQ/stackone-ai-node/commit/e65099b4eab9d757113d5ddbfb113820f38f0a15)) +* **lint:** resolve all oxlint errors ([#193](https://github.com/StackOneHQ/stackone-ai-node/issues/193)) ([15e849f](https://github.com/StackOneHQ/stackone-ai-node/commit/15e849fa645e4df7280efe816bee8fecb1245177)) +* name ([#6](https://github.com/StackOneHQ/stackone-ai-node/issues/6)) ([0952512](https://github.com/StackOneHQ/stackone-ai-node/commit/0952512f14bc23ef34431de9fc7663a948382aba)) +* oas location ([#8](https://github.com/StackOneHQ/stackone-ai-node/issues/8)) ([380e495](https://github.com/StackOneHQ/stackone-ai-node/commit/380e49579ccff36f5de3a54aa349d39936add3bb)) +* oas location and file upload ([#9](https://github.com/StackOneHQ/stackone-ai-node/issues/9)) ([e514a0f](https://github.com/StackOneHQ/stackone-ai-node/commit/e514a0f2ca484a5a1f3824a88b850ab869a148c0)) +* oas regen ([#33](https://github.com/StackOneHQ/stackone-ai-node/issues/33)) ([80a8dbb](https://github.com/StackOneHQ/stackone-ai-node/commit/80a8dbb03e4e2324c351d34cfd7e88eb5058688f)) +* **package.json:** add engines ([#182](https://github.com/StackOneHQ/stackone-ai-node/issues/182)) ([ef2189d](https://github.com/StackOneHQ/stackone-ai-node/commit/ef2189d1eb5131652bf651965a18d79dc0ea1035)) +* remove an ambiguous keyword(saas) from package.json ([#145](https://github.com/StackOneHQ/stackone-ai-node/issues/145)) ([0e434e3](https://github.com/StackOneHQ/stackone-ai-node/commit/0e434e396777270c90ab7239b7f3e6b6f8832fd0)) +* remove dotenv ([#101](https://github.com/StackOneHQ/stackone-ai-node/issues/101)) ([f1e6997](https://github.com/StackOneHQ/stackone-ai-node/commit/f1e6997dc84716d7b96be6415156fa4067315879)) +* remove unecessary type assertion ([#111](https://github.com/StackOneHQ/stackone-ai-node/issues/111)) ([5d1502d](https://github.com/StackOneHQ/stackone-ai-node/commit/5d1502d977a5049cfe86704e66a7e4467102e6a7)) +* remove unified API integration and migrate to connector-based naming ([#219](https://github.com/StackOneHQ/stackone-ai-node/issues/219)) ([79e0bc2](https://github.com/StackOneHQ/stackone-ai-node/commit/79e0bc2146ed3000374879971ba63042e54d3650)) +* rename metaSearchTool ([#94](https://github.com/StackOneHQ/stackone-ai-node/issues/94)) ([e5a7279](https://github.com/StackOneHQ/stackone-ai-node/commit/e5a7279b7a46ad522e65f1e75dcbde58c010e312)) +* resolve linting errors in generated OpenAPI files and tests ([#80](https://github.com/StackOneHQ/stackone-ai-node/issues/80)) ([7fd5eea](https://github.com/StackOneHQ/stackone-ai-node/commit/7fd5eea4b5ff19c4c3b119590a52c95175da4fc7)) +* resolve type errors and ensure CI fails on errors ([#175](https://github.com/StackOneHQ/stackone-ai-node/issues/175)) ([4d465bf](https://github.com/StackOneHQ/stackone-ai-node/commit/4d465bfe461e7c34343fdc9b15c600ea2fb66544)) +* resolve typecheck errors by upgrading to zod v4 and ai SDK 5.0.108 ([#183](https://github.com/StackOneHQ/stackone-ai-node/issues/183)) ([a2a4aaa](https://github.com/StackOneHQ/stackone-ai-node/commit/a2a4aaa4105c6c40d2272b97987c0f0cf5c5812a)) +* **rpc:** send x-account-id as HTTP header in RPC requests ([#202](https://github.com/StackOneHQ/stackone-ai-node/issues/202)) ([b3843a5](https://github.com/StackOneHQ/stackone-ai-node/commit/b3843a5765b33767f452d8cca684e2429c5cbc99)) +* **test:** stabilise examples ([#90](https://github.com/StackOneHQ/stackone-ai-node/issues/90)) ([015660d](https://github.com/StackOneHQ/stackone-ai-node/commit/015660d430724756da4d106bab1c10dba5d186d4)) +* **tooling:** typecheck ([#54](https://github.com/StackOneHQ/stackone-ai-node/issues/54)) ([025ae5c](https://github.com/StackOneHQ/stackone-ai-node/commit/025ae5c2f503e3132fd2bcb5946a38128b701316)) +* types ([#13](https://github.com/StackOneHQ/stackone-ai-node/issues/13)) ([076766c](https://github.com/StackOneHQ/stackone-ai-node/commit/076766cc46c7bea8714f3f1aee7db0ff43f89979)) +* validate tool_names after whitespace filtering ([#130](https://github.com/StackOneHQ/stackone-ai-node/issues/130)) ([5ea1c04](https://github.com/StackOneHQ/stackone-ai-node/commit/5ea1c04b217b6eed9ef4ac26e7c55e57fd35ca65)) + ### Miscellaneous Chores -- bun -> pnpm+vitest && manage deps with flake.nix ([#143](https://github.com/StackOneHQ/stackone-ai-node/issues/143)) ([fb77062](https://github.com/StackOneHQ/stackone-ai-node/commit/fb77062f2dd0fd7dbc00f2e62ff2825b4e370b9f)) -- **desp:** update openai sdk to v6 and deprecate v4 ([#120](https://github.com/StackOneHQ/stackone-ai-node/issues/120)) ([417ffc5](https://github.com/StackOneHQ/stackone-ai-node/commit/417ffc553725dc005d55f324439117e67c22701e)) -- release 0.3.0 ([#88](https://github.com/StackOneHQ/stackone-ai-node/issues/88)) ([bd7c10c](https://github.com/StackOneHQ/stackone-ai-node/commit/bd7c10c11cf0b871e85533315c7543633fa56b1f)) -- trigger release 2.0.0 ([#224](https://github.com/StackOneHQ/stackone-ai-node/issues/224)) ([407fe98](https://github.com/StackOneHQ/stackone-ai-node/commit/407fe9845ccc2dcae31f1d5094b9e6b8989856c5)) +* bun -> pnpm+vitest && manage deps with flake.nix ([#143](https://github.com/StackOneHQ/stackone-ai-node/issues/143)) ([fb77062](https://github.com/StackOneHQ/stackone-ai-node/commit/fb77062f2dd0fd7dbc00f2e62ff2825b4e370b9f)) +* **desp:** update openai sdk to v6 and deprecate v4 ([#120](https://github.com/StackOneHQ/stackone-ai-node/issues/120)) ([417ffc5](https://github.com/StackOneHQ/stackone-ai-node/commit/417ffc553725dc005d55f324439117e67c22701e)) +* release 0.3.0 ([#88](https://github.com/StackOneHQ/stackone-ai-node/issues/88)) ([bd7c10c](https://github.com/StackOneHQ/stackone-ai-node/commit/bd7c10c11cf0b871e85533315c7543633fa56b1f)) +* trigger release 2.0.0 ([#224](https://github.com/StackOneHQ/stackone-ai-node/issues/224)) ([407fe98](https://github.com/StackOneHQ/stackone-ai-node/commit/407fe9845ccc2dcae31f1d5094b9e6b8989856c5)) + ### Code Refactoring -- flatten client structure and add Zod validation to RPC client ([#168](https://github.com/StackOneHQ/stackone-ai-node/issues/168)) ([53bce87](https://github.com/StackOneHQ/stackone-ai-node/commit/53bce8708ec2f6cdbb6a2bfd18521725caf784da)) -- remove unused exports and experimental features ([#221](https://github.com/StackOneHQ/stackone-ai-node/issues/221)) ([e131433](https://github.com/StackOneHQ/stackone-ai-node/commit/e1314333496de79aed06494dccb3314c5b46107d)) +* flatten client structure and add Zod validation to RPC client ([#168](https://github.com/StackOneHQ/stackone-ai-node/issues/168)) ([53bce87](https://github.com/StackOneHQ/stackone-ai-node/commit/53bce8708ec2f6cdbb6a2bfd18521725caf784da)) +* remove unused exports and experimental features ([#221](https://github.com/StackOneHQ/stackone-ai-node/issues/221)) ([e131433](https://github.com/StackOneHQ/stackone-ai-node/commit/e1314333496de79aed06494dccb3314c5b46107d)) ## [1.1.1](https://github.com/StackOneHQ/stackone-ai-node/compare/v1.1.0...v1.1.1) (2025-12-04) From c437ee388747f82f4df1b81f140e56f866e62b13 Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Wed, 17 Dec 2025 18:32:45 +0000 Subject: [PATCH 9/9] chore: oxfmt