Kanji
・クラウドエンジニア / フリーランス ・1993年生まれ ・愛媛県出身 / 東京都渋谷区在住 ・AWS歴5年 プロフィールの詳細
目次
2024年〜2026年にかけて、クラウドエンジニアの VSCode 環境は「単なる構文補完」から 「AIコーディングエージェントとの自律協働(MCP連携・自動テスト実行)」 および 「統合セキュリティスキャン」 へと大きく進化しました。現在新規でセットアップする場合は、以下の最新動向を押さえておくことを推奨します。
tfsec
VS Marketplace リンク
VSCode を日本語化するためのプラグインです。
初期インストール時には英語表記になっているので、日本語化したい方はインストールしてください。
GitHub Copilot は、AI によるコード補完機能を提供するプラグインです。
関数名やコメントアウトでどのような処理をしたいかを記述すると、それに合わせたコードを提案してくれます。
30日間の無料トライアル期間がありますが、継続して利用するには月間 10 USD(月間 100 USD)の有料プランが必要です。
特に Python、JavaScript、TypeScript、Ruby、Go、C#、C++ に適していると公式ページに記載されていますが、Terraform、CloudFormation などのインフラコードでも活用できます。
GitHub Copilot があるかないかで開発速度が倍以上変わると実感しており、特におすすめのプラグインです。
プロジェクトで GitHub Copilot の利用を禁止したい場合、以下の設定を基本設定に入れることで、プロジェクト内で GitHub Copilot を利用できないようにすることができます。
{ "github.copilot.enable": { "*": false } }
テキストを選択しショートカットーキー(デフォルトは Alt + Shift + T )を押すと、Google 翻訳で翻訳結果を表示してくれます。
Alt + Shift + T
VSCode を離れずに翻訳することができるので、関数名を考えたい、コメントや Git のコミットメッセージを英訳したいときに便利です。
選択したテキストをキャメルケース、スネークケース、パスカルケースなどに変換してくれるプラグインです。
文字のケースを変換したいテキストを選択し、コマンドパレット(Windows は Ctrl + Shift + P 、Mac は Command + Shift + P )から以下のメニューを選択することで変換することができます。
Ctrl + Shift + P
Command + Shift + P
Draw.io は無料で利用できる図版作成ツールです。
Web ブラウザでも draw.io からツールを利用することができますが、社内セキュリティルールなどの都合で顧客情報を Web 上に入力することができない場合、オフラインで利用できる VSCode のプラグインを利用することができます。
AWS、GCP、Azure のアーキテクチャ図を作成する際に活用できます。古いアイコンしかありませんが、コピー&ペーストで画像を取り込んだり、XML ファイルをインポートすることで標準で用意されているアイコン以外のものも利用することができます。
Prettier(プリティア)は様々な言語に対応したコードフォーマッターです。
言語に応じてフォーマッターはメジャーなものがいろいろありますが、とりあえずこれを入れておけばある程度の言語には対応しています。
SSH 接続を利用してリモートサーバーに接続するためのプラグインです。
接続したリモートサーバーのファイルを VSCode 上で編集することができます。
接続先の情報は ~/.ssh/config に記述することで、接続情報を一元管理することができます。
~/.ssh/config
WSL(Windows Subsystem for Linux)を利用して、WSL 上で動作する VSCode を起動するためのプラグインです。
WSL を利用するユーザーにとっては必須のプラグインとなります。
Docker コンテナを利用して開発環境を構築するためのプラグインです。
僕自身はあんまり活用していないのですが、Dev Container のビルド時のファイルをチームのメンバーに共有することで、開発環境の統一を図ることができます。
ただし、コンテナを動作させる必要があるため、ある程度のスペックを持った PC が必要です。
インフラエンジニアにとってはあまり必要ないかもしれませんが、何か活用できることがあるかも?ということで一応おすすめとして紹介しています。
Git の履歴を確認することができるメジャーなプラグインです。
ブランチ、編集者、ファイル毎の履歴を表示したり、ブランチ、コミット間の履歴の比較を行うことができます。
Git の履歴を確認するためのプラグインは Git History の方が有名ですが、ブランチ間を比較するときにはこちらのほうが個人的には使いやすいためお勧めいたします。
Git History では、ブランチ間の比較を行う際にエディター状にすべてのファイルの差分が表示されますが、Git History Diff ではサイドバーにツリー構造で差分が表示されるため、どのファイルに差分があるのかが一目でわかります。
GitLens も Git の履歴を確認するためのプラグインですが、Git History や Git History Diff とは異なり、コード上に直接表示されるため、コードを見ながら履歴を確認することができます。
画面がごちゃごちゃしているので活用できておりませんが、Git History などと同様に コミット間やブランチ間の差分を確認することができます。
Markdown に関する機能が詰め合わさったプラグインです。こちらのプラグインを入れることで以下機能が利用できます。
僕が入れている目的として、主に Linting や 目次の自動生成を利用しています。それ以外の機能は他のプラグインの方が使いやすいため、それらのプラグインを利用しています。
クリップボードにコピーした画像を VSCode 上でショートカットキー(Windows は Ctrl + Alt + V 、Mac は Command + Alt + V )を押すことで Markdown ファイルなどに貼り付けることができるプラグインです。
Ctrl + Alt + V
Command + Alt + V
貼り付けた画像は指定したディレクトリに保存され、そのパスが Markdown ファイルに記述されます。
僕は以下の設定を基本設定に入れることで、貼り付けたファイルと同じディレクトリに .images/ ディレクトリを作成し、その中に画像を保存するようにしています。
.images/
{ "pasteImage.basePath": "${currentFileDir}/.images", "pasteImage.path": "${currentFileDir}/.images", "pasteImage.insertPattern": "${imageSyntaxPrefix}.images/${imageFilePath}${imageSyntaxSuffix}" }
Markdown でテーブルを作成、整形するためのプラグインです。
色々なテーブル整形のプラグインを試しましたが、日本語のマルチバイト文字を含めたテーブルでもちゃんと整形してくれたので、こちらを利用しています。(フォントの相性もあるかもしれません)
Markdown ファイルを PDF や HTML 、JPEG、PNGなどに変換するためのプラグインです。
Markdown All in One にも PDF 変換機能があるのですが、こちらのプラグインの方変換先として PDF などが選択できるため、こちらを利用しています。
Python の Linter です。Python のコードを書く際に、コードの品質をチェックするために利用します。例えば、以下のようなチェックを行うことができます。
以下の設定を基本設定に入れることで Flake8 でチェックするルールをカスタマイズすることができます。
.vscode/settings.json
{ "flake8.args": [ "--ignore=S311,S410,W503", "--max-line-length=170", "--max-complexity=20" ] }
Python のコードをフォーマットするためのプラグインです。例えば、以下のようなフォーマットを行うことができます。
以下の設定を基本設定に入れることで、Python ファイルを保存する際に自動でフォーマットを行うことができます。
{ "[python]": { "editor.insertSpaces": true, "editor.detectIndentation": true, "editor.tabSize": 4, "editor.defaultFormatter": "ms-python.black-formatter", "editor.formatOnSave": true } }
CloudFormation は JSON でも記述することができますが、YAML で記述することが多いため、YAML の Linting や入力補完を行うためのプラグインを紹介します。
このプラグインを入れることで、YAML ファイルを開いた際に、YAML の構文エラーを表示してくれます。
また、YAML ファイルを編集する際に、インデントやキーの入力補完を行ってくれます。
CloudFormmation の擬似関数はデフォルトで入ってないため、構文エラーが表示されてしまいます。以下の設定を基本設定に入れることで、構文エラー表示しないようにすることができます。
[ "yaml.customTags": [ "!And sequence", "!Base64 scalar", "!Cidr scalar", "!Condition scalar", "!Equals sequence", "!FindInMap sequence", "!GetAZs scalar", "!GetAtt scalar", "!GetAtt sequence", "!If sequence", "!ImportValue scalar", "!Join sequence", "!Not sequence", "!Or sequence", "!Ref scalar", "!Select sequence", "!Split sequence", "!Sub scalar", "!Sub sequence", "!Transform mapping", ] ]
[ { "name": "AWS CloudFormation", "description": "AWS CloudFormation provides a common language for you to describe and provision all the infrastructure resources in your cloud environment", "fileMatch": [ "*.cf.json", "*.cf.yml", "*.cf.yaml", "cloudformation.json", "cloudformation.yml", "cloudformation.yaml" ], "url": "https://raw.githubusercontent.com/awslabs/goformation/master/schema/cloudformation.schema.json" } ]
{ "yaml.schemas": { "https://d33vqc0rt9ld30.cloudfront.net/latest/gzip/CloudFormationResourceSpecification.json": [ "*.cf.yaml", "*.cf.yml", "cloud*formation/*.yaml", "cloud*formation/*.yml" ] } }
CloudFormation の Linter です。前述した YAML プラグインとは異なり、CloudFormation ならではの構文エラーを表示してくれます。例えば、以下のようなチェックを行うことができます。
チェックできるルールは メインの cfn-lint/docs/rules.md · aws-cloudformation/cfn-lint に記載されています。
以下の設定を基本設定に入れることで、特定のルールを無視することができます。
{ "cfnLint.ignoreRules": [ "W3011" ] }
CloudFormation の Linter です。CloudFormation Linter とは異なり、セキュリティに関するチェックを行うことができます。例えば、以下のようなチェックを行うことができます。
チェックできるルールは cdk-nag/RULES.md at main · cdklabs/cdk-nag に記載されています。
以下の設定を基本設定に入れることで、特定のルールを無視することができます。CFn-Nag では直接 settings.json に無視するルールを記述することができないため、 .cfn-nag-blacklist.yml など適当な名前のYAMLファイルを作成し、無視するルールを記述することで無視することができます。この例では .vscode ディレクトリに .cfn-nag-blacklist.yml を作成し、以下の設定を記述しています。d
settings.json
.cfn-nag-blacklist.yml
.vscode
{ "cfnNagLint.blacklistPath": ".vscode/.cfn-nag-blacklist.yml" }
--- RulesToSuppress: # S3 Bucket should have access logging configured - id: W35 reason: アクセスログの設定は不要 # Resource found with an explicit name, this disallows updates that require replacement of this resource - id: W28 reason: IAMロール名は動的ではなく固定で設定 # CloudWatchLogs LogGroup should specify a KMS Key Id to encrypt the log data - id: W84 reason: カスタマー管理キーの暗号化は利用しない
Terraform に関連する機能が詰め合わさったプラグインです。こちらのプラグインを入れることで、以下機能が利用できます。
terraform fmt
terraform init
terraform plan
Terraform の Linter です。Terraform のコードを書く際に、セキュリティに関するチェックを行うために利用します。例えば、以下のようなチェックを行うことができます。
チェックできるルールは enable-access-logging - tfsec に記載されています。(※現在は後継の Trivy Vulnerability Scanner 拡張機能への移行が推奨されています)
インフラコード(IaC)と構成図作成の生産性を直ちに高めるため、① HashiCorp Terraform (または CloudFormation Linter)、② GitHub Copilot / Claude Code (AIエージェント支援)、③ Draw.io Integration (AWS/GCP構成図作成)、④ Remote - SSH / Dev Containers (検証環境接続)、⑤ GitLens / Git Graph (履歴管理)の5つを最優先で導入するのがおすすめです。
GUIで描きたい場合は「Draw.io Integration」拡張機能に最新のAWS公式アセットパッケージ(XML)をインポートして利用できます。コード(Markdown)で構成図を自動レイアウト・Git管理したい場合は、Mermaid v11 の architecture-beta 構文と @iconify-json/logos を組み合わせることで最新のAWSアイコンを表示できます。
architecture-beta
@iconify-json/logos
tfsec は開発元の Aqua Security によって統合スキャナー Trivy に統合されました。現在 VSCode で Terraform や CloudFormation、Dockerfile の静的セキュリティチェックを行う場合は、公式後継である「 Trivy Vulnerability Scanner 」拡張機能を使用してください。
Visual Studio Code の「Draw.io Integration」拡張機能で最新のAWS公式アーキテクチャアイコンセット(Asset Package)をカスタムライブラリとして一括登録 ... [続きを読む]
MarkdownのMermaidフローチャートや構成図で最新のAWS公式アーキテクチャアイコンを表示する完全ガイド。公式SVGパッケージからMermaid用アイコンパック(icons.json)を自動 ... [続きを読む]
2024年から2026年にかけてのAIコーディングの進化史を総括。GitHub CopilotからClaude Code、Antigravity、Replit、Bolt.newまでの変遷、Webアプリ ... [続きを読む]
本番さながらのAI電話で初通話もデート誘いも余裕に。通話中の対話をリアルタイム解析し、最適な切り返しや好感度アップの助言を即座にサジェスト。24時間いつでも通話練習が可能です(無料体験あり・1レッスン 約150円〜)。
レシートを撮影するだけでGemini AIが品目・金額を高精度OCR解析。LINEログインで友人との面倒な立替・割り勘計算を美しく完結します。
占い師・執事・バーテンダーなどのAIキャラクターが進行役となり、お題やゲームを出題。集まる時間を最高にエキサイティングにするiOSアプリ。
日本株・グローバル企業の適時開示・決算速報をAIクオンツ解析。市場モメンタムや注目銘柄をリアルタイムに可視化するデータポータルです。
人工甘味料や添加物のNG成分除外フィルターと、有効成分あたりの実質単価を徹底比較・可視化するヘルスケア比較データベースです。
本記事で解説した 4大AIエージェント(Antigravity, Kiro, Claude Code, Codex)完全対応の AGENTS.md テンプレート、hooks.json、Gitガードスクリプト一式をGumroadにて配布準備中です。