PC Kitting Automation

PCの初期設定を、
仕立てる。

何十台ものPCに同じ設定を手作業で繰り返す—— そんなキッティング作業を、クライアントごとの構成ファイルから自動で組み上げる デスクトップツール。「Tailor(仕立て屋)」の名のとおり、 一台一台を採寸するように整える。

“Your PC, Tailored.”

PowerShell WinForms GUI config-driven Interactive Demo
✂ Tailor — Admin
あおぞらケアサービス
ステージ1 セットアップ ✓
ステージ2 キッティング
17modules
Running…
OS基本設定
Windows Update制御defer 180d
BitLocker暗号化XtsAes128
アプリ
LANSCOPE Cat
Tailoring Complete
OUTPUT
[OK] Windows Update制御
[OK] BitLocker暗号化
Tailoring Complete
スライドで再起動
The Problem

キッティングは、静かな消耗戦だった。

新しいPCを業務で使えるようにする「キッティング」。ホスト名の設定、ドメイン参加、 アプリのインストール、ネットワークやセキュリティの構成——その工程は驚くほど多く、 しかも台数分だけ繰り返される。

01

大量の反復

1台あたり数十の設定項目。導入が10台・50台と増えるほど、同じ手順をひたすら手で繰り返すことになる。

02

属人化

「あの人しか正しい手順を知らない」状態に陥りやすい。手順書はあっても解釈の揺れが品質をばらつかせる。

03

ヒューマンエラー

チェック漏れ・設定ミス・順序間違い。終盤の疲労で起きた小さなミスが、後工程の手戻りを生む。

04

客先ごとの差異

ホスト名規則、暗号化方式、入れるアプリ——導入先ごとに微妙に違う。覚えきれず、毎回確認に時間を取られる。

The Approach

構成ファイルから、一着を仕立てるように。

Tailor は「何を設定するか」をコードに埋め込まず、クライアントごとの JSON 構成ファイルに切り出した。 担当者は画面でモジュールを選び、実行ボタンを押すだけ。手順は人ではなく構成が持つ。

config 駆動

modules.json が全モジュールを定義し、clients/*.json が導入先ごとの採用モジュールと上書き値(ホスト名規則・暗号化方式等)を持つ。コードを触らず構成を差し替える。

2ステージ構成

ドメイン参加前の「ステージ1 セットアップ」と、参加後の「ステージ2 キッティング」を分離。ドメイン参加状態を自動判定し、適切なステージを開く。

選んで、実行するだけ

モジュールはチェックボックスで取捨選択。進捗バーと [OK]/[FAIL]/[SKIP] ログで状態が一目で分かり、完了後はスライド操作で再起動へ。

ADMIN EDITION

管理者版

  • ホスト名・ドメイン参加・ローカルアカウント
  • OS基本設定(Update / BitLocker / FW / GPO)
  • 業務アプリ・ネットワーク・不要アプリ削除
  • 管理者権限で実行する初期構築フェーズ
USER EDITION

ユーザー版

  • エクスプローラー・通知・タスクバー・壁紙
  • Outlook / IME / 既定アプリ
  • Slack・Google Drive・ネットワークドライブ
  • ログオンユーザー環境を仕上げるフェーズ
Inside the App

道具らしい、静かなUI

毎日使う道具は、主張しすぎない方がいい。Apple 風の落ち着いたカード UI を WinForms(GDI+)で 手描きし、角丸・アクセントドット・スプラッシュアニメまで作り込んだ。

✂ Tailor — Admin
コアブリッジ株式会社
ステージ1 セットアップ
ステージ2 キッティング
3modules
Ready
セットアップ
ホスト名+ドメイン参加CORE-{dept}-{n}
ローカルアカウント作成
電源設定
実行
OUTPUT
[OK] ホスト名+ドメイン参加
待機中…

カテゴリ別モジュールカード

セットアップ/OS/アカウント/アプリ/ネットワーク等をアクセントカラーで色分け。各カードに上書き設定値を併記し、何が適用されるか実行前に把握できる。

進捗バー & ライブログ

実行中はモジュール名と進捗率を表示し、結果を [OK]/[FAIL]/[SKIP] で色分けログに追記。完了で「Tailoring Complete」を表示する。

スライドで再起動

iOS のスライド・トゥ・アンロック風UIを GDI+ で実装。誤操作を防ぎつつ、完了後の再起動を自然な所作で促す。

起動スプラッシュ & ブランド意匠

フレーム画像によるスプラッシュアニメ、ゴールドのアクセントライン、右下にさりげなく描かれる「針と糸」のモチーフまで作り込んだ。

※ 画面は Tailor の GUI を忠実に再現(実機の構成・配色・文言に準拠)

Module Taxonomy

構成ファイルに定義された 33 モジュール

セットアップ OS基本設定 アカウント・ドメイン アプリ ネットワーク 不要アプリ削除 ユーザー環境
Interactive Demo

条件を選んで、仕立ててみる

導入先のプリセットと適用モジュールを選び、実行する——Tailor の操作フローを、このページ上でそのまま体験できる。 構成を切り替えると、生成されるキッティングの中身(ホスト名規則・暗号化方式・適用モジュール)が変わる。

① 導入先プリセット
② 適用モジュール

プリセットとモジュールを選んで実行すると、構成に応じたキッティングが組み上がる。

✂ Tailor — Admin
あおぞらケアサービス
ステージ1 セットアップ ✓
ステージ2 キッティング
0modules
Ready
実行待機
OUTPUT
構成読込待機中…

※ 実機 GUI と同じ操作フロー(構成読込 → モジュール選択 → 実行 → 進捗ログ)をブラウザ上で再現

Tech Stack

枯れた道具で、確実に

キッティングは Windows 上で完結する作業。外部ランタイムを足さず、標準で動く技術だけで組んだ。

LANGUAGE

PowerShell

Windows 標準。管理者権限・WMI・システム設定へ素直に届く。実行ポリシーもプロセス内で完結。

GUI

WinForms / GDI+

System.Windows.FormsSystem.Drawing でカード・角丸・アニメを手描き。追加依存ゼロ。

CONFIG

JSON 構成

modules.jsonclients/*.json。導入先の差異を構成データとして外出し。

MODULES

バッチ / .ps1

本番版は bat/ 配下に admin / user・ステージ別のモジュールスクリプトを階層化。

DOCS

Python 生成

操作・変更マニュアル・営業提案資料の PDF を generate_docs.py で自動生成。

LOGGING

実行ログ出力

実行のたびに logs/ へ記録。結果の追跡と再現性を担保する。

Design Principles

コードから読み取れる、設計の意図

関心の分離

「手順(コード)」と「何を適用するか(構成)」を分けた。新しい客先は JSON を一枚足すだけ。ロジックは不変のまま再利用できる。

権限フェーズの分離

管理者版とユーザー版を分け、さらに管理者版は ステージ1/2 に分割。ドメイン参加の前後で必要な操作が違うという実務に素直に沿わせた。

上書き(overrides)機構

共通モジュールを保ちつつ、客先固有値だけ overrides で差し込む。ホスト名規則・BitLocker 方式・VNC ポート等を構成側で吸収。

道具としての所作

進捗・成否・再起動という「実行の体験」を丁寧に設計。毎日触っても疲れない、静かで信頼できる手触りを目指した。

Made to Measure

環境ごとに、一台ずつ仕立てる

キッティングは、導入先の命名規則・暗号化方式・採用アプリ・ネットワーク構成が現場ごとに変わる オーダーメイドの仕事だ。Tailor はその“仕立て”を構成ファイルとして表現し、 誰が実行しても同じ品質で組み上がる器として設計・実装した。

このサイトでは、その想定アプリケーションをそのまま操作できる形で公開している。 構成を切り替えれば生成されるキッティングの中身が変わる——その挙動を、上の体験デモで確かめてほしい。

環境ごとのオーダーメイド

導入先ごとに違う命名規則・暗号化方式・採用アプリを、構成ファイルを差し替えるだけで吸収する。

想定アプリをそのまま体験

UI・構成読込・ステージ判定・進捗ログまで、設計の核をこのページ上で操作して確かめられる。

構成が品質を担保する

手順を人ではなく構成データが持つ。誰が回しても、狙いどおりの仕立て上がりに揃う。

Behind the Build

工夫した点・苦労した点

Craft

WinForms で「今っぽい」UIを作る

WinForms は素のままだと古い見た目になりがち。角丸リージョン・ダブルバッファ・アクセントドット・スライド UI を GDI+ で手作りし、Apple 風の質感まで引き上げた。

Architecture

構成データへの切り出し

当初はスクリプトに設定をベタ書きしていたが、客先が増えるほど破綻する。modules / clients / overrides の三層に整理し、コードを変えずに導入先を増やせる形へ作り直した。

Experience

操作フローをそのまま見せる

キッティングは導入先ごとのオーダーメイド。だからこそ、構成を選んで実行する一連の操作フローを、想定アプリケーションとしてそのまま体験できる形に仕立てた。設計の核を、触れて確かめてもらうための見せ方だ。