スキル routeros-app-yaml
📦

routeros-app-yaml

安全 ⚙️ 外部コマンド🌐 ネットワークアクセス

RouterOSコンテナYAML構成の記述

MikroTik RouterOSコンテナアプリケーション用のYAML構成を作成および検証します。このスキルにより、docker-composeの知識がなくても、RouterOS /appサブシステムのサービス、ポート、ボリューム、ネットワークを定義できます。

対応: Claude Codex Code(CC)
🥉 73 ブロンズ
1

スキルZIPをダウンロード

2

Claudeでアップロード

設定 → 機能 → スキル → スキルをアップロードへ移動

3

オンにして利用開始

テストする

「routeros-app-yaml」を使用しています。 ポート8123で永続ストレージを備えたHome Assistantコンテナの/app YAMLを作成してください

期待される結果:

  • name、services、volumes、networksセクションを含むYAMLファイル。
  • Webサービスはghcr.io/home-assistant/home-assistantイメージを使用し、ポート8123をマッピング。
  • 名前付きボリュームhome-assistant-configが/configにマウントされている。
  • 再開策は信頼性のためにalwaysに設定されている。

「routeros-app-yaml」を使用しています。 RouterOS YAMLの古い形式と新しいポート形式の違いを表示してください

期待される結果:

  • 古いOCIスタイルはプロトコルの前にスラッシュを使用:8080:80/tcp
  • 新しいRouterOS 7.23スタイルはコロンを使用:8080:80:web:tcp
  • 両方の形式が有効です。7.23beta2からの新しい展開ではコロン形式を優先してください。
  • target、published、protocolフィールドを含む長い形式のオブジェクト構文はすべてのバージョンで動作します。

セキュリティ監査

安全
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
スキャンされたファイル
453
解析された行数
5
検出結果
2
総監査数
低リスクの問題 (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.

リスク要因

⚙️ 外部コマンド (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
🌐 ネットワークアクセス (13)
監査者: claude 監査履歴を表示 →

品質スコア

41
アーキテクチャ
100
保守性
87
コンテンツ
32
コミュニティ
99
セキュリティ
100
仕様準拠

作れるもの

RouterOS用のコンテナアプリケーションを定義する

ネットワーク管理者がYAMLを記述して、/appサブシステムを使用してMikroTikルータにGrafanaとPrometheusを使用した監視スタックを展開します。

docker-composeプロジェクトをRouterOSに移行する

開発者が既存のdocker-compose設定をRouterOS /app YAML形式に適応させ、ポート構文の調整とサポートされていないプロパティの削除を行います。

チーム展開用のアプリストアを作成する

システムエンジニアが、複数のRouterOSデバイス間での一貫した展開用に事前設定されたアプリケーションを含むtikappstore YAMLファイルを作成します。

これらのプロンプトを試す

基本的な/app定義を作成する
ポート8080で永続データ用の名前付きボリュームを備えたnginxコンテナを実行するRouterOS /app YAMLファイルを記述してください。
docker-composeをRouterOS YAMLに変換する
このdocker-composeファイルをRouterOS /app YAML形式に変換してください。サポートされていないプロパティや動作が異なるプロパティをハイライトしてください。
マルチサービスアプリケーションを作成する
Webフロントエンド、PostgreSQLデータベース、Redisキャッシュを含むRouterOS /app YAMLを記述してください。適切なボリュームマウント、ネットワーク分離、ヘルスチェックを含めてください。
アプリストアファイルをビルドする
Webサーバー、データベースマネージャー、監視ダッシュボードの3つのアプリケーションを含むRouterOSアプリストアYAMLファイルを作成してください。 각각適切なカテゴリとメタデータを持つ必要があります。

ベストプラクティス

  • カスタムRouterOSアプリ定義には.tikapp.yamlファイル拡張子を常に使用し、一般的なYAMLファイルと区別してください。
  • 開発中は*.editor.jsonスキーマバリアントを使用してより良いオートコンプリートを取得し、展開前に*.latest.jsonに対して検証してください。
  • 本番ハードウェアに展開する前に、RouterOS CHR仮想マシンでYAMLをテストして、早期にスキーマエラーを検出してください。

回避

  • 完全なdocker-compose互換性を想定すること。RouterOS /appはcomposeプロパティのサブセットのみをサポートし、いくつかは異なる方法で処理されます。
  • バージョン最上位キーの使用。RouterOSはこのキーを無視し、/app YAMLでは目的を果たしません。
  • 単一のポート文字列内でのポート形式スタイルの混合。各ポートエントリは古いOCIスタイルまたは新しいコロンスタイルのいずれかを排他的に使用する必要があります。

よくある質問

/app YAMLにはどのRouterOSバージョンが必要ですか?
/appパスはRouterOS 7.21から組み込まれています。/app/addによるカスタムアプリ作成にはRouterOS 7.22以降が必要です。コンテナ拡張パッケージもインストールする必要があります。
RouterOS /app YAMLはdocker-composeと同じですか?
いいえ。RouterOS /app YAMLはdocker-composeに似ていますが、プロパティのサポート数は少なくなっています。deployやresourcesなどのプロパティはサポートされていません。ポートマッピング構文も两者で異なります。
/app YAMLファイルにはどのファイル拡張子を使用すべきですか?
個々のアプリ定義には.tikapp.yamlを使用し、アプリストアファイルには.tikappstore.yamlを使用してください。これらの規則によりツールとエディタが正しいスキーマを適用しやすくなります。
RouterOS YAMLでプレースホルダーはどのように機能しますか?
[accessIP]、[accessPort]、[containerIP]、[routerIP]などのプレースホルダーは、展開時にRouterOSによって展開されます。これらはポートマッピング、環境値、設定コンテンツに表示されます。
小文字の環境変数を使用できますか?
厳密な検証スキーマでは、パターン[A-Z_][A-Z0-9_]*に一致する大文字の環境変数名を必要があります。大文字と小文字が混在する変数名が必要な場合は、エディタスキーマバリアントを使用してください。
カスタムアプリをRouterOSに追加するにはどうすればよいですか?
CLIコマンド/app/addとyaml-urlパラメータを使用してYAMLファイルのURLを指すか、代替としてリクエストボディにyaml-urlを含むREST API PUTエンドポイント/appを使用してください。

開発者の詳細

作成者

tikoci

ライセンス

MIT

参照

main

ファイル構成