Skip to content

ข้อดีข้องเสียของ Continue

ข้อดี

  • ฟรี ไม่ต้องจ่ายรายเดือน
  • ปรับแต่งได้เยอะ

ข้อเสีย

  • quick edit ไม่ดีเท่า Cursor, Windsurf
  • agentic ของ claude ไม่ดีเท่า Windsurf, Cursor

ความเหมาะสมในการใช้งาน

  • htrsh

Features

Chat

กำหนดค่าต่างๆที่ docs.continue.dev faviconContext Prividers

Command

ต้องกำหนด inlineEdit ก่อน

~/.continue/config.json
json
"experimental": {
    "modelRoles": {
        "inlineEdit": "MODEL_TITLE",
    }
}

Autocomplete

ใช้ model อะไรก็ได้ แต่แนะนำ docs.continue.dev faviconCodestral

~/.continue/config.json
json
{
  "tabAutocompleteModel": {
    "title": "Codestral", 
    "provider": "mistral",
    "model": "codestral-latest",
    "apiKey": "[API_KEY]",
    "apiBase": "https://codestral.mistral.ai/v1"
  }
}

Action

ปรับแต่งที่ docs.continue.dev faviconSlash Command

Configuration

ปรับแต่งที่ ~/.continue/config.json (พิมพ์ f1 > Continue: Open Continue Config) รายละเอียดต่างๆดูที่ docs.continue.dev faviconContinue Config

Config ของผม =>
~/.continue/config.json
json
{
	"reranker": {
		"name": "voyage",
		"params": {
			"model": "rerank-2",
			"apiKey": ""
		}
	},
	"embeddingsProvider": {
		"provider": "voyage",
		"model": "voyage-code-2",
		"apiKey": ""
	},
	"models": [
		{
			"model": "deepseek-chat",
			"provider": "deepseek",
			"apiKey": "",
			"title": "deepseek chat"
		},
		{
			"model": "Qwen/Qwen2.5-Coder-32B-Instruct",
			"provider": "deepinfra",
			"apiKey": "",
			"title": "Qwen2.5-Coder-32B (deepinfra)",
			"cacheSystemMessage": true
		},
		{
			"title": "qwen2.5-coder-32b (SambaNova)",
			"provider": "sambanova",
			"model": "Qwen2.5-Coder-32B-lnstruct",
			"apiKey": "",
			"cacheSystemMessage": true
		},
		{
			"model": "Qwen/QwQ-32B-Preview",
			"provider": "deepinfra",
			"apiKey": "",
			"title": "Qwen/QwQ-32B-Preview (deepinfra)",
			"cacheSystemMessage": true
		},
		{
			"model": "deepseek-coder",
			"provider": "deepseek",
			"apiKey": "",
			"title": "deepseek coder",
			"cacheSystemMessage": true
		},
		{
			"model": "llama3.1-70b",
			"provider": "groq",
			"apiKey": "",
			"title": "llama3.1-70b (groq)"
		},
		{
			"title": "groq-llama-3.1-405b (groq)",
			"provider": "groq",
			"model": "llama3.1-405b",
			"apiKey": ""
		},
		{
			"model": "claude-3-5-sonnet-20240620",
			"provider": "anthropic",
			"apiKey": "",
			"title": "claude-3-5-sonnet",
			"cacheBehavior": {
				"cacheSystemMessage": true,
				"cacheConversation": true
			}
		},
		{
			"model": "gpt-4o",
			"provider": "openai",
			"apiKey": "",
			"title": "gpt-4o"
		},
		{
			"model": "gpt-4o-mini",
			"provider": "openai",
			"apiKey": "",
			"title": "gpt-4o-mini"
		}
		/*
		{
			"title": "Cerebras Llama 3.1 70B",
			"provider": "cerebras",
			"model": "llama3.1-70b",
			"apiKey": ""
		}*/
	],
	"ui": {
		"theme": "dark",
		"fontSize": 16,
		"fontFamily": "Inter",
		"fontWeight": "200",
		"displayRawMarkdown": false,
		"showChatScrollbar": true,
		"codeBlockToolbarPosition": "top"
	},
	"tabAutocompleteModel": [
		{
			"title": "Codestral",
			"provider": "mistral",
			"model": "codestral-latest",
			"apiKey": ""
		},
		{
			"model": "Qwen/Qwen2.5-Coder-32B-Instruct",
			"provider": "deepinfra",
			"apiKey": "",
			"title": "qwen2.5-coder-32b (deepinfra)"
		},
		{
			"title": "qwen2.5-coder-32b (SambaNova)",
			"provider": "sambanova",
			"model": "Qwen2.5-Coder-32B-lnstruct",
			"apiKey": ""
		},
		{
			"model": "llama3.1-70b",
			"provider": "groq",
			"apiKey": "",
			"title": "groq-llama3.1-70b"
		},
		{
			"model": "deepseek-coder",
			"provider": "deepseek",
			"apiKey": "",
			"title": "deepseek coder"
		}
	],
	"customCommands": [
		{
			"name": "test",
			"prompt": "{{{ input }}}\n\nWrite a compnkhensive set of unit tests for the selected code. It should setup, run tests that check for correctness including important edge cases, and teardown. Ensure that the tests are complete and sophisticated. Give the tests just as chat output, don't edit any file.",
			"description": "Write unit tests for highlighted code"
		}
	],
	"experimental": {
		"useChromiumForDocsCrawling": true,
		"quickActions": [
			{
				"title": "Refactor",
				"prompt": "Refactor this code",
				"sendToChat": false
			}
		],
		"contextMenuPrompts": {
			"comment": "Write comments for this code. Do not change anything about the code itself.",
			"refactor": " Refactor this code",
			"fix": "Fix this code",
			"optimize": "Optimize this code"
		},
		"modelContextProtocolServer": {
			"transport": {
				"type": "stdio",
				"command": "uvx",
				"args": [
					"mcp-server-sqlite",
					"--db-path",
					"/Users/NAME/test.db"
				]
			}
		}
	},
	"contextProviders": [
		{
			"name": "code",
			"params": {
				"nRetrieve": 25,
				"nFinal": 5,
				"useReranking": true
			}
		},
		{
			"name": "docs",
			"params": {}
		},
		{
			"name": "diff",
			"params": {}
		},
		{
			"name": "terminal",
			"params": {}
		},
		{
			"name": "problems",
			"params": {}
		},
		{
			"name": "folder",
			"params": {}
		},
		{
			"name": "web",
			"params": {}
		},
		{
			"name": "codebase",
			"params": {}
		},
		{
			"name": "open",
			"params": {
				"onlyPinned": true
			}
		},
		{
			"name": "git diff"
		},
		{
			"name": "search"
		},
		{
			"name": "tree"
		},
		/*
		{
			"name": "postgres",
			"params": {
				"host": "localhost",
				"port": 5436,
				"user": "myuser",
				"password": "catsarecool",
				"database": "animals",
				"schema": "public",
				"sampleRows": 3
			}
		}*/
		{
			"name": "debugger",
			"params": {
				"stackDepth": 3
			}
		},
		{
			"name": "repo-map"
		},
		{
			"name": "os"
		}
	],
	"slashCommands": [
		{
			"name": "edit",
			"description": "Edit selected code"
		},
		{
			"name": "comment",
			"description": "Write comments for the selected code"
		},
		{
			"name": "share",
			"description": "Export the current chat session to markdown"
		},
		{
			"name": "cmd",
			"description": "Generate a shell command"
		},
		{
			"name": "commit",
			"description": "Generate a git commit message"
		},
		{
			"name": "issue",
			"description": "Generate a link to a drafted GitHub issue",
			"params": {
				"repositoryUrl": "https://github.com/continuedev/continue"
			}
		},
		{
			"name": "onboard",
			"description": "Familiarize yourself with the codebase"
		}
	],
	"docs": [
		{
			"startUrl": "https://turbo.build/repo/docs",
			"title": "turborepo",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://workos.com/docs",
			"title": "workos",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://supabase.com/docs",
			"title": "supabase",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://unocss.dev/guide/",
			"title": "unocss",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://tailwindcss.com/docs/installation",
			"title": "tailwindcss",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://iconify.design/",
			"title": "iconify",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://platform.openai.com/docs/overview",
			"title": "openai",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://developers.cloudflare.com/",
			"title": "cloudflare",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://sdk.vercel.ai/docs/introduction",
			"title": "vercel ai sdk",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://docs.continue.dev/",
			"title": "continue",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://wezfurlong.org/wezterm/",
			"title": "wezterm",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://cz-git.qbb.sh/",
			"title": "cz-git",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://huggingface.co/",
			"title": "huggingface",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://biomejs.dev/",
			"title": "biomejs",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://pnpm.io/",
			"title": "pnpm",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://vitepress.dev/",
			"title": "vitepress",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://www.cursor.com/",
			"title": "cursor",
			"faviconUrl": ""
		},
		{
			"startUrl": "https://nextjs.org/docs",
			"title": "nextjs",
			"faviconUrl": ""
		}
	]
}

Released under the MIT License