📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
ページの作成:「== 概要 == Windsurf (旧Codeium) は、Codeium社が開発したAI駆動の統合開発環境である。<br> VS Codeをベースにしたスタンドアロンエディタで、Cascadeと呼ばれるAIエージェント機能を中心に展開している。<br> <br> 2024年11月にCodeiumからWindsurfにリブランドされた。<br> <br> 主要機能を以下に示す。<br> * Cascade (AIエージェント) *: マルチファイル推論、計画機能、ツ…」 |
編集の要約なし |
||
| 20行目: | 20行目: | ||
* MCP (Model Context Protocol) 対応 | * MCP (Model Context Protocol) 対応 | ||
*: 外部サービスとの連携を実現するプロトコル | *: 外部サービスとの連携を実現するプロトコル | ||
* Workflows (ワークフロー) | |||
*: 反復的なタスクをスラッシュコマンドで自動化 | |||
*: ワークフロー間のチェーン呼び出しも可能 | |||
* Worktrees (Wave 13以降) | |||
*: Git Worktreeを利用した並列タスクの安全な分離実行 | |||
*: ワークスペースあたり最大20のWorktreeを管理可能 | |||
<br> | <br> | ||
<center> | <center> | ||
| 53行目: | 59行目: | ||
|- | |- | ||
| MCPサーバ || MCPサーバ || - | | MCPサーバ || MCPサーバ || - | ||
|- | |||
| (該当なし) || Workflows || スラッシュコマンドで呼び出す反復タスクの自動化 | |||
|- | |||
| (該当なし) || Worktrees || Git Worktreeを利用した並列タスク実行 (Wave 13以降) | |||
|} | |} | ||
</center> | </center> | ||
| 588行目: | 598行目: | ||
*: Cascadeの入力ボックスで @skill-name と入力して明示的に指定する。 | *: Cascadeの入力ボックスで @skill-name と入力して明示的に指定する。 | ||
*: 例: @code-reviewer と入力してコードレビュースキルを呼び出す。 | *: 例: @code-reviewer と入力してコードレビュースキルを呼び出す。 | ||
<br><br> | |||
== ワークフロー (Workflows) の作成手順 == | |||
==== ワークフロー機能の概要 ==== | |||
ワークフローは、反復的なタスクを自動化するための仕組みである。<br> | |||
スラッシュコマンド (<code>/workflow-name</code>) で即座に実行可能であり、デプロイ、PRレビュー、テスト等の定型作業を効率化する。<br> | |||
<br> | |||
ワークフローの特徴を以下に示す。<br> | |||
* <u>.windsurf/workflows/</u> ディレクトリにMarkdownファイルとして配置する。 | |||
* スラッシュコマンド (<code>/workflow-name</code>) で呼び出す。 | |||
* ワークフロー内から別のワークフローをチェーン呼び出し可能である。 | |||
* 1ファイル最大12,000文字である。 | |||
<br> | |||
==== ワークフローファイルの記述例 ==== | |||
===== 調査ワークフロー ===== | |||
<syntaxhighlight lang="md"> | |||
--- | |||
name: research | |||
description: 指定されたトピックの技術調査を実行する | |||
--- | |||
## 手順 | |||
1. 指定されたトピックの概要を調査する | |||
2. 公式ドキュメントから重要な情報を収集する | |||
3. ベストプラクティスと注意事項をまとめる | |||
4. 結果を構造化して出力する | |||
</syntaxhighlight> | |||
<br> | |||
===== チェーンワークフロー ===== | |||
ワークフロー内から別のワークフローを呼び出す例を以下に示す。<br> | |||
<br> | |||
<syntaxhighlight lang="md"> | |||
--- | |||
name: create-mediawiki-page | |||
description: 調査から執筆までを一括で実行するワークフロー | |||
--- | |||
## 手順 | |||
1. /research を実行して技術情報を収集する | |||
2. 収集した情報を整理する | |||
3. /write-mediawiki を実行してMediaWikiページを作成する | |||
</syntaxhighlight> | |||
<br> | |||
==== ワークフローとスキルの使い分け ==== | |||
ワークフローとスキルは類似しているが、以下に示す基準で使い分ける。<br> | |||
<br> | |||
<center> | |||
{| class="wikitable" | |||
|+ ワークフローとスキルの比較 | |||
! 観点 !! Workflows !! Skills | |||
|- | |||
| 起動方法 || /slash-command (明示的) || @mention または自動起動 | |||
|- | |||
| ファイル形式 || 単一Markdownファイル || フォルダ (SKILL.md + リソース群) | |||
|- | |||
| リソース管理 || なし (手順のみ) || テンプレート、チェックリスト等を同梱可 | |||
|- | |||
| 向いている用途 || 定型的な手順の自動化 || 複雑な手順 + 参考資料が必要なタスク | |||
|- | |||
| チェーン呼び出し || 他のWorkflowを呼び出し可能 || 不可 (単独で完結) | |||
|} | |||
</center> | |||
<br><br> | |||
== Worktrees (並列実行) == | |||
==== Worktrees機能の概要 ==== | |||
Worktreesは、Git Worktreeを利用して並列タスクを安全に分離実行するための機能である。(Wave 13以降で利用可能)<br> | |||
<br> | |||
Worktreesの特徴を以下に示す。<br> | |||
* 各タスクが独立したGit Worktreeで実行されるため、ブランチ間の干渉を防止する。 | |||
* <u>~/.windsurf/worktrees/<リポジトリ名>/</u> に自動管理される。 | |||
* ワークスペースあたり最大20のWorktreeを管理可能である。 | |||
* Cascadeペインでセッション開始時にWorktreeモードを選択する。 | |||
<br> | |||
==== フック設定 ==== | |||
<u>.windsurf/hooks.json</u> ファイルを使用して、Worktree作成時の環境セットアップを自動化できる。<br> | |||
<br> | |||
<syntaxhighlight lang="json"> | |||
{ | |||
"post_setup_worktree": { | |||
"command": "npm install && npm run build" | |||
} | |||
} | |||
</syntaxhighlight> | |||
<br> | |||
<code>post_setup_worktree</code> フックは、Worktreeの作成後に自動的に実行される。<br> | |||
依存関係のインストールやビルドプロセスの実行等、環境構築に必要なコマンドを指定する。<br> | |||
<br><br> | <br><br> | ||
| 714行目: | 811行目: | ||
== プロジェクトの構成例 == | == プロジェクトの構成例 == | ||
==== 公式推奨の構成パターン ==== | |||
Windsurfの公式ドキュメントでは、5つの機能を相互補完的に使用することが推奨されている。<br> | |||
<br> | |||
<center> | |||
{| class="wikitable" | |||
|+ Windsurfの5つの主要設定機能 | |||
! 機能 !! 役割 !! 起動方法 | |||
|- | |||
| AGENTS.md || ディレクトリスコープの指示 (環境説明) || 自動適用 | |||
|- | |||
| Rules || 永続的な制約・ガイダンス || Always On / Manual / Model Decision / Glob | |||
|- | |||
| Workflows || 反復タスクの自動化 || /workflow-name スラッシュコマンド | |||
|- | |||
| Skills || 複雑なマルチステップ手順 + リソースバンドル || @skill-name または自動起動 | |||
|- | |||
| Worktrees || 並列実行のためのブランチ分離 (Wave 13以降) || Cascadeペインでモード選択 | |||
|} | |||
</center> | |||
<br> | |||
==== 推奨ディレクトリ構成 ==== | |||
推奨プロジェクト構成を以下に示す。<br> | 推奨プロジェクト構成を以下に示す。<br> | ||
<br> | <br> | ||
プロジェクト/ | プロジェクト/ | ||
├── .windsurf/ | ├── .windsurf/ | ||
│ ├── hooks.json # Worktreeフック設定 (並列実行時) | |||
│ ├── rules/ | │ ├── rules/ | ||
│ │ ├── japanese-output.md # 日本語対応ルール | │ │ ├── japanese-output.md # 日本語対応ルール | ||
│ │ ├── coding-standards.md # コーディング規約ルール | │ │ ├── coding-standards.md # コーディング規約ルール | ||
│ │ └── qt-development.md # Qt開発固有ルール | │ │ └── qt-development.md # Qt開発固有ルール | ||
│ │ | |||
│ ├── workflows/ | |||
│ │ ├── research.md # /research (調査ワークフロー) | |||
│ │ ├── write-mediawiki.md # /write-mediawiki (執筆ワークフロー) | |||
│ │ └── create-mediawiki-page.md # /create-mediawiki-page (チェーンワークフロー) | |||
│ │ | │ │ | ||
│ └── skills/ | │ └── skills/ | ||
| 753行目: | 877行目: | ||
|- | |- | ||
| AGENTS.md || ディレクトリスコープ型の指示 || 任意のディレクトリ | | AGENTS.md || ディレクトリスコープ型の指示 || 任意のディレクトリ | ||
|- | |||
| ワークフロー (Workflows) || 反復タスクの自動化 || .windsurf/workflows/ | |||
|- | |- | ||
| スキル (Agent Skills) || 多段階ワークフロー・テンプレート活用 || .windsurf/skills/ | | スキル (Agent Skills) || 多段階ワークフロー・テンプレート活用 || .windsurf/skills/ | ||
|- | |||
| Worktrees || 並列タスクの分離実行 || ~/.windsurf/worktrees/ (自動管理) | |||
|- | |- | ||
| MCP || 外部API連携・機能拡張 || ~/.codeium/windsurf/mcp_config.json | | MCP || 外部API連携・機能拡張 || ~/.codeium/windsurf/mcp_config.json | ||