Skip to content

委託エンジニア向けセットアップガイド設計

1. 概要

業務委託エンジニアが Issue Outsource Platform に参加し、初回 Issue に着手するまでの全手順を設計する。環境構築、認証設定、スキルインストール、Issue 着手から納品までのステップバイステップガイドを含む。


2. 全体フロー

mermaid
graph LR
    A["招待受領"] --> B["環境構築"]
    B --> C["認証設定"]
    C --> D["スキルセット<br/>インストール"]
    D --> E["初回Issue<br/>着手"]
    E --> F["実装・MR作成"]
    F --> G["レビュー・納品"]

3. 前提条件

項目要件
OSmacOS (Keychain 利用のため)
Node.jsv20 以上
Python3.11 以上
Git2.40 以上 (worktree サポート)
Claude Code CLI最新版
エディタVS Code 推奨(Claude Code 拡張対応)

4. 環境構築手順

4.1 Claude Code CLI インストール

bash
# Claude Code CLI インストール
npm install -g @anthropic-ai/claude-code

# バージョン確認
claude --version

# 初回認証(Anthropic アカウント)
claude auth login

4.2 Git 設定

bash
# Git ユーザー設定
git config --global user.name "Your Name"
git config --global user.email "your-email@example.com"

# Git worktree が使えることを確認
git worktree list

4.3 GitLab SSH 設定

bash
# SSH鍵の生成(未作成の場合)
ssh-keygen -t ed25519 -C "your-email@example.com"

# SSH公開鍵の取得(GitLab に登録する)
cat ~/.ssh/id_ed25519.pub

# SSH接続テスト
ssh -T git@gitlab.ethan-tech.jp

GitLab での登録手順:

  1. GitLab にログイン
  2. User Settings > SSH Keys
  3. 公開鍵を貼り付けて登録

4.4 GitLab トークン設定

bash
# GitLab Personal Access Token を macOS Keychain に保存
# ※ トークンは GitLab > User Settings > Access Tokens から発行
# ※ スコープ: api, read_user, read_repository, write_repository
security add-generic-password -s "GITLAB_TOKEN" -a "$USER" -w "<your-token>" -U

# .zshrc に環境変数の参照を追加
echo 'export GITLAB_TOKEN=$(security find-generic-password -s "GITLAB_TOKEN" -a "$USER" -w)' >> ~/.zshrc
source ~/.zshrc

# 動作確認
curl -s --header "PRIVATE-TOKEN: $GITLAB_TOKEN" "https://gitlab.ethan-tech.jp/api/v4/user" | jq .username

4.5 Anthropic API キー設定

bash
# Anthropic API Key を Keychain に保存
# ※ マネージャーから提供される or Anthropic Console から取得
security add-generic-password -s "ANTHROPIC_API_KEY" -a "$USER" -w "<your-api-key>" -U

# .zshrc に環境変数の参照を追加
echo 'export ANTHROPIC_API_KEY=$(security find-generic-password -s "ANTHROPIC_API_KEY" -a "$USER" -w)' >> ~/.zshrc
source ~/.zshrc

5. プロジェクト参加フロー

5.1 招待から環境構築まで

mermaid
sequenceDiagram
    participant Manager as マネージャー
    participant Platform as Platform
    participant Engineer as 委託エンジニア
    participant GitLab as GitLab

    Manager->>Platform: エンジニア招待(メール/Slack)
    Platform->>GitLab: プロジェクトメンバー追加 (Developer)
    Platform->>Engineer: 招待通知(参加URL + 手順書リンク)

    Engineer->>Platform: 招待リンクからログイン(GitLab OAuth)
    Platform->>Engineer: プロジェクト参加完了 + セットアップガイド表示

    Engineer->>Engineer: 環境構築(Section 4 の手順)
    Engineer->>GitLab: SSH接続テスト
    Engineer->>Engineer: リポジトリ clone

    Engineer->>Platform: セットアップ完了報告
    Platform->>Manager: セットアップ完了通知

5.2 リポジトリ Clone

bash
# リポジトリの clone
git clone git@gitlab.ethan-tech.jp:aieo/issueoutsourcing.git
cd issueoutsourcing

# CLAUDE.md の確認(プロジェクトルールの把握)
cat CLAUDE.md

# 依存パッケージのインストール
npm install    # frontend
pip install -r requirements.txt  # backend

6. スキルセットのインストール・設定

6.1 標準スキルセットの構成

スキル用途必須/任意
dev-workflowIssue 調査→実装→MR 作成必須
multiAgentManageRule複数 Issue 並行開発推奨
create-docs設計ドキュメント生成任意
multilocalhostsローカル開発サーバー管理任意

6.2 スキルインストール手順

bash
# Skills ディレクトリの確認
ls ~/Documents/WorkSpace/otani/Skills/

# dev-workflow スキルの確認
cat ~/Documents/WorkSpace/otani/Skills/dev-workflow/SKILL.md

# CLAUDE.md にスキル参照が記載されていることを確認
grep -n "Skills" CLAUDE.md

6.3 .claude/ ディレクトリの設定

bash
# .claude ディレクトリの確認
ls -la .claude/

# settings.local.json の確認(権限設定)
cat .claude/settings.local.json

# エージェント定義の確認
ls .claude/agents/

6.4 動作確認

bash
# Claude Code を起動して動作確認
claude

# スキルが認識されていることを確認(Claude Code 内で)
# > /dev-workflow と入力して応答を確認

7. Issue 着手から納品までのステップバイステップガイド

7.1 全体フロー図

mermaid
graph TD
    A["Step 1: Issue 選択・取得"] --> B["Step 2: worktree 作成"]
    B --> C["Step 3: Claude Code 起動"]
    C --> D["Step 4: Issue 調査"]
    D --> E["Step 5: 実装"]
    E --> F["Step 6: テスト"]
    F --> G["Step 7: MR 作成"]
    G --> H["Step 8: レビュー対応"]
    H --> I["Step 9: マージ・納品完了"]

    style A fill:#e1f5fe
    style I fill:#c8e6c9

Step 1: Issue 選択・取得

bash
# Platform UI で Issue 一覧を確認
# → 着手したい Issue の「取得」ボタンをクリック
# → 自動的に GitLab でアサインされる

# または CLI で確認
GITLAB_TOKEN=$(security find-generic-password -s "GITLAB_TOKEN" -a "$USER" -w)
curl -s --header "PRIVATE-TOKEN: $GITLAB_TOKEN" \
  "https://gitlab.ethan-tech.jp/api/v4/projects/78/issues?state=opened&labels=available" \
  | jq '.[] | {iid, title, labels}'

Step 2: worktree 作成

bash
# プロジェクトルートに移動
cd /path/to/issueoutsourcing

# Issue 番号に対応する worktree を作成
git fetch origin
git worktree add ../issueOutsource-worktrees/issue-{N} -b feature/issue-{N} origin/main

# worktree に移動
cd ../issueOutsource-worktrees/issue-{N}

Step 3: Claude Code 起動

bash
# Claude Code を起動
claude

# CLAUDE.md が読み込まれ、プロジェクトルールが適用される
# dev-workflow スキルが自動認識される

Step 4: Issue 調査

Claude Code 内で以下を実行:

このIssueの対応をして

dev-workflow スキルが自動発動し、以下を実行:

  1. GitLab API で Issue 詳細を取得
  2. 既存コードベースの調査
  3. 実装計画の策定
  4. GitLab Issue にコメント(着手報告)

Step 5: 実装

Claude Code が実装計画に基づいてコードを生成:

  • コーディング規約に準拠
  • 適切な粒度でコミット
  • AGENT_LOG.md に進捗を記録

Step 6: テスト

bash
# テスト実行(プロジェクトに応じて)
npm test           # frontend
pytest             # backend

# lint チェック
npm run lint
flake8 .

Step 7: MR 作成

Claude Code が自動で MR を作成:

  • MR テンプレート(mr-template.md)を自動適用
  • 変更サマリーを自動生成
  • テスト結果を添付
  • GitLab Issue とリンク (Closes #N)
bash
# MR 作成(Claude Code 内で自動実行)
# git push → GitLab API で MR 作成 → 報告資料添付

Step 8: レビュー対応

# レビューコメントがあった場合
# Claude Code で対応:
レビューコメントを確認して修正して
  • レビュアーの指摘に対して修正
  • 修正コミット → push
  • レビュアーに再レビュー依頼

Step 9: マージ・納品完了

  • レビュアーが Approve → MR マージ
  • Platform が Webhook で検知 → 報酬確定
  • エンジニアに納品完了通知
bash
# worktree のクリーンアップ(マージ完了後)
cd /path/to/issueoutsourcing
git worktree remove ../issueOutsource-worktrees/issue-{N}
git branch -d feature/issue-{N}

8. トラブルシューティング

8.1 よくある問題と解決策

問題原因解決策
claude コマンドが見つからないPATH 未設定npm install -g @anthropic-ai/claude-code を再実行
GitLab SSH 接続失敗SSH鍵未登録Section 4.3 の手順を再確認
GITLAB_TOKEN が空Keychain 未登録Section 4.4 の手順で再設定
worktree 作成失敗ブランチ名重複git worktree list で確認し、既存を削除
スキルが認識されないCLAUDE.md にスキル記載なしCLAUDE.md のスキルセクションを確認
MR 作成失敗権限不足GitLab でのロール (Developer) を確認

8.2 サポート窓口

  • Slack: #issue-outsource-support チャンネル
  • GitLab Issue: プラットフォームリポジトリに Issue を作成
  • ドキュメント: Platform UI 内のヘルプセクション

9. セキュリティ注意事項

  1. トークンの取り扱い: 全てのトークン・APIキーは macOS Keychain に保存する。.env ファイルへの平文記載は厳禁。
  2. コミット前確認: .gitignore に機密ファイルが含まれていることを確認する。
  3. SSH鍵: パスフレーズ付きの SSH 鍵を推奨する。
  4. 作業範囲: アサインされた Issue の範囲内でのみ変更を行う。他の Issue や共通部分への変更が必要な場合はマネージャーに相談する。

10. Platform UI での管理画面設計(将来実装)

10.1 エンジニアダッシュボード

+------------------------------------------+
| Issue Outsource Platform                 |
+------------------------------------------+
| マイ Issue           | 環境ステータス    |
| ┌─────────────────┐  | Claude Code: OK   |
| │ #11 dev-workflow │  | GitLab SSH: OK    |
| │ ステータス: 実装中│  | Token: 有効       |
| │ 報酬: ¥50,000   │  |                   |
| └─────────────────┘  | スキル            |
| ┌─────────────────┐  | ✓ dev-workflow    |
| │ #12 UI実装      │  | ✓ multiAgent      |
| │ ステータス: 未着手│  | ✓ create-docs     |
| │ 報酬: ¥30,000   │  |                   |
| └─────────────────┘  |                   |
+------------------------------------------+

10.2 セットアップウィザード

Platform UI にセットアップウィザードを実装し、各ステップの完了状態をリアルタイムで表示する。

ステップチェック方法API
Claude Code インストールバージョン情報の報告POST /api/setup/check-claude
GitLab SSHSSH接続テスト結果POST /api/setup/check-ssh
Token 設定GitLab API 疎通確認POST /api/setup/check-token
リポジトリ Cloneローカルパス報告POST /api/setup/check-repo
スキル確認スキル一覧報告POST /api/setup/check-skills