6
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

24時間働けますか?AutoCoder完全ガイド:AIエージェントに「アプリを24時間作り続けさせる」自律実行基盤

6
Last updated at Posted at 2026-01-30

はじめに

AutoCoder — Claude Agent SDK ベースの長時間・複数セッション対応 自律コーディングエージェント

GitHub stars
GitHub forks

1.3k Stars | 🍴 311 Forks

GitHub: https://github.com/leonvanzyl/autocoder

image.png

海外の開発者コミュニティで注目を集めているこのツールを、本記事で詳しく紹介させていただきます。

2025年から2026年にかけて、AIコーディングツールは驚くべき進化を遂げました。Claude Code、Cursor、Windsurf——これらのツールは、自然言語でコードを生成できる時代を実現しました。

しかし、「完全なアプリケーションを一から作る」となると、別の壁にぶつかります:

「途中でセッションが切れて、また最初から説明し直しになった」
「コンテキストが膨れて、AIが前の作業を忘れてしまった」
「数時間かかる開発を、ずっと見張っていられない」

これは**「セッション分断」問題**です。AIは1つの会話の中では優秀ですが、長時間にわたる継続的な開発には設計されていません。

本記事では、この問題を解決するツール 「AutoCoder」 を徹底解説します。AutoCoderの仕組みから実践的な使い方まで、詳しく見ていきましょう。


第1章:AutoCoderとは何か

「セッション分断」問題

AIコーディングツールには、避けられない制約があります:

症状 具体例
コンテキストの限界 長時間の開発で会話履歴が膨れ、品質が低下
セッションの断絶 中断するとゼロから説明し直し
監視の負担 数時間の自動実行を人間が見守り続ける必要
状態の消失 どこまで完了したか、次に何をすべきかが不明に

これらは「AIが悪い」のではなく、セッションを跨いで状態を保持する仕組みがないことが原因です。

AutoCoderの解決アプローチ

AutoCoderは、長時間・複数セッション対応の自律コーディング基盤です。

核心となる考え方:

  1. Two-Agent Pattern — 初期化と実装を専門のエージェントに分離
  2. 永続化による継続性 — SQLiteで進捗を保存し、セッションを跨いで再開
  3. Feature単位の管理 — アプリを機能単位に分解し、1つずつ確実に完成させる

この設計により、何日にもわたる開発でも、中断と再開を繰り返しながら完成まで到達できます。


第2章:AutoCoderのアーキテクチャ

Two-Agent Pattern

AutoCoderの最大の特徴は、2つの専門エージェントによる分業です。

Initializer Agent(初期化エージェント)

プロジェクト開始時に1回だけ実行されます。

役割:

  • アプリ仕様(Spec)を読み込み、理解する
  • 仕様をFeature(機能単位)に分解する
  • 各Featureに対する詳細なテストケースを生成(通常200件以上)
  • Featureリストを features.db に保存
  • プロジェクト構造とGitリポジトリを初期化

所要時間: 10〜20分以上(詳細なテストケース生成のため)

Coding Agent(実装エージェント)

初期化後、繰り返し実行されます。

役割:

  • 未完了のFeatureをDBから1件取得
  • 実装 → テスト → 検証
  • 完了したFeatureを passing としてマーク
  • 必要に応じて回帰テストを実行
  • アトミックなGitコミットを作成

所要時間: 1Feature あたり 5〜15分

SQLiteによる永続化

AutoCoderは features.db にすべての状態を保存します:

情報 説明
Feature一覧 実装すべき機能のリスト
状態 未着手 / 実装中 / 完了
テストケース 各Featureの検証条件
依存関係 Feature間の順序制約

メリット:

  • セッションが切れても状態が失われない
  • 「どこまで進んだか」が常に明確
  • 任意のタイミングで中断・再開が可能

MCPサーバーによるFeature管理

エージェントはMCP(Model Context Protocol)ツールを通じて進捗を制御します。

ツール 機能
feature_get_stats 進捗統計を取得
feature_get_next 次の未完了Featureを取得
feature_mark_passing Featureを完了としてマーク
feature_skip Featureをスキップ
feature_get_for_regression 回帰テスト対象を取得
feature_create_bulk Featureを一括作成

これらのツールにより、エージェントの暴走を防ぎ、進行を制御可能にしています。


第3章:インストールと初期設定

前提条件

AutoCoderを使用するには、以下が必要です:

1. Claude Code CLIのインストール

macOS / Linux:

curl -fsSL https://claude.ai/install.sh | bash

Windows (PowerShell):

irm https://claude.ai/install.ps1 | iex

2. Claude認証

Claude Pro/Maxサブスクリプション、またはAnthropic APIキーが必要です:

claude login

AutoCoderのセットアップ

1. リポジトリのクローン

git clone https://github.com/leonvanzyl/autocoder.git
cd autocoder

2. 起動

UIモード(推奨):

./start_ui.sh  # macOS/Linux
start_ui.bat   # Windows

CLIモード:

./start.sh     # macOS/Linux
start.bat      # Windows

UIモードの特徴

UIモードでは、ブラウザで http://localhost:5173 にアクセスできます:

機能 説明
Kanbanボード Feature の進捗を視覚的に表示
リアルタイム更新 WebSocketによるライブ出力
プロジェクト管理 複数プロジェクトの選択・切り替え
開始/停止制御 ワンクリックで実行を制御
┌────────────────────────────────────────────────────────────┐
│  AutoCoder Dashboard                                       │
├────────────────────────────────────────────────────────────┤
│                                                            │
│  📦 Todo        🔄 In Progress      ✅ Done                │
│  ┌─────────┐   ┌─────────────┐     ┌─────────────┐        │
│  │Feature 5│   │ Feature 3   │     │ Feature 1   │        │
│  │Feature 6│   │ 実装中...   │     │ Feature 2   │        │
│  │Feature 7│   └─────────────┘     └─────────────┘        │
│  └─────────┘                                               │
│                                                            │
│  ─────────────────────────────────────────────────────────│
│  🖥️ Agent Output:                                          │
│  > Implementing user authentication...                     │
│  > Running tests...                                        │
│  > All tests passed. Committing changes.                   │
│                                                            │
└────────────────────────────────────────────────────────────┘

CLIモードの特徴

サーバー環境やSSH接続時に便利です:

  • Python仮想環境の自動構築
  • 対話形式での新規/継続実行の選択
  • 軽量で依存が少ない

第4章:使い方ガイド

基本フロー

Step 1: プロジェクト作成

UIを起動し、「New Project」をクリック。または CLIで新規プロジェクトを選択。

Step 2: アプリ仕様の入力

作りたいアプリの説明を入力します:

タスク管理Webアプリを作成してください。

機能要件:
- ユーザー認証(メール/パスワード)
- タスクのCRUD操作
- タスクの優先度設定(高/中/低)
- 期限日の設定とリマインダー
- ダッシュボードで進捗を可視化

技術スタック:
- フロントエンド: React + TypeScript
- バックエンド: Node.js + Express
- データベース: PostgreSQL
- 認証: JWT

Step 3: 初期化の実行

Initializer Agentが自動的に:

  • 仕様を分析
  • 機能をFeatureに分解
  • 各Featureのテストケースを生成
  • データベースに保存

所要時間: 10〜20分

生成されるFeatureの例:

Feature 1: ユーザー登録エンドポイント
Feature 2: ログインエンドポイント
Feature 3: JWT認証ミドルウェア
Feature 4: タスク作成API
Feature 5: タスク一覧取得API
...
Feature 45: ダッシュボード統計コンポーネント

Step 4: 自律実装の開始

「Start」ボタンをクリック、またはCLIで実行を開始。

Coding Agentが自動的に:

  1. 未完了のFeatureを取得
  2. 実装
  3. テスト実行
  4. 完了マーク
  5. Git Commit
  6. 次のFeatureへ

この間、人間の介入は不要です。

Step 5: 中断と再開

中断する場合:

  • UIの「Stop」ボタンをクリック
  • またはターミナルで Ctrl+C

再開する場合:

  • 再度起動するだけ
  • 「前回の続きから再開」を選択
  • 最後に完了したFeatureの次から自動的に再開

第5章:ユースケース別 実践ガイド

5-1. 新規Webアプリの完全自動構築

シナリオ: ECサイトのプロトタイプを作成する

Step 1: 詳細な仕様を準備

良い仕様の例:

# ECサイト プロトタイプ

## ユーザーストーリー
- 顧客として、商品を検索して購入したい
- 管理者として、商品と注文を管理したい

## 機能要件
### 顧客向け
- 商品一覧表示(カテゴリ別、検索)
- 商品詳細ページ
- カート機能
- チェックアウト(Stripe統合)
- 注文履歴

### 管理者向け
- 商品のCRUD
- 注文管理
- 売上ダッシュボード

## 技術要件
- Next.js 14 (App Router)
- Prisma + PostgreSQL
- Stripe決済
- Tailwind CSS

Step 2: AutoCoderに投入

仕様を入力し、初期化を実行。

Step 3: 放置して完成を待つ

AutoCoderは以下を自動で行います:

  • データベーススキーマの設計と実装
  • APIエンドポイントの作成
  • フロントエンドコンポーネントの実装
  • Stripe統合
  • 管理画面の構築

所要時間: 数時間〜1日(Feature数に依存)

ポイント: 人間は「仕様を書く」だけ。実装はすべてAutoCoderが行います。


5-2. 既存プロジェクトへの機能追加

シナリオ: 既存のブログシステムにコメント機能を追加

Step 1: 新しいプロジェクトとして設定

既存コードをAutoCoderのプロジェクトディレクトリにコピーし、追加機能の仕様を入力:

# コメント機能の追加

## 既存システム
- Next.js製ブログシステム
- Prisma + PostgreSQL
- 認証済み

## 追加機能
- 記事へのコメント投稿
- コメントへの返信(ネスト)
- コメントの編集・削除
- スパムフィルタリング
- 管理者によるモデレーション

Step 2: 実行

AutoCoderは既存コードを認識し、互換性を保ちながら機能を追加します。


5-3. 長時間にわたる段階的開発

シナリオ: 大規模なSaaSアプリを1週間かけて開発

運用パターン

Day 1: 初期化 + 基盤Feature(認証、DB)
  └── 夜間: 自動実行を継続

Day 2: API Feature群
  └── 昼: 進捗確認、必要に応じて再開
  └── 夜間: 自動実行を継続

Day 3-5: フロントエンド Feature群
  └── 定期的な進捗確認と再開

Day 6-7: 統合テストと調整

ポイント: 「放置 → 確認 → 再開」のサイクルで、大規模開発も可能に。


5-4. 研究・PoC(概念実証)の高速作成

シナリオ: 新技術の検証用プロトタイプを素早く作成

AutoCoderは以下のような用途に最適です:

  • 技術検証: 「このAPIは使えるか」の確認
  • デモ作成: 投資家や顧客向けのプロトタイプ
  • 学習用: 「〇〇の作り方」を実際のコードで理解
# WebSocket リアルタイムチャットの検証

## 目的
Socket.io vs WebSocket API の比較検証

## 要件
- 基本的なチャットルーム機能
- 両方の実装を並行して作成
- パフォーマンス計測コード含む

第6章:セキュリティと安全設計

多層防御アーキテクチャ

AutoCoderは自律エージェントを「野放し」にしません。

1. Bashコマンドの許可リスト

実行可能なコマンドは明示的に許可されたものだけ:

ALLOWED_COMMANDS = [
    'npm', 'node', 'git', 'python', 'pip',
    'mkdir', 'cp', 'mv', 'rm', 'cat', 'ls',
    # ... 限定的なリスト
]

2. ファイルシステム制限

プロジェクト外へのアクセスはブロック:

BLOCKED_PATHS = [
    '/etc', '/usr', '/var', '/root',
    '~/.ssh', '~/.aws', '~/.config',
    # ... センシティブなパス
]

3. OS レベルのサンドボックス

必要に応じて、コンテナやVM内での実行を推奨。

人間による監視

UIのリアルタイム出力により、エージェントの動作を常に監視できます:

  • 何を実装しているか
  • どのコマンドを実行したか
  • テスト結果はどうか

異常を検知したら、即座に停止可能です。


第7章:生成されるプロジェクト構造

AutoCoderが生成するプロジェクトは、以下の構造を持ちます:

generations/my_project/
├── features.db               # Feature状態管理(SQLite)
├── prompts/
│   ├── app_spec.txt          # アプリ仕様
│   ├── initializer_prompt.md # 初期化プロンプト
│   └── coding_prompt.md      # 実装プロンプト
├── init.sh                   # セットアップスクリプト
├── claude-progress.txt       # 実行ログ
├── .git/                     # Gitリポジトリ
└── src/                      # 実際のアプリケーションコード
    ├── app/
    ├── components/
    ├── lib/
    └── ...

生成後の活用

生成されたプロジェクトは通常のアプリケーションとして:

  • 手動で修正・拡張可能
  • 本番環境にデプロイ可能
  • チームで継続開発可能

第8章:GSD・Superpowers との比較

AIコーディングを強化するツールとして、GSDやSuperpowersも存在します。それぞれの特徴を比較しましょう。

比較表

観点 AutoCoder GSD Superpowers
主な焦点 長時間自律実行、完全自動構築 コンテキスト劣化の防止 開発方法論の徹底
アプローチ Two-Agent + DB永続化 タスク分散 + サブエージェント スキルベースのワークフロー
人間の関与 最小(仕様入力のみ) 中程度(フェーズごとに確認) 高(対話的に進行)
得意領域 ゼロからの完全構築 大規模プロジェクト管理 品質・プロセス管理
セッション 複数セッションで継続 セッション内で最適化 セッション内で対話

それぞれの得意領域

AutoCoderが得意なこと:

  • 仕様からの完全自動構築
  • 長時間(数時間〜数日)の自律実行
  • 「放置できる」開発
  • プロトタイプの高速作成

GSDが得意なこと:

  • 既存コードベースへの機能追加
  • コンテキスト劣化の防止
  • フェーズ分割された計画的開発
  • 人間との協調作業

Superpowersが得意なこと:

  • テスト駆動開発の徹底
  • コードレビューワークフロー
  • 品質重視の慎重な開発
  • 設計段階でのブレインストーミング

連携の可能性

3つのツールは異なるレイヤーで機能するため、併用が可能です:

┌─────────────────────────────────────────┐
│ Superpowers: 方法論・品質レイヤー        │
│   TDD、レビュー、検証の強制              │
├─────────────────────────────────────────┤
│ GSD: オーケストレーション・レイヤー      │
│   タスク分割、コンテキスト管理           │
├─────────────────────────────────────────┤
│ AutoCoder: 実行基盤レイヤー              │
│   長時間実行、永続化、自動化             │
└─────────────────────────────────────────┘

理想的な併用例:

  1. Superpowers で仕様をブレインストーミング、設計を固める
  2. GSD でフェーズ分割とロードマップを作成
  3. AutoCoder に各フェーズの自動実装を委任

第9章:まとめ

AutoCoderが実現すること

AutoCoderは、AIを「指示を待つアシスタント」から**「仕様を渡せば完成品を作り上げる自律エージェント」**に変えるツールです。

解決する課題:

  • セッション分断による進捗の消失
  • 長時間開発の監視負担
  • コンテキスト制限による品質低下

実現するワークフロー:

  • 仕様を渡して放置
  • 数時間〜数日後に完成品を受け取る
  • 中断・再開が自由自在

AutoCoderの強みと限界

強み:

  • 長時間・複数セッションに強い
  • 仕様駆動で全体構築が可能
  • 進捗が可視化され、制御できる
  • 「放置できる」自律性

限界・注意点:

  • Claude環境が前提
  • 生成品質はSpecとプロンプト設計に強く依存
  • 完全自動 ≠ 人間不要(監視と微調整は必要)

今日から始める

git clone https://github.com/leonvanzyl/autocoder.git
cd autocoder
./start_ui.sh  # または start.sh

このコマンドで、**「エージェントにアプリを作らせ続ける」**体験が始まります。


参考リンク


著者注: 本記事は2026年1月時点の情報に基づいています。AutoCoderは活発に開発が進んでいるプロジェクトのため、最新の機能については公式リポジトリをご確認ください。

6
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?