###
### Configuration for LSP-AI
###
### Link here:
### https://github.com/SilasMarvin/lsp-ai
###

[language-server.lsp-ai]
command = "lsp-ai"

[language-server.lsp-ai.config.memory]
file_store = { }

[language-server.lsp-ai.config.models.model1]
type = "open_ai"
model = "llama3B-Instruct"
chat_endpoint = "http://localhost:8888/chat/completions"
completions_endpoint = "http://localhost:8888/completion"
auth_token = ""

[[language-server.lsp-ai.config.chat]]
trigger = "!C"
action_display_name = "Chat"
model = "model1"
parameters = { max_context = 4096, max_tokens = 1024, system = "You are a code assistant chatbot. The user will ask you for assistance coding and you will do you best to answer succinctly and accurately" }

# [[language-server.lsp-ai.config.actions]]
# trigger = "!P"
# action_display_name = "Complete"
# model = "model1"
# parameters = { max_context = 4096, max_tokens = 120, system = "You are a code assistant chatbot. The user will ask you for assistance coding and you will do you best to answer succinctly and accurately" }
# post_process = { extractor = "(?s)<answer>(.*?)</answer>" }

###
### Configuration for languages
###


[[language]]
name = "go"
language-servers = ["gopls", "lsp-ai"]

[[language]]
name = "markdown"
language-servers = ["marksman", "lsp-ai"]

# Change dart format to 120 lines
[[language]]
name = "dart"
formatter = {command = "dart", args = ["format", "-l", "120"]}
language-servers = ["dart", "lsp-ai"]