今日のミニアプリ: 在庫 CSV ジェネレーター
「使い倒しフェーズ」の初日として、最小規模のツールを作成しました。
何を作ったか
CSV ファイルにバーコード(または商品コード)と数量を行で投入すると、 在庫管理用の整形済み CSV を吐き出すだけのツール。
入力例:
4901234567890,3
4901234567891,1
4901234567892,12
出力例:
code,quantity,scanned_at,sku_hint
4901234567890,3,2026-06-22T10:15:23,unknown
4901234567891,1,2026-06-22T10:15:24,unknown
4901234567892,12,2026-06-22T10:15:25,unknown
コードの中身
import { readFileSync, writeFileSync } from "node:fs";
const input = readFileSync(process.argv[2], "utf8");
const lines = input.trim().split("\n");
const header = "code,quantity,scanned_at,sku_hint";
const rows = lines.map((line, idx) => {
const [code, qty] = line.split(",");
const ts = new Date(Date.now() + idx * 1000).toISOString();
return `${code},${qty},${ts},unknown`;
});
writeFileSync("inventory.csv", [header, ...rows].join("\n"));
console.log(`✓ Wrote ${rows.length} rows to inventory.csv`);
たったこれだけ。Claude Code に「バーコードと数量を読んで在庫 CSV を吐くスクリプト」と 指示しただけで、ほぼこのまま出てきました。
何が嬉しいか
「美容院案件」で棚卸 → 在庫 CSV 化が定常業務になる予定なので、 将来そのまま使えるツールになります。
汎用化していけば:
- バーコード読み取りアプリ(スマホ)からの自動連携
- スプレッドシート出力
- LINE 通知(しきい値割れ)
まではできるかも。
振り返り
| 観点 | 結果 |
|---|---|
| 所要時間 | 30 分(うちコーディング 10 分) |
| Claude Code の役割 | 100%(自分はプロンプトと検証のみ) |
| つまずいた点 | タイムスタンプの形式調整だけ |
| 学んだこと | 仕様を「入力例 + 出力例」で渡すのが最速 |