13 Commits

Author SHA1 Message Date
Xiaohan-Tian c4f5d7b78e feat: added global key signature track, global chord progression track, global tempo(BPM) track, and global marker track related tools for AI Agent 2026-06-05 16:50:51 -07:00
Xiaohan-Tian 622dbbea83 feat: added tool write_chord_progression 2026-06-05 15:29:00 -07:00
Xiaohan-Tian 2e3f3623ea feat: added delete_track tool 2026-06-05 12:58:30 -07:00
Xiaohan-Tian 7d53a9cd82 feat: add instrument listing, track creation and update tools to AI agent 2026-06-04 23:14:15 -07:00
Xiaohan-Tian 8ee7ddac77 feat: add track-aware tool targeting and new agent tools, lifted the requirement of selection a MIDI region to use AI Agent
Introduces a shared `toolTargeting.ts` module that resolves the active MIDI
region/track from the user's current selection, enabling tools to operate on
the correct target without requiring explicit track IDs in most cases.

Adds two new read-only tools — `list_all_tracks` and
`get_user_selected_music_range_and_track` — so the agent can inspect
available tracks and the current selection context before acting.

Also refactors `AddNotesTool` to auto-create MIDI regions when no region
exists, refactors `RemoveNotesTool`, `ReadMusicTool`, and
`ReadChordProgressionTool` to use the new targeting helpers, adds a
`buildToolHistoryContent` hook to `BaseTool` for cleaner chat history
display, and updates system prompts and tests throughout.
2026-06-04 19:29:37 -07:00
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 93798fd377 fix: optimized system prompt for local LLM 2026-05-15 13:50:00 -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 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 cac9d47f3d updated system prompt to emphasize when adding notes, it should NOT omit any notes. 2025-08-12 19:47:57 -07:00
Xiaohan-Tian de51967b49 initial public release. 2025-08-11 18:37:21 -07:00