Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -158,3 +158,5 @@ go.sum
myenv/
myvenv/

#parlant
parlant-data
1 change: 1 addition & 0 deletions parlant-data/cache_embeddings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
1 change: 1 addition & 0 deletions parlant-data/evaluation_cache.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
4 changes: 3 additions & 1 deletion runagent/sdk/server/framework/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
from runagent.sdk.server.framework.crewai import CrewAIExecutor
from runagent.sdk.server.framework.ag2 import AG2Executor
from runagent.sdk.server.framework.n8n import N8NExecutor
from runagent.sdk.server.framework.parlant import ParlantExecutor
from runagent.utils.schema import PythonicEntryPoint, WebHookEntryPoint


Expand All @@ -28,7 +29,8 @@ def get_executor(
"langchain": GenericExecutor,
"letta": GenericExecutor,
"llamaindex": LlamaIndexExecutor,
"n8n": N8NExecutor
"n8n": N8NExecutor,
"parlant": ParlantExecutor
}
framework_executor = executor_dict.get(framework)
if framework_executor is None:
Expand Down
21 changes: 21 additions & 0 deletions runagent/sdk/server/framework/parlant.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
from pathlib import Path
from runagent.sdk.server.framework.generic import GenericExecutor


class ParlantExecutor(GenericExecutor):
"""
Executor for Parlant-based agents.

Parlant is a conversational AI framework that uses guidelines, journeys,
and tools to create reliable, controllable AI agents.

Since Parlant agents are async Python functions that return responses
or async generators for streaming, they work perfectly with the
GenericExecutor's existing capabilities.

Learn more: https://parlant.io
"""

def __init__(self, agent_dir: Path):
super().__init__(agent_dir)
# All functionality is inherited from GenericExecutor
1 change: 1 addition & 0 deletions runagent/utils/enums.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ class PythonicType(Enum):
LETTA = "letta"
LLAMAINDEX = "llamaindex"
OPENAI = "openai"
PARLANT = "parlant"


class WebhookType(Enum):
Expand Down
58 changes: 58 additions & 0 deletions templates/parlant/default/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
# Parlant RunAgent - Quick Start

A simple guide to run Parlant agents with RunAgent in under 2 minutes.

## Prerequisites

- Python 3.10+
- OpenAI API Key

## Setup & Run

### 1. Install Dependencies
```bash
pip install parlant runagent
```

### 2. Set OpenAI API Key
```bash
export OPENAI_API_KEY="your-openai-api-key-here"
```

### 3. Start Parlant Server (Terminal 1)
```bash
parlant-server run
```
*Keep this terminal running. Server will start at http://localhost:8800*

### 4. Start RunAgent (Terminal 2)
```bash
runagent serve /path/to/parlant/template
```
*This will create the agent with tools (calculator, time, weather) and start the RunAgent server*

### 5. Use with Any SDK

Go to the runagent templates https://github.com/runagent-dev/runagent/tree/main/templates to try

## Agent Capabilities

- **Current Time** - "What time is it?"
- **Calculator** - "Calculate 25 * 4 + 10"
- **Weather** - "What's the weather in Tokyo?"
- **General Chat** - Ask anything!

## Available Entrypoints

- `parlant_simple` - Non-streaming responses
- `parlant_stream` - Streaming responses

That's it! Your Parlant agent is now running and accessible from any RunAgent SDK.
## Support

For issues specific to this template:
- RunAgent GitHub Issues: https://github.com/runagent-dev/runagent/issues

For Parlant-specific questions:
- Parlant Discord: https://discord.gg/parlant
- Parlant GitHub Issues: https://github.com/emcie-co/parlant/issues
Loading