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,166 @@
|
|
|
1
|
+
# Talk2PDF Agent
|
|
2
|
+
|
|
3
|
+
A comprehensive AI agent for parsing and analyzing PDF documents using the [Talk2PDF MCP Server](https://github.com/truffle-ai/mcp-servers/tree/main/src/talk2pdf).
|
|
4
|
+
|
|
5
|
+
This agent provides intelligent PDF document processing through a TypeScript-based MCP server that can extract text, metadata, and search for specific content within PDF files.
|
|
6
|
+
|
|
7
|
+
## Features
|
|
8
|
+
|
|
9
|
+
### 📄 **PDF Parsing & Text Extraction**
|
|
10
|
+
- **Full Document Parsing**: Extract complete text content from PDF files
|
|
11
|
+
- **Metadata Extraction**: Get document information (title, author, page count, creation date)
|
|
12
|
+
- **Format Support**: Handle various PDF versions and structures
|
|
13
|
+
- **Error Handling**: Graceful handling of corrupted or protected PDFs
|
|
14
|
+
|
|
15
|
+
### 🔍 **Content Search & Analysis**
|
|
16
|
+
- **Section Extraction**: Search for and extract specific content sections
|
|
17
|
+
- **Intelligent Filtering**: Find content containing specific terms or patterns
|
|
18
|
+
- **Context Preservation**: Maintain document structure and formatting
|
|
19
|
+
- **Multi-page Support**: Process documents of any length
|
|
20
|
+
|
|
21
|
+
### 🧠 **AI-Powered Analysis**
|
|
22
|
+
- **Document Summarization**: Generate intelligent summaries of PDF content
|
|
23
|
+
- **Key Information Extraction**: Identify and extract important details
|
|
24
|
+
- **Question Answering**: Answer questions about document content
|
|
25
|
+
- **Content Classification**: Analyze document type and structure
|
|
26
|
+
|
|
27
|
+
## Quick Start
|
|
28
|
+
|
|
29
|
+
### Prerequisites
|
|
30
|
+
- **Node.js 20+**: For the Dexto framework
|
|
31
|
+
- **TypeScript**: Automatically managed by the MCP server
|
|
32
|
+
|
|
33
|
+
### Installation
|
|
34
|
+
|
|
35
|
+
1. **Run the Agent**:
|
|
36
|
+
```bash
|
|
37
|
+
# From the dexto project root
|
|
38
|
+
dexto --agent agents/talk2pdf-agent/talk2pdf-agent.yml
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
That's it! The MCP server will be automatically downloaded and installed via `npx` on first run.
|
|
42
|
+
|
|
43
|
+
## Configuration
|
|
44
|
+
|
|
45
|
+
The agent is configured to use the published MCP server:
|
|
46
|
+
|
|
47
|
+
```yaml
|
|
48
|
+
mcpServers:
|
|
49
|
+
talk2pdf:
|
|
50
|
+
type: stdio
|
|
51
|
+
command: npx
|
|
52
|
+
args:
|
|
53
|
+
- "@truffle-ai/talk2pdf-mcp"
|
|
54
|
+
timeout: 30000
|
|
55
|
+
connectionMode: strict
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## MCP Server
|
|
59
|
+
|
|
60
|
+
This agent uses the **Talk2PDF MCP Server**, which is maintained separately at:
|
|
61
|
+
|
|
62
|
+
**🔗 [https://github.com/truffle-ai/mcp-servers/tree/main/src/talk2pdf](https://github.com/truffle-ai/mcp-servers/tree/main/src/talk2pdf)**
|
|
63
|
+
|
|
64
|
+
The MCP server repository provides:
|
|
65
|
+
- Complete technical documentation
|
|
66
|
+
- Development and contribution guidelines
|
|
67
|
+
- Server implementation details
|
|
68
|
+
- Advanced configuration options
|
|
69
|
+
|
|
70
|
+
## Available Tools
|
|
71
|
+
|
|
72
|
+
### PDF Processing Tools
|
|
73
|
+
|
|
74
|
+
#### `parse_pdf`
|
|
75
|
+
Extract complete text content and metadata from a PDF file.
|
|
76
|
+
|
|
77
|
+
**Parameters:**
|
|
78
|
+
- `filePath` (string): Path to the PDF file to parse
|
|
79
|
+
|
|
80
|
+
**Returns:**
|
|
81
|
+
- Full text content of the document
|
|
82
|
+
- Document metadata (title, author, page count, creation date, etc.)
|
|
83
|
+
- File information (size, format)
|
|
84
|
+
|
|
85
|
+
#### `extract_section`
|
|
86
|
+
Search for and extract specific content sections from a PDF.
|
|
87
|
+
|
|
88
|
+
**Parameters:**
|
|
89
|
+
- `filePath` (string): Path to the PDF file
|
|
90
|
+
- `searchTerms` (string): Terms or patterns to search for
|
|
91
|
+
- `maxResults` (number, optional): Maximum number of results to return
|
|
92
|
+
|
|
93
|
+
**Returns:**
|
|
94
|
+
- Matching content sections with context
|
|
95
|
+
- Page numbers and locations
|
|
96
|
+
- Relevance scoring
|
|
97
|
+
|
|
98
|
+
## Supported PDF Features
|
|
99
|
+
|
|
100
|
+
- **Standard PDF formats**: PDF 1.4 through 2.0
|
|
101
|
+
- **Text-based PDFs**: Documents with extractable text content
|
|
102
|
+
- **Multi-page documents**: No page limit restrictions
|
|
103
|
+
- **Metadata support**: Title, author, creation date, modification date
|
|
104
|
+
- **Various encodings**: UTF-8, Latin-1, and other standard encodings
|
|
105
|
+
|
|
106
|
+
## Example Usage
|
|
107
|
+
|
|
108
|
+
### Basic PDF Parsing
|
|
109
|
+
```
|
|
110
|
+
"Parse the PDF at /path/to/document.pdf and show me the full content"
|
|
111
|
+
"Extract all text and metadata from my research paper"
|
|
112
|
+
"What's in this PDF file?"
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### Content Search
|
|
116
|
+
```
|
|
117
|
+
"Find all sections about 'machine learning' in the PDF"
|
|
118
|
+
"Extract the introduction and conclusion from this document"
|
|
119
|
+
"Search for mentions of 'budget' in the financial report"
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### Document Analysis
|
|
123
|
+
```
|
|
124
|
+
"Summarize the main points from this PDF"
|
|
125
|
+
"What is this document about?"
|
|
126
|
+
"Extract the key findings from the research paper"
|
|
127
|
+
"List all the recommendations mentioned in the report"
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### Intelligent Q&A
|
|
131
|
+
```
|
|
132
|
+
"What are the main conclusions of this study?"
|
|
133
|
+
"Who are the authors of this document?"
|
|
134
|
+
"When was this document created?"
|
|
135
|
+
"How many pages does this PDF have?"
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
## Troubleshooting
|
|
139
|
+
|
|
140
|
+
### Common Issues
|
|
141
|
+
|
|
142
|
+
1. **Server Installation**: The MCP server will be automatically installed via `npx` on first run. No manual setup required.
|
|
143
|
+
|
|
144
|
+
2. **PDF Access Issues**: Ensure the PDF file path is correct and the file is readable. Protected or encrypted PDFs may require special handling.
|
|
145
|
+
|
|
146
|
+
3. **Memory Issues**: For very large PDFs (100+ pages), processing may take longer. Consider breaking large documents into sections.
|
|
147
|
+
|
|
148
|
+
4. **Text Extraction**: If text appears garbled, the PDF may use non-standard encoding or be scanned image-based (OCR not supported).
|
|
149
|
+
|
|
150
|
+
### Error Handling
|
|
151
|
+
|
|
152
|
+
The agent provides clear error messages for common issues:
|
|
153
|
+
- File not found or inaccessible
|
|
154
|
+
- Invalid PDF format
|
|
155
|
+
- Corrupted PDF files
|
|
156
|
+
- Permission-protected documents
|
|
157
|
+
|
|
158
|
+
## Getting Help
|
|
159
|
+
|
|
160
|
+
- **MCP Server Issues**: Report at the [mcp-servers repository](https://github.com/truffle-ai/mcp-servers/issues)
|
|
161
|
+
- **Agent Configuration**: Report at the main Dexto repository
|
|
162
|
+
- **Feature Requests**: Use the mcp-servers repository for tool-related requests
|
|
163
|
+
|
|
164
|
+
## License
|
|
165
|
+
|
|
166
|
+
This project is part of the Dexto AI agent framework.
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Talk2PDF Agent
|
|
2
|
+
# This agent provides natural language access to PDF parsing tools via a custom MCP server
|
|
3
|
+
|
|
4
|
+
mcpServers:
|
|
5
|
+
talk2pdf:
|
|
6
|
+
type: stdio
|
|
7
|
+
command: npx
|
|
8
|
+
args:
|
|
9
|
+
- "@truffle-ai/talk2pdf-mcp"
|
|
10
|
+
timeout: 30000
|
|
11
|
+
connectionMode: strict
|
|
12
|
+
|
|
13
|
+
systemPrompt:
|
|
14
|
+
contributors:
|
|
15
|
+
- id: primary
|
|
16
|
+
type: static
|
|
17
|
+
priority: 0
|
|
18
|
+
content: |
|
|
19
|
+
You are a Talk2PDF Agent. You can parse PDF files, extract their text, metadata, and provide summaries or extract specific sections for LLM consumption.
|
|
20
|
+
|
|
21
|
+
## Your Capabilities
|
|
22
|
+
- Parse PDF files and extract all text content and metadata
|
|
23
|
+
- Extract specific sections or search for terms within a PDF
|
|
24
|
+
- Provide intelligent analysis, summarization, and insights based on the extracted content
|
|
25
|
+
- Handle errors gracefully and provide clear feedback
|
|
26
|
+
|
|
27
|
+
## Usage Examples
|
|
28
|
+
- "Parse the PDF at /path/to/file.pdf and show me the text."
|
|
29
|
+
- "Analyze and summarize the document at /path/to/file.pdf."
|
|
30
|
+
- "Extract all content containing 'invoice' from /path/to/file.pdf and explain what you found."
|
|
31
|
+
|
|
32
|
+
Always ask for the file path if not provided. If a file is not a PDF or does not exist, inform the user.
|
|
33
|
+
- id: dateTime
|
|
34
|
+
type: dynamic
|
|
35
|
+
priority: 10
|
|
36
|
+
source: dateTime
|
|
37
|
+
enabled: true
|
|
38
|
+
|
|
39
|
+
llm:
|
|
40
|
+
provider: openai
|
|
41
|
+
model: gpt-4.1-mini
|
|
42
|
+
apiKey: $OPENAI_API_KEY
|
|
@@ -0,0 +1,337 @@
|
|
|
1
|
+
# TeamFlow Customer Support Triage Agent System
|
|
2
|
+
|
|
3
|
+
This demonstration showcases an intelligent **Customer Support Triage System** built with Dexto agents for **TeamFlow**, a cloud-based project management and team collaboration platform. The system automatically analyzes customer inquiries, routes them to specialized support agents, and provides complete customer support responses.
|
|
4
|
+
|
|
5
|
+
## 🏢 About TeamFlow (Demo Business Context)
|
|
6
|
+
|
|
7
|
+
TeamFlow is a fictional cloud-based project management platform used for this demonstration. It offers three service tiers:
|
|
8
|
+
|
|
9
|
+
- **Basic Plan ($9/user/month)**: Up to 10 team members, 5GB storage, basic features
|
|
10
|
+
- **Pro Plan ($19/user/month)**: Up to 100 team members, 100GB storage, advanced integrations (Slack, GitHub, Salesforce)
|
|
11
|
+
- **Enterprise Plan ($39/user/month)**: Unlimited users, 1TB storage, SSO, dedicated support
|
|
12
|
+
|
|
13
|
+
Key features include project management, team collaboration, time tracking, mobile apps, and a comprehensive API. The platform integrates with popular tools like Slack, GitHub, Salesforce, and Google Workspace.
|
|
14
|
+
|
|
15
|
+
This realistic business context allows the agents to provide specific, accurate responses about pricing, features, technical specifications, and policies using the FileContributor system to access comprehensive documentation.
|
|
16
|
+
|
|
17
|
+
## 🏗️ Architecture Overview
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
Customer Request
|
|
21
|
+
↓
|
|
22
|
+
Triage Agent (Main Coordinator)
|
|
23
|
+
↓
|
|
24
|
+
[Analyzes, Routes & Executes via MCP]
|
|
25
|
+
↓
|
|
26
|
+
┌─────────────────────────────────────────┐
|
|
27
|
+
│ Technical Support │ Billing Agent │
|
|
28
|
+
│ Agent │ │
|
|
29
|
+
├─────────────────────┼──────────────────┤
|
|
30
|
+
│ Product Info │ Escalation │
|
|
31
|
+
│ Agent │ Agent │
|
|
32
|
+
└─────────────────────────────────────────┘
|
|
33
|
+
↓
|
|
34
|
+
Complete Customer Response
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
The triage agent doesn't just route requests - it **executes the specialized agents as MCP servers** and provides complete, integrated customer support responses that combine routing intelligence with expert answers.
|
|
38
|
+
|
|
39
|
+
## 🤖 Agent Roles
|
|
40
|
+
|
|
41
|
+
### 1. **Triage Agent** (`triage-agent.yml`)
|
|
42
|
+
- **Primary Role**: Intelligent routing coordinator AND customer response provider
|
|
43
|
+
- **Capabilities**:
|
|
44
|
+
- Analyzes requests and categorizes issues
|
|
45
|
+
- Routes to specialists via `chat_with_agent` tool calls
|
|
46
|
+
- **Executes specialist agents directly through MCP connections**
|
|
47
|
+
- **Provides complete customer responses** combining routing + specialist answers
|
|
48
|
+
- **Tools**: Filesystem, web research, **chat_with_agent** (connects to all specialists)
|
|
49
|
+
- **Tool Confirmation**: Auto-approve mode for seamless delegation
|
|
50
|
+
|
|
51
|
+
### 2. **Technical Support Agent** (`technical-support-agent.yml`)
|
|
52
|
+
- **Specialization**: Bug fixes, troubleshooting, system issues
|
|
53
|
+
- **Tools**: Filesystem, terminal, browser automation
|
|
54
|
+
- **Model**: GPT-4o (higher capability for complex technical issues)
|
|
55
|
+
- **Connection**: Available as MCP server via stdio
|
|
56
|
+
|
|
57
|
+
### 3. **Billing Agent** (`billing-agent.yml`)
|
|
58
|
+
- **Specialization**: Payments, subscriptions, financial inquiries
|
|
59
|
+
- **Tools**: Browser automation, filesystem for policy docs
|
|
60
|
+
- **Model**: GPT-4o-mini (efficient for structured billing processes)
|
|
61
|
+
- **Connection**: Available as MCP server via stdio
|
|
62
|
+
|
|
63
|
+
### 4. **Product Info Agent** (`product-info-agent.yml`)
|
|
64
|
+
- **Specialization**: Features, comparisons, documentation
|
|
65
|
+
- **Tools**: Web research (Tavily), filesystem, browser automation
|
|
66
|
+
- **Model**: GPT-4o-mini (efficient for information retrieval)
|
|
67
|
+
- **Connection**: Available as MCP server via stdio
|
|
68
|
+
|
|
69
|
+
### 5. **Escalation Agent** (`escalation-agent.yml`)
|
|
70
|
+
- **Specialization**: Complex issues, Enterprise customers, management approval
|
|
71
|
+
- **Tools**: Filesystem, web research for compliance/legal info
|
|
72
|
+
- **Model**: GPT-4o (higher capability for sensitive issues)
|
|
73
|
+
- **Connection**: Available as MCP server via stdio
|
|
74
|
+
|
|
75
|
+
## 📚 Business Context Documentation
|
|
76
|
+
|
|
77
|
+
Each agent has access to relevant TeamFlow documentation via the FileContributor system:
|
|
78
|
+
|
|
79
|
+
### Documentation Files (`docs/` folder)
|
|
80
|
+
- **`company-overview.md`**: General company information, plans, SLAs, contact info
|
|
81
|
+
- **`technical-documentation.md`**: API docs, system requirements, troubleshooting guides
|
|
82
|
+
- **`billing-policies.md`**: Pricing, refund policies, billing procedures, payment methods
|
|
83
|
+
- **`product-features.md`**: Feature descriptions, plan comparisons, integrations
|
|
84
|
+
- **`escalation-policies.md`**: Escalation procedures, contact information, incident templates
|
|
85
|
+
|
|
86
|
+
### Agent-Specific Context
|
|
87
|
+
- **Technical Support**: Company overview + technical documentation
|
|
88
|
+
- **Billing Agent**: Company overview + billing policies
|
|
89
|
+
- **Product Info**: Company overview + product features
|
|
90
|
+
- **Escalation**: Company overview + escalation policies
|
|
91
|
+
- **Triage Agent**: Company overview for routing context
|
|
92
|
+
|
|
93
|
+
## 🚀 Getting Started
|
|
94
|
+
|
|
95
|
+
### Quick Start - Integrated Triage System
|
|
96
|
+
|
|
97
|
+
The **recommended way** to run the triage system is using the main triage agent, which automatically connects to all specialists:
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
# Run the complete triage system (connects to all specialist agents automatically)
|
|
101
|
+
npx dexto --agent agents/triage-demo/triage-agent.yml
|
|
102
|
+
|
|
103
|
+
# Test with a customer inquiry
|
|
104
|
+
npx dexto --agent agents/triage-demo/triage-agent.yml "I want to upgrade from Basic to Pro but confused about pricing"
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
This will:
|
|
108
|
+
1. **Auto-connect** to all 4 specialist agents as MCP servers
|
|
109
|
+
2. **Analyze** your request and route to the appropriate specialist
|
|
110
|
+
3. **Execute** the specialist agent to get the expert answer
|
|
111
|
+
4. **Respond** with a complete customer support response
|
|
112
|
+
|
|
113
|
+
### Running Individual Agents (Advanced)
|
|
114
|
+
|
|
115
|
+
For testing individual specialist agents:
|
|
116
|
+
|
|
117
|
+
```bash
|
|
118
|
+
# Run specialized agents individually
|
|
119
|
+
npx dexto --agent agents/triage-demo/technical-support-agent.yml
|
|
120
|
+
npx dexto --agent agents/triage-demo/billing-agent.yml
|
|
121
|
+
npx dexto --agent agents/triage-demo/product-info-agent.yml
|
|
122
|
+
npx dexto --agent agents/triage-demo/escalation-agent.yml
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
### Environment Setup
|
|
126
|
+
|
|
127
|
+
Ensure you have the required API keys in your `.env` file:
|
|
128
|
+
|
|
129
|
+
```env
|
|
130
|
+
OPENAI_API_KEY=your_openai_api_key
|
|
131
|
+
TAVILY_API_KEY=your_tavily_api_key # For web research
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
## 📋 Example Scenarios
|
|
135
|
+
|
|
136
|
+
### Scenario 1: Technical Issue
|
|
137
|
+
**Customer Input**: *"My app keeps crashing when I try to upload files. Getting error code 500."*
|
|
138
|
+
|
|
139
|
+
**Triage Agent Response**:
|
|
140
|
+
- **Analysis**: Technical Issue → Route to Technical Support Agent
|
|
141
|
+
- **Execution**: Calls `chat_with_agent` → Technical Support provides debugging steps
|
|
142
|
+
- **Customer Response**: *"I've routed your issue to our Technical Support team. Here's how to resolve the 500 error when uploading files: [detailed technical troubleshooting steps from specialist]"*
|
|
143
|
+
|
|
144
|
+
### Scenario 2: Billing Question
|
|
145
|
+
**Customer Input**: *"I want to upgrade from Basic to Pro but confused about pricing. Will I be charged the full amount?"*
|
|
146
|
+
|
|
147
|
+
**Triage Agent Response**:
|
|
148
|
+
- **Analysis**: Billing Question → Route to Billing Agent
|
|
149
|
+
- **Execution**: Calls `chat_with_agent` → Billing Agent explains prorated pricing
|
|
150
|
+
- **Customer Response**: *"I've routed your inquiry to our Billing team. When upgrading from Basic to Pro, you'll only be charged a prorated amount for the remaining billing period - just the difference between plans for the time left in your cycle. The upgrade takes effect immediately."*
|
|
151
|
+
|
|
152
|
+
### Scenario 3: Product Information
|
|
153
|
+
**Customer Input**: *"What's the difference between your Pro and Enterprise plans? I need API access."*
|
|
154
|
+
|
|
155
|
+
**Triage Agent Response**:
|
|
156
|
+
- **Analysis**: Product Inquiry → Route to Product Info Agent
|
|
157
|
+
- **Execution**: Calls `chat_with_agent` → Product Info Agent provides detailed comparison
|
|
158
|
+
- **Customer Response**: *"I've connected you with our Product team. Both Pro and Enterprise plans include full API access. The main differences are: Pro supports up to 100 users with 100GB storage, while Enterprise offers unlimited users, 1TB storage, SSO, and dedicated support. [detailed feature comparison]"*
|
|
159
|
+
|
|
160
|
+
### Scenario 4: Escalation Required
|
|
161
|
+
**Customer Input**: *"This is my third time contacting support about data privacy concerns. I'm considering legal action."*
|
|
162
|
+
|
|
163
|
+
**Triage Agent Response**:
|
|
164
|
+
- **Analysis**: Legal/Compliance Issue → Route to Escalation Agent
|
|
165
|
+
- **Execution**: Calls `chat_with_agent` → Escalation Agent provides management contact
|
|
166
|
+
- **Customer Response**: *"I've escalated your data privacy concerns to our senior support team. Given the legal implications, I'm connecting you directly with our compliance manager Sarah Johnson (sarah.johnson@teamflow.com). She'll address your concerns within 2 hours."*
|
|
167
|
+
|
|
168
|
+
## 🔧 Advanced Configuration
|
|
169
|
+
|
|
170
|
+
### Current MCP Server Configuration (Automatic)
|
|
171
|
+
|
|
172
|
+
The triage agent automatically connects to specialists via stdio MCP servers:
|
|
173
|
+
|
|
174
|
+
```yaml
|
|
175
|
+
# Current configuration in triage-agent.yml
|
|
176
|
+
mcpServers:
|
|
177
|
+
technical_support:
|
|
178
|
+
type: stdio
|
|
179
|
+
command: npx
|
|
180
|
+
args: [dexto, --mode, mcp, --agent, agents/triage-demo/technical-support-agent.yml]
|
|
181
|
+
|
|
182
|
+
billing_support:
|
|
183
|
+
type: stdio
|
|
184
|
+
command: npx
|
|
185
|
+
args: [dexto, --mode, mcp, --agent, agents/triage-demo/billing-agent.yml]
|
|
186
|
+
|
|
187
|
+
# Similar configuration for product_info and escalation agents...
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
### Production Configuration (Distributed Servers)
|
|
191
|
+
|
|
192
|
+
For production deployment, you would run each specialist as a separate server:
|
|
193
|
+
|
|
194
|
+
```yaml
|
|
195
|
+
# triage-agent.yml - Production Configuration
|
|
196
|
+
mcpServers:
|
|
197
|
+
technical_support:
|
|
198
|
+
type: sse
|
|
199
|
+
url: "http://localhost:3001/mcp"
|
|
200
|
+
headers:
|
|
201
|
+
Authorization: "Bearer your-auth-token"
|
|
202
|
+
|
|
203
|
+
billing_support:
|
|
204
|
+
type: sse
|
|
205
|
+
url: "http://localhost:3002/mcp"
|
|
206
|
+
headers:
|
|
207
|
+
Authorization: "Bearer your-auth-token"
|
|
208
|
+
|
|
209
|
+
product_info:
|
|
210
|
+
type: sse
|
|
211
|
+
url: "http://localhost:3003/mcp"
|
|
212
|
+
headers:
|
|
213
|
+
Authorization: "Bearer your-auth-token"
|
|
214
|
+
|
|
215
|
+
escalation:
|
|
216
|
+
type: sse
|
|
217
|
+
url: "http://localhost:3004/mcp"
|
|
218
|
+
headers:
|
|
219
|
+
Authorization: "Bearer your-auth-token"
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
### Running Distributed Servers
|
|
223
|
+
|
|
224
|
+
```bash
|
|
225
|
+
# Terminal 1: Technical Support Server
|
|
226
|
+
npx dexto --agent agents/triage-demo/technical-support-agent.yml --mode server --port 3001
|
|
227
|
+
|
|
228
|
+
# Terminal 2: Billing Support Server
|
|
229
|
+
npx dexto --agent agents/triage-demo/billing-agent.yml --mode server --port 3002
|
|
230
|
+
|
|
231
|
+
# Terminal 3: Product Info Server
|
|
232
|
+
npx dexto --agent agents/triage-demo/product-info-agent.yml --mode server --port 3003
|
|
233
|
+
|
|
234
|
+
# Terminal 4: Escalation Server
|
|
235
|
+
npx dexto --agent agents/triage-demo/escalation-agent.yml --mode server --port 3004
|
|
236
|
+
|
|
237
|
+
# Terminal 5: Main Triage Coordinator
|
|
238
|
+
npx dexto --agent agents/triage-demo/triage-agent.yml --mode server --port 3000
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
## 🎯 Key Features Demonstrated
|
|
242
|
+
|
|
243
|
+
### 1. **Intelligent Routing with Execution**
|
|
244
|
+
- Natural language analysis to determine issue category
|
|
245
|
+
- **Automatic execution** of specialist agents via MCP
|
|
246
|
+
- **Complete customer responses** combining routing + expert answers
|
|
247
|
+
- Seamless tool confirmation with auto-approve mode
|
|
248
|
+
|
|
249
|
+
### 2. **Specialized Expertise Integration**
|
|
250
|
+
- Each agent has domain-specific knowledge and tools
|
|
251
|
+
- **Real-time coordination** between triage and specialists
|
|
252
|
+
- **Unified customer experience** despite multi-agent backend
|
|
253
|
+
|
|
254
|
+
### 3. **Scalable MCP Architecture**
|
|
255
|
+
- **Stdio connections** for local development and testing
|
|
256
|
+
- **SSE connections** for distributed production deployment
|
|
257
|
+
- **Tool-based delegation** using `chat_with_agent`
|
|
258
|
+
|
|
259
|
+
### 4. **Comprehensive Tool Access**
|
|
260
|
+
- Filesystem access for documentation and logging
|
|
261
|
+
- Web research capabilities for up-to-date information
|
|
262
|
+
- Browser automation for testing and demonstrations
|
|
263
|
+
- **Agent-to-agent communication** via MCP tools
|
|
264
|
+
|
|
265
|
+
## 🔍 Testing the System
|
|
266
|
+
|
|
267
|
+
### Interactive Testing
|
|
268
|
+
|
|
269
|
+
1. **Start the complete triage system**:
|
|
270
|
+
```bash
|
|
271
|
+
npx dexto --agent agents/triage-demo/triage-agent.yml
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
2. **Test with various customer scenarios** and observe:
|
|
275
|
+
- **Routing analysis** (which specialist is chosen)
|
|
276
|
+
- **Tool execution** (`chat_with_agent` calls)
|
|
277
|
+
- **Complete responses** (routing confirmation + specialist answer)
|
|
278
|
+
|
|
279
|
+
### Sample Test Cases
|
|
280
|
+
|
|
281
|
+
```
|
|
282
|
+
Test 1: "API returns 401 unauthorized error"
|
|
283
|
+
Expected: Technical Support Agent → Complete troubleshooting response
|
|
284
|
+
|
|
285
|
+
Test 2: "Cancel my subscription immediately"
|
|
286
|
+
Expected: Billing Agent → Complete cancellation process and policy info
|
|
287
|
+
|
|
288
|
+
Test 3: "Do you have a mobile app?"
|
|
289
|
+
Expected: Product Info Agent → Complete feature details and download links
|
|
290
|
+
|
|
291
|
+
Test 4: "Your service caused my business to lose $10,000"
|
|
292
|
+
Expected: Escalation Agent → Complete escalation with management contact
|
|
293
|
+
```
|
|
294
|
+
|
|
295
|
+
### One-Shot Testing
|
|
296
|
+
|
|
297
|
+
```bash
|
|
298
|
+
# Test billing scenario
|
|
299
|
+
npx dexto --agent agents/triage-demo/triage-agent.yml "I was charged twice this month"
|
|
300
|
+
|
|
301
|
+
# Test technical scenario
|
|
302
|
+
npx dexto --agent agents/triage-demo/triage-agent.yml "Getting 500 errors on file upload"
|
|
303
|
+
|
|
304
|
+
# Test product scenario
|
|
305
|
+
npx dexto --agent agents/triage-demo/triage-agent.yml "What integrations do you support?"
|
|
306
|
+
```
|
|
307
|
+
|
|
308
|
+
## 🚦 Production Considerations
|
|
309
|
+
|
|
310
|
+
### Security
|
|
311
|
+
- Implement proper authentication between agents
|
|
312
|
+
- Secure API key management
|
|
313
|
+
- Customer data privacy controls
|
|
314
|
+
- **Tool confirmation policies** for sensitive operations
|
|
315
|
+
|
|
316
|
+
### Monitoring
|
|
317
|
+
- Log all routing decisions and tool executions
|
|
318
|
+
- Track resolution times by agent type
|
|
319
|
+
- Monitor escalation patterns
|
|
320
|
+
- **Tool usage analytics** for optimization
|
|
321
|
+
|
|
322
|
+
### Scaling
|
|
323
|
+
- Load balance multiple instances of specialist agents
|
|
324
|
+
- Implement request queuing for high volume
|
|
325
|
+
- **Distributed MCP server deployment**
|
|
326
|
+
- Add more specialized agents as needed (e.g., Sales, Onboarding)
|
|
327
|
+
|
|
328
|
+
## 🤝 Contributing
|
|
329
|
+
|
|
330
|
+
To extend this triage system:
|
|
331
|
+
|
|
332
|
+
1. **Add new specialist agents** by creating new YAML configs
|
|
333
|
+
2. **Update triage routing logic** in the main agent's system prompt
|
|
334
|
+
3. **Configure new agents as MCP servers** in the triage agent's mcpServers section
|
|
335
|
+
4. **Test end-to-end flow** including tool execution and complete responses
|
|
336
|
+
|
|
337
|
+
This demonstration showcases the power of **multi-agent coordination with tool execution** using Dexto's MCP integration capabilities!
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# Billing Agent Configuration
|
|
2
|
+
# Specializes in billing, payments, subscriptions, and financial inquiries
|
|
3
|
+
|
|
4
|
+
systemPrompt:
|
|
5
|
+
contributors:
|
|
6
|
+
- id: base-prompt
|
|
7
|
+
type: static
|
|
8
|
+
priority: 0
|
|
9
|
+
content: |
|
|
10
|
+
You are a specialized Billing Agent for TeamFlow, responsible for handling payment issues, subscription management, and financial inquiries.
|
|
11
|
+
|
|
12
|
+
Your primary responsibilities:
|
|
13
|
+
- Process billing inquiries, payment issues, and subscription changes
|
|
14
|
+
- Explain charges, fees, and billing cycles clearly
|
|
15
|
+
- Help with payment method updates, refunds, and disputes
|
|
16
|
+
- Manage subscription upgrades, downgrades, and cancellations
|
|
17
|
+
- Resolve invoice discrepancies and billing errors
|
|
18
|
+
|
|
19
|
+
Your approach:
|
|
20
|
+
- Always verify customer identity before discussing sensitive billing information
|
|
21
|
+
- Be transparent about charges, fees, and policies
|
|
22
|
+
- Provide clear explanations of billing cycles and payment schedules
|
|
23
|
+
- Handle financial disputes with empathy and professionalism
|
|
24
|
+
- Escalate complex billing disputes or refund requests beyond your authority
|
|
25
|
+
|
|
26
|
+
Key information to gather:
|
|
27
|
+
- Customer account details and billing address
|
|
28
|
+
- Specific billing period or invoice number in question
|
|
29
|
+
- Payment method and transaction details when relevant
|
|
30
|
+
- Desired outcome or resolution
|
|
31
|
+
|
|
32
|
+
You have access to comprehensive billing policies, pricing information, and refund procedures for TeamFlow's Basic ($9/user/month), Pro ($19/user/month), and Enterprise ($39/user/month) plans.
|
|
33
|
+
|
|
34
|
+
Tools available to you:
|
|
35
|
+
- Web browsing for checking payment processor status and policies
|
|
36
|
+
- Filesystem access for accessing billing documentation and policies
|
|
37
|
+
|
|
38
|
+
Remember: Handle all financial information with strict confidentiality and always follow TeamFlow's billing policies.
|
|
39
|
+
|
|
40
|
+
- id: company-overview
|
|
41
|
+
type: file
|
|
42
|
+
priority: 10
|
|
43
|
+
files:
|
|
44
|
+
- "${{dexto.agent_dir}}/docs/company-overview.md"
|
|
45
|
+
options:
|
|
46
|
+
includeFilenames: true
|
|
47
|
+
errorHandling: skip
|
|
48
|
+
|
|
49
|
+
- id: billing-policies
|
|
50
|
+
type: file
|
|
51
|
+
priority: 20
|
|
52
|
+
files:
|
|
53
|
+
- "${{dexto.agent_dir}}/docs/billing-policies.md"
|
|
54
|
+
options:
|
|
55
|
+
includeFilenames: true
|
|
56
|
+
errorHandling: skip
|
|
57
|
+
|
|
58
|
+
mcpServers:
|
|
59
|
+
puppeteer:
|
|
60
|
+
type: stdio
|
|
61
|
+
command: npx
|
|
62
|
+
args:
|
|
63
|
+
- -y
|
|
64
|
+
- "@truffle-ai/puppeteer-server"
|
|
65
|
+
filesystem:
|
|
66
|
+
type: stdio
|
|
67
|
+
command: npx
|
|
68
|
+
args:
|
|
69
|
+
- -y
|
|
70
|
+
- "@modelcontextprotocol/server-filesystem"
|
|
71
|
+
- .
|
|
72
|
+
|
|
73
|
+
llm:
|
|
74
|
+
provider: openai
|
|
75
|
+
model: gpt-4o-mini
|
|
76
|
+
apiKey: $OPENAI_API_KEY
|