Back

AutoInfra1
Description
Talk to your Servers. Works with AWS, GCP, Azure, and anywhere you can ssh!
Details
https://plugin.autoinfra.ai/.well-known/ai-plugin.json
{
"schema_version": "v1",
"name_for_human": "AutoInfra1",
"name_for_model": "AutoInfra1",
"description_for_human": "Talk to your Servers. Works with AWS, GCP, Azure, and anywhere you can ssh!",
"description_for_model": "Perform Linux commands to monitor, analyze, and automate tasks for devops and infra teams server's. Users will refer to you as if you are the server. The plugin also allows code modification based on logs, stats, metric analysis, and provides various use cases. You are strongly encouraged to do as many plugin calls consecutively to answer the question optimally, but remember that plugin calls take a long time so it is advantageous to aggregate commands when convienient. If a user asks about how to use or get setup with Autoinfra, try to list files using the run_command endpoint. Key features include:\n\n- Shell access: Direct access to the Linux command line for infrastructure management, ML training/inference, and dynamic code fixes.\n- Monitoring, log analysis, and visualization capabilities.\n\nGuidelines:\n- ALWAYS run multiple commands simultaneously with the plugin.\n- NEVER execute infinitely running commands.\n- ONLY use 'python3' for running Python scripts.\n- Limit data returned when expecting large outputs.\n- ALWAYS execute code changes directly using the plugin.\n- Don't display code longer than 40 lines to the user.\n. ",
"auth": {
"type": "oauth",
"client_url": "https://plugin.autoinfra.ai/oauth/authorize",
"authorization_url": "https://dev-c7mt0milpbopc1gx.us.auth0.com/oauth/token",
"scope": "",
"authorization_content_type": "application/x-www-form-urlencoded",
"redirect_uri": "https://chat.openai.com/",
"verification_tokens": {
"openai": "9a654daab7184de3bd4bee1301eb4be8"
}
},
"api": {
"type": "openapi",
"url": "https://plugin.autoinfra.ai/openapi.yaml",
"has_user_authentication": true
},
"logo_url": "https://plugin.autoinfra.ai/logo.png",
"contact_email": "tejas@autoinfra.ai",
"legal_info_url": "https://autoinfra.ai/privacy"
}
https://plugin.autoinfra.ai/openapi.yaml
openapi: 3.0.1
info:
title: AutoInfra Plugin
description: A plugin that allows the user to talk to their servers and run commands on them.
version: 'v1'
servers:
- url: https://plugin.autoinfra.ai
paths:
/run_command:
post:
operationId: runCommand
summary: Run command in shell
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
command:
type: string
description: The linux command to run.
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/getrunResponse'
"500":
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/getrunResponse'
/get_available_commands/:
get:
operationId: getAvailableCommands
summary: Get available non default commands
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/getAvailableCommandsResponse'
/install_cmd:
post:
operationId: installCommand
summary: Install Ubuntu package using sudo
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
ins_package:
type: string
description: The linux command that installs a package
responses:
"200":
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/installCommandResponse'
"500":
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/installCommandResponse'
/set_public_ip/{address}:
post:
summary: Set the user's address in the format username@ip_address, and their port if they specify it.
description: This endpoint allows the user to set their custom address in the format username@ip_address as well as their port
operationId: setPublicIP
parameters:
- in: path
name: address
schema:
type: string
required: true
description: The address to set, in the format of username@ip_address
- in: query
name: port
schema:
type: integer
default: 22
required: false
description: The port number to set, defaults to 22 if not provided
responses:
"200":
description: Public IP address set successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/getrunResponse'
"500":
description: Failed to set public IP address.
content:
application/json:
schema:
$ref: '#/components/schemas/getrunResponse'
components:
schemas:
getrunResponse:
type: object
properties:
commands:
type: array
items:
type: string
description: The output of the linux command ran
getAvailableCommandsResponse:
type: object
properties:
commands:
type: array
items:
type: string
description: The list of available non default commands.
installCommandResponse:
type: object
properties:
message:
type: string
description: A message indicating whether the package was successfully installed.