naftiko: 1.0.0-alpha2 info: label: Daytona Sandbox Process Execution description: 'Daytona Sandbox Process Execution. 24 operations. Lead operation: Get a list of all currently active ports. Self-contained Naftiko capability covering one Daytona business surface.' tags: - Daytona - Process - Interpreter - Port created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: DAYTONA_API_KEY: DAYTONA_API_KEY capability: consumes: - type: http namespace: sandbox-process-execution baseUri: https://proxy.app.daytona.io/toolbox description: Daytona Sandbox Process Execution business capability. Self-contained, no shared references. resources: - name: port path: /port operations: - name: getports method: GET description: Get a list of all currently active ports outputRawFormat: json outputParameters: - name: result type: object value: $. - name: port-port-in-use path: /port/{port}/in-use operations: - name: isportinuse method: GET description: Check if a specific port is currently in use outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-code-run path: /process/code-run operations: - name: coderun method: POST description: Execute Python, JavaScript, or TypeScript code and return output, exit code, and artifacts outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-execute path: /process/execute operations: - name: executecommand method: POST description: Execute a shell command and return the output and exit code outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-interpreter-context path: /process/interpreter/context operations: - name: listinterpretercontexts method: GET description: Returns information about all user-created interpreter contexts (excludes default context) outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createinterpretercontext method: POST description: Creates a new isolated interpreter context with optional working directory and language outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-interpreter-context-id path: /process/interpreter/context/{id} operations: - name: deleteinterpretercontext method: DELETE description: Deletes an interpreter context and shuts down its worker process outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-interpreter-execute path: /process/interpreter/execute operations: - name: executeinterpretercode method: GET description: Executes code in a specified context (or default context if not specified) via WebSocket streaming outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-pty path: /process/pty operations: - name: listptysessions method: GET description: Get a list of all active pseudo-terminal sessions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createptysession method: POST description: Create a new pseudo-terminal session with specified configuration outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-pty-sessionid path: /process/pty/{sessionId} operations: - name: getptysession method: GET description: Get detailed information about a specific pseudo-terminal session outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deleteptysession method: DELETE description: Delete a pseudo-terminal session and terminate its process outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-pty-sessionid-connect path: /process/pty/{sessionId}/connect operations: - name: connectptysession method: GET description: Establish a WebSocket connection to interact with a pseudo-terminal session outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-pty-sessionid-resize path: /process/pty/{sessionId}/resize operations: - name: resizeptysession method: POST description: Resize the terminal dimensions of a pseudo-terminal session outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-session path: /process/session operations: - name: listsessions method: GET description: Get a list of all active shell sessions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createsession method: POST description: Create a new shell session for command execution outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-session-entrypoint path: /process/session/entrypoint operations: - name: getentrypointsession method: GET description: Get details of an entrypoint session including its commands outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-session-entrypoint-logs path: /process/session/entrypoint/logs operations: - name: getentrypointlogs method: GET description: Get logs for a sandbox entrypoint session. Returns JSON with separated stdout/stderr for SDK >= 0.161.0, plain text otherwise. Supports WebSocket streaming. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-session-sessionid path: /process/session/{sessionId} operations: - name: getsession method: GET description: Get details of a specific session including its commands outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletesession method: DELETE description: Delete an existing shell session outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-session-sessionid-command-commandid path: /process/session/{sessionId}/command/{commandId} operations: - name: getsessioncommand method: GET description: Get details of a specific command within a session outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-session-sessionid-command-commandid-input path: /process/session/{sessionId}/command/{commandId}/input operations: - name: sendinput method: POST description: Send input data to a running command in a session for interactive execution outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-session-sessionid-command-commandid-logs path: /process/session/{sessionId}/command/{commandId}/logs operations: - name: getsessioncommandlogs method: GET description: Get logs for a specific command within a session. Returns JSON with separated stdout/stderr for SDK >= 0.167.0, plain text otherwise. Supports WebSocket streaming. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: process-session-sessionid-exec path: /process/session/{sessionId}/exec operations: - name: sessionexecutecommand method: POST description: Execute a command within an existing shell session outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer value: '{{env.DAYTONA_API_KEY}}' placement: header exposes: - type: rest namespace: sandbox-process-execution-rest port: 8080 description: REST adapter for Daytona Sandbox Process Execution. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/port name: port description: REST surface for port. operations: - method: GET name: getports description: Get a list of all currently active ports call: sandbox-process-execution.getports outputParameters: - type: object mapping: $. - path: /v1/port/{port}/in-use name: port-port-in-use description: REST surface for port-port-in-use. operations: - method: GET name: isportinuse description: Check if a specific port is currently in use call: sandbox-process-execution.isportinuse outputParameters: - type: object mapping: $. - path: /v1/process/code-run name: process-code-run description: REST surface for process-code-run. operations: - method: POST name: coderun description: Execute Python, JavaScript, or TypeScript code and return output, exit code, and artifacts call: sandbox-process-execution.coderun outputParameters: - type: object mapping: $. - path: /v1/process/execute name: process-execute description: REST surface for process-execute. operations: - method: POST name: executecommand description: Execute a shell command and return the output and exit code call: sandbox-process-execution.executecommand outputParameters: - type: object mapping: $. - path: /v1/process/interpreter/context name: process-interpreter-context description: REST surface for process-interpreter-context. operations: - method: GET name: listinterpretercontexts description: Returns information about all user-created interpreter contexts (excludes default context) call: sandbox-process-execution.listinterpretercontexts outputParameters: - type: object mapping: $. - method: POST name: createinterpretercontext description: Creates a new isolated interpreter context with optional working directory and language call: sandbox-process-execution.createinterpretercontext outputParameters: - type: object mapping: $. - path: /v1/process/interpreter/context/{id} name: process-interpreter-context-id description: REST surface for process-interpreter-context-id. operations: - method: DELETE name: deleteinterpretercontext description: Deletes an interpreter context and shuts down its worker process call: sandbox-process-execution.deleteinterpretercontext outputParameters: - type: object mapping: $. - path: /v1/process/interpreter/execute name: process-interpreter-execute description: REST surface for process-interpreter-execute. operations: - method: GET name: executeinterpretercode description: Executes code in a specified context (or default context if not specified) via WebSocket streaming call: sandbox-process-execution.executeinterpretercode outputParameters: - type: object mapping: $. - path: /v1/process/pty name: process-pty description: REST surface for process-pty. operations: - method: GET name: listptysessions description: Get a list of all active pseudo-terminal sessions call: sandbox-process-execution.listptysessions outputParameters: - type: object mapping: $. - method: POST name: createptysession description: Create a new pseudo-terminal session with specified configuration call: sandbox-process-execution.createptysession outputParameters: - type: object mapping: $. - path: /v1/process/pty/{sessionId} name: process-pty-sessionid description: REST surface for process-pty-sessionid. operations: - method: GET name: getptysession description: Get detailed information about a specific pseudo-terminal session call: sandbox-process-execution.getptysession outputParameters: - type: object mapping: $. - method: DELETE name: deleteptysession description: Delete a pseudo-terminal session and terminate its process call: sandbox-process-execution.deleteptysession outputParameters: - type: object mapping: $. - path: /v1/process/pty/{sessionId}/connect name: process-pty-sessionid-connect description: REST surface for process-pty-sessionid-connect. operations: - method: GET name: connectptysession description: Establish a WebSocket connection to interact with a pseudo-terminal session call: sandbox-process-execution.connectptysession outputParameters: - type: object mapping: $. - path: /v1/process/pty/{sessionId}/resize name: process-pty-sessionid-resize description: REST surface for process-pty-sessionid-resize. operations: - method: POST name: resizeptysession description: Resize the terminal dimensions of a pseudo-terminal session call: sandbox-process-execution.resizeptysession outputParameters: - type: object mapping: $. - path: /v1/process/session name: process-session description: REST surface for process-session. operations: - method: GET name: listsessions description: Get a list of all active shell sessions call: sandbox-process-execution.listsessions outputParameters: - type: object mapping: $. - method: POST name: createsession description: Create a new shell session for command execution call: sandbox-process-execution.createsession outputParameters: - type: object mapping: $. - path: /v1/process/session/entrypoint name: process-session-entrypoint description: REST surface for process-session-entrypoint. operations: - method: GET name: getentrypointsession description: Get details of an entrypoint session including its commands call: sandbox-process-execution.getentrypointsession outputParameters: - type: object mapping: $. - path: /v1/process/session/entrypoint/logs name: process-session-entrypoint-logs description: REST surface for process-session-entrypoint-logs. operations: - method: GET name: getentrypointlogs description: Get logs for a sandbox entrypoint session. Returns JSON with separated stdout/stderr for SDK >= 0.161.0, plain text otherwise. Supports WebSocket streaming. call: sandbox-process-execution.getentrypointlogs outputParameters: - type: object mapping: $. - path: /v1/process/session/{sessionId} name: process-session-sessionid description: REST surface for process-session-sessionid. operations: - method: GET name: getsession description: Get details of a specific session including its commands call: sandbox-process-execution.getsession outputParameters: - type: object mapping: $. - method: DELETE name: deletesession description: Delete an existing shell session call: sandbox-process-execution.deletesession outputParameters: - type: object mapping: $. - path: /v1/process/session/{sessionId}/command/{commandId} name: process-session-sessionid-command-commandid description: REST surface for process-session-sessionid-command-commandid. operations: - method: GET name: getsessioncommand description: Get details of a specific command within a session call: sandbox-process-execution.getsessioncommand outputParameters: - type: object mapping: $. - path: /v1/process/session/{sessionId}/command/{commandId}/input name: process-session-sessionid-command-commandid-input description: REST surface for process-session-sessionid-command-commandid-input. operations: - method: POST name: sendinput description: Send input data to a running command in a session for interactive execution call: sandbox-process-execution.sendinput outputParameters: - type: object mapping: $. - path: /v1/process/session/{sessionId}/command/{commandId}/logs name: process-session-sessionid-command-commandid-logs description: REST surface for process-session-sessionid-command-commandid-logs. operations: - method: GET name: getsessioncommandlogs description: Get logs for a specific command within a session. Returns JSON with separated stdout/stderr for SDK >= 0.167.0, plain text otherwise. Supports WebSocket streaming. call: sandbox-process-execution.getsessioncommandlogs outputParameters: - type: object mapping: $. - path: /v1/process/session/{sessionId}/exec name: process-session-sessionid-exec description: REST surface for process-session-sessionid-exec. operations: - method: POST name: sessionexecutecommand description: Execute a command within an existing shell session call: sandbox-process-execution.sessionexecutecommand outputParameters: - type: object mapping: $. - type: mcp namespace: sandbox-process-execution-mcp port: 9090 transport: http description: MCP adapter for Daytona Sandbox Process Execution. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: daytona-get-active-ports description: Get a list of all currently active ports hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.getports outputParameters: - type: object mapping: $. - name: daytona-check-if-port-is-in-use description: Check if a specific port is currently in use hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.isportinuse outputParameters: - type: object mapping: $. - name: daytona-execute-code description: Execute Python, JavaScript, or TypeScript code and return output, exit code, and artifacts hints: readOnly: false destructive: false idempotent: false call: sandbox-process-execution.coderun outputParameters: - type: object mapping: $. - name: daytona-execute-a-command description: Execute a shell command and return the output and exit code hints: readOnly: false destructive: false idempotent: false call: sandbox-process-execution.executecommand outputParameters: - type: object mapping: $. - name: daytona-list-all-user-created-interpreter-contexts description: Returns information about all user-created interpreter contexts (excludes default context) hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.listinterpretercontexts outputParameters: - type: object mapping: $. - name: daytona-create-a-new-interpreter-context description: Creates a new isolated interpreter context with optional working directory and language hints: readOnly: false destructive: false idempotent: false call: sandbox-process-execution.createinterpretercontext outputParameters: - type: object mapping: $. - name: daytona-delete-an-interpreter-context description: Deletes an interpreter context and shuts down its worker process hints: readOnly: false destructive: true idempotent: true call: sandbox-process-execution.deleteinterpretercontext outputParameters: - type: object mapping: $. - name: daytona-execute-code-in-an-interpreter-context description: Executes code in a specified context (or default context if not specified) via WebSocket streaming hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.executeinterpretercode outputParameters: - type: object mapping: $. - name: daytona-list-all-pty-sessions description: Get a list of all active pseudo-terminal sessions hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.listptysessions outputParameters: - type: object mapping: $. - name: daytona-create-a-new-pty-session description: Create a new pseudo-terminal session with specified configuration hints: readOnly: false destructive: false idempotent: false call: sandbox-process-execution.createptysession outputParameters: - type: object mapping: $. - name: daytona-get-pty-session-information description: Get detailed information about a specific pseudo-terminal session hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.getptysession outputParameters: - type: object mapping: $. - name: daytona-delete-a-pty-session description: Delete a pseudo-terminal session and terminate its process hints: readOnly: false destructive: true idempotent: true call: sandbox-process-execution.deleteptysession outputParameters: - type: object mapping: $. - name: daytona-connect-to-pty-session-via-websocket description: Establish a WebSocket connection to interact with a pseudo-terminal session hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.connectptysession outputParameters: - type: object mapping: $. - name: daytona-resize-a-pty-session description: Resize the terminal dimensions of a pseudo-terminal session hints: readOnly: false destructive: false idempotent: false call: sandbox-process-execution.resizeptysession outputParameters: - type: object mapping: $. - name: daytona-list-all-sessions description: Get a list of all active shell sessions hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.listsessions outputParameters: - type: object mapping: $. - name: daytona-create-a-new-session description: Create a new shell session for command execution hints: readOnly: false destructive: false idempotent: false call: sandbox-process-execution.createsession outputParameters: - type: object mapping: $. - name: daytona-get-entrypoint-session-details description: Get details of an entrypoint session including its commands hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.getentrypointsession outputParameters: - type: object mapping: $. - name: daytona-get-entrypoint-logs description: Get logs for a sandbox entrypoint session. Returns JSON with separated stdout/stderr for SDK >= 0.161.0, plain text otherwise. Supports WebSocket streaming. hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.getentrypointlogs outputParameters: - type: object mapping: $. - name: daytona-get-session-details description: Get details of a specific session including its commands hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.getsession outputParameters: - type: object mapping: $. - name: daytona-delete-a-session description: Delete an existing shell session hints: readOnly: false destructive: true idempotent: true call: sandbox-process-execution.deletesession outputParameters: - type: object mapping: $. - name: daytona-get-session-command-details description: Get details of a specific command within a session hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.getsessioncommand outputParameters: - type: object mapping: $. - name: daytona-send-input-to-command description: Send input data to a running command in a session for interactive execution hints: readOnly: false destructive: false idempotent: false call: sandbox-process-execution.sendinput outputParameters: - type: object mapping: $. - name: daytona-get-session-command-logs description: Get logs for a specific command within a session. Returns JSON with separated stdout/stderr for SDK >= 0.167.0, plain text otherwise. Supports WebSocket streaming. hints: readOnly: true destructive: false idempotent: true call: sandbox-process-execution.getsessioncommandlogs outputParameters: - type: object mapping: $. - name: daytona-execute-command-in-session description: Execute a command within an existing shell session hints: readOnly: false destructive: false idempotent: false call: sandbox-process-execution.sessionexecutecommand outputParameters: - type: object mapping: $.