Commit Graph

62 Commits

Author SHA1 Message Date
Xiaohan-Tian 5aacf01457 feat: add agent todo tool and inline todo snapshot cards in chat 2026-06-02 21:52:44 -07:00
Xiaohan-Tian c1d9f4c9fb feat: add manual/auto conversation compaction and preserve full export history 2026-06-01 19:55:59 -07:00
Xiaohan-Tian f58d9a85b0 chore(i18n): unify Traditional Chinese wording across UI and docs 2026-05-31 12:29:10 -07:00
Xiaohan-Tian 5d070a5643 fix: minor UI updates 2026-05-31 00:25:22 -07:00
Xiaohan-Tian e263b1cc41 feat: added French support 2026-05-30 23:37:51 -07:00
Xiaohan-Tian 9180a274c5 feat: added Traditional Chinese support 2026-05-30 23:06:17 -07:00
Xiaohan-Tian b5546aa230 feat: added translation for Music Generator panel; provided K.G.Studio Musician Assistant a Chinese name 2026-05-30 20:29:10 -07:00
Xiaohan-Tian 957f6db950 feat: added i18n support; added Simplified Chinese support 2026-05-30 20:02:55 -07:00
Xiaohan-Tian 72297cb731 refactor: chord guide system 2026-05-28 22:52:58 -07:00
Xiaohan-Tian 4d415a7f7d feat: simplify chord guide feature; updated help doc; added hotkeys doc 2026-05-28 21:03:02 -07:00
Xiaohan-Tian 2140e944f2 feat: added local separator model demucs_4s support 2026-05-27 20:17:17 -07:00
Xiaohan-Tian 7fc5ac1590 feat: added tempo detection with auto-align beats feature 2026-05-26 22:45:54 -07:00
Xiaohan-Tian 0f1bad4394 feat: implemented chord detection feature for MIDI regions 2026-05-25 23:22:42 -07:00
Xiaohan-Tian f12add935a feat: add audio chord detection for spectrogram regions 2026-05-25 19:09:19 -07:00
Xiaohan-Tian 6db66be471 feat: allow user to config Gemma 4 E4B and MDX-NET model download URL 2026-05-18 22:55:00 -07:00
Xiaohan-Tian d10965066f feat: added shortcut for split and merge regions 2026-05-18 18:39:42 -07:00
Xiaohan-Tian fe1b4fc8ae feat: added an option to allow user choose whether to trim leading silence when bouncing audio 2026-05-18 18:28:31 -07:00
Xiaohan-Tian 93798fd377 fix: optimized system prompt for local LLM 2026-05-15 13:50:00 -07:00
Xiaohan-Tian f9a3edb832 fix: update default playhead fps to 30 2026-05-14 21:55:59 -07:00
Xiaohan-Tian 1a051fea54 feat: added a welcome msg for local LLM users 2026-05-14 21:24:03 -07:00
Xiaohan-Tian a48966d761 feat: added local LLM context length option 2026-05-14 19:44:25 -07:00
Xiaohan-Tian 98c2b97413 feat: implemented the v1 browser embedded LLM support (Gemma 4 E4B based) 2026-05-14 18:55:23 -07:00
Xiaohan-Tian 490cd19f68 feat: added audio recording feature 2026-05-09 15:57:46 -07:00
Xiaohan-Tian f38597efed docs: updated README.md 2026-05-08 17:10:07 -07:00
Xiaohan-Tian 738628fc76 feat: added pitch bend automation (linear interpolation) 2026-05-06 18:25:14 -07:00
Xiaohan-Tian 8a6e904ab4 feat: added an option to let user choose the vertical resolution of the spectrogram, also fixed a bug that peak of pitch in the spectrogram has been mapped to the start of the note bin instead of the center 2026-05-04 20:14:04 -07:00
Xiaohan-Tian 9be96cd957 feat: add R as shortcut of recording button; fixed linter errors. 2026-05-01 14:29:27 -07:00
Xiaohan-Tian 77885c8e2e feat: added recording MIDI device feature. 2026-05-01 10:59:36 -07:00
Xiaohan-Tian d0ba2466d5 docs: added K.G.One demo to README.md 2026-04-24 23:12:29 -07:00
Xiaohan-Tian cadd51c3a4 feat: integrate K.G.One music generation panel
- ConfigManager: add `general.kgone` config block (enabled toggle +
base URL); add `setKGOneManagedByServer()` / `isKGOneServerManaged()`
for managed deployments that supply a `kgone-server.txt` override
- App.tsx: probe for `kgone-server.txt` on startup (Content-Type guard
to avoid Vite SPA fallback false-positive)
- GeneralSettings: new K.G.One section with enable toggle + base URL
input; fields disabled when server-managed
- Toolbar: magic wand button (FaWandMagicSparkles) that toggles the
panel; disabled with reduced opacity when K.G.One is turned off;
mutually exclusive with the Chat panel
- projectStore: add `showKGOnePanel` state + `toggleKGOnePanel` action
- KGOnePanel (new): three-tab panel (Clip / Full Song / Separator)
- Clip: prompt + advanced params → POST /v1/clip/generate → poll
    /v1/clip/result → download WAV → AudioPlayer preview
- Full Song: caption + lyrics + advanced params → POST
    /v1/fullsong/generate → poll /v1/fullsong/result (live progress %
    from nested JSON string) → download MP3 → AudioPlayer preview
- Separator: reads selected audio region from OPFS via
    KGAudioFileStorage → POST /v1/separator/separate (multipart) →
    poll /v1/separator/result → parallel-download all stem files →
    multiple labeled AudioPlayer instances rendered vertically
- Shared: custom AudioPlayer (play/pause, clickable seek bar),
    spinner + hint text, error card, AbortController cleanup,
    DEBUG_MODE.KGONE-gated REQ/RES console logging
2026-04-15 19:51:16 -07:00
Xiaohan-Tian 39401b39c6 doc: updated help.md 2026-04-10 18:27:32 -07:00
Xiaohan-Tian 21a19918b5 fix: assigned an image as audio track's instrument-preview background 2026-04-10 12:30:57 -07:00
Xiaohan-Tian 63ced27702 feat: added Claude 4.6 model series options. 2026-04-05 23:01:58 -07:00
Xiaohan-Tian 6c49fbfabe feat: added model options for GPT-5.4 families; updated default model to gpt-5.4-mini 2026-04-05 22:23:07 -07:00
Xiaohan-Tian 26b7510178 fix: rename start_beat to start and end_beat to end in 3 tools. 2026-04-05 21:28:19 -07:00
Xiaohan-Tian 2cd976ff96 refactor: migrate agent system from XML tool calling to OpenAI SDK with native function calling
- Replace custom XML-based tool parsing (XMLToolExecutor) with OpenAI SDK's
  native tool_calls via `openai` npm package (dangerouslyAllowBrowser)
- Consolidate 4 LLM providers (OpenAI, Claude, Gemini, ClaudeOpenRouter)
  into a single OpenAI SDK-based LLMProvider compatible with any
  OpenAI-style API (OpenAI, OpenRouter, Ollama, vLLM)
- Move agentic tool execution loop from ChatBox into AgentCore
- Update Message type to support tool roles, tool_calls, and tool_call_id
- Update system prompt to remove XML formatting instructions (~45% smaller)
- Remove AttemptCompletionTool (replaced by stop_reason detection),
  ThinkTool, and ThinkingTool
- Polish tool descriptions for OpenAI function calling schema compliance
- Normalize base URLs by stripping /chat/completions suffix
2026-04-05 18:59:25 -07:00
Xiaohan-Tian 78b798e138 feat: added a hotkey for loop button 2026-01-22 19:05:22 -08:00
Xiaohan-Tian 20310ccea0 docs: updated welcome_again.md 2026-01-22 17:32:25 -08:00
Xiaohan-Tian e8b79efde7 feat: add option to persist API keys on non-localhost (opt-in security feature) 2026-01-17 13:54:15 -08:00
Xiaohan-Tian 4f4e60f84a feat: added latest (as of 2025-12-25) GPT and Claude model support 2025-12-25 14:29:50 -08:00
Xiaohan-Tian b44e6fb1ee feat: added an option to control playhead animation fps 2025-12-21 22:42:01 -08:00
Xiaohan-Tian eaee036fc2 feat: added playback delay configuration 2025-12-21 20:11:27 -08:00
Xiaohan-Tian aadf9e06df feat: added lookAhead option 2025-12-21 18:51:20 -08:00
Xiaohan-Tian 5cceec0c01 feat: implemented chord guide customization feature 2025-12-17 23:07:21 -08:00
Xiaohan-Tian 610b81e4cc feat: merge mode_list.json into functional_chords.json 2025-12-17 22:10:37 -08:00
Xiaohan-Tian bdc7fc899a feat: added highlighted chord guide on piano grid 2025-12-15 20:14:30 -08:00
Xiaohan-Tian fe9eb79959 feat: map chords base on each mode 2025-12-14 21:37:13 -08:00
Xiaohan-Tian 2636395cbf feat: added functional chords resource files 2025-12-12 17:07:02 -08:00
Xiaohan-Tian 98ed8a60ce feat: added mode list dropdown 2025-12-08 22:59:09 -08:00
Xiaohan-Tian 3dae3195e5 feat: added 28 new instruments. 2025-08-30 13:32:36 -07:00