Agentic Coding
弊社ではGitHubのCopilotのProプラントとClaudeCodeのMaxプランを併用して使用しています。
Copilotはタブキーの補完やコードレビューに使用しており、ClaudeCodeは主に手元での開発に使用しています。
資源の共有
弊社にはシステムプロンプトと全製品の仕様書、社内MCPサーバ、共有設定ファイルを管理するリポジトリが1つ存在し、それらをGitHubのActionsを用いて各リポジトリに同期しています。
- name: ✴️ Sync .claude/agents
run: |
rm -rf TO/.claude/agents/_
mkdir -p TO/.claude/agents
mkdir -p TO/.claude/agents/_
echo "$CLAUDE_AGENTS" | xargs -I {} cp "FROM/$CLAUDE_AGENTS_FROM/{}" "TO/.claude/agents/_/{}"
また、いくつのかのシステムプロンプトは、オープンソースのリポジトリに同期しています。
https://github.com/interactive-inc/open-prompt
システムプロンプト
2つの製品のシステムプロンプトを管理するのは大変なので、CLAUDE.mdから @ でCopilotのシステムプロンプトを読み込んでいます。
See @.github/copilot-instructions.md for project overview and @package.json for available npm commands for this project.
## Additional Instructions
- @.github/instructions/core.instructions.md
- @.github/instructions/ts.instructions.md
- @.github/instructions/output-style.instructions.md
Copilotのシステムプロンプトを利用しているのは、現状はCopilotにはファイルの読み込み機能が無い為です。
書類の管理
ある程度の規模の製品では、弊社では以下のような構成で仕様や要件定義、計画を管理しています。
- .docs
- requirements
- issues
- notes
- terms
- products
- product-a
- site-routes
- features
- notes
文章を残す事で、既存の使用を元に要件定義や計画を作成したり、計画を元に実装を進めるなどが可能になります。
社内のMCPサーバ
弊社では製品の仕様書を読み書きする為のMCPサーバを開発しいくつかのリポジトリで運用しています。
{
"mcpServers": {
"local": {
"command": "bun",
"args": ["mcp/index.ts"]
}
}
}
このMCPサーバの目的は、弊社の策定する仕様書のディレクトリ構成やFrontMatterのルールに従って仕様の読み書きすることです。
ClaudeCodeのReadツールと異なり、ファイルの概要付きでの一覧、FrontMatterの値を用いたファイルの結合、バリデーションを用いたFrontMatterの更新が可能になっています。