dexto 1.1.11 → 1.2.1

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.
Files changed (149) hide show
  1. package/README.md +222 -84
  2. package/dist/agents/agent-registry.json +9 -0
  3. package/dist/agents/agent-template.yml +1 -1
  4. package/dist/agents/coding-agent/README.md +188 -0
  5. package/dist/agents/coding-agent/coding-agent.yml +203 -0
  6. package/dist/agents/database-agent/database-agent.yml +41 -2
  7. package/dist/agents/default-agent.yml +37 -3
  8. package/dist/agents/github-agent/github-agent.yml +39 -0
  9. package/dist/agents/image-editor-agent/image-editor-agent.yml +6 -2
  10. package/dist/agents/music-agent/README.md +1 -1
  11. package/dist/agents/music-agent/music-agent.yml +33 -2
  12. package/dist/agents/nano-banana-agent/nano-banana-agent.yml +32 -1
  13. package/dist/agents/podcast-agent/README.md +1 -1
  14. package/dist/agents/podcast-agent/podcast-agent.yml +34 -3
  15. package/dist/agents/product-name-researcher/product-name-researcher.yml +34 -1
  16. package/dist/agents/sora-video-agent/README.md +122 -0
  17. package/dist/agents/sora-video-agent/sora-video-agent.yml +98 -0
  18. package/dist/agents/talk2pdf-agent/talk2pdf-agent.yml +14 -2
  19. package/dist/agents/triage-demo/README.md +6 -6
  20. package/dist/agents/triage-demo/billing-agent.yml +1 -1
  21. package/dist/agents/triage-demo/escalation-agent.yml +1 -1
  22. package/dist/agents/triage-demo/product-info-agent.yml +1 -1
  23. package/dist/agents/triage-demo/technical-support-agent.yml +1 -1
  24. package/dist/agents/triage-demo/triage-agent.yml +13 -1
  25. package/dist/analytics/wrapper.d.ts.map +1 -1
  26. package/dist/analytics/wrapper.js +5 -3
  27. package/dist/api/a2a.d.ts +2 -2
  28. package/dist/api/a2a.d.ts.map +1 -1
  29. package/dist/api/a2a.js +3 -2
  30. package/dist/api/mcp/mcp_handler.d.ts +3 -3
  31. package/dist/api/mcp/mcp_handler.d.ts.map +1 -1
  32. package/dist/api/mcp/mcp_handler.js +7 -4
  33. package/dist/api/memory/memory-handler.d.ts +4 -1
  34. package/dist/api/memory/memory-handler.d.ts.map +1 -1
  35. package/dist/api/memory/memory-handler.js +10 -2
  36. package/dist/api/middleware/errorHandler.d.ts.map +1 -1
  37. package/dist/api/middleware/errorHandler.js +2 -0
  38. package/dist/api/server.d.ts.map +1 -1
  39. package/dist/api/server.js +158 -42
  40. package/dist/api/websocket-subscriber.d.ts.map +1 -1
  41. package/dist/api/websocket-subscriber.js +6 -0
  42. package/dist/cli/commands/interactive-commands/model/model-commands.js +2 -2
  43. package/dist/cli/utils/options.js +2 -2
  44. package/dist/index.js +64 -18
  45. package/dist/webui/.next/standalone/.next/static/b_pyEEg2sitTwMzZWW7vE/_buildManifest.js +1 -0
  46. package/dist/webui/.next/standalone/.next/static/chunks/419-a07413b585273a24.js +1 -0
  47. package/dist/webui/.next/standalone/.next/static/chunks/614-3519f8a6051e0088.js +1 -0
  48. package/dist/webui/.next/standalone/.next/static/chunks/656-5a9f6405badf66a8.js +25 -0
  49. package/dist/webui/.next/standalone/.next/static/chunks/{711-76a7d2bf4d6f69e5.js → 765-755286dc586b1a51.js} +1 -1
  50. package/dist/webui/.next/standalone/.next/static/chunks/804-f40df92a3adffcc0.js +1 -0
  51. package/dist/webui/.next/standalone/.next/static/chunks/854-232126f3c77e6c0b.js +1 -0
  52. package/dist/webui/.next/standalone/.next/static/chunks/app/chat/[sessionId]/page-a695b09e6bac5274.js +1 -0
  53. package/dist/webui/.next/standalone/.next/static/chunks/app/page-d1f127a0cac96246.js +1 -0
  54. package/dist/webui/.next/standalone/.next/static/chunks/app/playground/page-6f8d2abe76e51dfc.js +1 -0
  55. package/dist/webui/.next/standalone/.next/static/chunks/main-7decd42f62688419.js +1 -0
  56. package/dist/webui/.next/standalone/.next/static/css/c3c26ec984df1deb.css +1 -0
  57. package/dist/webui/.next/standalone/package.json +1 -0
  58. package/dist/webui/.next/standalone/packages/webui/.next/BUILD_ID +1 -1
  59. package/dist/webui/.next/standalone/packages/webui/.next/app-build-manifest.json +18 -18
  60. package/dist/webui/.next/standalone/packages/webui/.next/build-manifest.json +4 -4
  61. package/dist/webui/.next/standalone/packages/webui/.next/prerender-manifest.json +3 -3
  62. package/dist/webui/.next/standalone/packages/webui/.next/required-server-files.json +1 -11
  63. package/dist/webui/.next/standalone/packages/webui/.next/routes-manifest.json +1 -7
  64. package/dist/webui/.next/standalone/packages/webui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  65. package/dist/webui/.next/standalone/packages/webui/.next/server/app/chat/[sessionId]/page.js +1 -1
  66. package/dist/webui/.next/standalone/packages/webui/.next/server/app/chat/[sessionId]/page.js.nft.json +1 -1
  67. package/dist/webui/.next/standalone/packages/webui/.next/server/app/chat/[sessionId]/page_client-reference-manifest.js +1 -1
  68. package/dist/webui/.next/standalone/packages/webui/.next/server/app/page.js +1 -1
  69. package/dist/webui/.next/standalone/packages/webui/.next/server/app/page.js.nft.json +1 -1
  70. package/dist/webui/.next/standalone/packages/webui/.next/server/app/page_client-reference-manifest.js +1 -1
  71. package/dist/webui/.next/standalone/packages/webui/.next/server/app/playground/page.js +4 -8
  72. package/dist/webui/.next/standalone/packages/webui/.next/server/app/playground/page.js.nft.json +1 -1
  73. package/dist/webui/.next/standalone/packages/webui/.next/server/app/playground/page_client-reference-manifest.js +1 -1
  74. package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/1.js +5 -5
  75. package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/102.js +25 -0
  76. package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/383.js +1 -0
  77. package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/43.js +1 -1
  78. package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/985.js +5 -0
  79. package/dist/webui/.next/standalone/packages/webui/.next/server/middleware-build-manifest.js +1 -1
  80. package/dist/webui/.next/standalone/packages/webui/.next/server/pages/500.html +1 -1
  81. package/dist/webui/.next/standalone/packages/webui/.next/server/pages-manifest.json +1 -1
  82. package/dist/webui/.next/standalone/packages/webui/.next/server/server-reference-manifest.json +1 -1
  83. package/dist/webui/.next/standalone/packages/webui/.next/static/b_pyEEg2sitTwMzZWW7vE/_buildManifest.js +1 -0
  84. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/419-a07413b585273a24.js +1 -0
  85. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/614-3519f8a6051e0088.js +1 -0
  86. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/656-5a9f6405badf66a8.js +25 -0
  87. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/{711-76a7d2bf4d6f69e5.js → 765-755286dc586b1a51.js} +1 -1
  88. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/804-f40df92a3adffcc0.js +1 -0
  89. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/854-232126f3c77e6c0b.js +1 -0
  90. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/chat/[sessionId]/page-a695b09e6bac5274.js +1 -0
  91. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/page-d1f127a0cac96246.js +1 -0
  92. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/playground/page-6f8d2abe76e51dfc.js +1 -0
  93. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/main-7decd42f62688419.js +1 -0
  94. package/dist/webui/.next/standalone/packages/webui/.next/static/css/c3c26ec984df1deb.css +1 -0
  95. package/dist/webui/.next/standalone/packages/webui/package.json +5 -1
  96. package/dist/webui/.next/standalone/packages/webui/server.js +1 -1
  97. package/dist/webui/.next/static/b_pyEEg2sitTwMzZWW7vE/_buildManifest.js +1 -0
  98. package/dist/webui/.next/static/chunks/419-a07413b585273a24.js +1 -0
  99. package/dist/webui/.next/static/chunks/614-3519f8a6051e0088.js +1 -0
  100. package/dist/webui/.next/static/chunks/656-5a9f6405badf66a8.js +25 -0
  101. package/dist/webui/.next/static/chunks/{711-76a7d2bf4d6f69e5.js → 765-755286dc586b1a51.js} +1 -1
  102. package/dist/webui/.next/static/chunks/804-f40df92a3adffcc0.js +1 -0
  103. package/dist/webui/.next/static/chunks/854-232126f3c77e6c0b.js +1 -0
  104. package/dist/webui/.next/static/chunks/app/chat/[sessionId]/page-a695b09e6bac5274.js +1 -0
  105. package/dist/webui/.next/static/chunks/app/page-d1f127a0cac96246.js +1 -0
  106. package/dist/webui/.next/static/chunks/app/playground/page-6f8d2abe76e51dfc.js +1 -0
  107. package/dist/webui/.next/static/chunks/main-7decd42f62688419.js +1 -0
  108. package/dist/webui/.next/static/css/c3c26ec984df1deb.css +1 -0
  109. package/dist/webui/package.json +5 -1
  110. package/package.json +2 -2
  111. package/dist/webui/.next/standalone/.next/static/VoeDi3iuGmMdZu_kx-R2X/_buildManifest.js +0 -1
  112. package/dist/webui/.next/standalone/.next/static/chunks/419-5526a47c95a2fa60.js +0 -1
  113. package/dist/webui/.next/standalone/.next/static/chunks/429-838829c1391e496d.js +0 -25
  114. package/dist/webui/.next/standalone/.next/static/chunks/459-62011998b002cbf6.js +0 -1
  115. package/dist/webui/.next/standalone/.next/static/chunks/854-8cad9404fc78e0cc.js +0 -1
  116. package/dist/webui/.next/standalone/.next/static/chunks/935-07f9df196b13275e.js +0 -1
  117. package/dist/webui/.next/standalone/.next/static/chunks/app/chat/[sessionId]/page-b8acc47b0d8c5c0a.js +0 -1
  118. package/dist/webui/.next/standalone/.next/static/chunks/app/page-e117ae372850d25f.js +0 -1
  119. package/dist/webui/.next/standalone/.next/static/chunks/app/playground/page-09340fb6b3f4caa2.js +0 -1
  120. package/dist/webui/.next/standalone/.next/static/chunks/main-b65ece3506a2355c.js +0 -1
  121. package/dist/webui/.next/standalone/.next/static/css/21e6c142ca3cdc42.css +0 -1
  122. package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/419.js +0 -25
  123. package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/654.js +0 -1
  124. package/dist/webui/.next/standalone/packages/webui/.next/server/chunks/71.js +0 -5
  125. package/dist/webui/.next/standalone/packages/webui/.next/static/VoeDi3iuGmMdZu_kx-R2X/_buildManifest.js +0 -1
  126. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/419-5526a47c95a2fa60.js +0 -1
  127. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/429-838829c1391e496d.js +0 -25
  128. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/459-62011998b002cbf6.js +0 -1
  129. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/854-8cad9404fc78e0cc.js +0 -1
  130. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/935-07f9df196b13275e.js +0 -1
  131. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/chat/[sessionId]/page-b8acc47b0d8c5c0a.js +0 -1
  132. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/page-e117ae372850d25f.js +0 -1
  133. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/app/playground/page-09340fb6b3f4caa2.js +0 -1
  134. package/dist/webui/.next/standalone/packages/webui/.next/static/chunks/main-b65ece3506a2355c.js +0 -1
  135. package/dist/webui/.next/standalone/packages/webui/.next/static/css/21e6c142ca3cdc42.css +0 -1
  136. package/dist/webui/.next/static/VoeDi3iuGmMdZu_kx-R2X/_buildManifest.js +0 -1
  137. package/dist/webui/.next/static/chunks/419-5526a47c95a2fa60.js +0 -1
  138. package/dist/webui/.next/static/chunks/429-838829c1391e496d.js +0 -25
  139. package/dist/webui/.next/static/chunks/459-62011998b002cbf6.js +0 -1
  140. package/dist/webui/.next/static/chunks/854-8cad9404fc78e0cc.js +0 -1
  141. package/dist/webui/.next/static/chunks/935-07f9df196b13275e.js +0 -1
  142. package/dist/webui/.next/static/chunks/app/chat/[sessionId]/page-b8acc47b0d8c5c0a.js +0 -1
  143. package/dist/webui/.next/static/chunks/app/page-e117ae372850d25f.js +0 -1
  144. package/dist/webui/.next/static/chunks/app/playground/page-09340fb6b3f4caa2.js +0 -1
  145. package/dist/webui/.next/static/chunks/main-b65ece3506a2355c.js +0 -1
  146. package/dist/webui/.next/static/css/21e6c142ca3cdc42.css +0 -1
  147. /package/dist/webui/.next/standalone/.next/static/{VoeDi3iuGmMdZu_kx-R2X → b_pyEEg2sitTwMzZWW7vE}/_ssgManifest.js +0 -0
  148. /package/dist/webui/.next/standalone/packages/webui/.next/static/{VoeDi3iuGmMdZu_kx-R2X → b_pyEEg2sitTwMzZWW7vE}/_ssgManifest.js +0 -0
  149. /package/dist/webui/.next/static/{VoeDi3iuGmMdZu_kx-R2X → b_pyEEg2sitTwMzZWW7vE}/_ssgManifest.js +0 -0
package/README.md CHANGED
@@ -12,40 +12,41 @@
12
12
  **An all-in-one toolkit to build agentic applications that turn natural language into real-world actions.**
13
13
 
14
14
  <div align="center">
15
- <img src="https://github.com/user-attachments/assets/97a09f5b-6f7d-4d4b-9b3f-3c87fd964cbe" alt="Dexto Demo" width="700" />
15
+ <img src="https://github.com/user-attachments/assets/89d30349-0cb1-4160-85db-d99a80a71d7a" alt="Dexto Demo" width="700" />
16
16
  </div>
17
17
 
18
18
  ## What is Dexto?
19
19
 
20
- Dexto is a universal agent interface for building agentic apps—software that understands natural language and takes real-world actions. It orchestrates LLMs, tools, and data into persistent, stateful systems with memory, so you can rapidly create AI assistants, copilots, and context-aware apps that think, act and feel alive.
20
+ Dexto is a universal intelligence layer for building collaborative, context-aware AI Agents & agentic apps. It orchestrates LLMs, tools, and data into persistent, stateful systems with memory, so you can rapidly create AI assistants, digital companions & copilots that think, act and feel alive.
21
+
22
+ Dexto combines a configuration-driven framework, robust runtime, and seamless developer experience so you can build, deploy, and iterate on your agents easily.
23
+
24
+ - **Framework** – Define agent behavior in YAML. Instantly swap models and tools without touching code.
25
+ - **Runtime** – Execution with orchestration, session management, conversation memory, and multimodal support.
26
+ - **Interfaces & Tooling** – Native support for CLI, Web, APIs, and a TypeScript SDK.
21
27
 
22
28
  #### With Dexto, you can build:
23
29
 
24
30
  - **Autonomous Agents** - Agents that plan, execute, and adapt to user goals.
25
31
  - **Digital Companions** - AI assistants & copilots that remember context and anticipate needs.
26
- - **Multi-Agent Systems** - Architect agents that collaborate, delegate, and solve complex tasks together.
27
32
  - **MCP Clients** - Connect multiple tools, files, APIs, and data via MCP Servers.
33
+ - **MCP Servers** - Dexto Web UI and MCP playground help you to easily test your own MCP servers.
34
+ - **Multi-Agent Systems** - Architect agents that collaborate, delegate, and solve complex tasks together.
28
35
  - **Agent-as-a-Service** – Transform your existing SaaS products and APIs into dynamic, conversational experiences.
29
36
  - **Agentic Applications** – Integrate Dexto as a reasoning engine to power interactive, multimodal, AI-native applications.
30
37
 
31
- <!-- Dexto unifies a configuration-driven framework, robust runtime, and seamless developer experience—so you can build, deploy, and iterate with ease.
32
-
33
- - **Framework** – Define agent behavior in YAML. Instantly swap models and tools without touching code.
34
- - **Runtime** – Execution with session management, conversation memory, and multimodal support.
35
- - **Interfaces & Tooling** – Native support for CLI, Web, APIs, and a TypeScript SDK. Develop, debug, and interact with your agent across any platforms from day one. -->
36
-
37
- ### What You Get
38
+ #### What You Get
38
39
 
39
- - **Batteries Included** – Session management, tool orchestration, multimodal support.
40
- - **20+ LLMs** – Instantly switch between OpenAI, Anthropic, Google, Groq, local models or bring your own.
40
+ - **Batteries Included** – Session management, tool orchestration, multimodal support, and production-ready observability.
41
+ - **50+ LLMs** – Instantly switch between OpenAI, Anthropic, Google, Groq, local models or bring your own.
41
42
  - **Run Anywhere** – Local for privacy, cloud for reach, or hybrid. *Same agent, any deployment.*
42
43
  - **Native Multimodal** – Text, images, files, and tools in a single conversation. *Upload screenshots, ask questions, take actions.*
43
44
  - **Persistent Sessions** – Conversations, context, and memory are saved and can be exported, imported, or shared across environments.
44
- - **Flexible Interfaces** – One agent, endless ways to interact: Ready to-use CLI, WebUI, APIs, or integrate with your own UI.
45
- - **Production Ready** – Observability and error handling built-in.
46
- - **Tooling & MCP** – Integrate 100+ tools and connect to external servers via the Model Context Protocol (MCP).
47
- - **Customizable Agents** Define agent behavior, tools, and prompts in YAML or TypeScript.
48
- - **Pluggable Storage** – Use Redis, PostgreSQL, SQLite, in-memory, and more for cache and database backends.
45
+ - **Flexible Interfaces** – One agent, endless ways to interact: Ready-to-use CLI, WebUI, APIs, or integrate with your own UI.
46
+ - **30+ Tools & MCP** – Integrate tools and connect to external servers via the Model Context Protocol (MCP) or use our internal tools.
47
+ - **Pluggable Storage** – Use Redis, PostgreSQL, SQLite, in-memory, S3 and more for cache, database & blob backends.
48
+ - **Human in the loop** - Configure approval policies for tool execution, agents can also remember which tools are safe per session.
49
+ - **Observability** – Built-in OpenTelemetry distributed tracing, token usage monitoring, and error handling.
49
50
 
50
51
  ---
51
52
 
@@ -65,17 +66,21 @@ cd dexto && pnpm install && pnpm install-cli
65
66
  ## Quick Start
66
67
 
67
68
  ```bash
68
- # 1. Run setup workflow - this prompts for your preferred LLM and API keys and starts the interactive CLI
69
+ # 1. Run setup workflow - this prompts for your preferred LLM and API keys and opens the Web UI
69
70
  dexto
70
71
 
71
- # 2. Try a multi-step task
72
- dexto "create a snake game in HTML/CSS/JS, then open it in the browser"
72
+ # 2. Try a multi-step task in the web UI:
73
+ "create a snake game in HTML/CSS/JS, then open it in the browser"
73
74
 
74
- # 3. Launch the Dexto Web UI
75
- dexto --mode web
75
+ # 3. Start interactive CLI mode instead of web UI
76
+ dexto --mode cli
76
77
  ```
77
78
 
78
- In 2 -> Dexto will use filesystem tools to write code and browser tools to open it — all from a single prompt. The Web UI allows you to navigate previous conversations and experiment with different models, tools and more.
79
+ In 2 -> Dexto will use filesystem tools to write code and browser tools to open it — all from a single prompt. The Web UI (default mode) allows you to navigate previous conversations and experiment with different models, tools and more.
80
+
81
+ The interactive CLI (3) allows you to interact with agents in the terminal.
82
+
83
+ See the [CLI Guide](https://docs.dexto.ai/docs/guides/cli/overview) for full details.
79
84
 
80
85
  ### Skip Tool Prompts While Prototyping
81
86
 
@@ -85,6 +90,14 @@ dexto --auto-approve "refactor my project using the filesystem and browser tools
85
90
 
86
91
  Use the `--auto-approve` flag to bypass confirmation prompts when you trust the tools being invoked—perfect for fast local iteration. Remove the flag when you want explicit approval again.
87
92
 
93
+ ### Logs
94
+
95
+ Logs are stored in `~/.dexto/logs` directory by default.
96
+
97
+ Use `DEXTO_LOG_TO_CONSOLE=true` to log to console when running dexto.
98
+
99
+ Use `DEXTO_LOG_LEVEL=debug` for debug logs.
100
+
88
101
  ## Agent Recipes
89
102
 
90
103
  Dexto comes with pre-built agent recipes for common use cases. Install and use them instantly:
@@ -94,42 +107,47 @@ Dexto comes with pre-built agent recipes for common use cases. Install and use t
94
107
  dexto list-agents
95
108
 
96
109
  # Install specific agents
97
- dexto install nano-banana-agent podcast-agent sora-video-agent
110
+ dexto install nano-banana-agent podcast-agent coding-agent
111
+
112
+ # Use an agent with one shot prompt
113
+ dexto --agent nano-banana-agent --mode cli "create a futuristic cityscape with flying cars"
114
+ dexto --agent podcast-agent --mode cli "generate a podcast intro with two hosts discussing AI"
115
+ dexto --agent coding-agent --mode cli "create a landing page for a coffee brand inspired by star wars"
98
116
 
99
- # Use an agent
100
- dexto --agent nano-banana-agent "create a futuristic cityscape with flying cars"
101
- dexto --agent podcast-agent "generate a podcast intro with two hosts discussing AI"
102
- dexto --agent sora-video-agent "create a video of a sunset over mountains"
117
+ # Alternatively, start the agent in web UI and put in the prompt yourself
118
+ dexto --agent nano-banana-agent
103
119
  ```
104
120
 
105
121
  **Available Agents:**
122
+ - **Coding Agent** – Code generation, refactoring, debugging
106
123
  - **Nano Banana Agent** – Advanced image generation and editing using Google's Nano Banana (Gemini 2.5 Flash Image)
107
124
  - **Podcast Agent** – Advanced podcast generation using Google Gemini TTS for multi-speaker audio content
108
125
  - **Sora Video Agent** – AI video generation using OpenAI's Sora with custom settings, remixing, and reference support
109
126
  - **Database Agent** – Demo agent for SQL queries and database operations
127
+ - **GitHub Agent** – GitHub operations, PR analysis, and repository management
110
128
  - **Image Editor Agent** – Image editing and manipulation
111
129
  - **Music Agent** – Music creation and audio processing
112
- - **PDF Agent** – Document analysis and conversation
130
+ - **Talk2PDF Agent** – Document analysis and conversation
113
131
  - **Product Researcher** – Product naming and branding research
114
132
  - **Triage Agent** – Demo multi-agent customer support routing system
115
133
 
116
134
  Each agent is pre-configured with the right tools, prompts, and LLM settings for its domain. No setup required—just install and start building.
117
135
 
118
- More ready-to-run recipes live in [`agents/`](https://github.com/truffle-ai/dexto/tree/HEAD/agents/) and the [docs site](https://docs.dexto.ai/).
136
+ **📚 See the full [Agent Registry](https://docs.dexto.ai/docs/guides/agent-registry) for detailed information about all agents, their capabilities, use cases, and requirements.**
137
+
138
+ More ready-to-run recipes live in [`agents/`](https://github.com/truffle-ai/dexto/tree/HEAD/agents/).
119
139
 
120
140
  ## Examples & Demos
121
141
 
122
- ### 🛒 Browser Agent: Amazon Shopping Assistant
123
- **Task:** `Can you go to amazon and add some snacks to my cart? I like trail mix, cheetos and maybe surprise me with something else?`
142
+ ### 🎙️ Podcast Agent: Generate AI Podcasts
143
+ **Task:** `Generate an intro for a podcast about the latest in AI.`
124
144
  ```bash
125
- # Default agent has browser tools
126
- dexto
145
+ dexto --agent podcast-agent
127
146
  ```
128
- <a href="https://youtu.be/C-Z0aVbl4Ik">
129
- <img src="https://github.com/user-attachments/assets/3f5be5e2-7a55-4093-a071-8c52f1a83ba3" alt="Dexto: Amazon shopping agent demo" width="600"/>
130
- </a>
131
147
 
132
- ### 👁️ Computer Vision: Face Detection & Annotation
148
+ <img src="https://github.com/user-attachments/assets/cfd59751-3daa-4ccd-97b2-1b2862c96af1" alt="Podcast Agent Demo" width="600"/>
149
+
150
+ ### 👁️ Computer Vision Agent: Face Detection & Annotation Using OpenCV
133
151
  **Task:** `Detect all faces in this image and draw bounding boxes around them.`
134
152
  ```bash
135
153
  dexto --agent image-editor-agent
@@ -137,18 +155,34 @@ dexto --agent image-editor-agent
137
155
 
138
156
  <img src="https://github.com/user-attachments/assets/7e4b2043-c39a-47c7-a403-a9665ee762ce" alt="Face Detection Demo" width="600">
139
157
 
140
- ### 🎙️ Podcast Agent: Generate AI Podcast Intros
141
- **Task:** `Generate an intro for a podcast about the latest in AI.`
158
+ ### 🎮 Coding Agents: Create apps on demand
159
+
160
+ Build full-stack applications, websites, and interactive games with AI-powered coding agents. Customize them to create your own coding agents.
161
+
162
+ **Task:** `Can you create a snake game in a new folder and open it when done?`
142
163
  ```bash
143
- dexto --agent podcast-agent
164
+ dexto --agent coding-agent
144
165
  ```
145
166
 
146
- <img src="https://github.com/user-attachments/assets/cfd59751-3daa-4ccd-97b2-1b2862c96af1" alt="Podcast Agent Demo" width="600"/>
167
+ <img src=".github/assets/coding_agent_demo.gif" alt="Snake Game Development Demo" width="600"/>
147
168
 
148
- ### 🖼️ Hugging Face: Image Generation
149
- **Task:** `Generate a photo of a baby panda.`
150
169
 
151
- <img src="https://github.com/user-attachments/assets/570cbd3a-6990-43c5-b355-2b549a4ee6b3" alt="Hugging Face Image Generation Demo" width="600"/>
170
+ ### 📧 Portable Agents: Use your agents from Cursor
171
+
172
+ Dexto agents are designed to be modular, composable and portable, allowing you to run them from anywhere. In this example, we connect to dexto as an MCP server via Cursor to use our podcast agent from above.
173
+
174
+ <img src="https://github.com/user-attachments/assets/fd75a63f-4d29-447a-be24-6943e34c387f" alt="Email to Slack Demo" width="600">
175
+
176
+
177
+
178
+ ### 🎯 Triage Agent: Multi-Agent Customer Support
179
+
180
+ Create multi-agent systems that can intelligently coordinate and delegate tasks among themselves based on the user query.
181
+
182
+ ```bash
183
+ dexto --agent triage-agent
184
+ ```
185
+ <img src=".github/assets/triage_agent_demo.gif" alt="Triage Agent Demo" width="600">
152
186
 
153
187
  ### 🛠️ Adding Custom MCP Servers
154
188
 
@@ -156,29 +190,81 @@ You can add your own Model Context Protocol (MCP) servers to extend Dexto's capa
156
190
 
157
191
  <img src="https://github.com/user-attachments/assets/1a3ca1fd-31a0-4e1d-ba93-23e1772b1e79" alt="Add MCP Server Example" width="600"/>
158
192
 
159
- ### 🎮 Web App Development: Snake Game
160
- **Task:** `Create a snake game in HTML/CSS/JS, then open it in the browser`
193
+ ### 🧠 Memory: Persistent Context & Learning
194
+
195
+ Create and save memories. Your agent automatically uses it to create personalized experiences.
196
+
197
+ <img src=".github/assets/memory_demo.gif" alt="Memory Demo" width="600">
198
+
199
+ ### 🛒 MCP Store: Tool Discovery & Integration
200
+
201
+ Equip your agents from 20+ MCP Servers and start using them via chat - instantly.
202
+ - Bring your own keys
203
+ - Can't find an MCP? [Contribute here!](https://github.com/truffle-ai/dexto/blob/main/CONTRIBUTING.md)
204
+
205
+ <img src=".github/assets/mcp_store_demo.gif" alt="MCP Store Demo" width="600">
206
+
207
+ ### 📝 Human In The Loop: Dynamic Form Generation
208
+
209
+ Agents can generate structured forms when they need additional data to make it easier to collect extra info & approvals from users.
210
+
211
+ <img src=".github/assets/user_form_demo.gif" alt="User Form Demo" width="600">
212
+
213
+
214
+
215
+ #### More Examples:
216
+
217
+ <details>
218
+ <summary><strong>🛒 Browser Agent: Amazon Shopping Assistant</strong></summary>
219
+
220
+ **Task:** `Can you go to amazon and add some snacks to my cart? I like trail mix, cheetos and maybe surprise me with something else?`
161
221
  ```bash
162
- dexto "create a snake game in HTML/CSS/JS, then open it in the browser"
222
+ # Default agent has browser tools
223
+ dexto
163
224
  ```
225
+ <a href="https://youtu.be/C-Z0aVbl4Ik">
226
+ <img src="https://github.com/user-attachments/assets/3f5be5e2-7a55-4093-a071-8c52f1a83ba3" alt="Dexto: Amazon shopping agent demo" width="600"/>
227
+ </a>
164
228
 
165
- <img src="https://github.com/user-attachments/assets/6901ba82-3c2a-4177-baf0-7d44d04a5f27" alt="Snake Game Development Demo" width="600"/>
229
+ </details>
230
+
231
+ <details>
232
+ <summary><strong>🎮 Playground: Interactive Development Environment</strong></summary>
233
+
234
+ A testing playground to view the tools in your MCP servers before connecting them to LLMs to see the detailed response structures.
235
+
236
+ <img src=".github/assets/playground_demo.gif" alt="Playground Demo" width="600">
237
+
238
+ </details>
239
+
240
+ <details>
241
+ <summary><strong>📧 Email to Slack: Automated Email Summaries</strong></summary>
166
242
 
167
- ### 📧 Send Email Summaries to Slack
168
243
  **Task:** `Summarize emails and send highlights to Slack`
169
244
  ```bash
170
245
  dexto --agent ./agents/examples/email_slack.yml
171
246
  ```
172
247
  <img src="https://github.com/truffle-ai/dexto/blob/HEAD/assets/email_slack_demo.gif?raw=1" alt="Email to Slack Demo" width="600">
173
248
 
249
+ </details>
250
+
251
+ <details>
252
+ <summary><strong>🖼️ Hugging Face: Image Generation</strong></summary>
253
+
254
+ **Task:** `Generate a photo of a baby panda.`
255
+
256
+ <img src="https://github.com/user-attachments/assets/570cbd3a-6990-43c5-b355-2b549a4ee6b3" alt="Hugging Face Image Generation Demo" width="600"/>
257
+
258
+ </details>
259
+
174
260
  ---
175
261
 
176
262
  ## Run Modes
177
263
 
178
264
  | Mode | Command | Best for |
179
265
  |------|---------|----------|
180
- | **Interactive CLI** | `dexto` | Everyday automation & quick tasks |
181
- | **Web UI** | `dexto --mode web` | Friendly chat interface w/ image support |
266
+ | **Web UI** | `dexto` | Friendly chat interface w/ image support (default) |
267
+ | **Interactive CLI** | `dexto --mode cli` | Everyday automation & quick tasks |
182
268
  | **Headless Server** | `dexto --mode server` | REST & WebSocket APIs for agent interaction |
183
269
  | **MCP Server (Agent)** | `dexto --mode mcp` | Exposing your agent as a tool for others via stdio |
184
270
  | **MCP Server (Aggregator)** | `dexto mcp --group-servers` | Re-exposing tools from multiple MCP servers via stdio |
@@ -193,11 +279,13 @@ Run `dexto --help` for **all flags, sub-commands, and environment variables**.
193
279
 
194
280
  Dexto treats each configuration as a unique agent allowing you to define and save combinations of LLMs, servers, storage options, etc. based on your needs for easy portability. Define agents in version-controlled YAML. Change the file, reload, and chat—state, memory, and tools update automatically.
195
281
 
282
+ Example configuration:
283
+
196
284
  ```yaml
197
285
  # agents/my-agent.yml
198
286
  llm:
199
287
  provider: openai
200
- model: gpt-4.1-mini
288
+ model: gpt-5-mini
201
289
  apiKey: $OPENAI_API_KEY
202
290
 
203
291
  mcpServers:
@@ -221,7 +309,7 @@ Switch between providers instantly—no code changes required.
221
309
  | Provider | Models | Setup |
222
310
  |----------|--------|-------|
223
311
  | **OpenAI** | `gpt-5`, `gpt-5-mini`, `gpt-5-nano`, `gpt-4.1`, `gpt-4.1-mini`, `gpt-4.1-nano`, `gpt-4o`, `gpt-4o-mini`, `gpt-4o-audio-preview`, `o4-mini`, `o3`, `o3-mini`, `o1` | `export OPENAI_API_KEY=...` |
224
- | **Anthropic** | `claude-sonnet-4-5-20250929`, `claude-opus-4-1-20250805`, `claude-4-opus-20250514`, `claude-4-sonnet-20250514`, `claude-3-7-sonnet-20250219`, `claude-3-5-sonnet-20240620`, `claude-3-5-haiku-20241022` | `export ANTHROPIC_API_KEY=...` |
312
+ | **Anthropic** | `claude-haiku-4-5-20251001`, `claude-sonnet-4-5-20250929`, `claude-opus-4-1-20250805`, `claude-4-opus-20250514`, `claude-4-sonnet-20250514`, `claude-3-7-sonnet-20250219`, `claude-3-5-sonnet-20240620`, `claude-3-5-haiku-20241022` | `export ANTHROPIC_API_KEY=...` |
225
313
  | **Google** | `gemini-2.5-pro`, `gemini-2.5-flash`, `gemini-2.5-flash-lite`, `gemini-2.0-flash`, `gemini-2.0-flash-lite` | `export GOOGLE_GENERATIVE_AI_API_KEY=...` |
226
314
  | **Groq** | `llama-3.3-70b-versatile`, `meta-llama/llama-4-scout-17b-16e-instruct`, `meta-llama/llama-4-maverick-17b-128e-instruct`, `qwen/qwen3-32b`, `gemma-2-9b-it`, `openai/gpt-oss-20b`, `openai/gpt-oss-120b`, `moonshotai/kimi-k2-instruct`, `deepseek-r1-distill-llama-70b` | `export GROQ_API_KEY=...` |
227
315
  | **xAI** | `grok-4`, `grok-3`, `grok-3-mini`, `grok-code-fast-1` | `export XAI_API_KEY=...` |
@@ -233,7 +321,9 @@ dexto -m claude-sonnet-4-5-20250929
233
321
  dexto -m gemini-2.5-pro
234
322
  ```
235
323
 
236
- See our [Configuration Guide](https://docs.dexto.ai/docs/category/guides/) for complete setup instructions.
324
+ You can configure things like LLM, system prompt, MCP servers, storage, sessions, human-in-the loop, telemetry and more!
325
+
326
+ See our [Configuration Guide](https://docs.dexto.ai/docs/category/agent-configuration-guide) for complete setup instructions.
237
327
 
238
328
 
239
329
  ## Programmatic API
@@ -251,7 +341,7 @@ import { DextoAgent } from '@dexto/core';
251
341
  const agent = new DextoAgent({
252
342
  llm: {
253
343
  provider: 'openai',
254
- model: 'gpt-4.1-mini',
344
+ model: 'gpt-5-mini',
255
345
  apiKey: process.env.OPENAI_API_KEY
256
346
  }
257
347
  });
@@ -268,7 +358,7 @@ await agent.run('Make it funnier');
268
358
  await agent.stop();
269
359
  ```
270
360
 
271
- See our [TypeScript SDK docs](https://docs.dexto.ai/api/category/typescript-sdk/) for complete examples with MCP tools, sessions, and advanced features.
361
+ See our [TypeScript SDK docs](https://docs.dexto.ai/api/category/dexto-sdk/) for complete examples with MCP tools, sessions, and advanced features.
272
362
 
273
363
  ---
274
364
 
@@ -304,11 +394,11 @@ Switch between models and providers dynamically.
304
394
  const currentLLM = agent.getCurrentLLMConfig();
305
395
 
306
396
  // Switch models (provider inferred automatically)
307
- await agent.switchLLM({ model: 'gpt-4.1-mini' });
397
+ await agent.switchLLM({ model: 'gpt-5-mini' });
308
398
  await agent.switchLLM({ model: 'claude-sonnet-4-5-20250929' });
309
399
 
310
400
  // Switch model for a specific session id 1234
311
- await agent.switchLLM({ model: 'gpt-4.1-mini' }, '1234')
401
+ await agent.switchLLM({ model: 'gpt-5-mini' }, '1234')
312
402
 
313
403
  // Get supported providers and models
314
404
  const providers = agent.getSupportedProviders();
@@ -318,7 +408,7 @@ const openaiModels = agent.getSupportedModelsForProvider('openai');
318
408
 
319
409
  ### MCP Manager
320
410
 
321
- For advanced MCP server management, use the MCPManager directly.
411
+ For advanced MCP server management, use the MCPManager directly. See the [MCP Manager SDK docs](https://docs.dexto.ai/api/sdk/mcp-manager) for full details.
322
412
 
323
413
  ```typescript
324
414
  import { MCPManager } from '@dexto/core';
@@ -345,7 +435,7 @@ await manager.disconnectAll();
345
435
 
346
436
  ### Storage & Persistence
347
437
 
348
- Configure storage backends for production-ready persistence and caching.
438
+ Configure storage backends for production-ready persistence and caching. See the [Storage Configuration guide](https://docs.dexto.ai/docs/guides/configuring-dexto/storage) for full details.
349
439
 
350
440
  ```yaml
351
441
  # agents/production-agent.yml
@@ -373,7 +463,7 @@ sessions:
373
463
  - **Production**: Redis + PostgreSQL for scale
374
464
  - **Simple**: SQLite for single-instance persistence
375
465
 
376
- See the [DextoAgent API Documentation](https://docs.dexto.ai/api/dexto-agent/) for complete method references.
466
+ See the [DextoAgent API Documentation](https://docs.dexto.ai/api/sdk/dexto-agent) for complete method references.
377
467
 
378
468
  ---
379
469
 
@@ -385,49 +475,97 @@ See the [DextoAgent API Documentation](https://docs.dexto.ai/api/dexto-agent/) f
385
475
  ```
386
476
  Usage: dexto [options] [command] [prompt...]
387
477
 
388
- Dexto CLI allows you to talk to Dexto, build custom AI Agents, build complex AI applications like Cursor, and more.
478
+ Dexto CLI - AI-powered assistant with session management
479
+
480
+ Basic Usage:
481
+ dexto Start web UI (default)
482
+ dexto "query" Run one-shot query (auto-uses CLI mode)
483
+ dexto -p "query" Run one-shot query, then exit
484
+ cat file | dexto -p "query" Process piped content
485
+
486
+ CLI Mode:
487
+ dexto --mode cli Start interactive CLI REPL
389
488
 
390
- Run dexto interactive CLI with `dexto` or run a one-shot prompt with `dexto -p "<prompt>"` or `dexto "<prompt>"`
391
- Start with a new session using `dexto --new-session [sessionId]`
392
- Run dexto web UI with `dexto --mode web`
393
- Run dexto as a server (REST APIs + WebSockets) with `dexto --mode server`
394
- Run dexto as a discord bot with `dexto --mode discord`
395
- Run dexto as a telegram bot with `dexto --mode telegram`
396
- Run dexto agent as an MCP server with `dexto --mode mcp`
397
- Run dexto as an MCP server aggregator with `dexto mcp --group-servers`
489
+ Session Management:
490
+ dexto -c Continue most recent conversation
491
+ dexto -c -p "query" Continue with one-shot query, then exit
492
+ dexto -r "<session-id>" "query" Resume with one-shot query
398
493
 
399
- Check subcommands for more features. Check https://github.com/truffle-ai/dexto for documentation on how to customize dexto and other examples
494
+ Tool Confirmation:
495
+ dexto --auto-approve Auto-approve all tool executions
496
+
497
+ Agent Selection:
498
+ dexto --agent coding-agent Use installed agent by name
499
+ dexto --agent ./my-agent.yml Use agent from file path
500
+ dexto -a agents/custom.yml Short form with relative path
501
+
502
+ Advanced Modes:
503
+ dexto --mode server Run as API server
504
+ dexto --mode discord Run as Discord bot
505
+ dexto --mode telegram Run as Telegram bot
506
+ dexto --mode mcp Run as MCP server
507
+
508
+ Session Commands: dexto session list|history|delete • search
509
+ Search: dexto search <query> [--session <id>] [--role <role>]
510
+
511
+ See https://docs.dexto.ai for documentation and examples
400
512
 
401
513
  Arguments:
402
- prompt Natural-language prompt to run once. If not passed, dexto will start as an interactive CLI
514
+ prompt Natural-language prompt to run once. If not
515
+ passed, dexto will start as an interactive
516
+ CLI
403
517
 
404
518
  Options:
405
519
  -v, --version output the current version
406
- -a, --agent <name|path> Agent name or path to agent config file
407
- -p, --prompt <text> One-shot prompt text. Alternatively provide a single quoted string as positional argument.
520
+ -a, --agent <id|path> Agent ID or path to agent config file
521
+ -p, --prompt <text> Run prompt and exit. Alternatively provide a
522
+ single quoted string as positional argument.
408
523
  -s, --strict Require all server connections to succeed
409
524
  --no-verbose Disable verbose output
410
- --no-interactive Disable interactive prompts and API key setup
525
+ --no-interactive Disable interactive prompts and API key
526
+ setup
527
+ --skip-setup Skip global setup validation (useful for MCP
528
+ mode, automation)
411
529
  -m, --model <model> Specify the LLM model to use
412
- -r, --router <router> Specify the LLM router to use (vercel or in-built)
413
- --new-session [sessionId] Start with a new session (optionally specify session ID)
414
- --mode <mode> The application in which dexto should talk to you - cli | web | server | discord | telegram | mcp (default: "cli")
415
- --web-port <port> optional port for the web UI (default: "3000")
416
- --no-auto-install Disable automatic installation of missing agents from registry
530
+ --router <router> Specify the LLM router to use (vercel or
531
+ in-built)
532
+ --auto-approve Always approve tool executions without
533
+ confirmation prompts
534
+ -c, --continue Continue most recent conversation
535
+ -r, --resume <sessionId> Resume session by ID
536
+ --mode <mode> The application in which dexto should talk
537
+ to you - web | cli | server | discord |
538
+ telegram | mcp (default: "web")
539
+ --web-port <port> port for the web UI (default: 3000)
540
+ (default: "3000")
541
+ --api-port <port> port for the API server (default: web-port +
542
+ 1)
543
+ --no-auto-install Disable automatic installation of missing
544
+ agents from registry
417
545
  -h, --help display help for command
418
546
 
419
547
  Commands:
420
548
  create-app Scaffold a new Dexto Typescript app
421
- init-app Initialize an existing Typescript app with Dexto
549
+ init-app Initialize an existing Typescript app with
550
+ Dexto
422
551
  setup [options] Configure global Dexto preferences
423
- install [options] [agents...] Install agents from the registry
552
+ install [options] [agents...] Install agents from registry or custom YAML
553
+ files/directories
424
554
  uninstall [options] [agents...] Uninstall agents from the local installation
425
555
  list-agents [options] List available and installed agents
426
556
  which <agent> Show the path to an agent
427
- mcp [options] Start Dexto as an MCP server. Use --group-servers to aggregate and re-expose tools from configured MCP servers.
557
+ session Manage chat sessions
558
+ search [options] <query> Search session history
559
+ mcp [options] Start Dexto as an MCP server. Use
560
+ --group-servers to aggregate and re-expose
561
+ tools from configured MCP servers.
562
+ In the future, this command will expose the
563
+ agent as an MCP server by default.
428
564
  ```
429
565
  </details>
430
566
 
567
+ See the [CLI Guide](https://docs.dexto.ai/docs/guides/cli/overview) for full details.
568
+
431
569
  ---
432
570
 
433
571
  ## Next Steps
@@ -98,6 +98,15 @@
98
98
  "author": "Truffle AI",
99
99
  "tags": ["default", "filesystem", "playwright"],
100
100
  "source": "default-agent.yml"
101
+ },
102
+ "coding-agent": {
103
+ "id": "coding-agent",
104
+ "name": "Coding Agent",
105
+ "description": "Expert software development assistant with all internal coding tools for building, debugging, and maintaining codebases",
106
+ "author": "Truffle AI",
107
+ "tags": ["coding", "development", "software", "internal-tools", "programming"],
108
+ "source": "coding-agent/",
109
+ "main": "coding-agent.yml"
101
110
  }
102
111
  }
103
112
  }
@@ -35,7 +35,7 @@ systemPrompt:
35
35
  # LLM configuration - describes the language model to use
36
36
  llm:
37
37
  provider: openai
38
- model: gpt-4.1-mini
38
+ model: gpt-5-mini
39
39
  apiKey: $OPENAI_API_KEY
40
40
 
41
41
  # Alternative LLM providers (replace the above llm section with one of these):