背景
会社において
- GitHub Copilot(GitHub Free)は利用できません
- Git Hub Copilot Business/Enterprise では BYOK禁止
- Bring Your Own Key (Model を使うには って意味で)
ってのはよくあることかな?と
理由はシンプルで、ライセンスの制約です。
企業利用では GitHub Copilot Business または Enterprise が必要ですが、クラウドサービスを利用できないセキュリティポリシーの環境では、そもそも選択肢に入りません。
「ローカル LLM を使った OSS のコード生成ツールはどうだろう?」
ってのは誰もが思うところで、OSS コード生成ツール を調査した
企業利用で最も気になる 情報漏洩リスク については、continue.dev AI Toolkit だけコード調査もしてみた
この調査は、GitHub Copilot を使ってほぼ行いました。
概要
- 調査対象: OSS コード生成ツール 10 種類
- 調査観点: 外部通信・テレメトリ・オプトアウト可否・安全性
-
結論: AI Toolkit for VS Code (Microsoft) が最もバランスが良さそう
- Continue.dev vs AI Toolkit で二択かなぁと思ったので、他がもっと良い可能性はありますが
- Continue.dev vs AI Toolkit で二択かなぁと思ったので、他がもっと良い可能性はありますが
調査結果サマリー
以下概要は、Copilot に調査させて、上位二つのみを、コードまで精査させた。
| ツール名 | 外部通信 | テレメトリ | オプトアウト | 安全性評価 |
|---|---|---|---|---|
| AI Toolkit (Microsoft) | ⚠️ あり | Microsoft標準 | ✅ 可能 | 🟢 高 |
| Continue.dev | ⚠️ あり | PostHog, Sentry | ✅ 可能 | 🟡 中 |
| TabbyML | ⚠️ あり | 匿名使用統計 | ✅ 可能 | 🟢 高 |
| FauxPilot | ✅ なし | なし | - | 🟢 高 |
| Aider | ⚠️ あり | 匿名使用統計 | ✅ 可能 | 🟡 中 |
| Roo Code | ⚠️ あり | 匿名使用統計 | ✅ 可能 | 🟡 中 |
| Kilocode | ⚠️ あり | 匿名使用統計 | ✅ 可能 | 🟡 中 |
| VoidGPL | ✅ なし | なし | - | 🟢 高 |
| Tabby | ⚠️ あり | 匿名使用統計 | ✅ 可能 | 🟢 高 |
| PearAI | 🔍 要確認 | 不明 | 不明 | 🔴 要調査 |
詳細調査: 情報漏洩リスクについて
最重要ポイント: Query(プロンプト・コード)は送信されるのか?
結論から言うと、主要ツールはいずれもコード内容を外部に送信していないみたい。
OSS って流石だなって思うところ
テレメトリ(使用統計)はデフォルトで有効なツールが多いため、気になる場合はオプトアウト設定が必要
まぁ、この辺は、オプトインにしても、誰も opt-in してくれないからしょうがないかもな・・と。
🥇 おすすめ: AI Toolkit for VS Code (Microsoft)
選定理由
| 観点 | 評価 |
|---|---|
| 開発元の信頼性 | ✅ Microsoft 公式 |
| テレメトリ | ✅ VS Code 標準設定で一括管理 |
| コード送信 | ✅ なし(プロンプト・コードは収集されない) |
| ローカル LLM 対応 | ✅ Ollama 連携で完全ローカル運用可 |
| オプトアウト | ✅ VS Code 設定で簡単に無効化 |
基本情報
テレメトリについて
公式 README より:
The AI Toolkit for Visual Studio Code collects usage data and sends it to Microsoft to help improve our products and services.
重要: サードパーティサービス(PostHog 等)への送信はなく、Microsoft 直接です。
ソースコードによる詳細調査
AI Toolkit はオープンソースではあるものの、TypeScript コンパイル済みの拡張機能として配布されているため、テレメトリ実装の詳細はリポジトリ内のドキュメントとメタデータから確認できる
公式ドキュメント(README.md):
## Data and telemetry
The AI Toolkit for Visual Studio Code collects usage data and sends it to Microsoft
to help improve our products and services. Read our privacy statement to learn more.
This extension respects the `telemetry.enableTelemetry` setting which you can learn
more about at disable telemetry reporting.
特徴:
- VS Code 標準のテレメトリフレームワーク(
@vscode/extension-telemetry)を使用 -
telemetry.telemetryLevel設定を尊重 - サードパーティサービスへの送信なし(Microsoft 直接)
- プロンプト・コード内容は収集対象外
オプトアウト方法
VS Code の settings.json に以下を追加:
{
"telemetry.telemetryLevel": "off"
}
または、設定画面で:
-
Ctrl + ,で設定を開く - 「telemetry」で検索
- 「Telemetry: Telemetry Level」を「off」に設定
ローカル LLM との連携
AI Toolkit は Ollama と連携できるため、完全ローカル環境での運用が可能です。
AI Toolkit + Ollama + ローカル LLM(Llama, Phi, etc.)
= 外部通信ゼロのコード生成環境
🥈 次点: Continue.dev
基本情報
機能面での強み
- 任意の LLM(Ollama, OpenAI, Anthropic, OSS モデル)に接続可能
- カスタマイズ性が高い
- 活発なコミュニティ
テレメトリの詳細
GitHub のソースコードを調査した結果、以下の外部通信ポイントを確認:
-
PostHog (
app.posthog.com) - 匿名使用統計 - Sentry - エラーレポート(現在は Continue チームメンバーのみ有効)
重要: プロンプトやコード内容は送信されません。
公式ドキュメントより:
Suggestion Interactions: Whether you accept or reject suggestions (excluding the actual code or prompts involved).
ソースコードによる詳細調査
Continue.dev は完全にオープンソースであり、テレメトリ実装を詳細に確認できます。
1. PostHog テレメトリ
メインの実装ファイル:
// PostHog クライアント初期化(API Key はパブリック)
static async getTelemetryClient(): Promise<PostHogType | undefined> {
try {
const { PostHog } = await import("posthog-node");
return new PostHog("phc_JS6XFROuNbhJtVCEdTSYk6gl5ArRrTNMpCcguAXlSPs", {
host: "https://app.posthog.com",
});
} catch (e) {
console.error(`Failed to setup telemetry: ${e}`);
}
}
送信されるデータの構造:
static async capture(
event: string,
properties: { [key: string]: any },
sendToTeam: boolean = false,
isExtensionActivationError: boolean = false,
) {
try {
const augmentedProperties = {
...properties,
os: Telemetry.os,
extensionVersion: Telemetry.ideInfo?.extensionVersion,
ideName: Telemetry.ideInfo?.name,
ideType: Telemetry.ideInfo?.ideType,
};
// ... コード・プロンプトは含まれない
}
}
2. Sentry エラーレポート
Sentry DSN 定義:
export const SENTRY_DSN =
"https://fe99934dcdc537d84209893a3f96a196@o4505462064283648.ingest.us.sentry.io/4508184596054016";
Sentry 初期化と匿名化処理:
// beforeSend でセンシティブデータを除去
beforeSend(event: Event) {
// First apply anonymization
const anonymizedEvent = anonymizeSentryEvent(event);
if (!anonymizedEvent) return null;
// Add basic properties similar to PostHog telemetry
if (!anonymizedEvent.tags) anonymizedEvent.tags = {};
// ... OS情報、IDE情報のみ追加
}
重要: Sentry は現在 Continue チームメンバーのみ に有効化されています:
// Sentry depends on both allowAnonymousTelemetry and hasContinueEmail
if (allowAnonymousTelemetry && hasContinueEmail) {
// Initialize Sentry (new for GUI - enhanced React setup)
Sentry.init({
// ... 一般ユーザーには初期化されない
});
}
3. テレメトリ無効化の確認
環境変数チェック:
get isEnabled() {
return process.env.CONTINUE_ALLOW_ANONYMOUS_TELEMETRY !== "0";
}
テレメトリ無効時の処理:
if (allowAnonymousTelemetry) {
posthog.init("phc_JS6XFROuNbhJtVCEdTSYk6gl5ArRrTNMpCcguAXlSPs", {
api_host: "https://app.posthog.com",
disable_session_recording: true,
autocapture: false,
capture_pageleave: false,
capture_pageview: false,
});
posthog.identify(window.vscMachineId);
posthog.opt_in_capturing();
} else {
// Disable PostHog
posthog.opt_out_capturing();
}
オプトアウト方法
方法1: VS Code 設定(推奨)
{
"continue.telemetryEnabled": false
}
方法2: 環境変数
[Environment]::SetEnvironmentVariable("CONTINUE_ALLOW_ANONYMOUS_TELEMETRY", "0", "User")
方法3: config.json
// ~/.continue/config.json
{
"allowAnonymousTelemetry": false
}
AI Toolkit との比較
| 項目 | AI Toolkit | Continue.dev |
|---|---|---|
| 開発元 | Microsoft | Continue Inc. |
| テレメトリ送信先 | Microsoft 直接 | PostHog(サードパーティ) |
| オプトアウト | VS Code 標準設定 | 専用設定が必要 |
| 安全性評価 | 🟢 高い | 🟡 中程度 |
🥉 自己ホスト派向け: TabbyML
完全に自己ホストしたい場合は TabbyML がおすすめです。
特徴
- 自己ホスト型コード補完サーバー
- VS Code プラグインあり
- エンタープライズ向けセキュリティ機能
オプトアウト方法
クライアント側:
# ~/.tabby-client/agent/config.toml
[anonymousUsageTracking]
disable = true
サーバー側:
export TABBY_DISABLE_USAGE_COLLECTION=1
ツール一覧と公式リンク
| ツール名 | ライセンス | GitHub / 公式 |
|---|---|---|
| AI Toolkit | MIT | GitHub / Marketplace |
| Continue.dev | Apache 2.0 | GitHub / Marketplace |
| TabbyML | Apache 2.0 | GitHub |
| FauxPilot | MIT | GitHub |
| Aider | MIT | GitHub |
| Roo Code | MIT | GitHub |
| Kilocode | MIT | GitHub |
| VoidGPL | GPL | GitHub |
あとがき
やっぱり、Microsoft 製ってところが安心してしまう、自分の場合は
- ✅ Microsoft 公式で企業利用に適した信頼性
- ✅ VS Code 標準テレメトリ設定で一括管理
- ✅ Ollama 連携で完全ローカル運用可能
- ✅ Query(プロンプト・コード)は外部送信されない
あとは、Ollama or Jan.ai で gpt-oss-120b を満足に動かせる環境を作りたいわけだけど、お金の問題ですね・・ ![]()
最後に、注意事項
テレメトリはデフォルトで有効なツールが多い
導入前に必ず以下を確認しよう:
- 何が収集されるのか(コード内容?使用統計のみ?)
- どこに送信されるのか(自社サーバー?サードパーティ?)
- オプトアウトは可能か
- 当然、オプトアウトは検討した方が良いとは思う。自宅じゃないなら
参考リンク
- AI Toolkit 公式ドキュメント
- AI Toolkit GitHub - Data and telemetry
- Continue.dev テレメトリポリシー
- Continue.dev GitHub - PostHog実装
- Continue.dev GitHub - Sentry実装
- Continue.dev GitHub - TelemetryProviders
- VS Code テレメトリ無効化方法
- TabbyML 使用統計について