🚀 Features
- Allows easy access to provider configuration for all modules - by @Iro96 in #673 (13c14)
- airi-plugin-claude-code:
- Now works with Claude Code hooks - by @nekomeowww (668d5)
- ci:
- Support to run release-tamagotchi.yml workflow for deb and rpm files - by @nekomeowww (ad786)
- Use self-signed certificate for codesign for macOS - by @nekomeowww (23257)
- consciousness:
- core-character:
- Added core-character for headless pipeline and character role playing for cross-platform - by @nekomeowww (78a9a)
- docs:
- Happy Halloween! 🎃 - by @nekomeowww (3cb8f)
- i18n:
- injecta:
- New injecta package for helping doing dependency injection - by @nekomeowww (efac8)
- Logger support for easier debugging - by @nekomeowww (df508)
- Supported typed use and auto name use - by @nekomeowww (b4384)
- minecraft:
- Support to auth with Microsoft auth, added docs - by @nekomeowww (b29ed)
- pipelines-audio:
- Added pipelines-audio - by @nekomeowww (04d3a)
- plugin:
- VSCode extension - by @luoling8192 and @nekomeowww in #717 (8c431)
- server-runtime:
- stage-*:
- Experimental realtime transcription powered by Aliyun NLS - by @nekomeowww (69b8a)
- Aliyun NLS as part of ASR provider - by @nekomeowww (e525a)
- Apply ripple grid to other pages - by @Mr-Quin in #751 (82755)
- stage-pages:
- Ollama-like setting page for lm-studio - by @AdairLi2504 in #661 (9c2b9)
- stage-pages,stage-ui,i18n:
- Supported CometAPI - by @nekomeowww (7e7b2)
- stage-shared:
- New stage-shared package - by @nekomeowww (33de7)
- stage-tamagotchi:
- Debugger - by @nekomeowww and Makito (dee8e)
- Perserve window pos & size - by @nekomeowww (ecbc0)
- Settings page - by @nekomeowww (8408f)
- Window & display utils - by @nekomeowww (193a9)
- Inlay window & spotlight position calculation - by @nekomeowww (a6265)
- Put injecta into good use to prevent global variable - by @nekomeowww (35259)
- Use injecta's logg logger - by @nekomeowww (78b08)
- Hearing config dialog - by @nekomeowww (c884b)
- Stage-web like ControlsIsland - by @nekomeowww (82a08)
- Open settings page & open devtools in Developer section - by @nekomeowww (e29a5)
- Follow cursor - by @nekomeowww (32033)
- Show tooltips for control buttons - by @sumimakito in #650 (f9cc3)
- Port useful screen related getters from electron - by @nekomeowww (8733f)
- Added electron displays devtools - by @nekomeowww (e25d5)
- Add official flatpak package - by @gg582 in #647 (432a2)
- Caption overlay UI - by @nekomeowww (03250)
- Unified preload expose - by @sumimakito (cd7af)
- Bring back fade on hover - by @nekomeowww and Ilya Bogdanov (b0978)
- Bring back pass through on hover, with intelligence hover detection - by @nekomeowww (28509)
- Even better fade on hover - by @nekomeowww (eac7d)
- Bring back resizing, use auto detect like auto hover - by @nekomeowww (f6b3b)
- Added getMediaAccessStatus and askForMediaAccess for electron eventa - by @nekomeowww (7d432)
- Added entitlements and builder configs for microphone access - by @nekomeowww (e5ec3)
- Speech recovered - by @nekomeowww (60713)
- Caption for audio, playback will sync chat completion messages with tts - by @nekomeowww (887c7)
- Chat window - by @nekomeowww (34fa5)
- Clear messages in chat window - by @nekomeowww (309a9)
- Basic widget window manager, moved partial code from component-calling - by @nekomeowww (69cb6)
- Memorize scroll position - by @Mr-Quin in #752 (5eb6b)
- New helper ReferencedWindow - by @nekomeowww (8de81)
- Notice window - by @nekomeowww (22845)
- Notice before toggling Fade on Hover - by @nekomeowww (521c3)
- stage-tamagotchi,stage-web:
- Sync transcription implementation, improve config drawer - by @nekomeowww (a0b39)
- stage-ui:
- Support Cerebras as provider - by @nekomeowww (0b0ed)
- Add live2d parameters controls and idle animation toggle - by @xinpengshou in #680 (ecaee)
- Aliyun nls asr provider now part of streamTranscription - by @nekomeowww (aa272)
- Synchronised Emotion Expression and Delay Animation to the TTS AIRI Speaking - by @Lilia-Chen in #741 (c13ad)
- Improve animation delay in provider settings - by @Mr-Quin in #743 (84dbf)
- Add shadow toggle for live2d - by @Mr-Quin in #750 (9ceb7)
- stage-ui,stage-pages:
- Idle animation selector - by @xinpengshou in #723 (3db63)
- stage-ui,stage-web:
- Implement Comprehensive Module Settings Management with Frontend UI and Backend WebSocket Integration - by @Slinetrac in #617 (b1901)
- stage-ui-three:
- stage-ui/providers:
- Added 302.AI - by @nekomeowww (4a31f)
- stage-web:
- Voice & microphone for mobile web - by @nekomeowww (ddf96)
- Use tooltip for hearing adhoc desktop config - by @nekomeowww (4c4ef)
- stage-web,stage-ui:
- Beat sync - by @sumimakito in #621 (09d08)
- tray:
- Electron tray - by @Slinetrac in #635 (22f1e)
- tresjs:
- Added tresjs package with new Tresjs v5 integrated post-processing components - by @nekomeowww and @Iro96 (7ea96)
- ui:
- New component - by @nekomeowww (111ce)
- workspace:
- Added drag-region as part of unocss rule - by @nekomeowww (4c263)
🐞 Bug Fixes
- Cosyvoice SSML support - by @yanghui1-arch in #576 (e02e8)
- Implement DPI Scaling Support - by @Slinetrac in #601 (f4a58)
- Show voices search result correctly - by @yanghui1-arch in #593 (e2db4)
- Lint errors - by @sumimakito (b8d41)
- Enhance OpenAI provider validation for speech recognition servers - by @Iro96 in #557 and #606 (c3e37)
- Fix web Dockerfile failed to build - by @HigherOrderLogic in #627 (e2df2)
- Start tamagotchi - by @Slinetrac in #630 (55f0c)
- Harden
buildOpenAICompatibleProvidervalidation and config - by @Iro96 in #625 (b3473) - Casing - by @nekomeowww (23b9f)
- Rename caused case mix - by @nekomeowww (cc906)
- Add WIP notes - by @typed-sigterm in #706 (4a17b)
- airi-plugin-vscode:
- Do not add additional @types/node, tsdown and typescript - by @nekomeowww (ddac9)
- ci:
- Not uploading artifacts due to path mismatch - by @nekomeowww (a5494)
- Incorrect version used for renaming artifacts - by @nekomeowww (cf585)
- Pnpm -F run will append extra stdout into the env - by @nekomeowww (18c1b)
- Rpm uses aarch64 & x86_64 as convention, which fails the name matching - by @nekomeowww (de15c)
- Deb uses amd64 for arch name - by @nekomeowww (6b7d4)
- Scheduled workflow appended envs to incorrect location - by @nekomeowww (82ea4)
- Bad indentation - by @nekomeowww (f6fbb)
- Typecheck - by @nekomeowww (2293e)
- Release docker build fails - by @nekomeowww (9dff8)
- Dockerfile missing python3-setuptools due to dnsutils removed since Python 3.12 - by @nekomeowww (24ac5)
- deps:
- docs:
- Incorrect sitemap config for hostname - by @nekomeowww (13f32)
- electron:
- Type error - by @luoling8192 in #688 (3da05)
- i18n:
- Wrap problematic strings with quotes - by @sumimakito (a0f52)
- injecta:
- Not able to do typecheck - by @nekomeowww (5a57c)
- Incorrectly build - by @nekomeowww (f4677)
- nix:
- Run hash update actions sequentially - by @Weathercold in #616 (d7bfe)
- openai-compatible-builder:
- providers:
- server-runtime:
- H3 with new router & app API - by @nekomeowww (10329)
- Missing build for bin - by @nekomeowww (15d2a)
- stage-*:
- Unable to test voice with openai and cosyvoice-v2 in speech module - by @yanghui1-arch in #579 (b9b83)
- Not respond if no websocket works - by @nekomeowww (51c38)
- stage-pages:
- Cometapi speech layout incorrect - by @nekomeowww (a467c)
- stage-tamagotchi:
- Color-scheme setting i18n - by @BBboy01 in #575 (d9ce0)
- Bug #621 is happening - by @gg582 in #586 and #621 (306a4)
- Unknown reference - by @sumimakito (38f74)
- Merge caused syntax error - by @nekomeowww (e2b07)
- Icon - by @nekomeowww (6cfc9)
- Missing preview images - by @nekomeowww (c07f2)
- Layout missing - by @nekomeowww (82aec)
- Settings layout padding incorrect - by @nekomeowww (00ad5)
- Gap between components - by @nekomeowww (db353)
- Use isDestroyed() to determine whether window destroyed or not - by @nekomeowww (33daa)
- Check config path existence before read - by @sumimakito in #644 (e700a)
- Render url not found - by @nekomeowww (54020)
- Not found issue - by @nekomeowww (3d453)
- Open DevTools in 'detach' mode on dev startup - by @sumimakito (6f279)
- WebGPU wasn't enabled by default for Linux - by @nekomeowww (2def1)
- Not able to route to /settings for hash router - by @nekomeowww (45346)
- Added APP_DEBUG to allow opening DevTools on startup - by @nekomeowww (748c9)
- Cannot load static assets due to file not able to be accessed with in Electron - by @nekomeowww (fdf41)
- Pin to v26.0.20 due to Error: ENOTDIR: not a directory, open '<...>/Electron Framework.framework/Electron Framework/package.json - by @nekomeowww (4368a)
- No drag-and-click for linux - by @sumimakito in #663 (b0af3)
- Live2d focus issue & added useElectronAllDisplays, useElectronRelativeMouse, and updated devtools - by @nekomeowww (ab001)
- Broken light/dark toggle - by @sumimakito (5cfc9)
- Bad import - by @nekomeowww (8973b)
- Bad import & lint - by @nekomeowww (32934)
- Typecheck failed, moved useElectronAllDisplays to composables - by @nekomeowww (08bbe)
- Typecheck of shortcuts - by @nekomeowww (c6657)
- Typecheck for app.vue - by @nekomeowww (8e860)
- Max listener exceeded warning, set to 100 before improving eventa - by @nekomeowww (7c281)
- Restrict to sender matched calls when dispatching events for electron window related api - by @nekomeowww (08bfb)
- Inconsistency font size & shiki dark theme - by @s3d-i in #692 (52ca7)
- Fix the behavior when config is invalid - by @typed-sigterm in #715 (51081)
- Nsis info - by @typed-sigterm in #726 (36ccf)
- Description, homepage - by @typed-sigterm (5e7cb)
- Fix build - by @typed-sigterm (1f935)
- Desktop chat window not respective dark theme - by @Mr-Quin in #744 (96edc)
- stage-tamagotchi,server-runtime:
- H3 update breaks websocket functionality - by @nekomeowww (88266)
- stage-tamagotchi,stage-shared:
- Added isUrlMode define check - by @nekomeowww (30f99)
- stage-tamagotchi,stage-shared,stage-ui:
- Unify electron-renderer globals and fix env checks in providers - by @sumimakito in #668 (bcc26)
- stage-ui:
- Bring back missing deps in optimizeDeps.include - by @sumimakito (4fd4d)
- Model selector image not cover - by @nekomeowww (e27b0)
- Padding model preview to correct aspect ratio - by @LemonNekoGH in #594 (bb983)
- Text to speech wasn't working - by @nekomeowww (aed77)
- Vite version - by @nekomeowww (4d693)
- Auto fallback with LLM model listing when validating - by @Iro96 in #643 (6995a)
- Full load on HMR dispose to avoid corrupted models - by @sumimakito (2f93c)
- Not emitting stage-ui-three model view update events. - by @nekomeowww (0f614)
- Incorrectly border uncoss class here used - by @nekomeowww (ebeb6)
- Incorrectly border for dark - by @nekomeowww (e84fe)
- Restore streaming output; wrap streamText so finish/error truly gate completion - by @s3d-i in #714 (68aca)
- Correct default base url for index-tts - by @typed-sigterm (c846d)
- Fix the anthropic validation failure due to not able to fetch models list - by @nysparia in #734 (b1403)
- Outdated imports for stream-transcription - by @nekomeowww (27acf)
- Early return for Live2D drop-shadow update hook - by @s3d-i in #758 (383a8)
- stage-ui-three:
- Fix the issue VRM model goes too far #642 - by @Lilia-Chen in #662 and #642 (94f49)
- stage-web:
- Incorrect system path - by @nekomeowww (bb273)
- Not migrated successfully for pipeline - by @nekomeowww (5179b)
- Include sitemap from docs as base sitemap - by @nekomeowww (99cdd)
- System settings were lost - by @nekomeowww (a5f3c)
- stage-web,stage-tamagotchi:
- Incorrect height constraint causes UI issues - by @nekomeowww (6db65)
- tamagotchi:
- tresjs:
- Missing vue-tsc - by @nekomeowww (05148)
- ui:
- Align
ColorHueRangemodel binding - by @s3d-i and whyXVI in #681 (076c5) - Missing fallback chromatic hue for ui - by @LemonNekoGH in #684 (6d057)
- Migrate checkbox component from attributify to class names - by @LemonNekoGH in #689 (5b419)
- Migrate field checkbox component from attributify to class names - by @BeanDz in #690 (75396)
- Update README.md for attributify and styles reset - by @LemonNekoGH in #724 (3451b)
- Align
- uno:
- Exclude node_modules from scan - by @sumimakito in #588 (697d6)
- workspace,stage-tamagotchi:
- Do publish dry-run check & not marked as private properly - by @nekomeowww (07303)
🏎 Performance
- Use shallow-ref for web audio api class - by @kwaa in #623 (b6497)
- eslint: Add oxlint plugin, use moeru-lint - by @kwaa in #666 (31153)
- provider: Optimize validation and checks if missing API key - by @Iro96 in #719 (5d2b7)
- stage-web: Improve chat responsiveness & loading order - by @Mr-Quin in #754 (b60e0)
New Contributors
- @BBboy01 made their first contribution in #575
- @Slinetrac made their first contribution in #601
- @Kthunda made their first contribution in #540
- @sahara12352 made their first contribution in #611
- @AdairLi2504 made their first contribution in #615
- @HigherOrderLogic made their first contribution in #627
- @reonokiy made their first contribution in #669
- @s3d-i made their first contribution in #681
- @BeanDz made their first contribution in #690
- @xinpengshou made their first contribution in #680
- @WuMingDao made their first contribution in #736
- @Rafael-ban made their first contribution in #738
- @nysparia made their first contribution in #734
- @Mr-Quin made their first contribution in #743