Q. どうしてVSCode + Continue にしたの?
A. Cursorに払う金がないから
1か月のリクエストが100/500の状態で20ドル払うのはつらいっす!!!(日曜プログラマー感)
## Continueってなによ
VSCodeの拡張機能で、「AIチャットやコード補完」をしてくれつやつです。APIも使えるし、ローカルLLMも使えるっぽい。さすがにローカルLLMを動かす環境ではないので断念したけど……。
ちなみに私は「OpenAI APIとClaude API」を入れました。
## 設定を押さえる
### jsonで書くのは非推奨?
- [Config YAML Reference | Continue](https://docs.continue.dev/reference#tabautocompletemodel)
- [Config Migration to YAML | Continue](https://docs.continue.dev/yaml-migration)
「Continueのパネルから設定ボタンを押して……」ってやりたくなりますが、実はその方法だと非推奨の書き方になってしまいまして。なので今新規で設定を行うならYAMLで書いたほうがいいかもしれません。
ということで、`C:\Users\<ユーザー名>\.continue`(Windows)内にある`config.json`を退避 or 削除を行います。
### グローバル設定とローカル設定
- [Config YAML Reference | Continue](https://docs.continue.dev/reference#tabautocompletemodel)
`C:\Users\<ユーザー名>\.continue\confing.yaml`として書くとグローバル設定(Continue全体で読み込む設定・ルール)になり、`<プロジェクト>\.continue\<各種設定フォルダ>\<適当なファイル名>.yaml`にするとルールが適応されるそう。(ローカルはまだ試してない)
自分はとりあえずグローバル設定に最低限のモデルとルールを記載するようにしました。
### 実際に設定したYAML
先に結論を出しておきます。ファイル名は`config.yaml`ね。
```yaml
name: global-configuration
version: 2.0.0
schema: v2
models:
- name: Claude 4 Sonnet
apiKey: ${{ secrets.ANTHROPIC_API }}
model: claude-sonnet-4-0
provider: anthropic
roles:
- chat
- edit
- name: Claude 4 Opus
apiKey: ${{ secrets.ANTHROPIC_API }}
model: claude-opus-4-0
provider: anthropic
roles:
- edit
- name: GPT-4.1 nano
apiKey: ${{ secrets.OPENAI_API }}
model: gpt-4.1-nano-2025-04-14
provider: openai
roles:
- autocomplete
- name: GPT-4.1
apiKey: ${{ secrets.OPENAI_API }}
model: gpt-4.1
provider: openai
roles:
- chat
- edit
rules:
- Always give concise responses
- Always output in Japanese
- Always write Python code based on PEP8
- Always write CSS class names using BEM
```
Continueは設定ファイルに最新モデルの設定を行えば使えるところがよい。
余談ですが、OpenAI APIは新モデルが出たら料金を見ておくことをオススメします。新しいモデルのほうが性能が良くて安いことが多々あります。GPT4.1のほうが性能もコストも安くて私は泣いた。
`C:\Users\<ユーザー名>\.continue\`に`.env`を置いて、グローバル設定YAMLに`${{ secrets.<.envで設定したキー> }}`を書けばOK。まあ、直接APIキーを書いてもいいけれども……。
#### models設定
- name:モデル名
- apyKey:APIキー
- model:使いたいモデル
- provider:どこのモデルか
- roles:どこでそのモデルを使いたい・選択したいか
個人的には`roles`が重要。実は`roles`で「ChatはOpenAIを中心に、EditはClaudeがいいな」みたいなモデル選択肢のカスタマイズができます。なので、自分が使いたいモデルをrolesに入れておくと便利かもしれない。
#### rules設定
いわゆるモデルに対するルール。下2行は言語設定(Python・CSS)なのでスルーでOK。細かいrulesはローカルに書けばいいと思う。
#### その他設定項目
- [Config YAML Reference | Continue](https://docs.continue.dev/reference#tabautocompletemodel)
`prompts`とか`docments`があるみたい。この辺は公式ドキュメントを見ればいいと思う(投げやり)最低`models`と`rules`だけでなんとかなる。
## 参考サイト
- [Config YAML Reference | Continue](https://docs.continue.dev/reference#tabautocompletemodel)
- [Config Migration to YAML | Continue](https://docs.continue.dev/yaml-migration)