mirror of https://github.com/kortix-ai/suna.git
Merge branch 'main' of github.com:escapade-mckv/suna
This commit is contained in:
commit
83c53af31b
|
@ -66,14 +66,14 @@ jobs:
|
|||
docker compose build
|
||||
docker compose up -d
|
||||
|
||||
- name: Deploy to prod
|
||||
if: steps.get_tag_name.outputs.environment == 'prod'
|
||||
uses: appleboy/ssh-action@v1
|
||||
with:
|
||||
host: ${{ secrets.PROD_HOST }}
|
||||
username: ${{ secrets.PROD_USERNAME }}
|
||||
key: ${{ secrets.PROD_KEY }}
|
||||
script: |
|
||||
cd /mnt/gluster-shared/data/infra/suna
|
||||
set -a; source .env; set +a
|
||||
docker stack deploy -c docker-compose.yml suna
|
||||
# - name: Deploy to prod
|
||||
# if: steps.get_tag_name.outputs.environment == 'prod'
|
||||
# uses: appleboy/ssh-action@v1
|
||||
# with:
|
||||
# host: ${{ secrets.PROD_HOST }}
|
||||
# username: ${{ secrets.PROD_USERNAME }}
|
||||
# key: ${{ secrets.PROD_KEY }}
|
||||
# script: |
|
||||
# cd /mnt/gluster-shared/data/infra/suna
|
||||
# set -a; source .env; set +a
|
||||
# docker stack deploy -c docker-compose.yml suna
|
||||
|
|
|
@ -15,8 +15,8 @@ You are a full-spectrum autonomous agent capable of executing complex tasks acro
|
|||
- All file operations (create, read, write, delete) expect paths relative to "/workspace"
|
||||
## 2.2 SYSTEM INFORMATION
|
||||
- BASE ENVIRONMENT: Python 3.11 with Debian Linux (slim)
|
||||
- UTC DATE: {datetime.datetime.now(datetime.timezone.utc).strftime('%Y-%m-%d')}
|
||||
- UTC TIME: {datetime.datetime.now(datetime.timezone.utc).strftime('%H:%M:%S')}
|
||||
- UTC DATE: {{current_date}}
|
||||
- UTC TIME: {{current_time}}
|
||||
- CURRENT YEAR: 2025
|
||||
- TIME CONTEXT: When searching for latest news or time-sensitive information, ALWAYS use these current date/time values as reference points. Never use outdated information or assume different dates.
|
||||
- INSTALLED TOOLS:
|
||||
|
@ -1738,7 +1738,10 @@ Is there anything specific you'd like me to adjust or explain in more detail abo
|
|||
|
||||
|
||||
def get_gemini_system_prompt():
|
||||
return SYSTEM_PROMPT + EXAMPLE
|
||||
return SYSTEM_PROMPT.format(
|
||||
current_date=datetime.datetime.now(datetime.timezone.utc).strftime('%Y-%m-%d'),
|
||||
current_time=datetime.datetime.now(datetime.timezone.utc).strftime('%H:%M:%S')
|
||||
) + EXAMPLE
|
||||
|
||||
|
||||
# if __name__ == "__main__":
|
||||
|
|
|
@ -15,8 +15,8 @@ You are a full-spectrum autonomous agent capable of executing complex tasks acro
|
|||
- All file operations (create, read, write, delete) expect paths relative to "/workspace"
|
||||
## 2.2 SYSTEM INFORMATION
|
||||
- BASE ENVIRONMENT: Python 3.11 with Debian Linux (slim)
|
||||
- UTC DATE: {datetime.datetime.now(datetime.timezone.utc).strftime('%Y-%m-%d')}
|
||||
- UTC TIME: {datetime.datetime.now(datetime.timezone.utc).strftime('%H:%M:%S')}
|
||||
- UTC DATE: {{current_date}}
|
||||
- UTC TIME: {{current_time}}
|
||||
- CURRENT YEAR: 2025
|
||||
- TIME CONTEXT: When searching for latest news or time-sensitive information, ALWAYS use these current date/time values as reference points. Never use outdated information or assume different dates.
|
||||
- INSTALLED TOOLS:
|
||||
|
@ -31,21 +31,21 @@ You are a full-spectrum autonomous agent capable of executing complex tasks acro
|
|||
- PERMISSIONS: sudo privileges enabled by default
|
||||
## 2.3 OPERATIONAL CAPABILITIES
|
||||
You have the ability to execute operations using both Python and CLI tools:
|
||||
### 2.2.1 FILE OPERATIONS
|
||||
### 2.3.1 FILE OPERATIONS
|
||||
- Creating, reading, modifying, and deleting files
|
||||
- Organizing files into directories/folders
|
||||
- Converting between file formats
|
||||
- Searching through file contents
|
||||
- Batch processing multiple files
|
||||
|
||||
### 2.2.2 DATA PROCESSING
|
||||
### 2.3.2 DATA PROCESSING
|
||||
- Scraping and extracting data from websites
|
||||
- Parsing structured data (JSON, CSV, XML)
|
||||
- Cleaning and transforming datasets
|
||||
- Analyzing data using Python libraries
|
||||
- Generating reports and visualizations
|
||||
|
||||
### 2.2.3 SYSTEM OPERATIONS
|
||||
### 2.3.3 SYSTEM OPERATIONS
|
||||
- Running CLI commands and scripts
|
||||
- Compressing and extracting archives (zip, tar)
|
||||
- Installing necessary packages and dependencies
|
||||
|
@ -58,14 +58,14 @@ You have the ability to execute operations using both Python and CLI tools:
|
|||
* Essential for sharing web applications, APIs, and other network services
|
||||
* Always expose ports when you need to show running services to users
|
||||
|
||||
### 2.2.4 WEB SEARCH CAPABILITIES
|
||||
### 2.3.4 WEB SEARCH CAPABILITIES
|
||||
- Searching the web for up-to-date information with direct question answering
|
||||
- Retrieving relevant images related to search queries
|
||||
- Getting comprehensive search results with titles, URLs, and snippets
|
||||
- Finding recent news, articles, and information beyond training data
|
||||
- Scraping webpage content for detailed information extraction when needed
|
||||
|
||||
### 2.2.5 BROWSER TOOLS AND CAPABILITIES
|
||||
### 2.3.5 BROWSER TOOLS AND CAPABILITIES
|
||||
- BROWSER OPERATIONS:
|
||||
* Navigate to URLs and manage history
|
||||
* Fill forms and submit data
|
||||
|
@ -76,7 +76,7 @@ You have the ability to execute operations using both Python and CLI tools:
|
|||
* YOU CAN DO ANYTHING ON THE BROWSER - including clicking on elements, filling forms, submitting data, etc.
|
||||
* The browser is in a sandboxed environment, so nothing to worry about.
|
||||
|
||||
### 2.2.6 VISUAL INPUT
|
||||
### 2.3.6 VISUAL INPUT
|
||||
- You MUST use the 'see_image' tool to see image files. There is NO other way to access visual information.
|
||||
* Provide the relative path to the image in the `/workspace` directory.
|
||||
* Example:
|
||||
|
@ -89,7 +89,7 @@ You have the ability to execute operations using both Python and CLI tools:
|
|||
* Supported formats include JPG, PNG, GIF, WEBP, and other common image formats.
|
||||
* Maximum file size limit is 10 MB.
|
||||
|
||||
### 2.2.7 IMAGE GENERATION & EDITING
|
||||
### 2.3.7 IMAGE GENERATION & EDITING
|
||||
- Use the 'image_edit_or_generate' tool to generate new images from a prompt or to edit an existing image file (no mask support).
|
||||
* To generate a new image, set mode="generate" and provide a descriptive prompt.
|
||||
* To edit an existing image, set mode="edit", provide the prompt, and specify the image_path.
|
||||
|
@ -113,7 +113,7 @@ You have the ability to execute operations using both Python and CLI tools:
|
|||
* You must use edit mode when the user asks you to edit an image or change an existing image in any way.
|
||||
* Once the image is generated or edited, you must display the image using the ask tool.
|
||||
|
||||
### 2.2.8 DATA PROVIDERS
|
||||
### 2.3.8 DATA PROVIDERS
|
||||
- You have access to a variety of data providers that you can use to get data for your tasks.
|
||||
- You can use the 'get_data_provider_endpoints' tool to get the endpoints for a specific data provider.
|
||||
- You can use the 'execute_data_provider_call' tool to execute a call to a specific data provider endpoint.
|
||||
|
@ -650,4 +650,7 @@ def get_system_prompt():
|
|||
'''
|
||||
Returns the system prompt
|
||||
'''
|
||||
return SYSTEM_PROMPT
|
||||
return SYSTEM_PROMPT.format(
|
||||
current_date=datetime.datetime.now(datetime.timezone.utc).strftime('%Y-%m-%d'),
|
||||
current_time=datetime.datetime.now(datetime.timezone.utc).strftime('%H:%M:%S')
|
||||
)
|
|
@ -1,7 +1,6 @@
|
|||
import os
|
||||
import json
|
||||
import re
|
||||
from uuid import uuid4
|
||||
import asyncio
|
||||
from typing import Optional
|
||||
|
||||
# from agent.tools.message_tool import MessageTool
|
||||
|
@ -633,4 +632,4 @@ async def run_agent(
|
|||
if generation:
|
||||
generation.end(output=full_response)
|
||||
|
||||
langfuse.flush()
|
||||
asyncio.create_task(asyncio.to_thread(lambda: langfuse.flush()))
|
||||
|
|
Loading…
Reference in New Issue