1. Continue์์ completionOption ์ค์ ํ๊ธฐ
Continue์์ completionOption ์ค์ ํ๋ ๋ฐ์๋ 2๊ฐ์ง ๋ฐฉ๋ฒ์ด ์์ต๋๋ค.
1-1. config.json > completionOption
์ ์ญ์ ์ผ๋ก ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
์ฌ๊ธฐ์ ์ค์ ํ completionOption ๊ฐ๋ค์ ๋ชจ๋ธ์ ์๊ด์์ด Continue์์ ๋ชจ๋ ์์ ์ ๋์ผํ๊ฒ ์ ์ฉ๋ฉ๋๋ค.
{
"completionOptions": {
"temperature": 0.7,
"topP": 0.9,
"maxTokens": 150
}
}
1-2. config.json > models > completionOptions
๋ชจ๋ ๋ชจ๋ธ์ ๋ํ ๊ธฐ๋ณธ๊ฐ์ด ์๋๋ผ ํน์ ๋ชจ๋ธ์ ๋ํ ์ค์ ์ ๋ณ๋๋ก ์ ์ํ๊ณ ์ถ์ ๋ ์ฌ์ฉํฉ๋๋ค.
e.g., Msty์ gpt-4o-mini์ ๊ฐ๊ฐ ๋ค๋ฅธ completionOptions ์ค์ ์ ๋ถ์ฌํ ์ ์๋ค.
{
"models": [
{
"title": "Msty",
"provider": "msty",
"model": "deepseek-coder:6.7b",
"completionOptions": {
"temperature": 0.9,
"topP": 0.7,
"maxTokens": 100
}
},
{
"title": "GPT-4o Mini",
"provider": "openai",
"model": "gpt-4o-mini",
"completionOptions": {
"temperature": 0.6,
"topP": 0.8,
"maxTokens": 200
}
},
]
}
1-3. completionOptions
completionOptions๋ AI ๋ชจ๋ธ์ด ํ ์คํธ๋ฅผ ์์ฑํ ๋ ์์ฑํ ํ ์คํธ์ ์ฐฝ์์ฑ, ๋ค์์ฑ, ์๋ ๋ฑ์ ์กฐ์ ํ๋ ๋งค๊ฐ๋ณ์๋ฅผ ์ค์ ํ ์ ์๋ ์ต์ ์ ๋๋ค.
stream
: ์์ฑ๋ ํ ์คํธ๋ฅผ ํ ๋ฒ์ ๋ค ์ถ๋ ฅํ๋ ๊ฒ์ด ์๋๋ผ, ๋ถ๋ถ์ ์ผ๋ก ์ค์๊ฐ ์คํธ๋ฆฌ๋ฐ ๋ฐฉ์์ผ๋ก ์ถ๋ ฅํ๋๋ก ์ค์ ํ๋ ์ต์ ์ ๋๋ค. (true ๋๋ false๋ก ์ค์ O)temperature
: ๊ฐ์ด ๋์ผ๋ฉด ๋ ์ฐฝ์์ ์ด๊ณ ์์ธกํ๊ธฐ ์ด๋ ค์ด ์ถ๋ ฅ์ด ์์ฑ๋๊ณ ๊ฐ์ด ๋ฎ์ผ๋ฉด ๋ ์ผ๊ด์ฑ ์๊ณ ์์ธก ๊ฐ๋ฅํ ๊ฒฐ๊ณผ๊ฐ ๋์ต๋๋ค. (๊ฐ์ ๋ฒ์๋ 0~1 ์ฌ์ด)topP
: ๋ชจ๋ธ์ด ๊ฐ์ฅ ํ๋ฅ ์ด ๋์ ๋ช ๊ฐ์ง ์ ํ์ง์ ์ง์คํ๊ฒ ํ๊ฑฐ๋, ๊ทธ ์ดํ์ ์ ํ์ง๋ฅผ ๋ฐฐ์ ํ๋๋ก ํฉ๋๋ค.topK
: ๋ชจ๋ธ์ด ํ ์คํธ๋ฅผ ์์ฑํ ๋ ๊ณ ๋ คํ ์ ์๋ ํ๋ณด ํ ํฐ์ ๊ฐ์๋ฅผ ์ ํํฉ๋๋ค.presencePenalty
: ํน์ ๋จ์ด๊ฐ ์ด๋ฏธ ๋ฑ์ฅํ์ ๋, ๋ค์ ๊ทธ ๋จ์ด๋ฅผ ์ฌ์ฉํ์ง ์๋๋ก ํจ๋ํฐ๋ฅผ ๋ถ๊ณผํ๋ ์ต์ ์ ๋๋ค. ์ด ์ค์ ์ ํตํด ์์ฑ๋ ํ ์คํธ์ ๋ค์์ฑ์ ์ฆ๊ฐ์ํฌ ์ ์์ต๋๋ค. ๊ฐ์ด ๋์์๋ก ๋์ผํ ๋จ์ด๊ฐ ๋ฐ๋ณต๋์ง ์๊ฒ ๋ฉ๋๋ค.frequencyPenalty
: ํน์ ๋จ์ด๋ ํ ํฐ์ด ์์ฃผ ๋ฑ์ฅํ ๊ฒฝ์ฐ ํจ๋ํฐ๋ฅผ ๋ถ๊ณผํ๋ ์ค์ ์ ๋๋ค. presencePenalty์ ์ ์ฌํ์ง๋ง, ํน์ ๋จ์ด์ ๋ฑ์ฅ ๋น๋๋ฅผ ๋ฎ์ถ๋ ๋ฐ ์ด์ ์ด ๋ง์ถฐ์ ธ ์์ต๋๋ค. ์ด ์ค์ ์ ์ฌ์ฉํ๋ฉด ์์ฑ๋ ํ ์คํธ์์ ํน์ ๋จ์ด๊ฐ ์ง๋์น๊ฒ ๋ง์ด ๋ฐ๋ณต๋๋ ๊ฒ์ ๋ฐฉ์งํ ์ ์์ต๋๋ค.mirostat
: Mirostat๋ ์์ฑ๋ ํ ์คํธ์ ์์ ์ฑ๊ณผ ๋ค์์ฑ์ ์กฐ์ ํ๋ ๊ณ ๊ธ ์ค์ ์ ๋๋ค. Mirostat์ ํ ํฐ ์์ฑ ์ ์ ์ํ ํผ๋๋ฐฑ ๋ฃจํ๋ฅผ ํตํด ๋ชจ๋ธ์ด ๋ ์ผ๊ด๋ ์๋ต์ ์์ฑํ๋๋ก ์ ์ดํฉ๋๋ค. ์ด ์ต์ ์ ์ฌ์ฉํ๋ฉด ์์ฑ ๊ณผ์ ์์ ๋ชจ๋ธ์ด ์์ธกํ ์ ์๋ ํจํด์ ์ค์ฌ์ค ์ ์์ต๋๋ค.stop
: ํน์ ํ ํฐ์ด๋ ๋ฌธ์์ด์ด ์์ฑ๋๋ฉด ์ถ๋ ฅ์ ์ค๋จํ๋๋ก ํ๋ ์ค์ ์ ๋๋ค.maxTokens
: ์์ฑํ ์ต๋ ํ ํฐ ์๋ฅผ ๊ฒฐ์ ํฉ๋๋ค.num_threads
: ๋ชจ๋ธ์ด ํ ์คํธ๋ฅผ ์์ฑํ ๋ ์ฌ์ฉํ๋ CPU ์ค๋ ๋ ์๋ฅผ ์ค์ ํฉ๋๋ค.keepAlive
: ๋ก์ปฌ์์ ๋ชจ๋ธ์ ์คํํ ๋, ์ธ์ ์ ์ ์งํ๊ธฐ ์ํ ์ต์ ์ ๋๋ค. ์ด ์ค์ ์ด ํ์ฑํ๋๋ฉด ๋ชจ๋ธ์ด ์ผ์ ์๊ฐ ๋์ ์ ํด ์ํ๋ก ์๋๋ผ๋ ์ข ๋ฃ๋์ง ์๊ณ ๊ณ์ ํ์ฑํ๋ ์ํ๋ฅผ ์ ์งํฉ๋๋ค.
2. Custom slash commands
2-1. ๋ด์ฅ๋ Slash (/) Command ๋ชฉ๋ก ํ์ด๋ณด๊ธฐ
Continue๋ ๋ค์์ slashCommand ๋ช ๋ น์ด๋ฅผ ๊ธฐ๋ณธ์ ์ผ๋ก ์ ๊ณตํฉ๋๋ค.
edit
: ์ ํ๋ ์ฝ๋ ๋ธ๋ญ์ ์ฃผ์ด์ง ์ ๋ ฅ์ ๋ฐ์ํด์ ๋ณ๊ฒฝํฉ๋๋ค.comment
: ์ ํ๋ ์ฝ๋ ๋ธ๋ญ์ ์ฃผ์์ ์ถ๊ฐํฉ๋๋ค.share
: ํ์ฌ Chat Session์ ๋งํฌ๋ค์ด์ผ๋ก ๋ด๋ณด๋ ๋๋ค.cmd
: ์ฃผ์ด์ง ์ ๋ ฅ์ ๋ง๋ cmd ๋ช ๋ น์ด๋ฅผ ์์ฑํฉ๋๋ค.commit
: git diff ์ ๊ณต ์ git commit ๋ฉ์์ง๋ฅผ ์์ฑํฉ๋๋ค.http
: ์ฌ์ฉ์ ์ ์ ์ฌ๋์ ๋ช ๋ น์ ์์ ์ HTTP ์๋ํฌ์ธํธ์ ์์ฑํ๊ณ , ์ค์ ํ ์๋ํฌ์ธํธ์ ๋ํ params ๊ฐ์ฒด์ URL์ ์ค์ ํฉ๋๋ค.issue
: ์์ฑํ๋ ค๋ ์ด์๋ฅผ ์ค๋ช ํ๊ณ Continue๋ฅผ ํด๋ฆญํ๋ฉด ํฌ๋งท๋ ์ ๋ชฉ๊ณผ ๋ณธ๋ฌธ์ด ๋์ค๊ณ , ์ ์ถํ ์ ์๋๋ก ์ด์ ๋งํฌ๋ฅผ ์ ๊ณตํฉ๋๋ค. (์ด์๋ฅผ ์์ฑํ๋ ค๋ repo์ URL์ ์ค์ ํด์ผ ํฉ๋๋ค.)so
: ์ง๋ฌธ์ ๋ํ ๋ต๋ณ์ StackOverflow์์ ์๋์ผ๋ก ๋ต๋ณ๊ณผ ๋งํฌ๋ฅผ ๊ฐ์ ธ์ต๋๋ค.onBoard
: ์ฃผ์ํ ํด๋๋ฅผ ์๋ณํ๊ณ , ๊ทธ ๋ชฉ์ ์ ์ค๋ช ํ๊ณ , ์ฌ์ฉ๋๊ณ ์๋ ํจํค์ง๋ฅผ ๊ฐ์กฐํด์ ํ์ํฉ๋๋ค.
Continue์ ๋ด์ฅ๋ ์ฌ๋์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด config.json์ ๋ค์๊ณผ ๊ฐ์ ์ค์ ์ด ํ์ํฉ๋๋ค.
{
"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": "http",
"description": "Does something custom",
"params": { "url": "<my server endpoint>" }
},
{
"name": "issue",
"description": "Generate a link to a drafted GitHub issue",
"params": { "repositoryUrl": "https://github.com/continuedev/continue" }
},
{
"name": "so",
"description": "Reference StackOverflow to answer the question"
},
{
"name": "onboard",
"description": "Familiarize yourself with the codebase"
}
]
}
์๋๋ /edit์ /comment์ ์ฌ์ฉ ์์์ ๋๋ค.
/edit
์ํ๋ ์ฝ๋๋ฅผ ์ง๋ฌธ์ ์ถ๊ฐ(cmd + L)ํ๊ณ /edit
์ ์ฌ์ฉํ๋ฉด "Continue Diff" ๋ผ๋ ์๋ก์ด ์ฐฝ์ ๋ค์๊ณผ ๊ฐ์ด ๋ช
๋ น์ด์ ๋ฐ๋ฅธ ๊ฒฐ๊ณผ๋ฌผ์ ๋์ถํฉ๋๋ค.
ํ๋จ์ ๊ทธ๋ฆผ์์์ ๊ฐ์ด ๋ณ๊ฒฝ์ฌํญ์ ์๋ฝ ํน์ ๊ฑฐ์ ํ ์ ์์ต๋๋ค.
/comment
ํน์ ์ฝ๋๋ฅผ ์ง๋ฌธ์ ์ถ๊ฐ(cmd+L)ํ๊ณ /comment
์ ์ฌ์ฉํ์ฌ ์ฃผ์์ ์ถ๊ฐํฉ๋๋ค. ์ด ๊ฒฐ๊ณผ๋ ์๋ฝ ํน์ ๊ฑฐ์ ํ ์ ์์ต๋๋ค.
2-2. .prompt ํ์ผ
- ์ํฌ์คํ์ด์ค ์ต์๋จ์
.prompts/
ํด๋๋ฅผ ์ง์ ์์ฑํ๊ฑฐ๋, chat box ๋ฐ์ Build a custom prompt๋ฅผ ๋๋ฅด๋ฉด ์ํฌ์คํ์ด์ค ์ต์๋จ์ .prompts๋ผ๋ ํด๋๊ฐ ์์ฑ๋ฉ๋๋ค. - .prompts ํด๋์์ ์์ฑํ .prompt ํ์ผ์ ์ด๋ฆ์ ํ๋กฌํํธ๋ฅผ ์์ฑํ๋ ๋ฐ ์ฌ์ฉํ ์ฌ๋์ ๋ช
๋ น์ด์ ์ด๋ฆ์ด ๋ฉ๋๋ค.
( e.g.,test.prompt
⇒/test
) - ํ์ผ์ ํ๋กฌํํธ ๋ด์ฉ์ ์์ฑํ๋ฉด chat ํ๋ฉด์์ ์ฌ๋์(/)+ ํ๋กฌํํธํ์ผ๋ช + ENTER๋ฅผ ํตํด ํ๋กฌํํธ์์ ์ง์ํ ๋ด์ฉ์ ๋ฐ๋ฅด๊ฒ ๋ฉ๋๋ค.
๋ค์์ ์ฝ๋ ์ฝ๋ฉํธ๋ฅผ ์ํ .prompt ํ์ผ์ ์ํ์ ๋๋ค.
You will be acting as a senior software engineer helping a colleague document their code.
You will follow the guidelines for writing great code comments:
{{{ url "https://stackoverflow.blog/2021/12/23/best-practices-for-writing-code-comments/" }}}
---
Using this information, write a comment for the following code:
{{{ input }}}
.prompt ํ์ผ์ ๊ตฌ์ฑํ ํ์
** ๊ณต์๋ฌธ์์์ ๋ค์ ํ์์ ์คํ์ ์ด๋ฉฐ, ๋ณ๊ฒฝ๋ ์๋ ์๋ค๊ณ ์ค๋ช ํ๊ณ ์์ต๋๋ค.
System ํ๊ทธ
์์คํ ๋ฉ์ธ์ง๋ฅผ ํตํด ์์คํ ์๊ฒ ์ญํ ์ ๋ถ์ฌํด์ฃผ๊ณ , ์ง์, ์๊ตฌ์ฌํญ์ ์๋ ค์ค๋๋ค.
{์์คํ
๋ฉ์์ง e.g., You will be acting as a senior software engineer ... }
์๋ฌธ
temperature: 0.5
maxTokens: 4096
---
// <system>
// You are an expert programmer
// </system>
// ....
์๋ฌธ์ --- ๊ตฌ๋ถ ๊ธฐํธ ์์์ YAML ๊ตฌ๋ฌธ์ ์ฌ์ฉํด์ ๋ชจ๋ธ ๋งค๊ฐ๋ณ์๋ฅผ ์ง์ ํ ์ ์๊ฒ ํฉ๋๋ค. ํ์ํ์ง ์๋ค๋ฉด --- ๊ตฌ๋ถ ๊ธฐํธ๊น์ง ์๋ตํฉ๋๋ค. ๋ค์์ ์ง์ํ๋ ๋งค๊ฐ๋ณ์๋ช ์ ๋๋ค.
- name
- temperature
- topP
- topK
- minP
- presencePenalty
- frequencyPenalty
- mirostat
- stop
- maxTokens
- description
๋ด์ฅ ๋ณ์
ํ์ฌ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ธฐ๋ณธ ์ ๊ณต ๋ณ์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
{{{ input }}}
: ์ฌ๋์ ๋ช ๋ น๊ณผ ํจ๊ป ์ ์ก๋๋ ์ฌ์ด๋๋ฐ์ ์ ๋ ฅ ์์์ ์ ์ฒด ํ ์คํธ{{{ currentFile }}}
: ํ์ฌ IDE์์ ์ด๋ ค ์๋ ํ์ผ{{{ ./path/to/file.js }}}
: ๋ชจ๋ ํ์ผ์ ์ง์ ์ฐธ์กฐ ๊ฐ๋ฅ
์๋๋ ๊ธฐ๋ณธ ์ ๊ณต ๋ณ์๋ฅผ ํตํด ํ์ผ์ ์ฐธ์กฐํ๋ ์์์ ๋๋ค.
You are a senior ruby on rails giving expert advice.
Here is a summary of the provided Rails application:
Gemfile: {{{ ./Gemfile }}}
Schema: {{{ ./db/schema.rb }}}
---
Here is the question / code to give expert advice on.
{{{ input }}}
Context Provider
Config.json์ ์ถ๊ฐํ ๋ชจ๋ ์ปจํ ์คํธ ๊ณต๊ธ์๋ ์ปจํ ์คํธ ๊ณต๊ธ์์ ์ด๋ฆ์ ์ฌ์ฉํ์ฌ ์ฐธ์กฐํ ์ ์์ต๋๋ค. ์ ๋ ฅ์ ๋ฐ๋ ์ปจํ ์คํธ ๊ณต๊ธ์๋ ์ง์๋ฉ๋๋ค.
{{{ terminal }}}
: ๋จ๋ง๊ธฐ์ ๋ด์ฉ{{{ url "https://github.com/continuedev/continue" }}}
: URL์ ๋ด์ฉ
์๋๋ Context Provider์ ์ด๋ฆ์ ํตํด Context๋ฅผ ์ฐธ์กฐํ๋ ์์์ ๋๋ค.
You will be acting as a senior software engineer helping to debug
a terminal error.
Here is the error that the user received:
{{{ terminal }}}
Here is the documentation for Jest that you will use to help
the user troubleshoot the error:
{{{ docs "https://jestjs.io/docs/getting-started" }}}
2-3. ์ฌ๋์ ๋ช ๋ น์ด๋ฅผ ์ปค์คํ ํ๋ ๋ฒ
์์ ๊ฐ์ ๋ด์ฅ ์ฌ๋์ ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๋ ๊ฒ ์๋๋ผ ํ๋กฌํํธ๋ฅผ ์ปค์คํ ํ์ฌ ์ฌ์ฉํ ์๋ ์์ต๋๋ค.
์ฌ์ฉ์ ์ ์ ์ฌ๋์ ๋ช ๋ น์ ์ถ๊ฐํ๋ ๋ฐฉ๋ฒ์ ๋ ๊ฐ์ง๊ฐ ์์ต๋๋ค.
- ์์ฐ์ด ํ๋กฌํํธ (customCommands ์์ฑ, config.json)
- ํจ์๋ฅผ ์์ฑํด ํ๋กฌํํธ (slashCommands ์์ฑ, config.ts)
customCommands(config.json)
config.json ํ์ผ์ customCommands ์์ฑ์ ์ถ๊ฐํ๋ ๊ฒ์ผ๋ก slash commands๋ฅผ ๋ง๋ค ์ ์์ต๋๋ค.
name
: ์ฌ๋์ ๋ช ๋ น์ ํธ์ถํ๋ ๋ฐ ์ ๋ ฅํ ์ด๋ฆdescription
: ๋๋กญ๋ค์ด ๋ฉ๋ด์ ํ์๋๋ ์ค๋ชprompt
: Handlebars ๊ตฌ๋ฌธ์ ์ฌ์ฉํ ํ ํ๋ฆฟ ์์ฑ์ ์ง์input
: ์ฌ๋์ ๋ช ๋ น์ผ๋ก ์ ๋ ฅํ ์ถ๊ฐ ์ ๋ ฅ. ์๋ฅผ ๋ค์ด, ๋ฅผ ์ ๋ ฅํ๋ฉด /test only write one test. input์ฌ๊ธฐ only write one test์๋ ๊ฐ์กฐ ํ์๋ ์ฝ๋ ๋ธ๋ก๋ ํฌํจ๋ฉ๋๋ค.file name
: ์ ๋ ๊ฒฝ๋ก๋ ํ์ฌ ์์ ๋๋ ํ ๋ฆฌ๋ฅผ ๊ธฐ์ค์ผ๋ก ํ ์๋ ๊ฒฝ๋ก๋ฅผ ์ ๊ณตํ์ฌ ๋ชจ๋ ํ์ผ์ ์ฐธ์กฐํ ์ ์์ต๋๋ค.
๋ค์ ์์๋ฅผ ๋ณด๋ฉด ์์ฐ์ด๋ก ์์ฑ๋ ๋ช ๋ น์ด๋ฅผ ์ ์ํ๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
customCommands=[{
"name": "check",
"description": "Check for mistakes in my code",
"prompt": "{{{ input }}}\n\nPlease read the highlighted code and check for any mistakes. You should look for the following, and be extremely vigilant:\n- Syntax errors\n- Logic errors\n- Security vulnerabilities\n- Performance issues\n- Anything else that looks wrong\n\nOnce you find an error, please explain it as clearly as possible, but without using extra words. For example, instead of saying 'I think there is a syntax error on line 5', you should say 'Syntax error on line 5'. Give your answer as one bullet point per mistake found."
}]
์ฌ์ฉ์ ์ง์ ๋ช ๋ น์ ํ๋กฌํํธ๋ฅผ ์์ฃผ ์ฌ์ฌ์ฉํ ๋ ์ ์ฉํฉ๋๋ค.
Custom Slash Commands(config.ts)
customCommands๋ก ์ฌ์ฉ์ ์ง์ ๋ช ๋ น์ ์์ฑํ๋ ๊ฒ๋ณด๋ค ํ ๋จ๊ณ ๋ ๋์๊ฐ๋ ค๋ฉด ์๋ต์ ๋ฐํํ๋ ์ฌ์ฉ์ ์ง์ ํจ์๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
์ด๋ฅผ ์ํด์๋ config.json ๋์ config.ts๋ฅผ ์ฌ์ฉํด์ผ ํ๋๋ฐ, ์ด๊ณณ์์ slashCommands ๋ฐฐ์ด์ ์๋ก์ด slashCommand ๊ฐ์ฒด๋ฅผ slashCommands ๋ฐฐ์ด์ ์ถ๊ฐํฉ๋๋ค.
slashCommand ๊ฐ์ฒด์ ํ์ํ ํญ๋ชฉ
name
: ์ฌ๋์ ๋ช ๋ น์ ํธ์ถํ๋ ๋ฐ ์ ๋ ฅํ ์ด๋ฆdescription
: ๋๋กญ๋ค์ด ๋ฉ๋ด์ ํ์๋๋ ์ค๋ช
๋ค์ ์์๋ฅผ ๋ณด๋ฉด ์ ์ ์๋ฏ์ด, ์ฝ๋๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ ๋ช ๋ น์ ์ ์ํ๊ณ ์คํํฉ๋๋ค. TS/JS ์ฝ๋๋ก ํจ์๋ฅผ ์์ฑํ๊ณ , ํน์ ๋ช ๋ น์ด(name)๊ฐ ์ ๋ ฅ๋๋ฉด ํด๋น ํจ์๊ฐ ์คํ๋๋๋ก ์ค์ ํ ์ ์์ต๋๋ค.
export function modifyConfig(config: Config): Config {
config.slashCommands?.push({
name: "commit",
description: "Write a commit message",
run: async function* (sdk) {
const diff = await sdk.ide.getDiff();
for await (const message of sdk.llm.streamComplete(
`${diff}\n\nWrite a commit message for the above changes. Use no more than 20 tokens to give a brief description in the imperative mood (e.g. 'Add feature' not 'Added feature'):`,
{
maxTokens: 20,
}
)) {
yield message;
}
},
});
return config;
}
์ฌ๊ธฐ์ run์ ๋น๋๊ธฐ ์ ๋๋ ์ดํฐ๋ก, ๋ช ๋ น์ด ์คํ ์ค ์ค์๊ฐ์ผ๋ก ์ฌ๋ฌ ๊ฐ์ ๊ฒฐ๊ณผ๋ฅผ ์คํธ๋ฆผ ํํ๋ก UI์ ์ ๋ฌํ ์ ์์ผ๋ฉฐ, ContinueSDK์ ์ ๊ทผํ ์ ์๋ ํ์ฅ๋ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค.
'What I Learn' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
next-auth๋ฅผ ์ฌ์ฉํ ์นด์นด์ค ๋ก๊ทธ์ธ (4) | 2024.10.22 |
---|---|
exclude a page from next.js root layout (0) | 2024.10.16 |
OSSCA : setting the Continue at vscode & Overview (0) | 2024.09.23 |
์ ์ญ์์ ๋ชจ๋ฌ ์ํ๊ด๋ฆฌํ๊ธฐ (redux-toolkit) (1) | 2024.09.20 |
์ฌ์ฉ์ ์ ์ ์ ๋๋ฉ์ด์ ์ผ๋ก ๋ณ์ด ๋ฐ์งโจ๋ฐฐ๊ฒฝ ๋ง๋ค๊ธฐ (tailwindCSS) (1) | 2024.09.14 |