Skip to content

Instantly share code, notes, and snippets.

@ko31
Last active March 26, 2026 00:11
Show Gist options
  • Select an option

  • Save ko31/51956702fc62b39c7b9d54726a0dd8aa to your computer and use it in GitHub Desktop.

Select an option

Save ko31/51956702fc62b39c7b9d54726a0dd8aa to your computer and use it in GitHub Desktop.
spec-kitでアプリを作成してみたメモ

メモ

概要

  • サンプルとしてTOEICのPart5問題を練習できるアプリを作成(プロジェクト名:toeic-p5-quiz
  • 仕様駆動開発ツールとして Spec Kit を使用

作業手順

uv をインストールする。

$ curl -LsSf https://astral.sh/uv/install.sh | sh

spec-kit をインストールする。

$ uv tool install specify-cli --from git+https://github.com/github/spec-kit.git

spec-kit でプロジェクト作成する。

$ specify init toeic-p5-quiz

プロジェクト作成時に下記を問われるので回答する。

  • AI Assistant:codex を選択
  • スクリプトファイルの種類:sh(bash/zsh) を選択

以下、Codex CLI から spec-kit のコマンドで進めていく。 (なお、Codex の場合 /specify のようなスラッシュコマンドではなく、$speckit-specify のように Codex スキルモードで呼び出す。)

原則を作成する。

$speckit-constitution
これはTOEICのPart5問題を練習できるアプリです。シンプルで直感的に使えること、わかりやすいUIと即時反映を実現する。開発は小さな単位で進め、最小限機能を繰り返し改善していくこと。

仕様を作成する。

$speckit-specify
TOEICのPart5の練習問題をランダムに出題する。
問題および回答選択肢は実際の問題と類似した形式にする。
選択肢から選んで解答したら即座に正誤と解説を表示する。
その後、次の問題へ移動して練習を何度も繰り返せる。
アプリは単一ユーザーの利用を想定し、ブラウザで利用できる。
モバイル端末に最適化したUIを提供する。

技術計画を作成する。

$speckit-plan
アプリ構成はCloudFlare Pagesでリリース可能な形式を考慮する。
ローカルではdocker開発環境としてブラウザ確認できるようにする。
フロントエンドはhtml,css,JavaScriptで実装する。
データの永続化が必要な場合、ローカルストレージを使用する。

タスクリストを作成する。

$speckit-tasks

仕様・計画・タスクなどの整合性をチェックする。

$speckit-analyze

実装する。

$speckit-implement

その後、個別に指示を出して仕上げていく。

補足

  • 始めから問題なく動作するものができた。
  • 始めの仕様が明確でないとその部分はよしなに作ってくれる。
    • 始めから詳細仕様を用意して完成度を求めるか、ざっくり作って後からブラッシュアップしていくか。
  • タスクまで作成できればかなり仕様に落とせているので作業再開も容易。
    • 実装工程で変更点があれば仕様書にも都度反映しておくと再開時にコンテキストを維持できてよい。
  • そこそこ実装した時点での /status より(この程度のアプリならすごくコンテキスト消費するわけでもない)
    • Context window: 99% left (14.1K used / 258K)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment