dexto 1.1.10 → 1.2.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 +222 -84
- package/dist/agents/agent-registry.json +39 -1
- package/dist/agents/agent-template.yml +1 -1
- package/dist/agents/coding-agent/README.md +188 -0
- package/dist/agents/coding-agent/coding-agent.yml +203 -0
- package/dist/agents/database-agent/database-agent.yml +44 -2
- package/dist/agents/default-agent.yml +137 -13
- package/dist/agents/github-agent/github-agent.yml +42 -0
- package/dist/agents/image-editor-agent/image-editor-agent.yml +9 -2
- package/dist/agents/music-agent/README.md +1 -1
- package/dist/agents/music-agent/music-agent.yml +36 -2
- package/dist/agents/nano-banana-agent/nano-banana-agent.yml +35 -1
- package/dist/agents/podcast-agent/README.md +1 -1
- package/dist/agents/podcast-agent/podcast-agent.yml +37 -3
- package/dist/agents/product-name-researcher/product-name-researcher.yml +37 -1
- package/dist/agents/sora-video-agent/README.md +122 -0
- package/dist/agents/sora-video-agent/sora-video-agent.yml +98 -0
- package/dist/agents/talk2pdf-agent/talk2pdf-agent.yml +17 -2
- package/dist/agents/triage-demo/README.md +6 -6
- package/dist/agents/triage-demo/billing-agent.yml +1 -1
- package/dist/agents/triage-demo/escalation-agent.yml +1 -1
- package/dist/agents/triage-demo/product-info-agent.yml +1 -1
- package/dist/agents/triage-demo/technical-support-agent.yml +1 -1
- package/dist/agents/triage-demo/triage-agent.yml +16 -1
- package/dist/analytics/wrapper.d.ts.map +1 -1
- package/dist/analytics/wrapper.js +5 -3
- package/dist/api/a2a.d.ts +2 -2
- package/dist/api/a2a.d.ts.map +1 -1
- package/dist/api/a2a.js +3 -2
- package/dist/api/mcp/mcp_handler.d.ts +3 -3
- package/dist/api/mcp/mcp_handler.d.ts.map +1 -1
- package/dist/api/mcp/mcp_handler.js +7 -4
- package/dist/api/mcp/tool-aggregation-handler.d.ts.map +1 -1
- package/dist/api/mcp/tool-aggregation-handler.js +34 -42
- package/dist/api/memory/memory-handler.d.ts +18 -0
- package/dist/api/memory/memory-handler.d.ts.map +1 -0
- package/dist/api/memory/memory-handler.js +137 -0
- package/dist/api/middleware/errorHandler.d.ts.map +1 -1
- package/dist/api/middleware/errorHandler.js +2 -0
- package/dist/api/server.d.ts +2 -2
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +1129 -257
- package/dist/api/webhook-subscriber.d.ts.map +1 -1
- package/dist/api/webhook-subscriber.js +2 -1
- package/dist/api/websocket-subscriber.d.ts.map +1 -1
- package/dist/api/websocket-subscriber.js +67 -10
- package/dist/cli/cli-subscriber.d.ts +2 -1
- package/dist/cli/cli-subscriber.d.ts.map +1 -1
- package/dist/cli/cli-subscriber.js +11 -3
- package/dist/cli/cli.d.ts.map +1 -1
- package/dist/cli/cli.js +1 -0
- package/dist/cli/commands/install.d.ts +3 -3
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +223 -41
- package/dist/cli/commands/interactive-commands/model/model-commands.js +2 -2
- package/dist/cli/commands/interactive-commands/prompt-commands.d.ts +8 -1
- package/dist/cli/commands/interactive-commands/prompt-commands.d.ts.map +1 -1
- package/dist/cli/commands/interactive-commands/prompt-commands.js +252 -4
- package/dist/cli/commands/list-agents.d.ts.map +1 -1
- package/dist/cli/commands/list-agents.js +22 -3
- package/dist/cli/commands/setup.d.ts +4 -4
- package/dist/cli/commands/uninstall.d.ts +1 -1
- package/dist/cli/tool-confirmation/cli-confirmation-handler.d.ts +36 -7
- package/dist/cli/tool-confirmation/cli-confirmation-handler.d.ts.map +1 -1
- package/dist/cli/tool-confirmation/cli-confirmation-handler.js +314 -34
- package/dist/cli/utils/options.js +2 -2
- package/dist/index.js +117 -64
- package/dist/webui/.next/standalone/.next/static/chunks/419-6d449dcb2b056299.js +1 -0
- package/dist/webui/.next/standalone/.next/static/chunks/614-3519f8a6051e0088.js +1 -0
- package/dist/webui/.next/standalone/.next/static/chunks/656-5a9f6405badf66a8.js +25 -0
- package/dist/webui/.next/standalone/.next/static/chunks/765-755286dc586b1a51.js +1 -0
- package/dist/webui/.next/standalone/.next/static/chunks/804-f40df92a3adffcc0.js +1 -0
- package/dist/webui/.next/standalone/.next/static/chunks/854-232126f3c77e6c0b.js +1 -0
- package/dist/webui/.next/standalone/.next/static/chunks/app/chat/[sessionId]/page-a695b09e6bac5274.js +1 -0
- package/dist/webui/.next/standalone/.next/static/chunks/app/layout-f4a6ee5a028899d1.js +1 -0
- package/dist/webui/.next/standalone/.next/static/chunks/app/page-d1f127a0cac96246.js +1 -0
- package/dist/webui/.next/standalone/.next/static/chunks/app/playground/page-6f8d2abe76e51dfc.js +1 -0
- package/dist/webui/.next/standalone/.next/static/chunks/main-7decd42f62688419.js +1 -0
- package/dist/webui/.next/standalone/.next/static/chunks/{webpack-7c234e7e7e272295.js → webpack-7229fd0786f0483c.js} +1 -1
- package/dist/webui/.next/standalone/.next/static/css/c3c26ec984df1deb.css +1 -0
- package/dist/webui/.next/standalone/.next/static/css/de70bee13400563f.css +1 -0
- package/dist/webui/.next/standalone/.next/static/uqfH8SY_uhwdc0ZkpMwCO/_buildManifest.js +1 -0
- package/dist/webui/.next/standalone/package.json +7 -2
- package/dist/webui/.next/standalone/packages/webui/.next/BUILD_ID +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/app-build-manifest.json +30 -15
- package/dist/webui/.next/standalone/packages/webui/.next/app-path-routes-manifest.json +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/build-manifest.json +7 -7
- package/dist/webui/.next/standalone/packages/webui/.next/prerender-manifest.json +3 -3
- package/dist/webui/.next/standalone/packages/webui/.next/required-server-files.json +1 -11
- package/dist/webui/.next/standalone/packages/webui/.next/routes-manifest.json +11 -8
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/_not-found/page.js +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/chat/[sessionId]/page.js +2 -0
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/chat/[sessionId]/page.js.nft.json +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/chat/[sessionId]/page_client-reference-manifest.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/page.js +2 -11
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/page.js.nft.json +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/page_client-reference-manifest.js +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/playground/page.js +4 -8
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/playground/page.js.nft.json +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/app/playground/page_client-reference-manifest.js +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/app-paths-manifest.json +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/1.js +12 -0
- package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/102.js +25 -0
- package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/383.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/{619.js → 426.js} +2 -2
- package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/43.js +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/985.js +5 -0
- package/dist/webui/.next/standalone/packages/webui/.next/server/middleware-build-manifest.js +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/pages/500.html +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/server-reference-manifest.json +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/419-6d449dcb2b056299.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/614-3519f8a6051e0088.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/656-5a9f6405badf66a8.js +25 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/765-755286dc586b1a51.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/804-f40df92a3adffcc0.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/854-232126f3c77e6c0b.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/chat/[sessionId]/page-a695b09e6bac5274.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/layout-f4a6ee5a028899d1.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/page-d1f127a0cac96246.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/playground/page-6f8d2abe76e51dfc.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/main-7decd42f62688419.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/{webpack-7c234e7e7e272295.js → webpack-7229fd0786f0483c.js} +1 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/css/c3c26ec984df1deb.css +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/css/de70bee13400563f.css +1 -0
- package/dist/webui/.next/standalone/packages/webui/.next/static/uqfH8SY_uhwdc0ZkpMwCO/_buildManifest.js +1 -0
- package/dist/webui/.next/standalone/packages/webui/package.json +11 -4
- package/dist/webui/.next/standalone/packages/webui/server.js +1 -1
- package/dist/webui/.next/static/chunks/419-6d449dcb2b056299.js +1 -0
- package/dist/webui/.next/static/chunks/614-3519f8a6051e0088.js +1 -0
- package/dist/webui/.next/static/chunks/656-5a9f6405badf66a8.js +25 -0
- package/dist/webui/.next/static/chunks/765-755286dc586b1a51.js +1 -0
- package/dist/webui/.next/static/chunks/804-f40df92a3adffcc0.js +1 -0
- package/dist/webui/.next/static/chunks/854-232126f3c77e6c0b.js +1 -0
- package/dist/webui/.next/static/chunks/app/chat/[sessionId]/page-a695b09e6bac5274.js +1 -0
- package/dist/webui/.next/static/chunks/app/layout-f4a6ee5a028899d1.js +1 -0
- package/dist/webui/.next/static/chunks/app/page-d1f127a0cac96246.js +1 -0
- package/dist/webui/.next/static/chunks/app/playground/page-6f8d2abe76e51dfc.js +1 -0
- package/dist/webui/.next/static/chunks/main-7decd42f62688419.js +1 -0
- package/dist/webui/.next/static/chunks/{webpack-7c234e7e7e272295.js → webpack-7229fd0786f0483c.js} +1 -1
- package/dist/webui/.next/static/css/c3c26ec984df1deb.css +1 -0
- package/dist/webui/.next/static/css/de70bee13400563f.css +1 -0
- package/dist/webui/.next/static/uqfH8SY_uhwdc0ZkpMwCO/_buildManifest.js +1 -0
- package/dist/webui/package.json +11 -4
- package/package.json +5 -4
- package/dist/webui/.next/standalone/.next/static/PvkEd_BO6ZXxX99T_gUvs/_buildManifest.js +0 -1
- package/dist/webui/.next/standalone/.next/static/chunks/179-78abc2eacbc41da9.js +0 -1
- package/dist/webui/.next/standalone/.next/static/chunks/442-b1916bec348454b3.js +0 -1
- package/dist/webui/.next/standalone/.next/static/chunks/544-c4a8f278ed1a25d7.js +0 -1
- package/dist/webui/.next/standalone/.next/static/chunks/854-2a6d5a5297a15d52.js +0 -1
- package/dist/webui/.next/standalone/.next/static/chunks/app/layout-dde711766eda096b.js +0 -1
- package/dist/webui/.next/standalone/.next/static/chunks/app/page-5e94d5a49dc718d0.js +0 -1
- package/dist/webui/.next/standalone/.next/static/chunks/app/playground/page-9ae40e0b219583e3.js +0 -1
- package/dist/webui/.next/standalone/.next/static/chunks/main-b65ece3506a2355c.js +0 -1
- package/dist/webui/.next/standalone/.next/static/css/045cc65741e38fbd.css +0 -3
- package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/549.js +0 -1
- package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/950.js +0 -5
- package/dist/webui/.next/standalone/packages/webui/.next/static/PvkEd_BO6ZXxX99T_gUvs/_buildManifest.js +0 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/179-78abc2eacbc41da9.js +0 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/442-b1916bec348454b3.js +0 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/544-c4a8f278ed1a25d7.js +0 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/854-2a6d5a5297a15d52.js +0 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/layout-dde711766eda096b.js +0 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/page-5e94d5a49dc718d0.js +0 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/playground/page-9ae40e0b219583e3.js +0 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/main-b65ece3506a2355c.js +0 -1
- package/dist/webui/.next/standalone/packages/webui/.next/static/css/045cc65741e38fbd.css +0 -3
- package/dist/webui/.next/static/PvkEd_BO6ZXxX99T_gUvs/_buildManifest.js +0 -1
- package/dist/webui/.next/static/chunks/179-78abc2eacbc41da9.js +0 -1
- package/dist/webui/.next/static/chunks/442-b1916bec348454b3.js +0 -1
- package/dist/webui/.next/static/chunks/544-c4a8f278ed1a25d7.js +0 -1
- package/dist/webui/.next/static/chunks/854-2a6d5a5297a15d52.js +0 -1
- package/dist/webui/.next/static/chunks/app/layout-dde711766eda096b.js +0 -1
- package/dist/webui/.next/static/chunks/app/page-5e94d5a49dc718d0.js +0 -1
- package/dist/webui/.next/static/chunks/app/playground/page-9ae40e0b219583e3.js +0 -1
- package/dist/webui/.next/static/chunks/main-b65ece3506a2355c.js +0 -1
- package/dist/webui/.next/static/css/045cc65741e38fbd.css +0 -3
- /package/dist/webui/.next/standalone/.next/static/{PvkEd_BO6ZXxX99T_gUvs → uqfH8SY_uhwdc0ZkpMwCO}/_ssgManifest.js +0 -0
- /package/dist/webui/.next/standalone/packages/webui/.next/static/{PvkEd_BO6ZXxX99T_gUvs → uqfH8SY_uhwdc0ZkpMwCO}/_ssgManifest.js +0 -0
- /package/dist/webui/.next/static/{PvkEd_BO6ZXxX99T_gUvs → uqfH8SY_uhwdc0ZkpMwCO}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
# Coding Agent
|
|
2
|
+
|
|
3
|
+
An expert software development assistant optimized for building, debugging, and maintaining codebases. This agent comes equipped with all internal coding tools and is configured to handle complex software engineering tasks efficiently.
|
|
4
|
+
|
|
5
|
+
## What You Get
|
|
6
|
+
|
|
7
|
+
- **All Internal Coding Tools**: Read, write, edit files, execute commands, search codebases
|
|
8
|
+
- **Intelligent Tool Policies**: Read operations never require approval, write operations are safely guarded
|
|
9
|
+
- **Comprehensive File Support**: 30+ file extensions including JS/TS, Python, Go, Rust, Java, C/C++, configs, and more
|
|
10
|
+
- **Enhanced Codebase Access**: Index up to 500 files with depth-10 traversal, including hidden files
|
|
11
|
+
- **Expert System Prompt**: Specialized instructions for software development best practices
|
|
12
|
+
- **Persistent Tool Approvals**: Allowed tools are saved across sessions for smoother workflows
|
|
13
|
+
- **Coding-Focused Starter Prompts**: Quick access to common development tasks
|
|
14
|
+
|
|
15
|
+
## Key Capabilities
|
|
16
|
+
|
|
17
|
+
### File Operations
|
|
18
|
+
- **read_file**: Read any file with pagination support
|
|
19
|
+
- **write_file**: Create new files (requires approval)
|
|
20
|
+
- **edit_file**: Modify existing files precisely (requires approval)
|
|
21
|
+
- **glob_files**: Find files using patterns like `**/*.ts` (no approval needed)
|
|
22
|
+
- **grep_content**: Search within files using regex (no approval needed)
|
|
23
|
+
|
|
24
|
+
### Command Execution
|
|
25
|
+
- **bash_exec**: Run shell commands for testing, building, running code (requires approval)
|
|
26
|
+
- **bash_output**: Monitor output from background processes
|
|
27
|
+
- **kill_process**: Terminate running processes
|
|
28
|
+
|
|
29
|
+
### Analysis & Search
|
|
30
|
+
- Deep codebase traversal (up to 10 levels)
|
|
31
|
+
- Search across 500+ files
|
|
32
|
+
- Pattern matching with glob and regex
|
|
33
|
+
- Hidden file access (.env, .gitignore, etc.)
|
|
34
|
+
|
|
35
|
+
## Requirements
|
|
36
|
+
|
|
37
|
+
- Node.js 18+ (if using npm/pnpm commands)
|
|
38
|
+
- OpenAI API key (or another configured LLM key)
|
|
39
|
+
- File system access to your project directory
|
|
40
|
+
|
|
41
|
+
## Run the Agent
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
# From Dexto source
|
|
45
|
+
npm start -- --agent agents/coding-agent/coding-agent.yml
|
|
46
|
+
|
|
47
|
+
# Or using the Dexto CLI
|
|
48
|
+
dexto --agent coding-agent
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
## Usage Examples
|
|
52
|
+
|
|
53
|
+
### Analyze a Codebase
|
|
54
|
+
```
|
|
55
|
+
"Analyze this codebase. Show me the project structure, main technologies used, and provide a high-level overview."
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
### Debug an Error
|
|
59
|
+
```
|
|
60
|
+
"I'm getting this error: [paste error]. Help me find and fix the issue."
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
### Implement a Feature
|
|
64
|
+
```
|
|
65
|
+
"I need to add user authentication. Help me design and implement it following best practices."
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### Refactor Code
|
|
69
|
+
```
|
|
70
|
+
"This function is too complex. Help me refactor it for better readability and maintainability."
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Write Tests
|
|
74
|
+
```
|
|
75
|
+
"Generate unit tests for the UserService class with edge case coverage."
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
### Code Review
|
|
79
|
+
```
|
|
80
|
+
"Review my recent changes in src/auth/ and suggest improvements."
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
## Configuration
|
|
84
|
+
|
|
85
|
+
### LLM Options
|
|
86
|
+
|
|
87
|
+
The coding agent defaults to `gpt-4o` for powerful coding capabilities. You can switch to other models:
|
|
88
|
+
|
|
89
|
+
**Claude Sonnet (Excellent for Coding)**
|
|
90
|
+
```yaml
|
|
91
|
+
llm:
|
|
92
|
+
provider: anthropic
|
|
93
|
+
model: claude-sonnet-4-20250514
|
|
94
|
+
apiKey: $ANTHROPIC_API_KEY
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
**Google Gemini**
|
|
98
|
+
```yaml
|
|
99
|
+
llm:
|
|
100
|
+
provider: google
|
|
101
|
+
model: gemini-2.5-pro
|
|
102
|
+
apiKey: $GOOGLE_GENERATIVE_AI_API_KEY
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
**OpenAI o1 (For Complex Reasoning)**
|
|
106
|
+
```yaml
|
|
107
|
+
llm:
|
|
108
|
+
provider: openai
|
|
109
|
+
model: o1
|
|
110
|
+
apiKey: $OPENAI_API_KEY
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Tool Policies
|
|
114
|
+
|
|
115
|
+
The agent is pre-configured with sensible defaults:
|
|
116
|
+
|
|
117
|
+
**Always Allowed (No Approval Needed)**
|
|
118
|
+
- Reading files (`internal--read_file`)
|
|
119
|
+
- Searching files (`internal--glob_files`, `internal--grep_content`)
|
|
120
|
+
- Checking process output (`internal--bash_output`)
|
|
121
|
+
- Killing processes (`internal--kill_process`)
|
|
122
|
+
- Asking questions (`internal--ask_user`)
|
|
123
|
+
|
|
124
|
+
**Requires Approval**
|
|
125
|
+
- Writing files (`internal--write_file`)
|
|
126
|
+
- Editing files (`internal--edit_file`)
|
|
127
|
+
- Executing commands (`internal--bash_exec`)
|
|
128
|
+
|
|
129
|
+
You can customize these policies in the `toolConfirmation.toolPolicies` section of `coding-agent.yml`.
|
|
130
|
+
|
|
131
|
+
### File Extensions
|
|
132
|
+
|
|
133
|
+
The agent indexes these file types by default:
|
|
134
|
+
|
|
135
|
+
**Web Development**: .js, .jsx, .ts, .tsx, .html, .css, .scss, .sass, .less, .vue, .svelte
|
|
136
|
+
|
|
137
|
+
**Backend Languages**: .py, .java, .go, .rs, .rb, .php, .c, .cpp, .h, .hpp, .cs, .swift, .kt
|
|
138
|
+
|
|
139
|
+
**Configuration**: .json, .yaml, .yml, .toml, .xml, .ini, .env
|
|
140
|
+
|
|
141
|
+
**Documentation**: .md, .mdx, .txt, .rst
|
|
142
|
+
|
|
143
|
+
**Build Files**: .gradle, .maven, Makefile, Dockerfile, .dockerignore, .gitignore
|
|
144
|
+
|
|
145
|
+
Add more extensions in the `internalResources.resources[0].includeExtensions` section.
|
|
146
|
+
|
|
147
|
+
## Starter Prompts
|
|
148
|
+
|
|
149
|
+
The agent includes 8 built-in starter prompts:
|
|
150
|
+
|
|
151
|
+
1. **🔍 Analyze Codebase** - Get a project overview
|
|
152
|
+
2. **🐛 Debug Error** - Identify and fix bugs
|
|
153
|
+
3. **♻️ Refactor Code** - Improve code quality
|
|
154
|
+
4. **🧪 Write Tests** - Generate comprehensive tests
|
|
155
|
+
5. **✨ Implement Feature** - Build new functionality
|
|
156
|
+
6. **⚡ Optimize Performance** - Find bottlenecks
|
|
157
|
+
7. **🚀 Setup Project** - Initialize new projects
|
|
158
|
+
8. **👀 Code Review** - Review for issues and improvements
|
|
159
|
+
|
|
160
|
+
## Best Practices
|
|
161
|
+
|
|
162
|
+
1. **Read Before Writing**: The agent automatically searches and reads relevant code before making changes
|
|
163
|
+
2. **Use Glob & Grep**: Leverage pattern matching to explore unfamiliar codebases efficiently
|
|
164
|
+
3. **Test Changes**: Execute tests after modifications to verify correctness
|
|
165
|
+
4. **Follow Conventions**: The agent adapts to your project's existing code style
|
|
166
|
+
5. **Ask Questions**: The agent will ask for clarification when requirements are ambiguous
|
|
167
|
+
|
|
168
|
+
## Troubleshooting
|
|
169
|
+
|
|
170
|
+
### Agent Can't Find Files
|
|
171
|
+
- Ensure you're running from your project root
|
|
172
|
+
- Check that file extensions are included in the config
|
|
173
|
+
- Verify `maxDepth` is sufficient for your project structure
|
|
174
|
+
|
|
175
|
+
### Commands Require Too Many Approvals
|
|
176
|
+
- Use `allowedToolsStorage: storage` to persist approvals
|
|
177
|
+
- Add frequently-used commands to the `alwaysAllow` list
|
|
178
|
+
|
|
179
|
+
### Performance Issues with Large Codebases
|
|
180
|
+
- Increase `maxFiles` limit (default: 500)
|
|
181
|
+
- Reduce `maxDepth` to limit traversal
|
|
182
|
+
- Exclude large directories in `.gitignore`
|
|
183
|
+
|
|
184
|
+
## Learn More
|
|
185
|
+
|
|
186
|
+
- [Dexto Documentation](https://github.com/truffle-ai/dexto)
|
|
187
|
+
- [Internal Tools Reference](../../docs/internal-tools.md)
|
|
188
|
+
- [Agent Configuration Guide](../../docs/agent-configuration.md)
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
# Coding Agent Configuration
|
|
2
|
+
# Optimized for software development with internal coding tools
|
|
3
|
+
|
|
4
|
+
# System prompt configuration - defines the agent's behavior as a coding assistant
|
|
5
|
+
systemPrompt:
|
|
6
|
+
contributors:
|
|
7
|
+
- id: primary
|
|
8
|
+
type: static
|
|
9
|
+
priority: 0
|
|
10
|
+
content: |
|
|
11
|
+
You are an expert software development assistant with deep knowledge of multiple programming languages,
|
|
12
|
+
frameworks, and development best practices.
|
|
13
|
+
|
|
14
|
+
Your primary goal is to help users write, debug, refactor, and understand code efficiently.
|
|
15
|
+
|
|
16
|
+
Key capabilities:
|
|
17
|
+
- Read and analyze codebases using glob and grep patterns
|
|
18
|
+
- Write and edit files with precise, well-structured code
|
|
19
|
+
- Execute shell commands for testing, building, and running code
|
|
20
|
+
- Debug issues by examining error messages and code structure
|
|
21
|
+
- Refactor code following best practices and design patterns
|
|
22
|
+
- Explain complex code concepts clearly
|
|
23
|
+
|
|
24
|
+
Guidelines:
|
|
25
|
+
- Always read relevant code before making changes to understand context
|
|
26
|
+
- Use glob_files to find files and grep_content to search within files
|
|
27
|
+
- Test changes when possible using bash_exec
|
|
28
|
+
- Follow the project's existing code style and conventions
|
|
29
|
+
- Provide clear explanations for your code decisions
|
|
30
|
+
- Ask for clarification when requirements are ambiguous
|
|
31
|
+
- id: memories
|
|
32
|
+
type: memory
|
|
33
|
+
priority: 40
|
|
34
|
+
enabled: true
|
|
35
|
+
options:
|
|
36
|
+
includeTimestamps: false
|
|
37
|
+
includeTags: true
|
|
38
|
+
limit: 10
|
|
39
|
+
pinnedOnly: false
|
|
40
|
+
|
|
41
|
+
# Greeting optimized for coding tasks
|
|
42
|
+
greeting: "👨💻 Ready to code! What are we building today?"
|
|
43
|
+
|
|
44
|
+
# LLM configuration - using a powerful model for coding tasks
|
|
45
|
+
llm:
|
|
46
|
+
provider: anthropic
|
|
47
|
+
model: claude-haiku-4-5-20251001 # More powerful model for complex coding tasks
|
|
48
|
+
apiKey: $ANTHROPIC_API_KEY
|
|
49
|
+
|
|
50
|
+
storage:
|
|
51
|
+
cache:
|
|
52
|
+
type: in-memory
|
|
53
|
+
database:
|
|
54
|
+
type: sqlite
|
|
55
|
+
blob:
|
|
56
|
+
type: local
|
|
57
|
+
maxBlobSize: 52428800 # 50MB per blob
|
|
58
|
+
maxTotalSize: 1073741824 # 1GB total storage
|
|
59
|
+
cleanupAfterDays: 30
|
|
60
|
+
|
|
61
|
+
toolConfirmation:
|
|
62
|
+
mode: event-based
|
|
63
|
+
timeout: 120000
|
|
64
|
+
allowedToolsStorage: storage # Persist allowed tools across sessions
|
|
65
|
+
|
|
66
|
+
# Tool policies optimized for coding workflows
|
|
67
|
+
toolPolicies:
|
|
68
|
+
# Tools that never require approval (safe, read-only operations)
|
|
69
|
+
alwaysAllow:
|
|
70
|
+
- internal--ask_user
|
|
71
|
+
- internal--read_file # Read files without approval
|
|
72
|
+
- internal--glob_files # Search for files without approval
|
|
73
|
+
- internal--grep_content # Search within files without approval
|
|
74
|
+
- internal--bash_output # Check background process output
|
|
75
|
+
- internal--kill_process # Kill processes without approval
|
|
76
|
+
|
|
77
|
+
# Tools that are always denied (dangerous operations)
|
|
78
|
+
# Uncomment to restrict certain operations
|
|
79
|
+
# alwaysDeny:
|
|
80
|
+
# - internal--bash_exec--rm -rf* # Prevent recursive deletion
|
|
81
|
+
|
|
82
|
+
# Internal tools - all coding tools enabled
|
|
83
|
+
internalTools:
|
|
84
|
+
- ask_user # Ask questions and collect input
|
|
85
|
+
- read_file # Read file contents with pagination support
|
|
86
|
+
- glob_files # Find files using glob patterns (e.g., "**/*.ts")
|
|
87
|
+
- grep_content # Search file contents using regex patterns
|
|
88
|
+
- write_file # Write content to files (requires approval)
|
|
89
|
+
- edit_file # Edit files by replacing text (requires approval)
|
|
90
|
+
- bash_exec # Execute shell commands (requires approval)
|
|
91
|
+
- bash_output # Retrieve output from background processes
|
|
92
|
+
- kill_process # Terminate background processes
|
|
93
|
+
|
|
94
|
+
# Internal resources configuration - expanded for coding projects
|
|
95
|
+
internalResources:
|
|
96
|
+
enabled: true
|
|
97
|
+
resources:
|
|
98
|
+
# Filesystem resource - comprehensive file access for coding
|
|
99
|
+
- type: filesystem
|
|
100
|
+
paths: ["."]
|
|
101
|
+
maxFiles: 500 # Increased for larger codebases
|
|
102
|
+
maxDepth: 10 # Deeper traversal for nested projects
|
|
103
|
+
includeHidden: true # Include hidden files (.env, .gitignore, etc.)
|
|
104
|
+
includeExtensions:
|
|
105
|
+
# Web development
|
|
106
|
+
- .js
|
|
107
|
+
- .jsx
|
|
108
|
+
- .ts
|
|
109
|
+
- .tsx
|
|
110
|
+
- .html
|
|
111
|
+
- .css
|
|
112
|
+
- .scss
|
|
113
|
+
- .sass
|
|
114
|
+
- .less
|
|
115
|
+
- .vue
|
|
116
|
+
- .svelte
|
|
117
|
+
# Backend languages
|
|
118
|
+
- .py
|
|
119
|
+
- .java
|
|
120
|
+
- .go
|
|
121
|
+
- .rs
|
|
122
|
+
- .rb
|
|
123
|
+
- .php
|
|
124
|
+
- .c
|
|
125
|
+
- .cpp
|
|
126
|
+
- .h
|
|
127
|
+
- .hpp
|
|
128
|
+
- .cs
|
|
129
|
+
- .swift
|
|
130
|
+
- .kt
|
|
131
|
+
# Shell and config
|
|
132
|
+
- .sh
|
|
133
|
+
- .bash
|
|
134
|
+
- .zsh
|
|
135
|
+
- .fish
|
|
136
|
+
# Config and data
|
|
137
|
+
- .json
|
|
138
|
+
- .yaml
|
|
139
|
+
- .yml
|
|
140
|
+
- .toml
|
|
141
|
+
- .xml
|
|
142
|
+
- .ini
|
|
143
|
+
- .env
|
|
144
|
+
# Documentation
|
|
145
|
+
- .md
|
|
146
|
+
- .mdx
|
|
147
|
+
- .txt
|
|
148
|
+
- .rst
|
|
149
|
+
# Build and package files
|
|
150
|
+
- .gradle
|
|
151
|
+
- .maven
|
|
152
|
+
- .dockerignore
|
|
153
|
+
- .gitignore
|
|
154
|
+
|
|
155
|
+
# Blob resource - for handling build artifacts, images, etc.
|
|
156
|
+
- type: blob
|
|
157
|
+
|
|
158
|
+
# Starter prompts - coding-focused examples
|
|
159
|
+
starterPrompts:
|
|
160
|
+
- id: analyze-codebase
|
|
161
|
+
title: "🔍 Analyze Codebase"
|
|
162
|
+
description: "Get an overview of the project structure"
|
|
163
|
+
prompt: "Analyze this codebase. Show me the project structure, main technologies used, and provide a high-level overview."
|
|
164
|
+
category: analysis
|
|
165
|
+
priority: 10
|
|
166
|
+
- id: implement-feature
|
|
167
|
+
title: "✨ Implement Feature"
|
|
168
|
+
description: "Build a new feature from scratch"
|
|
169
|
+
prompt: "Help me implement a new feature. I'll describe what I need, and you can design and implement it following best practices."
|
|
170
|
+
category: development
|
|
171
|
+
priority: 9
|
|
172
|
+
- id: write-tests
|
|
173
|
+
title: "🧪 Write Tests"
|
|
174
|
+
description: "Generate unit tests for code"
|
|
175
|
+
prompt: "Help me write comprehensive unit tests. Identify the testing framework and create tests that cover edge cases."
|
|
176
|
+
category: testing
|
|
177
|
+
priority: 8
|
|
178
|
+
- id: refactor-code
|
|
179
|
+
title: "♻️ Refactor Code"
|
|
180
|
+
description: "Improve code quality and structure"
|
|
181
|
+
prompt: "Help me refactor some code to improve its structure, readability, and maintainability while preserving functionality."
|
|
182
|
+
category: refactoring
|
|
183
|
+
priority: 7
|
|
184
|
+
|
|
185
|
+
## Alternative LLM configurations for coding
|
|
186
|
+
|
|
187
|
+
## Claude Sonnet (excellent for coding)
|
|
188
|
+
# llm:
|
|
189
|
+
# provider: anthropic
|
|
190
|
+
# model: claude-sonnet-4-20250514
|
|
191
|
+
# apiKey: $ANTHROPIC_API_KEY
|
|
192
|
+
|
|
193
|
+
## Google Gemini (strong coding capabilities)
|
|
194
|
+
# llm:
|
|
195
|
+
# provider: google
|
|
196
|
+
# model: gemini-2.5-pro
|
|
197
|
+
# apiKey: $GOOGLE_GENERATIVE_AI_API_KEY
|
|
198
|
+
|
|
199
|
+
## OpenAI o1 (for complex reasoning tasks)
|
|
200
|
+
# llm:
|
|
201
|
+
# provider: openai
|
|
202
|
+
# model: o1
|
|
203
|
+
# apiKey: $OPENAI_API_KEY
|
|
@@ -26,6 +26,9 @@ mcpServers:
|
|
|
26
26
|
timeout: 30000
|
|
27
27
|
connectionMode: lenient
|
|
28
28
|
|
|
29
|
+
# Optional greeting shown at chat start (UI can consume this)
|
|
30
|
+
greeting: "🗄️ Hi! I'm your Database Agent. What would you like to explore?"
|
|
31
|
+
|
|
29
32
|
# System prompt that defines the agent's database interaction capabilities
|
|
30
33
|
systemPrompt:
|
|
31
34
|
contributors:
|
|
@@ -108,9 +111,48 @@ systemPrompt:
|
|
|
108
111
|
source: dateTime
|
|
109
112
|
enabled: true
|
|
110
113
|
|
|
114
|
+
# Storage configuration
|
|
115
|
+
storage:
|
|
116
|
+
cache:
|
|
117
|
+
type: in-memory
|
|
118
|
+
database:
|
|
119
|
+
type: sqlite
|
|
120
|
+
blob:
|
|
121
|
+
type: local
|
|
122
|
+
maxBlobSize: 52428800 # 50MB per blob
|
|
123
|
+
maxTotalSize: 1073741824 # 1GB total storage
|
|
124
|
+
cleanupAfterDays: 30
|
|
125
|
+
|
|
111
126
|
# LLM configuration for intelligent database interactions
|
|
112
127
|
llm:
|
|
113
128
|
provider: openai
|
|
114
|
-
model: gpt-
|
|
129
|
+
model: gpt-5-mini
|
|
115
130
|
apiKey: $OPENAI_API_KEY
|
|
116
|
-
temperature: 0.1 # Lower temperature for more consistent database operations
|
|
131
|
+
temperature: 0.1 # Lower temperature for more consistent database operations
|
|
132
|
+
|
|
133
|
+
# Starter prompts - database interaction examples
|
|
134
|
+
starterPrompts:
|
|
135
|
+
- id: explore-database
|
|
136
|
+
title: "🔍 Explore Database"
|
|
137
|
+
description: "See what's in the database"
|
|
138
|
+
prompt: "Show me what tables exist in the database and their structure."
|
|
139
|
+
category: exploration
|
|
140
|
+
priority: 10
|
|
141
|
+
- id: create-table
|
|
142
|
+
title: "🗂️ Create Table"
|
|
143
|
+
description: "Design and create a new database table"
|
|
144
|
+
prompt: "Create a products table with columns for name, description, price, and stock quantity."
|
|
145
|
+
category: schema
|
|
146
|
+
priority: 9
|
|
147
|
+
- id: insert-data
|
|
148
|
+
title: "➕ Insert Data"
|
|
149
|
+
description: "Add new records to a table"
|
|
150
|
+
prompt: "Insert a new product into the products table with name 'Laptop', price 999.99, and stock 15."
|
|
151
|
+
category: data-management
|
|
152
|
+
priority: 8
|
|
153
|
+
- id: query-data
|
|
154
|
+
title: "📊 Query Data"
|
|
155
|
+
description: "Search and filter database records"
|
|
156
|
+
prompt: "Show me all products from the products table sorted by price."
|
|
157
|
+
category: queries
|
|
158
|
+
priority: 7
|
|
@@ -14,13 +14,6 @@ mcpServers:
|
|
|
14
14
|
- -y
|
|
15
15
|
- "@playwright/mcp@latest"
|
|
16
16
|
|
|
17
|
-
# hf:
|
|
18
|
-
# type: stdio
|
|
19
|
-
# command: npx
|
|
20
|
-
# args:
|
|
21
|
-
# - -y
|
|
22
|
-
# - "@llmindset/mcp-hfspace"
|
|
23
|
-
|
|
24
17
|
# System prompt configuration - defines the agent's behavior and instructions
|
|
25
18
|
systemPrompt:
|
|
26
19
|
contributors:
|
|
@@ -37,28 +30,159 @@ systemPrompt:
|
|
|
37
30
|
priority: 10
|
|
38
31
|
source: dateTime
|
|
39
32
|
enabled: true
|
|
33
|
+
- id: memories
|
|
34
|
+
type: memory
|
|
35
|
+
priority: 40
|
|
36
|
+
enabled: true
|
|
37
|
+
options:
|
|
38
|
+
includeTimestamps: false
|
|
39
|
+
includeTags: true
|
|
40
|
+
limit: 10
|
|
41
|
+
pinnedOnly: false
|
|
40
42
|
|
|
41
43
|
# Optional greeting shown at chat start (UI can consume this)
|
|
42
|
-
greeting: "Hi! I
|
|
44
|
+
greeting: "Hi! I'm Dexto — how can I help today?"
|
|
43
45
|
|
|
44
|
-
#
|
|
46
|
+
# LLM configuration - describes the language model to use
|
|
45
47
|
llm:
|
|
46
48
|
provider: openai
|
|
47
49
|
model: gpt-5-mini
|
|
48
50
|
apiKey: $OPENAI_API_KEY
|
|
49
51
|
|
|
50
|
-
#
|
|
51
|
-
#
|
|
52
|
+
# Optional: Control which media types are expanded for LLM consumption
|
|
53
|
+
# If omitted, uses model capabilities from registry (recommended default)
|
|
54
|
+
# Supports MIME patterns with wildcards (e.g., "image/*", "video/mp4")
|
|
55
|
+
# allowedMediaTypes:
|
|
56
|
+
# - "image/*" # All images (png, jpg, gif, etc.)
|
|
57
|
+
# - "application/pdf" # PDF documents
|
|
58
|
+
# - "audio/*" # All audio formats
|
|
59
|
+
# Note: Unsupported types become descriptive placeholders like: [Video: demo.mp4 (5.2 MB)]
|
|
60
|
+
|
|
52
61
|
storage:
|
|
53
62
|
cache:
|
|
54
63
|
type: in-memory
|
|
55
64
|
database:
|
|
56
65
|
type: sqlite
|
|
57
|
-
# path: ./data/dexto.db
|
|
66
|
+
# path: ./data/dexto.db # Optional: customize database location
|
|
67
|
+
blob:
|
|
68
|
+
type: local # 'local', 's3', 'gcs', 'azure' (s3, gcs, azure coming in future Phases)
|
|
69
|
+
maxBlobSize: 52428800 # 50MB per blob
|
|
70
|
+
maxTotalSize: 1073741824 # 1GB total storage
|
|
71
|
+
cleanupAfterDays: 30 # Auto-cleanup blobs older than 30 days
|
|
72
|
+
# storePath: ~/.dexto/blobs (defaults to context-aware path for local backend)
|
|
73
|
+
|
|
74
|
+
toolConfirmation:
|
|
75
|
+
mode: event-based
|
|
76
|
+
timeout: 120000 # Time to wait for approval (ms)
|
|
77
|
+
allowedToolsStorage: memory # 'memory' or 'storage' for persisting allowed tools
|
|
78
|
+
|
|
79
|
+
# Optional: Static tool policies for fine-grained allow/deny control
|
|
80
|
+
toolPolicies:
|
|
81
|
+
# Tools that never require approval (low-risk, common operations)
|
|
82
|
+
alwaysAllow:
|
|
83
|
+
- internal--ask_user
|
|
84
|
+
- mcp--read_file
|
|
85
|
+
- mcp--list_directory
|
|
86
|
+
- mcp--list_allowed_directories
|
|
87
|
+
#
|
|
88
|
+
# # Tools that are always denied (high-risk, destructive operations)
|
|
89
|
+
# # Deny list takes precedence over allow list
|
|
90
|
+
# alwaysDeny:
|
|
91
|
+
# - mcp--filesystem--delete_file
|
|
92
|
+
# - mcp--playwright--execute_script
|
|
93
|
+
|
|
94
|
+
# Internal tools - built-in Dexto capabilities
|
|
95
|
+
internalTools:
|
|
96
|
+
- ask_user # Allows the agent to ask you questions and collect structured input
|
|
97
|
+
|
|
98
|
+
# Internal resources configuration - manages file system access and blob storage
|
|
99
|
+
# NOTE: Blob storage capacity and backend settings are in the 'storage.blob' section above
|
|
100
|
+
internalResources:
|
|
101
|
+
enabled: true
|
|
102
|
+
resources:
|
|
103
|
+
# Filesystem resource - provides read access to local files for the agent
|
|
104
|
+
- type: filesystem
|
|
105
|
+
paths: ["."] # Directories to expose
|
|
106
|
+
maxFiles: 50 # Maximum number of files to index
|
|
107
|
+
maxDepth: 3 # Maximum directory depth to traverse
|
|
108
|
+
includeHidden: false # Include hidden files/directories
|
|
109
|
+
includeExtensions: [".txt", ".md", ".json", ".yaml", ".yml", ".js", ".ts", ".py", ".html", ".css"]
|
|
110
|
+
|
|
111
|
+
# Blob resource - enables large file upload/storage (settings in storage.blob section above)
|
|
112
|
+
- type: blob
|
|
113
|
+
|
|
114
|
+
# Plugin system - built-in plugins for content policy and response sanitization
|
|
115
|
+
# plugins:
|
|
116
|
+
# # ContentPolicy - validates and sanitizes input before sending to LLM
|
|
117
|
+
# contentPolicy:
|
|
118
|
+
# priority: 10 # Lower priority = runs first
|
|
119
|
+
# blocking: true # Blocks execution if validation fails
|
|
120
|
+
# maxInputChars: 50000 # Maximum input length (characters)
|
|
121
|
+
# redactEmails: true # Redact email addresses from input
|
|
122
|
+
# redactApiKeys: true # Redact potential API keys from input
|
|
123
|
+
# enabled: true # Enable this plugin
|
|
124
|
+
|
|
125
|
+
# # ResponseSanitizer - sanitizes LLM responses before returning to user
|
|
126
|
+
# responseSanitizer:
|
|
127
|
+
# priority: 900 # Higher priority = runs near the end
|
|
128
|
+
# blocking: false # Non-blocking (logs warnings but doesn't stop)
|
|
129
|
+
# redactEmails: true # Redact email addresses from responses
|
|
130
|
+
# redactApiKeys: true # Redact potential API keys from responses
|
|
131
|
+
# maxResponseLength: 100000 # Maximum response length (characters)
|
|
132
|
+
# enabled: true # Enable this plugin
|
|
133
|
+
|
|
134
|
+
# # Custom plugins can be added here (see documentation)
|
|
135
|
+
# # custom:
|
|
136
|
+
# # - name: tenant-auth
|
|
137
|
+
# # module: "${{dexto.agent_dir}}/plugins/tenant-auth.ts"
|
|
138
|
+
# # enabled: true
|
|
139
|
+
# # blocking: true
|
|
140
|
+
# # priority: 100
|
|
141
|
+
# # config:
|
|
142
|
+
# # enforceQuota: true
|
|
143
|
+
|
|
144
|
+
# Starter prompts - predefined prompts that appear as clickable buttons in the WebUI
|
|
145
|
+
starterPrompts:
|
|
146
|
+
- id: quick-start
|
|
147
|
+
title: "📚 Quick Start Guide"
|
|
148
|
+
description: "Learn the basics and see what you can do"
|
|
149
|
+
prompt: "I'd like to get started quickly. Can you show me a few examples of what you can do and help me understand how to work with you?"
|
|
150
|
+
category: learning
|
|
151
|
+
priority: 9
|
|
152
|
+
- id: tool-demo
|
|
153
|
+
title: "⚡ Tool Demonstration"
|
|
154
|
+
description: "See the tools in action with practical examples"
|
|
155
|
+
prompt: "I'd like to see your tools in action. Can you pick one of your most interesting tools and demonstrate it with a practical example? Show me what it can do and how it works."
|
|
156
|
+
category: tools
|
|
157
|
+
priority: 5
|
|
158
|
+
- id: snake-game
|
|
159
|
+
title: "🐍 Create Snake Game"
|
|
160
|
+
description: "Build a fun interactive game with HTML, CSS, and JavaScript"
|
|
161
|
+
prompt: "Create a snake game in a new directory with HTML, CSS, and JavaScript, then open it in the browser for me to play."
|
|
162
|
+
category: coding
|
|
163
|
+
priority: 4
|
|
164
|
+
- id: connect-tools
|
|
165
|
+
title: "🔧 Connect New Tools"
|
|
166
|
+
description: "Browse and add MCP servers to extend capabilities"
|
|
167
|
+
prompt: "I want to connect new tools to expand my capabilities. Can you help me understand what MCP servers are available and how to add them?"
|
|
168
|
+
category: tools
|
|
169
|
+
priority: 3
|
|
170
|
+
|
|
171
|
+
# Telemetry configuration (optional) - OpenTelemetry for distributed tracing
|
|
172
|
+
# telemetry:
|
|
173
|
+
# serviceName: dexto-default-agent
|
|
174
|
+
# enabled: true
|
|
175
|
+
# tracerName: dexto-tracer
|
|
176
|
+
# export:
|
|
177
|
+
# type: otlp # 'otlp' for production, 'console' for development
|
|
178
|
+
# protocol: http # 'http' or 'grpc'
|
|
179
|
+
# endpoint: http://127.0.0.1:4318/v1/traces # OTLP collector endpoint
|
|
180
|
+
# headers: # Optional headers for authentication
|
|
181
|
+
# Authorization: Bearer <token>
|
|
58
182
|
|
|
59
183
|
## To use Google Gemini, replace the LLM section with Google Gemini configuration below
|
|
60
184
|
## Similar for anthropic/groq/etc.
|
|
61
185
|
# llm:
|
|
62
186
|
# provider: google
|
|
63
|
-
# model: gemini-2.
|
|
187
|
+
# model: gemini-2.5-pro
|
|
64
188
|
# apiKey: $GOOGLE_GENERATIVE_AI_API_KEY
|
|
@@ -17,6 +17,9 @@ mcpServers:
|
|
|
17
17
|
# env:
|
|
18
18
|
# GITHUB_OAUTH_SCOPES: 'repo read:user'
|
|
19
19
|
|
|
20
|
+
# Optional greeting shown at chat start (UI can consume this)
|
|
21
|
+
greeting: "🐙 Hello! I'm your GitHub Agent. How can I help with your repositories?"
|
|
22
|
+
|
|
20
23
|
systemPrompt:
|
|
21
24
|
contributors:
|
|
22
25
|
- id: primary
|
|
@@ -50,8 +53,47 @@ systemPrompt:
|
|
|
50
53
|
source: dateTime
|
|
51
54
|
enabled: true
|
|
52
55
|
|
|
56
|
+
# Storage configuration
|
|
57
|
+
storage:
|
|
58
|
+
cache:
|
|
59
|
+
type: in-memory
|
|
60
|
+
database:
|
|
61
|
+
type: sqlite
|
|
62
|
+
blob:
|
|
63
|
+
type: local
|
|
64
|
+
maxBlobSize: 52428800 # 50MB per blob
|
|
65
|
+
maxTotalSize: 1073741824 # 1GB total storage
|
|
66
|
+
cleanupAfterDays: 30
|
|
67
|
+
|
|
53
68
|
llm:
|
|
54
69
|
provider: openai
|
|
55
70
|
model: gpt-5-mini
|
|
56
71
|
apiKey: $OPENAI_API_KEY
|
|
57
72
|
|
|
73
|
+
# Starter prompts - GitHub operations examples
|
|
74
|
+
starterPrompts:
|
|
75
|
+
- id: repo-info
|
|
76
|
+
title: "📊 Repository Info"
|
|
77
|
+
description: "Get details about the Dexto repository"
|
|
78
|
+
prompt: "Show me information about the truffle-ai/dexto repository including stars, forks, and recent activity."
|
|
79
|
+
category: info
|
|
80
|
+
priority: 10
|
|
81
|
+
- id: list-issues
|
|
82
|
+
title: "📋 List Issues"
|
|
83
|
+
description: "View open issues in Dexto"
|
|
84
|
+
prompt: "List all open issues in the truffle-ai/dexto repository."
|
|
85
|
+
category: issues
|
|
86
|
+
priority: 9
|
|
87
|
+
- id: star-dexto
|
|
88
|
+
title: "⭐ Star Dexto"
|
|
89
|
+
description: "Star the Dexto repository"
|
|
90
|
+
prompt: "Star the truffle-ai/dexto repository on GitHub."
|
|
91
|
+
category: engagement
|
|
92
|
+
priority: 8
|
|
93
|
+
- id: recent-commits
|
|
94
|
+
title: "📝 Recent Commits"
|
|
95
|
+
description: "View latest commits to Dexto"
|
|
96
|
+
prompt: "Show me the recent commits to the truffle-ai/dexto repository."
|
|
97
|
+
category: activity
|
|
98
|
+
priority: 7
|
|
99
|
+
|