Skip to content

v0.100.0

Latest
Compare
Choose a tag to compare
@Tpuljak Tpuljak released this 28 Apr 19:15
· 52 commits to main since this release

Daytona AI

Run AI Code.
Secure and Elastic Infrastructure for Running Your AI-Generated Code.

Documentation · Report Bug · Request Feature · Join our Slack · Connect on X


Installation

Python SDK

pip install daytona-sdk

TypeScript SDK

npm install @daytonaio/sdk

Features

  • Lightning-Fast Infrastructure: Sub-90ms Sandbox creation from code to execution.
  • Separated & Isolated Runtime: Execute AI-generated code with zero risk to your infrastructure.
  • Massive Parallelization for Concurrent AI Workflows: Fork Sandbox filesystem and memory state (Coming soon!)
  • Programmatic Control: File, Git, LSP, and Execute API
  • Unlimited Persistence: Your Sandboxes can live forever
  • OCI/Docker Compatibility: Use any OCI/Docker image to create a Sandbox

Quick Start

  1. Create an account at https://app.daytona.io
  2. Generate a new API key
  3. Follow the Getting Started docs to start using the Daytona SDK

Creating your first Sandbox

Python SDK

from daytona_sdk import Daytona, DaytonaConfig, CreateSandboxParams

# Initialize the Daytona client
daytona = Daytona(DaytonaConfig(api_key="YOUR_API_KEY"))

# Create the Sandbox instance
sandbox = daytona.create(CreateSandboxParams(language="python"))

# Run code securely inside the Sandbox
response = sandbox.process.code_run('print("Sum of 3 and 4 is " + str(3 + 4))')
if response.exit_code != 0:
    print(f"Error running code: {response.exit_code} {response.result}")
else:
    print(response.result)

# Clean up the Sandbox
daytona.remove(sandbox)

Typescript SDK

import { Daytona } from '@daytonaio/sdk'

async function main() {
  // Initialize the Daytona client
  const daytona = new Daytona({
    apiKey: 'YOUR_API_KEY',
  })

  let sandbox
  try {
    // Create the Sandbox instance
    sandbox = await daytona.create({
      language: 'python',
    })
    // Run code securely inside the Sandbox
    const response = await sandbox.process.codeRun('print("Sum of 3 and 4 is " + str(3 + 4))')
    if (response.exitCode !== 0) {
      console.error('Error running code:', response.exitCode, response.result)
    } else {
      console.log(response.result)
    }
  } catch (error) {
    console.error('Sandbox flow error:', error)
  } finally {
    if (sandbox) await daytona.remove(sandbox)
  }
}

main().catch(console.error)