v0.9.0-alpha.23

moeru-ai/airiv0.9.0-alpha.23Mar 26, 2026by nekomeowww

AI Summary

This alpha release introduces new AI providers (Z.ai and Azure OpenAI) and a dedicated Select component, alongside various bug fixes for audio handling, Live2D cutouts, and stage UI components.

Key Highlights

  • Added Z.ai provider
  • Added Azure OpenAI provider
  • Introduced dedicated Select component
  • Fixed audio device usage and Live2D cutout bugs

New Features

  • Z.ai provider integration
  • Azure OpenAI provider integration
  • Dedicated Select UI component

Full Release Notes

## New Contributors
* @howtomakeaname made their first contribution in https://github.com/moeru-ai/airi/pull/1437
* @breezy89757 made their first contribution in https://github.com/moeru-ai/airi/pull/1057

### 🚀 Features

- **stage-ui**:
  - Add Z.ai provider - by @AdairLi2504 in https://github.com/moeru-ai/airi/issues/1409 [<samp>(002c3)</samp>](https://github.com/moeru-ai/airi/commit/002c35e1)
  - Added Azure OpenAI provider - by @breezy89757 in https://github.com/moeru-ai/airi/issues/1057 [<samp>(f4d5d)</samp>](https://github.com/moeru-ai/airi/commit/f4d5d3de)
- **ui**:
  - Now dedicated Select component - by @nekomeowww [<samp>(f5dac)</samp>](https://github.com/moeru-ai/airi/commit/f5dac392)

### 🐞 Bug Fixes

- **stage-***:
  - Incorrect use of useAudioDevices hook - by @nekomeowww [<samp>(46147)</samp>](https://github.com/moeru-ai/airi/commit/46147b0f)
- **stage-ui**:
  - Bind cursor floating css vars - by @Gujiassh in https://github.com/moeru-ai/airi/issues/1472 [<samp>(eef0a)</samp>](https://github.com/moeru-ai/airi/commit/eef0a385)
  - Use normalized audio spectrum values - by @Gujiassh in https://github.com/moeru-ai/airi/issues/1474 [<samp>(1be76)</samp>](https://github.com/moeru-ai/airi/commit/1be7639b)
  - Allow custom model input when model list is empty - by @howtomakeaname in https://github.com/moeru-ai/airi/issues/1437 [<samp>(7c04f)</samp>](https://github.com/moeru-ai/airi/commit/7c04f9a8)
  - Should correctly handle aliyun nls error - by @nekomeowww [<samp>(59997)</samp>](https://github.com/moeru-ai/airi/commit/5999744d)
  - Audio wasn't even starting and will not when resources prepared - by @nekomeowww [<samp>(9b709)</samp>](https://github.com/moeru-ai/airi/commit/9b70949a)
  - Incorrect size and style of Profile Selector - by @nekomeowww [<samp>(aa883)</samp>](https://github.com/moeru-ai/airi/commit/aa8834db)
- **stage-ui-three**:
  - Cutout bug fix - by @Lilia-Chen in https://github.com/moeru-ai/airi/issues/1471 [<samp>(088ce)</samp>](https://github.com/moeru-ai/airi/commit/088ce34a)
  - Call nodeConstraintManager.update() in render loop - by @sumimakito [<samp>(279b4)</samp>](https://github.com/moeru-ai/airi/commit/279b4db1)
  - Test type missing nodeConstraintMs - by @nekomeowww [<samp>(f622e)</samp>](https://github.com/moeru-ai/airi/commit/f622e803)
  - Removed duplicated IBL inject - by @Lilia-Chen [<samp>(10376)</samp>](https://github.com/moeru-ai/airi/commit/1037614a)
- **ui**:
  - Outdated import path - by @nekomeowww [<samp>(6d871)</samp>](https://github.com/moeru-ai/airi/commit/6d871146)

### 🏎 Performance

- **stage-ui**: Improve about dialog to be blurry - by @nekomeowww [<samp>(5b78f)</samp>](https://github.com/moeru-ai/airi/commit/5b78f348)
- **ui**: Improve the props and customization of Select component - by @nekomeowww [<samp>(7d0e0)</samp>](https://github.com/moeru-ai/airi/commit/7d0e02f5)

##### [View changes on GitHub](https://github.com/moeru-ai/airi/compare/v0.9.0-alpha.22...v0.9.0-alpha.23)