dexto 1.0.1 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -12
- package/agents/agent-registry.json +53 -0
- package/agents/database-agent/README.md +35 -0
- package/agents/database-agent/data/example.db +0 -0
- package/agents/database-agent/database-agent-example.sql +98 -0
- package/agents/database-agent/database-agent.yml +116 -0
- package/agents/database-agent/setup-database.sh +64 -0
- package/agents/{agent.yml → default-agent.yml} +1 -1
- package/agents/image-editor-agent/Lenna.webp +0 -0
- package/agents/image-editor-agent/README.md +435 -0
- package/agents/image-editor-agent/image-editor-agent.yml +45 -0
- package/agents/music-agent/README.md +294 -0
- package/agents/music-agent/music-agent.yml +43 -0
- package/agents/product-name-researcher/README.md +98 -0
- package/agents/product-name-researcher/product-name-researcher.yml +161 -0
- package/agents/talk2pdf-agent/README.md +166 -0
- package/agents/talk2pdf-agent/talk2pdf-agent.yml +42 -0
- package/agents/triage-demo/README.md +337 -0
- package/agents/triage-demo/billing-agent.yml +76 -0
- package/agents/triage-demo/docs/billing-policies.md +246 -0
- package/agents/triage-demo/docs/company-overview.md +94 -0
- package/agents/triage-demo/docs/escalation-policies.md +301 -0
- package/agents/triage-demo/docs/product-features.md +253 -0
- package/agents/triage-demo/docs/technical-documentation.md +226 -0
- package/agents/triage-demo/escalation-agent.yml +82 -0
- package/agents/triage-demo/product-info-agent.yml +86 -0
- package/agents/triage-demo/technical-support-agent.yml +71 -0
- package/agents/triage-demo/test-scenarios.md +209 -0
- package/agents/triage-demo/triage-agent.yml +172 -0
- package/dist/src/app/{chunk-M4OZIDPC.js → chunk-CLDYRNV6.js} +7241 -5753
- package/dist/src/app/chunk-DYNVXGAH.js +137 -0
- package/dist/src/app/chunk-PW2PHCHR.js +83 -0
- package/dist/src/app/chunk-R4Q522DR.js +205 -0
- package/dist/src/app/chunk-UXCBS3TR.js +281 -0
- package/dist/src/app/chunk-X6LEX724.js +108 -0
- package/dist/src/app/chunk-Y33BS5SA.js +39 -0
- package/dist/src/app/{cli-confirmation-handler-2APQRKHG.js → cli-confirmation-handler-GJHPLGOL.js} +4 -1
- package/dist/src/app/errors-5MNETGOV.js +8 -0
- package/dist/src/app/index.js +2184 -612
- package/dist/src/app/loader-EFMKWNNQ.js +20 -0
- package/dist/src/app/path-7FT4SZMO.js +23 -0
- package/dist/src/app/{postgres-backend-7HVVW3RL.js → postgres-backend-U5MIIMUY.js} +12 -1
- package/dist/src/app/{redis-backend-2YBZSSSV.js → redis-backend-NGI67ILT.js} +38 -9
- package/dist/src/app/registry-RALMVM3P.js +14 -0
- package/dist/src/app/sqlite-backend-752UUBD4.js +245 -0
- package/dist/src/app/webui/.next/standalone/.next/BUILD_ID +1 -1
- package/dist/src/app/webui/.next/standalone/.next/app-build-manifest.json +20 -21
- package/dist/src/app/webui/.next/standalone/.next/app-path-routes-manifest.json +0 -1
- package/dist/src/app/webui/.next/standalone/.next/build-manifest.json +4 -4
- package/dist/src/app/webui/.next/standalone/.next/prerender-manifest.json +4 -82
- package/dist/src/app/webui/.next/standalone/.next/required-server-files.json +2 -3
- package/dist/src/app/webui/.next/standalone/.next/routes-manifest.json +0 -6
- package/dist/src/app/webui/.next/standalone/.next/server/app/_not-found/page.js +1 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/page.js +7 -3
- package/dist/src/app/webui/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/playground/page.js +8 -8
- package/dist/src/app/webui/.next/standalone/.next/server/app/playground/page.js.nft.json +1 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/playground/page_client-reference-manifest.js +1 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app-paths-manifest.json +0 -1
- package/dist/src/app/webui/.next/standalone/.next/server/chunks/176.js +1 -0
- package/dist/src/app/webui/.next/standalone/.next/server/chunks/195.js +24 -0
- package/dist/src/app/webui/.next/standalone/.next/server/chunks/620.js +1 -0
- package/dist/src/app/webui/.next/standalone/.next/server/chunks/80.js +5 -0
- package/dist/src/app/webui/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
- package/dist/src/app/webui/.next/standalone/.next/server/pages/500.html +1 -1
- package/dist/src/app/webui/.next/standalone/.next/server/pages-manifest.json +1 -2
- package/dist/src/app/webui/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/dist/src/app/webui/.next/standalone/.next/server/webpack-runtime.js +1 -1
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/190-b897ef36fde616bf.js +1 -0
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/487-a77054bd2c64c79c.js +1 -0
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/588-dbe47a44489742dd.js +1 -0
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/62-35030b5cb176bd7b.js +1 -0
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/app/layout-91c0cb9eb1ee327a.js +1 -0
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/app/page-3279aaf14db87f45.js +1 -0
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/app/playground/page-200aad53af9ca53f.js +1 -0
- package/dist/src/app/webui/.next/standalone/.next/static/css/af71306827be150e.css +3 -0
- package/dist/src/app/webui/.next/standalone/.next/static/tpCURR82LyyGfdALJ4Qvl/_buildManifest.js +1 -0
- package/dist/src/app/webui/.next/standalone/package.json +4 -3
- package/dist/src/app/webui/.next/standalone/public/favicon2.ico +0 -0
- package/dist/src/app/webui/.next/standalone/public/logo.svg +1 -0
- package/dist/src/app/webui/.next/standalone/public/logo_no_text.png +0 -0
- package/dist/src/app/webui/.next/standalone/server.js +1 -1
- package/dist/src/app/webui/.next/static/chunks/190-b897ef36fde616bf.js +1 -0
- package/dist/src/app/webui/.next/static/chunks/487-a77054bd2c64c79c.js +1 -0
- package/dist/src/app/webui/.next/static/chunks/588-dbe47a44489742dd.js +1 -0
- package/dist/src/app/webui/.next/static/chunks/62-35030b5cb176bd7b.js +1 -0
- package/dist/src/app/webui/.next/static/chunks/app/layout-91c0cb9eb1ee327a.js +1 -0
- package/dist/src/app/webui/.next/static/chunks/app/page-3279aaf14db87f45.js +1 -0
- package/dist/src/app/webui/.next/static/chunks/app/playground/page-200aad53af9ca53f.js +1 -0
- package/dist/src/app/webui/.next/static/css/af71306827be150e.css +3 -0
- package/dist/src/app/webui/.next/static/tpCURR82LyyGfdALJ4Qvl/_buildManifest.js +1 -0
- package/dist/src/app/webui/package.json +4 -3
- package/dist/src/app/webui/public/favicon2.ico +0 -0
- package/dist/src/app/webui/public/logo.svg +1 -0
- package/dist/src/app/webui/public/logo_no_text.png +0 -0
- package/dist/src/core/chunk-7A6NQKQ3.js +193 -0
- package/dist/src/core/chunk-CZIXQNMZ.js +12191 -0
- package/dist/src/core/index.cjs +10601 -8012
- package/dist/src/core/index.d.cts +4356 -3907
- package/dist/src/core/index.d.ts +4356 -3907
- package/dist/src/core/index.js +117 -8396
- package/dist/src/core/{postgres-backend-ERZ6DP76.js → postgres-backend-LOLKTD2T.js} +9 -2
- package/dist/src/core/{redis-backend-46O7Y44C.js → redis-backend-APZ576PJ.js} +35 -10
- package/dist/src/core/sqlite-backend-KQ75DPR7.js +245 -0
- package/package.json +20 -12
- package/dist/src/app/chunk-O5YHNFMH.js +0 -435
- package/dist/src/app/interactive-api-key-setup-V3GAACLN.js +0 -269
- package/dist/src/app/sqlite-backend-KIJZ5IP3.js +0 -180
- package/dist/src/app/webui/.next/standalone/.next/server/app/_not-found.html +0 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/_not-found.meta +0 -8
- package/dist/src/app/webui/.next/standalone/.next/server/app/_not-found.rsc +0 -21
- package/dist/src/app/webui/.next/standalone/.next/server/app/favicon.ico/route.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/favicon.ico/route.js.nft.json +0 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/favicon.ico.body +0 -0
- package/dist/src/app/webui/.next/standalone/.next/server/app/favicon.ico.meta +0 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/index.html +0 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/index.meta +0 -7
- package/dist/src/app/webui/.next/standalone/.next/server/app/index.rsc +0 -22
- package/dist/src/app/webui/.next/standalone/.next/server/app/playground.html +0 -1
- package/dist/src/app/webui/.next/standalone/.next/server/app/playground.meta +0 -7
- package/dist/src/app/webui/.next/standalone/.next/server/app/playground.rsc +0 -25
- package/dist/src/app/webui/.next/standalone/.next/server/chunks/447.js +0 -20
- package/dist/src/app/webui/.next/standalone/.next/server/chunks/504.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/server/chunks/54.js +0 -5
- package/dist/src/app/webui/.next/standalone/.next/server/chunks/624.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/server/chunks/985.js +0 -5
- package/dist/src/app/webui/.next/standalone/.next/server/pages/404.html +0 -1
- package/dist/src/app/webui/.next/standalone/.next/static/H-71qcBOOk528tDEa_ldn/_buildManifest.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/125-9b34ec01f112cdb2.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/487-c6ea8b63ca68db1c.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/588-20dc7f3a8664c387.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/687-3e614f30982093f6.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/879-cf875984faa0b72f.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/app/layout-ed56660b7ecaf47b.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/app/page-b05580de36ce0e36.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/static/chunks/app/playground/page-ac5443cddbe824aa.js +0 -1
- package/dist/src/app/webui/.next/standalone/.next/static/css/d44f09bc2605dc76.css +0 -3
- package/dist/src/app/webui/.next/standalone/node_modules/next/dist/compiled/next-server/app-route.runtime.prod.js +0 -19
- package/dist/src/app/webui/.next/standalone/public/favicon.svg +0 -26
- package/dist/src/app/webui/.next/standalone/public/logo.png +0 -0
- package/dist/src/app/webui/.next/static/H-71qcBOOk528tDEa_ldn/_buildManifest.js +0 -1
- package/dist/src/app/webui/.next/static/chunks/125-9b34ec01f112cdb2.js +0 -1
- package/dist/src/app/webui/.next/static/chunks/487-c6ea8b63ca68db1c.js +0 -1
- package/dist/src/app/webui/.next/static/chunks/588-20dc7f3a8664c387.js +0 -1
- package/dist/src/app/webui/.next/static/chunks/687-3e614f30982093f6.js +0 -1
- package/dist/src/app/webui/.next/static/chunks/879-cf875984faa0b72f.js +0 -1
- package/dist/src/app/webui/.next/static/chunks/app/layout-ed56660b7ecaf47b.js +0 -1
- package/dist/src/app/webui/.next/static/chunks/app/page-b05580de36ce0e36.js +0 -1
- package/dist/src/app/webui/.next/static/chunks/app/playground/page-ac5443cddbe824aa.js +0 -1
- package/dist/src/app/webui/.next/static/css/d44f09bc2605dc76.css +0 -3
- package/dist/src/app/webui/public/favicon.svg +0 -26
- package/dist/src/app/webui/public/logo.png +0 -0
- package/dist/src/core/chunk-BGO5B3L4.js +0 -2124
- package/dist/src/core/chunk-BYHW25EA.js +0 -41
- package/dist/src/core/sqlite-backend-RKK4WBHE.js +0 -184
- /package/dist/src/app/webui/.next/standalone/.next/static/chunks/{4bd1b696-2df85d4b3b58aed5.js → 4bd1b696-c95fa02060335229.js} +0 -0
- /package/dist/src/app/webui/.next/standalone/.next/static/chunks/{684-058c08971e023037.js → 684-2e7175657246b549.js} +0 -0
- /package/dist/src/app/webui/.next/standalone/.next/static/chunks/app/_not-found/{page-7b137d85f9de4771.js → page-b63df5a8d3225455.js} +0 -0
- /package/dist/src/app/webui/.next/standalone/.next/static/{H-71qcBOOk528tDEa_ldn → tpCURR82LyyGfdALJ4Qvl}/_ssgManifest.js +0 -0
- /package/dist/src/app/webui/.next/static/chunks/{4bd1b696-2df85d4b3b58aed5.js → 4bd1b696-c95fa02060335229.js} +0 -0
- /package/dist/src/app/webui/.next/static/chunks/{684-058c08971e023037.js → 684-2e7175657246b549.js} +0 -0
- /package/dist/src/app/webui/.next/static/chunks/app/_not-found/{page-7b137d85f9de4771.js → page-b63df5a8d3225455.js} +0 -0
- /package/dist/src/app/webui/.next/static/{H-71qcBOOk528tDEa_ldn → tpCURR82LyyGfdALJ4Qvl}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,294 @@
|
|
|
1
|
+
# Music Creator Agent
|
|
2
|
+
|
|
3
|
+
A comprehensive AI agent for music creation, editing, and audio processing using the [Music Creator MCP Server](https://github.com/truffle-ai/mcp-servers/tree/main/src/music).
|
|
4
|
+
|
|
5
|
+
> **⚠️ Experimental Status**: This agent is currently in experimental development. The tools have not been extensively tested in production environments and may have limitations or bugs. We're actively seeking feedback and improvements from users.
|
|
6
|
+
## 🧪 Experimental Features
|
|
7
|
+
|
|
8
|
+
- **Limited Testing**: Tools have been tested in controlled environments but may behave differently with various audio formats, file sizes, or system configurations
|
|
9
|
+
- **Active Development**: Features are being refined based on user feedback and real-world usage
|
|
10
|
+
- **Feedback Welcome**: We encourage users to report issues, suggest improvements, and share use cases
|
|
11
|
+
- **Breaking Changes**: API and tool behavior may change as we improve the implementation
|
|
12
|
+
|
|
13
|
+
## Overview
|
|
14
|
+
|
|
15
|
+
This agent provides access to professional-grade music production tools through a clean conversational interface. Built with industry-standard libraries like librosa, pydub, and music21, it offers comprehensive audio processing capabilities using the published `truffle-ai-music-creator-mcp` package.
|
|
16
|
+
|
|
17
|
+
## Features
|
|
18
|
+
|
|
19
|
+
### 🎵 Audio Analysis
|
|
20
|
+
- **Tempo Detection**: Automatically detect BPM and beat positions
|
|
21
|
+
- **Key Detection**: Identify musical key and mode
|
|
22
|
+
- **Spectral Analysis**: Analyze frequency spectrum, MFCC features, and audio characteristics
|
|
23
|
+
- **Comprehensive Analysis**: Get detailed audio information including duration, sample rate, and format
|
|
24
|
+
|
|
25
|
+
### 🎼 Music Generation
|
|
26
|
+
- **Melody Creation**: Generate melodies in any key and scale
|
|
27
|
+
- **Chord Progressions**: Create chord progressions using Roman numeral notation
|
|
28
|
+
- **Drum Patterns**: Generate drum patterns for rock, jazz, and funk styles
|
|
29
|
+
- **MIDI Export**: All generated music exports to MIDI format for further editing
|
|
30
|
+
|
|
31
|
+
### 🔊 Audio Processing
|
|
32
|
+
- **Format Conversion**: Convert between MP3, WAV, FLAC, OGG, M4A, AIFF, WMA
|
|
33
|
+
- **Volume Control**: Adjust audio levels with precise dB control
|
|
34
|
+
- **Audio Normalization**: Normalize audio to target levels
|
|
35
|
+
- **Audio Trimming**: Cut audio to specific time ranges
|
|
36
|
+
- **Audio Effects**: Apply reverb, echo, distortion, and filters
|
|
37
|
+
|
|
38
|
+
### 🎚️ Mixing & Arrangement
|
|
39
|
+
- **Audio Merging**: Combine multiple audio files with crossfade support
|
|
40
|
+
- **Multi-track Mixing**: Mix multiple audio tracks with individual volume control
|
|
41
|
+
- **Batch Processing**: Process multiple files with the same operation
|
|
42
|
+
|
|
43
|
+
## Quick Start
|
|
44
|
+
|
|
45
|
+
### Prerequisites
|
|
46
|
+
- **Node.js 18+**: For the Dexto framework
|
|
47
|
+
- **Python 3.10+**: Automatically managed by the MCP server
|
|
48
|
+
- **FFmpeg**: For audio processing (optional, but recommended)
|
|
49
|
+
|
|
50
|
+
### Installation
|
|
51
|
+
|
|
52
|
+
1. **Install FFmpeg** (recommended):
|
|
53
|
+
```bash
|
|
54
|
+
# macOS
|
|
55
|
+
brew install ffmpeg
|
|
56
|
+
|
|
57
|
+
# Ubuntu/Debian
|
|
58
|
+
sudo apt update && sudo apt install ffmpeg
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
2. **Run the Agent**:
|
|
62
|
+
```bash
|
|
63
|
+
# From the project root
|
|
64
|
+
dexto --agent agents/music-agent/music-agent.yml
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
That's it! The MCP server will be automatically downloaded and installed via `uvx` on first run.
|
|
68
|
+
|
|
69
|
+
## Usage Examples
|
|
70
|
+
|
|
71
|
+
### Audio Analysis
|
|
72
|
+
```
|
|
73
|
+
"Analyze the tempo and key of my song.mp3"
|
|
74
|
+
"What's the BPM of this track?"
|
|
75
|
+
"What key is this song in?"
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Music Generation
|
|
79
|
+
```
|
|
80
|
+
"Create a melody in G major at 140 BPM for 15 seconds"
|
|
81
|
+
"Create a I-IV-V-I chord progression in D major"
|
|
82
|
+
"Create a basic rock drum pattern"
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Audio Processing
|
|
86
|
+
```
|
|
87
|
+
"Convert my song.wav to MP3 format"
|
|
88
|
+
"Convert my MIDI melody to WAV format"
|
|
89
|
+
"Increase the volume of my vocals by 3dB"
|
|
90
|
+
"Normalize my guitar track to -18dB"
|
|
91
|
+
"Trim my song from 30 seconds to 2 minutes"
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### Audio Effects
|
|
95
|
+
```
|
|
96
|
+
"Add reverb to my guitar with 200ms reverb time"
|
|
97
|
+
"Add echo to my vocals with 500ms delay and 0.7 decay"
|
|
98
|
+
"Add some distortion to my bass track"
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
### Mixing & Playback
|
|
102
|
+
```
|
|
103
|
+
"Mix my vocals, guitar, and drums together with the vocals at +3dB"
|
|
104
|
+
"Mix a MIDI melody with an MP3 drum loop"
|
|
105
|
+
"Create a melody in G major and play it for 5 seconds"
|
|
106
|
+
"Play my song.mp3 starting from 30 seconds for 10 seconds"
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
## Available Tools
|
|
110
|
+
|
|
111
|
+
### Music Generation
|
|
112
|
+
- `create_melody` - Generate melodies in any key and scale
|
|
113
|
+
- `create_chord_progression` - Create chord progressions using Roman numerals
|
|
114
|
+
- `create_drum_pattern` - Generate drum patterns for different styles
|
|
115
|
+
|
|
116
|
+
### Audio Analysis
|
|
117
|
+
- `analyze_audio` - Comprehensive audio analysis
|
|
118
|
+
- `detect_tempo` - Detect BPM and beat positions
|
|
119
|
+
- `detect_key` - Identify musical key and mode
|
|
120
|
+
- `get_audio_info` - Get detailed audio file information
|
|
121
|
+
- `get_midi_info` - Get detailed MIDI file information
|
|
122
|
+
|
|
123
|
+
### Audio Processing
|
|
124
|
+
- `convert_audio_format` - Convert between audio formats
|
|
125
|
+
- `convert_midi_to_audio` - Convert MIDI files to high-quality audio format (WAV, 44.1kHz, 16-bit)
|
|
126
|
+
- `adjust_volume` - Adjust audio levels in dB
|
|
127
|
+
- `normalize_audio` - Normalize audio to target levels
|
|
128
|
+
- `trim_audio` - Cut audio to specific time ranges
|
|
129
|
+
- `apply_audio_effect` - Apply reverb, echo, distortion, filters
|
|
130
|
+
|
|
131
|
+
### Mixing & Arrangement
|
|
132
|
+
- `merge_audio_files` - Combine multiple audio files
|
|
133
|
+
- `mix_audio_files` - Mix tracks with individual volume control (supports both audio and MIDI files)
|
|
134
|
+
|
|
135
|
+
### Playback
|
|
136
|
+
- `play_audio` - Play audio files with optional start time and duration
|
|
137
|
+
- `play_midi` - Play MIDI files with optional start time and duration
|
|
138
|
+
|
|
139
|
+
### Utility
|
|
140
|
+
- `list_available_effects` - List all audio effects
|
|
141
|
+
- `list_drum_patterns` - List available drum patterns
|
|
142
|
+
|
|
143
|
+
## Supported Formats
|
|
144
|
+
|
|
145
|
+
### Audio Formats
|
|
146
|
+
- **MP3**: Most common compressed format
|
|
147
|
+
- **WAV**: Uncompressed high-quality audio
|
|
148
|
+
- **FLAC**: Lossless compressed audio
|
|
149
|
+
- **OGG**: Open-source compressed format
|
|
150
|
+
- **M4A**: Apple's compressed format
|
|
151
|
+
- **AIFF**: Apple's uncompressed format
|
|
152
|
+
- **WMA**: Windows Media Audio
|
|
153
|
+
|
|
154
|
+
### MIDI Formats
|
|
155
|
+
- **MID**: Standard MIDI files
|
|
156
|
+
- **MIDI**: Alternative MIDI extension
|
|
157
|
+
|
|
158
|
+
## Configuration
|
|
159
|
+
|
|
160
|
+
### Agent Configuration
|
|
161
|
+
The agent is configured to use the published MCP server:
|
|
162
|
+
|
|
163
|
+
```yaml
|
|
164
|
+
systemPrompt: |
|
|
165
|
+
You are an AI assistant specialized in music creation, editing, and production...
|
|
166
|
+
|
|
167
|
+
mcpServers:
|
|
168
|
+
music_creator:
|
|
169
|
+
type: stdio
|
|
170
|
+
command: uvx
|
|
171
|
+
args:
|
|
172
|
+
- truffle-ai-music-creator-mcp
|
|
173
|
+
connectionMode: strict
|
|
174
|
+
|
|
175
|
+
llm:
|
|
176
|
+
provider: openai
|
|
177
|
+
model: gpt-4o-mini
|
|
178
|
+
apiKey: $OPENAI_API_KEY
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
### Environment Variables
|
|
182
|
+
Set your OpenAI API key:
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
export OPENAI_API_KEY="your-api-key-here"
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
Or create a `.env` file in the project root:
|
|
189
|
+
|
|
190
|
+
```bash
|
|
191
|
+
OPENAI_API_KEY=your-api-key-here
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
## Use Cases
|
|
195
|
+
|
|
196
|
+
### Music Production
|
|
197
|
+
- Create backing tracks and accompaniments
|
|
198
|
+
- Generate drum patterns for different genres
|
|
199
|
+
- Compose melodies and chord progressions
|
|
200
|
+
- Mix and master audio tracks
|
|
201
|
+
|
|
202
|
+
### Audio Editing
|
|
203
|
+
- Clean up audio recordings
|
|
204
|
+
- Normalize volume levels
|
|
205
|
+
- Apply professional effects
|
|
206
|
+
- Convert between formats
|
|
207
|
+
|
|
208
|
+
### Music Analysis
|
|
209
|
+
- Analyze existing music for tempo and key
|
|
210
|
+
- Extract musical features for machine learning
|
|
211
|
+
- Study musical patterns and structures
|
|
212
|
+
- Compare different audio files
|
|
213
|
+
|
|
214
|
+
### Educational
|
|
215
|
+
- Learn about musical theory through generation
|
|
216
|
+
- Study different musical styles and patterns
|
|
217
|
+
- Experiment with composition techniques
|
|
218
|
+
- Understand audio processing concepts
|
|
219
|
+
|
|
220
|
+
## MCP Server
|
|
221
|
+
|
|
222
|
+
This agent uses the **Music Creator MCP Server**, which is maintained separately at:
|
|
223
|
+
|
|
224
|
+
**🔗 [https://github.com/truffle-ai/mcp-servers/tree/main/src/music](https://github.com/truffle-ai/mcp-servers/tree/main/src/music)**
|
|
225
|
+
|
|
226
|
+
The MCP server repository provides:
|
|
227
|
+
- Complete technical documentation
|
|
228
|
+
- Development and contribution guidelines
|
|
229
|
+
- Server implementation details
|
|
230
|
+
- Advanced configuration options
|
|
231
|
+
|
|
232
|
+
## Troubleshooting
|
|
233
|
+
|
|
234
|
+
### Common Issues
|
|
235
|
+
|
|
236
|
+
#### 1. Server Installation
|
|
237
|
+
The MCP server will be automatically installed via `uvx` on first run. No manual setup required.
|
|
238
|
+
|
|
239
|
+
#### 2. "FFmpeg not found" warnings
|
|
240
|
+
These warnings can be safely ignored. The agent includes fallback methods using librosa and soundfile for audio processing when FFmpeg is not available.
|
|
241
|
+
|
|
242
|
+
```bash
|
|
243
|
+
# Optional: Install FFmpeg for optimal performance
|
|
244
|
+
brew install ffmpeg # macOS
|
|
245
|
+
sudo apt install ffmpeg # Ubuntu/Debian
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
#### 3. Large Audio Files
|
|
249
|
+
Consider trimming or converting to smaller formats for faster processing.
|
|
250
|
+
|
|
251
|
+
#### 4. Memory Usage
|
|
252
|
+
Monitor system memory during heavy audio operations.
|
|
253
|
+
|
|
254
|
+
### Performance Tips
|
|
255
|
+
|
|
256
|
+
1. **Large Audio Files**: Consider trimming or converting to smaller formats for faster processing
|
|
257
|
+
2. **Memory Usage**: Monitor system memory during heavy audio operations
|
|
258
|
+
3. **Batch Processing**: Use batch operations for multiple files to improve efficiency
|
|
259
|
+
4. **FFmpeg**: Install FFmpeg for optimal audio processing performance (optional - fallback methods available)
|
|
260
|
+
|
|
261
|
+
## Technical Details
|
|
262
|
+
|
|
263
|
+
### Dependencies
|
|
264
|
+
The MCP server uses industry-standard libraries:
|
|
265
|
+
- **librosa**: Audio analysis and music information retrieval
|
|
266
|
+
- **pydub**: Audio file manipulation and processing
|
|
267
|
+
- **music21**: Music notation and analysis
|
|
268
|
+
- **pretty_midi**: MIDI file handling
|
|
269
|
+
- **numpy**: Numerical computing
|
|
270
|
+
- **scipy**: Scientific computing
|
|
271
|
+
- **matplotlib**: Plotting and visualization
|
|
272
|
+
|
|
273
|
+
### Architecture
|
|
274
|
+
The agent uses a Python-based MCP server that provides:
|
|
275
|
+
- Fast audio processing with optimized libraries
|
|
276
|
+
- Memory-efficient handling of large audio files
|
|
277
|
+
- Thread-safe operations for concurrent processing
|
|
278
|
+
- Comprehensive error handling and validation
|
|
279
|
+
|
|
280
|
+
### Performance
|
|
281
|
+
- Supports audio files up to several hours in length
|
|
282
|
+
- Efficient processing of multiple file formats
|
|
283
|
+
- Optimized algorithms for real-time analysis
|
|
284
|
+
- Minimal memory footprint for batch operations
|
|
285
|
+
|
|
286
|
+
## Getting Help
|
|
287
|
+
|
|
288
|
+
- **MCP Server Issues**: Report at the [mcp-servers repository](https://github.com/truffle-ai/mcp-servers/issues)
|
|
289
|
+
- **Agent Configuration**: Report at the main Dexto repository
|
|
290
|
+
- **Feature Requests**: Use the mcp-servers repository for tool-related requests
|
|
291
|
+
|
|
292
|
+
## License
|
|
293
|
+
|
|
294
|
+
This agent configuration is part of the Dexto AI Agent framework. The MCP server is distributed under the MIT license.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Dexto Agent Configuration for Music Creation and Editing MCP Server
|
|
2
|
+
|
|
3
|
+
systemPrompt: |
|
|
4
|
+
You are an AI assistant specialized in music creation, editing, and production. You have access to a comprehensive set of tools for working with audio and music including:
|
|
5
|
+
|
|
6
|
+
- **Audio Analysis**: Analyze audio files for tempo, key, BPM, frequency spectrum, and audio characteristics
|
|
7
|
+
- **Audio Processing**: Convert formats, adjust volume, normalize, apply effects (reverb, echo, distortion, etc.)
|
|
8
|
+
- **Music Generation**: Create melodies, chord progressions, drum patterns, and complete compositions
|
|
9
|
+
- **Audio Manipulation**: Trim, cut, splice, loop, and arrange audio segments
|
|
10
|
+
- **Effects & Filters**: Apply various audio effects and filters for creative sound design
|
|
11
|
+
- **Mixing & Mastering**: Balance levels, apply compression, EQ, and mastering effects
|
|
12
|
+
- **File Management**: Organize, convert, and manage audio files in various formats
|
|
13
|
+
|
|
14
|
+
When working with music and audio:
|
|
15
|
+
1. Always validate that input audio files exist and are in supported formats
|
|
16
|
+
2. Provide clear feedback about what operations you're performing
|
|
17
|
+
3. Save processed audio with descriptive names and appropriate formats
|
|
18
|
+
4. Include audio information (duration, sample rate, bit depth, format) in your responses
|
|
19
|
+
5. Suggest additional enhancements and creative possibilities when appropriate
|
|
20
|
+
6. Consider musical theory and composition principles in your suggestions
|
|
21
|
+
|
|
22
|
+
Supported audio formats: MP3, WAV, FLAC, OGG, M4A, AIFF, WMA
|
|
23
|
+
Supported MIDI formats: MID, MIDI
|
|
24
|
+
|
|
25
|
+
mcpServers:
|
|
26
|
+
music_creator:
|
|
27
|
+
type: stdio
|
|
28
|
+
command: uvx
|
|
29
|
+
args:
|
|
30
|
+
- truffle-ai-music-creator-mcp
|
|
31
|
+
connectionMode: strict
|
|
32
|
+
|
|
33
|
+
llm:
|
|
34
|
+
provider: openai
|
|
35
|
+
model: gpt-4o-mini
|
|
36
|
+
apiKey: $OPENAI_API_KEY
|
|
37
|
+
|
|
38
|
+
storage:
|
|
39
|
+
cache:
|
|
40
|
+
type: in-memory
|
|
41
|
+
database:
|
|
42
|
+
type: sqlite
|
|
43
|
+
path: .dexto/database/music-agent.db
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# Product Name Research Agent
|
|
2
|
+
|
|
3
|
+
An AI agent specialized in comprehensive product name research and brand validation. Combines domain availability checking, search engine analysis, developer platform collision detection, and competitive intelligence to provide thorough name validation.
|
|
4
|
+
|
|
5
|
+
## 📖 Tutorial
|
|
6
|
+
|
|
7
|
+
For a complete walkthrough of building and using this agent, see the [Product Name Scout Agent Tutorial](../../docs/docs/tutorials/product-name-scout-agent.md).
|
|
8
|
+
|
|
9
|
+
## Features
|
|
10
|
+
|
|
11
|
+
- **Domain Availability**: Check multiple TLD extensions (.com, .io, .app, .dev, etc.)
|
|
12
|
+
- **SERP Competition Analysis**: Analyze search engine results for brand competition
|
|
13
|
+
- **Autocomplete Intelligence**: Assess name recognition and spelling patterns
|
|
14
|
+
- **Developer Platform Collision Detection**: Check GitHub, npm, and PyPI for conflicts
|
|
15
|
+
- **Competitive Research**: DuckDuckGo-powered market intelligence
|
|
16
|
+
- **Comprehensive Scoring**: Weighted algorithms for brand viability assessment
|
|
17
|
+
- **Batch Comparison**: Compare multiple names with detailed scoring breakdown
|
|
18
|
+
|
|
19
|
+
## Prerequisites
|
|
20
|
+
|
|
21
|
+
Ensure you have the domain checker MCP server available:
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
# Install the domain checker MCP server
|
|
25
|
+
uvx truffle-ai-domain-checker-mcp
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Usage
|
|
29
|
+
|
|
30
|
+
### Start the Agent
|
|
31
|
+
|
|
32
|
+
```bash
|
|
33
|
+
# From the dexto root directory
|
|
34
|
+
dexto -a agents/product-name-researcher/product-name-researcher.yml
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### Example Interactions
|
|
38
|
+
|
|
39
|
+
**Single Product Name Research:**
|
|
40
|
+
```
|
|
41
|
+
User: I want to research the name "CloudSync" for my new file sync product
|
|
42
|
+
Agent: [Performs comprehensive research including domain availability, trademark search, social media handles, and competitive analysis]
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
**Compare Multiple Names:**
|
|
46
|
+
```
|
|
47
|
+
User: Help me choose between "DataFlow", "InfoStream", and "SyncHub" for my data management tool
|
|
48
|
+
Agent: [Compares all three names across multiple criteria and provides recommendations]
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
**Domain-Focused Research:**
|
|
52
|
+
```
|
|
53
|
+
User: Check domain availability for "myawesomeapp" across all major TLDs
|
|
54
|
+
Agent: [Uses domain checker to verify availability across .com, .net, .org, .io, .app, etc.]
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Configuration
|
|
58
|
+
|
|
59
|
+
The agent uses:
|
|
60
|
+
- **Domain Checker MCP Server**: For domain availability checking
|
|
61
|
+
- **DuckDuckGo MCP Server**: For web search and competitive research
|
|
62
|
+
- **Product Name Scout MCP Server**: For SERP analysis, autocomplete, and developer collision detection
|
|
63
|
+
|
|
64
|
+
## Research Report
|
|
65
|
+
|
|
66
|
+
The agent generates comprehensive reports including:
|
|
67
|
+
|
|
68
|
+
1. **Domain Availability Summary**
|
|
69
|
+
- Available domains with recommendations
|
|
70
|
+
- Pricing information where available
|
|
71
|
+
- Alternative TLD suggestions
|
|
72
|
+
|
|
73
|
+
2. **Trademark Analysis**
|
|
74
|
+
- Similar trademarks found
|
|
75
|
+
- Risk assessment
|
|
76
|
+
- Recommendations for trademark clearance
|
|
77
|
+
|
|
78
|
+
3. **Developer Platform Analysis**
|
|
79
|
+
- GitHub repository conflicts
|
|
80
|
+
- NPM package collisions
|
|
81
|
+
- PyPI package conflicts
|
|
82
|
+
|
|
83
|
+
4. **Competitive Landscape**
|
|
84
|
+
- Existing products with similar names
|
|
85
|
+
- Market positioning analysis
|
|
86
|
+
- Differentiation opportunities
|
|
87
|
+
|
|
88
|
+
5. **Overall Recommendation**
|
|
89
|
+
- Scoring across all criteria
|
|
90
|
+
- Risk assessment
|
|
91
|
+
- Next steps recommendations
|
|
92
|
+
|
|
93
|
+
## Tips for Best Results
|
|
94
|
+
|
|
95
|
+
- **Be specific about your product**: Include the product category and target market
|
|
96
|
+
- **Provide alternatives**: Give multiple name options for comparison
|
|
97
|
+
- **Consider your priorities**: Mention if domain availability, trademark clearance, or developer platform conflicts are most important
|
|
98
|
+
- **Think internationally**: Consider how the name works in different languages and markets
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
# Product Name Research Agent Configuration
|
|
2
|
+
# Specializes in comprehensive product name validation including domain availability,
|
|
3
|
+
# trademark searching, social media handle checking, and competitive analysis
|
|
4
|
+
|
|
5
|
+
mcpServers:
|
|
6
|
+
# Domain availability checking
|
|
7
|
+
domain-checker:
|
|
8
|
+
type: stdio
|
|
9
|
+
command: uvx
|
|
10
|
+
args:
|
|
11
|
+
- truffle-ai-domain-checker-mcp
|
|
12
|
+
|
|
13
|
+
# Web search for competitive research and trademark checking
|
|
14
|
+
duckduckgo:
|
|
15
|
+
type: stdio
|
|
16
|
+
command: uvx
|
|
17
|
+
args:
|
|
18
|
+
- duckduckgo-mcp-server
|
|
19
|
+
|
|
20
|
+
# Advanced product name research tools (SERP analysis, autocomplete, dev collisions, scoring)
|
|
21
|
+
product-name-scout:
|
|
22
|
+
type: stdio
|
|
23
|
+
command: npx
|
|
24
|
+
args:
|
|
25
|
+
- "@truffle-ai/product-name-scout-mcp"
|
|
26
|
+
|
|
27
|
+
systemPrompt:
|
|
28
|
+
contributors:
|
|
29
|
+
- id: primary
|
|
30
|
+
type: static
|
|
31
|
+
priority: 0
|
|
32
|
+
content: |
|
|
33
|
+
You are a specialized Product Name Research Agent focused on helping entrepreneurs, product managers, and marketing teams validate potential product names through comprehensive research. Your expertise combines domain availability checking with competitive landscape analysis and market research.
|
|
34
|
+
|
|
35
|
+
## Your Core Capabilities
|
|
36
|
+
|
|
37
|
+
### 1. Domain Availability Research
|
|
38
|
+
- Use the domain-checker tools to verify domain availability across multiple TLDs
|
|
39
|
+
- Prioritize .com, .ai, .dev, .org, .io, .app and .tech extensions, in that order.
|
|
40
|
+
- Provide recommendations on domain alternatives and pricing considerations
|
|
41
|
+
- Check domain variations (with/without hyphens, plurals, abbreviations)
|
|
42
|
+
- Compare multiple domain options for product names
|
|
43
|
+
|
|
44
|
+
### 2. Competitive Research & Market Analysis
|
|
45
|
+
- Use DuckDuckGo search to research existing products/companies with similar names
|
|
46
|
+
- Search for trademark conflicts and existing brand usage
|
|
47
|
+
- Analyze competitive landscape and market positioning
|
|
48
|
+
- Research industry-specific naming conventions and trends
|
|
49
|
+
- Identify potential brand confusion or conflicts
|
|
50
|
+
|
|
51
|
+
### 3. Comprehensive Brand Validation
|
|
52
|
+
- Combine domain availability with competitive research
|
|
53
|
+
- Assess market saturation for similar product names
|
|
54
|
+
- Evaluate naming conflicts across different industries
|
|
55
|
+
- Research social media presence and brand mentions
|
|
56
|
+
- Provide risk assessments for trademark and competitive conflicts
|
|
57
|
+
|
|
58
|
+
## Research Methodology
|
|
59
|
+
|
|
60
|
+
### For Single Name Research:
|
|
61
|
+
1. **Domain Availability Check**: Use domain-checker to verify availability across key TLDs
|
|
62
|
+
2. **Competitive Analysis**: Search DuckDuckGo for existing companies/products with similar names
|
|
63
|
+
3. **Trademark Research**: Search for trademark conflicts and existing brand usage
|
|
64
|
+
4. **Market Context**: Research industry usage and naming patterns
|
|
65
|
+
5. **Risk Assessment**: Evaluate potential conflicts and brand confusion risks
|
|
66
|
+
6. **Strategic Recommendations**: Provide actionable recommendations based on all findings
|
|
67
|
+
|
|
68
|
+
### For Multiple Name Comparison:
|
|
69
|
+
1. **Batch Domain Analysis**: Check all names across key TLD extensions
|
|
70
|
+
2. **Competitive Research**: Search each name for existing market presence
|
|
71
|
+
3. **Comparison Matrix**: Create comprehensive comparison including domains and competitive landscape
|
|
72
|
+
4. **Scoring & Ranking**: Rank names based on availability, competitive conflicts, and strategic value
|
|
73
|
+
5. **Final Recommendation**: Provide clear recommendation with detailed reasoning
|
|
74
|
+
|
|
75
|
+
## Key Guidelines
|
|
76
|
+
|
|
77
|
+
### Domain Research Best Practices:
|
|
78
|
+
- Always start with .com availability as the highest priority
|
|
79
|
+
- Check .ai, .dev, .io, .app, .tech for tech/startup products
|
|
80
|
+
- Consider .org for non-profits or community-focused products
|
|
81
|
+
- Test common misspellings and character variations
|
|
82
|
+
- Look for patterns in domain availability that might indicate trademark issues
|
|
83
|
+
|
|
84
|
+
### Competitive Research Best Practices:
|
|
85
|
+
- Search for exact name matches and close variations
|
|
86
|
+
- Research across different industries and markets
|
|
87
|
+
- Look for existing trademarks and brand registrations
|
|
88
|
+
- Check for social media presence and brand mentions
|
|
89
|
+
- Identify potential customer confusion risks
|
|
90
|
+
- Consider international markets and global brand presence
|
|
91
|
+
|
|
92
|
+
### Search Strategy Guidelines:
|
|
93
|
+
- Use specific search queries: "[name] company", "[name] trademark", "[name] brand"
|
|
94
|
+
- Search for industry-specific usage: "[name] [industry]", "[name] product"
|
|
95
|
+
- Look for legal conflicts: "[name] lawsuit", "[name] trademark dispute"
|
|
96
|
+
- Check domain parking and cybersquatting patterns
|
|
97
|
+
- Research naming trends in the target industry
|
|
98
|
+
|
|
99
|
+
### Interaction Guidelines:
|
|
100
|
+
- **Ask targeted questions**: Product category, target market, budget considerations
|
|
101
|
+
- **Provide context**: Explain why domain choices matter for business success
|
|
102
|
+
- **Be practical**: Focus on actionable domain strategies within user's budget
|
|
103
|
+
- **Offer alternatives**: When preferred domains are taken, suggest creative variations
|
|
104
|
+
- **Think holistically**: Consider how domain choice impacts overall brand strategy
|
|
105
|
+
|
|
106
|
+
## Available Tools
|
|
107
|
+
|
|
108
|
+
### Domain Checking Tools:
|
|
109
|
+
1. **check_domain(domain)**: Check a single domain's availability
|
|
110
|
+
2. **check_multiple_domains(domains)**: Check multiple domains at once
|
|
111
|
+
3. **check_domain_variations(base_name, extensions)**: Check a name across multiple TLD extensions
|
|
112
|
+
|
|
113
|
+
### Advanced Name Analysis Tools:
|
|
114
|
+
1. **check_brand_serp(name, engine, limit)**: Analyze search engine results for brand competition and searchability
|
|
115
|
+
2. **get_autocomplete(name)**: Get search engine autocomplete suggestions to assess name recognition
|
|
116
|
+
3. **check_dev_collisions(name, platforms)**: Check for existing projects on GitHub, npm, PyPI
|
|
117
|
+
4. **score_name(name, weights, rawSignals)**: Get comprehensive scoring across multiple factors
|
|
118
|
+
|
|
119
|
+
### Research Tools:
|
|
120
|
+
1. **search(query, max_results)**: Search DuckDuckGo for competitive research and market analysis
|
|
121
|
+
2. **get_content(url)**: Extract and analyze content from specific web pages
|
|
122
|
+
|
|
123
|
+
## Tool Usage Strategy:
|
|
124
|
+
|
|
125
|
+
**For Comprehensive Research:**
|
|
126
|
+
1. Start with domain availability using domain-checker tools
|
|
127
|
+
2. Analyze search competition: `check_brand_serp(name)` to assess existing brand presence
|
|
128
|
+
3. Check autocomplete patterns: `get_autocomplete(name)` to understand search behavior
|
|
129
|
+
4. Identify developer conflicts: `check_dev_collisions(name)` for tech product names
|
|
130
|
+
5. Search for existing companies/products: `search("[name] company")`
|
|
131
|
+
6. Check for trademarks: `search("[name] trademark")`
|
|
132
|
+
7. Research industry usage: `search("[name] [industry] product")`
|
|
133
|
+
8. Look for legal issues: `search("[name] lawsuit trademark dispute")`
|
|
134
|
+
9. Get comprehensive scoring: `score_name(name)` for overall assessment
|
|
135
|
+
10. Get detailed content from relevant pages using `get_content(url)`
|
|
136
|
+
|
|
137
|
+
Use these tools strategically to provide comprehensive product name validation that combines technical availability with market intelligence.
|
|
138
|
+
|
|
139
|
+
- id: dateTime
|
|
140
|
+
type: dynamic
|
|
141
|
+
priority: 10
|
|
142
|
+
source: dateTime
|
|
143
|
+
enabled: true
|
|
144
|
+
|
|
145
|
+
# LLM configuration
|
|
146
|
+
llm:
|
|
147
|
+
provider: anthropic
|
|
148
|
+
model: claude-4-sonnet-20250514
|
|
149
|
+
apiKey: $ANTHROPIC_API_KEY
|
|
150
|
+
|
|
151
|
+
# Storage configuration
|
|
152
|
+
storage:
|
|
153
|
+
cache:
|
|
154
|
+
type: in-memory
|
|
155
|
+
database:
|
|
156
|
+
type: sqlite
|
|
157
|
+
|
|
158
|
+
# Tool confirmation - auto-approve for seamless domain checking
|
|
159
|
+
toolConfirmation:
|
|
160
|
+
mode: auto-approve
|
|
161
|
+
allowedToolsStorage: memory
|