Habilidades routeros-app-yaml
📦

routeros-app-yaml

Seguro ⚙️ Comandos externos🌐 Acesso à rede

Escrever configurações YAML de contêiner RouterOS

Criar e validar configurações YAML para aplicações de contêiner MikroTik RouterOS. Esta habilidade ajuda você a definir serviços, portas, volumes e redes para o subsistema /app do RouterOS sem precisar de conhecimento em docker-compose.

Suporta: Claude Codex Code(CC)
🥉 73 Bronze
1

Baixar o ZIP da skill

2

Upload no Claude

Vá em Configurações → Capacidades → Skills → Upload skill

3

Ative e comece a usar

Testar

A utilizar "routeros-app-yaml". Criar um YAML /app para um contêiner Home Assistant com armazenamento persistente na porta 8123

Resultado esperado:

  • Um arquivo YAML com seções name, services, volumes e networks.
  • O serviço web usa a imagem ghcr.io/home-assistant/home-assistant com a porta 8123 mapeada.
  • Um volume nomeado home-assistant-config é montado em /config.
  • A política de reinicialização é definida como always para confiabilidade.

A utilizar "routeros-app-yaml". Mostrar a diferença entre formatos de porta antigos e novos no YAML RouterOS

Resultado esperado:

  • O estilo OCI antigo usa uma barra antes do protocolo: 8080:80/tcp
  • O novo estilo RouterOS 7.23 usa dois pontos: 8080:80:web:tcp
  • Ambos os formatos são válidos. Implantações novas a partir do 7.23beta2 devem preferir o estilo com dois pontos.
  • A sintaxe de forma longa com campos target, published e protocol funciona em todas as versões.

Auditoria de Segurança

Seguro
v2 • 4/16/2026

All 159 static analysis findings are false positives. The skill contains only documentation and YAML configuration examples for RouterOS container applications. There is no executable code, no actual shell commands, no network requests, and no credential handling. The static scanner flagged YAML examples in markdown code blocks as security risks (for example, backticks in YAML values, example URLs in documentation, and placeholder IP addresses in configuration samples). After manual review, no genuine security issues were found.

2
Arquivos analisados
453
Linhas analisadas
5
achados
2
Total de auditorias
Problemas de Baixo Risco (3)
False positive: External command detection in YAML documentation
The static scanner flagged 132 locations as external command execution. These are YAML configuration examples and markdown documentation, not executable code. Examples include shell commands in YAML entrypoint values (for example, nginx -g daemon off in SKILL.md line 32 and references/examples.md line 31) and backtick-formatted text in markdown. No actual command execution exists.
False positive: Network pattern detection in documentation URLs
The static scanner flagged 13 locations as network risks including hardcoded URLs, hardcoded IP addresses, and fetch API calls. All are documentation examples: example.com URLs in YAML samples (references/examples.md lines 19, 21), example IP addresses like 192.168.1.1 in port mapping examples (SKILL.md line 110, references/examples.md line 145), and TypeScript fetch snippets showing RouterOS REST API usage (SKILL.md lines 216, 222). No actual network requests are made by this skill.
False positive: Blocker patterns misidentified in YAML content
The static scanner flagged weak cryptographic algorithms, Windows SAM database references, LLM role token injection, and system reconnaissance patterns. None of these patterns exist in the actual file content. The scanner likely misidentified YAML property names or markdown formatting as security threats.

Fatores de risco

⚙️ Comandos externos (132)
references/examples.md:5-12 references/examples.md:12-16 references/examples.md:16-105 references/examples.md:105-109 references/examples.md:109-134 references/examples.md:134-138 references/examples.md:138-161 references/examples.md:161-165 references/examples.md:165-176 references/examples.md:31 SKILL.md:8 SKILL.md:8 SKILL.md:8 SKILL.md:12 SKILL.md:15 SKILL.md:16 SKILL.md:17 SKILL.md:19 SKILL.md:25 SKILL.md:26 SKILL.md:30 SKILL.md:32 SKILL.md:33 SKILL.md:33 SKILL.md:33 SKILL.md:39 SKILL.md:40 SKILL.md:41 SKILL.md:42 SKILL.md:43 SKILL.md:43 SKILL.md:44 SKILL.md:44 SKILL.md:45 SKILL.md:45 SKILL.md:46 SKILL.md:47 SKILL.md:48 SKILL.md:49 SKILL.md:50 SKILL.md:51 SKILL.md:52 SKILL.md:56-61 SKILL.md:61-67 SKILL.md:67 SKILL.md:67-71 SKILL.md:71 SKILL.md:71 SKILL.md:71-72 SKILL.md:72 SKILL.md:72-73 SKILL.md:73-74 SKILL.md:74-75 SKILL.md:75-76 SKILL.md:76-77 SKILL.md:77 SKILL.md:77 SKILL.md:77-78 SKILL.md:78 SKILL.md:78-79 SKILL.md:79 SKILL.md:79-80 SKILL.md:80 SKILL.md:80 SKILL.md:80 SKILL.md:80 SKILL.md:80-81 SKILL.md:81-82 SKILL.md:82-83 SKILL.md:83-84 SKILL.md:84-85 SKILL.md:85-86 SKILL.md:86-87 SKILL.md:87 SKILL.md:87-88 SKILL.md:88-89 SKILL.md:89-90 SKILL.md:90-91 SKILL.md:91-92 SKILL.md:92-93 SKILL.md:93-101 SKILL.md:101-103 SKILL.md:103-106 SKILL.md:106-111 SKILL.md:111-115 SKILL.md:115-117 SKILL.md:117-120 SKILL.md:120-125 SKILL.md:125-129 SKILL.md:129-136 SKILL.md:136-141 SKILL.md:141-145 SKILL.md:145-153 SKILL.md:153-154 SKILL.md:154-155 SKILL.md:155-156 SKILL.md:156-157 SKILL.md:157-163 SKILL.md:163-165 SKILL.md:165-181 SKILL.md:181-185 SKILL.md:185-193 SKILL.md:193-197 SKILL.md:197-199 SKILL.md:199-208 SKILL.md:208-210 SKILL.md:210-214 SKILL.md:214-216 SKILL.md:216-222 SKILL.md:222-227 SKILL.md:227-229 SKILL.md:229-237 SKILL.md:237 SKILL.md:237-238 SKILL.md:238-240 SKILL.md:240-245 SKILL.md:245-252 SKILL.md:252-254 SKILL.md:254-259 SKILL.md:259 SKILL.md:259-260 SKILL.md:260 SKILL.md:260 SKILL.md:260 SKILL.md:260-265 SKILL.md:265-267 SKILL.md:267-268 SKILL.md:268 SKILL.md:268-269 SKILL.md:269 SKILL.md:269-273 SKILL.md:273-274
🌐 Acesso à rede (13)
Auditado por: claude Ver Histórico de Auditoria →

Pontuação de qualidade

41
Arquitetura
100
Manutenibilidade
87
Conteúdo
32
Comunidade
99
Segurança
100
Conformidade com especificações

O Que Você Pode Construir

Definir uma aplicação de contêiner para RouterOS

Um administrador de rede escreve YAML para implantar uma pilha de monitoramento com Grafana e Prometheus em um roteador MikroTik usando o subsistema /app.

Migrar projetos docker-compose para RouterOS

Um desenvolvedor adapta uma configuração docker-compose existente para o formato YAML RouterOS /app, ajustando a sintaxe de portas e removendo propriedades não suportadas.

Criar uma loja de aplicações para implantação em equipe

Um engenheiro de sistemas cria um arquivo YAML tikappstore com aplicações pré-configuradas para implantação consistente em vários dispositivos RouterOS.

Tente Estes Prompts

Criar uma definição básica de /app
Escreva um arquivo YAML RouterOS /app que executa um contêiner nginx na porta 8080 com um volume nomeado para dados persistentes.
Converter docker-compose para YAML RouterOS
Converta este arquivo docker-compose para o formato YAML RouterOS /app. Destaque quaisquer propriedades que não sejam suportadas ou se comportem de forma diferente.
Criar uma aplicação multi-serviço
Escreva um YAML RouterOS /app com um frontend web, um banco de dados PostgreSQL e um cache Redis. Inclua montagens de volume adequadas, isolamento de rede e verificações de saúde.
Criar um arquivo de loja de aplicações
Crie um arquivo YAML de loja de aplicações RouterOS contendo três aplicações: um servidor web, um gerenciador de banco de dados e um painel de monitoramento. Cada um deve ter categorias e metadados apropriados.

Melhores Práticas

  • Sempre use a extensão de arquivo .tikapp.yaml para definições de aplicações RouterOS personalizadas para distingui-las de arquivos YAML genéricos.
  • Use a variante de esquema *.editor.json durante o desenvolvimento para melhor autocompletar, depois valide contra *.latest.json antes da implantação.
  • Teste seu YAML em uma máquina virtual RouterOS CHR antes de implantar em hardware de produção para capturar erros de esquema antecipadamente.

Evitar

  • Assumir compatibilidade total com docker-compose. O RouterOS /app suporta apenas um subconjunto de propriedades do compose e trata algumas de forma diferente.
  • Usar a chave superior version. O RouterOS ignora esta chave e ela não serve para nenhum propósito no YAML /app.
  • Misturar estilos de formato de porta dentro de uma única string de porta. Cada entrada de porta deve usar exclusivamente o estilo OCI antigo ou o novo estilo com dois pontos.

Perguntas Frequentes

Qual versão do RouterOS eu preciso para YAML /app?
O caminho /app é integrado a partir do RouterOS 7.21. A criação de aplicações personalizadas via /app/add requer RouterOS 7.22 ou posterior. O pacote extra container também deve estar instalado.
O YAML RouterOS /app é igual ao docker-compose?
Não. O YAML RouterOS /app parece semelhante ao docker-compose, mas suporta menos propriedades. Algumas propriedades como deploy e resources não são suportadas. A sintaxe de mapeamento de portas também difere entre os dois.
Qual extensão de arquivo devo usar para arquivos YAML /app?
Use .tikapp.yaml para definições de aplicações individuais e .tikappstore.yaml para arquivos de loja de aplicações. Essas convenções ajudam ferramentas e editores a aplicar o esquema correto.
Como os placeholders funcionam no YAML RouterOS?
Placeholders como [accessIP], [accessPort], [containerIP] e [routerIP] são expandidos no momento da implantação pelo RouterOS. Eles aparecem em mapeamentos de porta, valores de variáveis de ambiente e conteúdo de configuração.
Posso usar variáveis de ambiente com nomes em minúsculas?
O esquema de validação rigorosa exige nomes de variáveis de ambiente em maiúsculas correspondendo ao padrão [A-Z_][A-Z0-9_]*. Use a variante de esquema do editor se precisar de nomes de variáveis com letras maiúsculas e minúsculas.
Como adiciono uma aplicação personalizada ao RouterOS?
Use o comando CLI /app/add com o parâmetro yaml-url apontando para a URL do seu arquivo YAML. Alternativamente, use o endpoint PUT da API REST em /app com o yaml-url no corpo da requisição.

Detalhes do Desenvolvedor

Autor

tikoci

Licença

MIT

Referência

main

Estrutura de arquivos