kursku/skills/amazon-alexa
Claude Code and agent skill by kursku/skills
- community
Checking that the SKILL.md file is still in the repository.
Integracao completa com Amazon Alexa para criar skills de voz inteligentes, transformar Alexa em assistente com Claude como cerebro (projeto Auri) e integrar com AWS ecosystem (Lambda, DynamoDB,...
Install
npx vskill@latest install kursku/skills/amazon-alexaSKILL.md
AMAZON ALEXA — Voz Inteligente com Claude
Overview
Integracao completa com Amazon Alexa para criar skills de voz inteligentes, transformar Alexa em assistente com Claude como cerebro (projeto Auri) e integrar com AWS ecosystem (Lambda, DynamoDB, Polly, Transcribe, Lex, Smart Home).
When to Use This Skill
- When you need specialized assistance with this domain
Do Not Use This Skill When
- The task is unrelated to amazon alexa
- A simpler, more specific tool can handle the request
- The user needs general-purpose assistance without domain expertise
How It Works
Voce e o especialista em Alexa e AWS Voice. Missao: transformarqualquer dispositivo Alexa em assistente ultra-inteligente usandoClaude como LLM backend, com voz neural, memoria persistente econtrole de Smart Home. Projeto-chave: AURI.
1. Visao Geral Do Ecossistema
Componentes Da Arquitetura Auri
| Componente | Servico AWS | Funcao | |
|---|---|---|---|
| Voz → Texto | Alexa ASR nativo | Reconhecimento de fala | |
| NLU | ASK Interaction Model + Lex V2 | Extrair intent e slots | |
| Backend | AWS Lambda (Python/Node.js) | Logica e orquestracao | |
| LLM | Claude API (Anthropic) | Inteligencia e respostas | |
| Persistencia | Amazon DynamoDB | Historico e preferencias | |
| Texto → Voz | Amazon Polly (neural) | Fala natural da Auri | |
| Interface Visual | APL (Alexa Presentation Language) | Telas em Echo Show | |
| Smart Home | Alexa Smart Home API | Controle de dispositivos | |
| Automacao | Alexa Routines API | Rotinas inteligentes |
2.1 Pre-Requisitos
Criar Skill Com Template
ask new \ --template hello-world \ --skill-name auri \ --language pt-BR
└── .Ask/Ask-Resources.Json
{ "interactionModel": { "languageModel": { "invocationName": "auri" } } }
{ "interactionModel": { "languageModel": { "invocationName": "auri", "intents": [ {"name": "AMAZON.HelpIntent"}, {"name": "AMAZON.StopIntent"}, {"name": "AMAZON.CancelIntent"}, {"name": "AMAZON.FallbackIntent"}, { "name": "ChatIntent", "slots": [{"name": "query", "type": "AMAZON.SearchQuery"}], "samples": [ "{query}", "me ajuda com {query}", "quero saber sobre {query}", "o que voce sabe sobre {query}", "explique {query}", "pesquise {query}" ] }, { "name": "SmartHomeIntent", "slots": [ {"name": "device", "type": "AMAZON.Room"}, {"name": "action", "type": "ActionType"} ], "samples": [ "{action} a {device}", "controla {device}", "acende {device}", "apaga {device}" ] }, { "name": "RoutineIntent", "slots": [{"name": "routine", "type": "RoutineType"}], "samples": [ "ativa rotina {routine}", "executa {routine}", "modo {routine}" ] } ], "types": [ { "name": "ActionType", "values": [ {"name": {"value": "liga", "synonyms": ["acende", "ativa", "liga"]}}, {"name": {"value": "desliga", "synonyms": ["apaga", "desativa", "desliga"]}} ] }, { "name": "RoutineType", "values": [ {"name": {"value": "bom dia", "synonyms": ["acordar", "manhã"]}}, {"name": {"value": "boa noite", "synonyms": ["dormir", "descansar"]}}, {"name": {"value": "trabalho", "synonyms": ["trabalhar", "foco"]}}, {"name": {"value": "sair", "synonyms": ["saindo", "goodbye"]}} ] } ] } } }
import os import time import anthropic import boto3 from ask_sdk_core.skill_builder import SkillBuilder from ask_sdk_core.handler_input import HandlerInput from ask_sdk_core.utils import is_intent_name, is_request_type from ask_sdk_model import Response from ask_sdk_dynamodb_persistence_adapter import DynamoDbPersistenceAdapter
============================================================
@sb.request_handler(can_handle_func=is_request_type("LaunchRequest")) def launch_handler(handler_input: HandlerInput) -> Response: attrs = handler_input.attributes_manager.persistent_attributes name = attrs.get("name", "") greeting = f"Oi{', ' + name if name else ''}! Eu sou a Auri. Como posso ajudar?" return (handler_input.response_builder .speak(greeting).ask("Em que posso ajudar?").response)
@sb.request_handler(can_handle_func=is_intent_name("ChatIntent")) def chat_handler(handler_input: HandlerInput) -> Response: try: # Obter query slots = handler_input.request_envelope.request.intent.slots query = slots["query"].value if slots.get("query") else None if not query: return (handler_input.response_builder .speak("Pode repetir? Nao entendi bem.").ask("Pode repetir?").response)
# Carregar historico attrs = handler_input.attributes_manager.persistent_attributes history = attrs.get("history", [])
# Montar mensagens para Claude messages = history[-MAX_HISTORY:] messages.append({"role": "user", "content": query})
# Chamar Claude client = anthropic.Anthropic(api_key=os.environ["ANTHROPIC_API_KEY"]) response = client.messages.create( model=CLAUDE_MODEL, max_tokens=512, system=AURI_SYSTEM_PROMPT, messages=messages ) reply = response.content[0].text
# Truncar para nao exceder timeout if len(reply) > MAX_RESPONSE_CHARS: reply = reply[:MAX_RESPONSE_CHARS] + "... Quer que eu continue?"
# Salvar historico history.append({"role": "user", "content": query}) history.append({"role": "assistant", "content": reply}) attrs["history"] = history[-50:] # Manter ultimas 50 handler_input.attributes_manager.persistent_attributes = attrs handler_input.attributes_manager.save_persist
4.2 Variaveis De Ambiente Lambda
4.3 Requirements.Txt
5.1 Criar Tabela
5.2 Schema Do Usuario
5.3 Ttl Automatico (Expirar Dados Antigos)
6.1 Vozes Disponiveis (Portugues)
| Voice | Idioma | Tipo | Recomendado | |
|---|---|---|---|---|
Vitoria | pt-BR | Neural | ✅ Auri PT-BR | |
Camila | pt-BR | Neural | Alternativa | |
Ricardo | pt-BR | Standard | Masculino | |
Ines | pt-PT | Neural | Portugal |
6.2 Integrar Polly Na Resposta
6.3 Ssml Para Controle De Voz
7.1 Template De Chat
7.2 Adicionar Apl Na Resposta
8.1 Ativar Smart Home Skill
No skill.json, adicionar:
8.2 Handler De Smart Home
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingpacks/global-skillshare-import/wave-001/amazon-alexa/SKILL.md
Popularity
- Repository stars
- 78
- Repository forks
- 28
- 7-day trend score
- 22
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/kursku/skills/amazon-alexa)