con un clic
autobot-provider
Add new LLM providers to Autobot with proper integration
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Menú
Add new LLM providers to Autobot with proper integration
Instalar con Codex o Claude Copia este prompt, pégalo en Codex, Claude u otro asistente, y deja que revise la página de la skill y la instale por ti.
Basado en la clasificación ocupacional SOC
| name | autobot-provider |
| description | Add new LLM providers to Autobot with proper integration |
| tags | ["provider","llm","integration"] |
| metadata | {"scope":"feature-development"} |
Create provider implementation:
src/autobot/providers/<name>_provider.crHttpProvider or implement Provider interfaceRegister provider:
ProviderSpec to the PROVIDERS list in src/autobot/providers/registry.cr.Add configuration schema:
src/autobot/config/schema.cr with provider config if needed.Create tests:
spec/autobot/providers/<name>_provider_spec.crregistry_spec.cr.Add documentation:
docs/<name>.md - Provider setup guide.docs/providers.md - Add to provider comparison.# src/autobot/providers/<name>_provider.cr
module Autobot
module Providers
class <Name>Provider < HttpProvider
def initialize(
api_key : String,
api_base : String? = nil,
@model : String = "default-model",
@extra_headers = {} of String => String,
provider_name : String? = nil,
)
super(api_key, api_base)
@gateway = Providers.find_gateway(provider_name, api_key, api_base)
end
def chat(
messages : Array(Hash(String, JSON::Any)),
tools : Array(Hash(String, JSON::Any))? = nil,
model : String? = nil,
max_tokens : Int32 = DEFAULT_MAX_TOKENS,
temperature : Float64 = DEFAULT_TEMPERATURE,
) : Response
# Implement API-specific logic here
# Or call super for OpenAI-compatible APIs
super
end
def default_model : String
@model
end
end
end
end
For providers with non-standard APIs (like AWS Bedrock), inherit directly from Provider:
class BedrockProvider < Provider
# Implement abstract methods directly
# See src/autobot/providers/bedrock_provider.cr for full example
end
Add to PROVIDERS in src/autobot/providers/registry.cr:
ProviderSpec.new(
name: "<name>",
keywords: ["<keyword1>", "<keyword2>"],
display_name: "<Display Name>",
api_url: "https://api.<provider>.com/v1/chat/completions",
)
Each provider doc must include:
Use this skill when:
Related Skills: autobot-test
Create proper releases following EVALinux standards with signed tags and changelogs
Testing guidelines for Autobot with AAA pattern and Crystal spec best practices
Create new tools for Autobot agent with proper schema and safety
Scheduling rules for reminders and recurring tasks.