update zed config
This commit is contained in:
@@ -16,7 +16,27 @@ let
|
||||
providerPath = "${models-dev}/providers/${provider}";
|
||||
modelsPath = "${providerPath}/models";
|
||||
providerToml = builtins.fromTOML (builtins.readFile "${providerPath}/provider.toml");
|
||||
modelFiles = builtins.attrNames (builtins.readDir modelsPath);
|
||||
|
||||
findAllTomlFiles =
|
||||
path:
|
||||
let
|
||||
entries = builtins.readDir path;
|
||||
files = builtins.filter (name: builtins.match ".*\\.toml$" name != null) (
|
||||
builtins.attrNames (lib.filterAttrs (_: type: type == "regular") entries)
|
||||
);
|
||||
dirs = builtins.attrNames (lib.filterAttrs (_: type: type == "directory") entries);
|
||||
nestedFiles = builtins.concatMap (
|
||||
dir:
|
||||
let
|
||||
nestedPath = "${path}/${dir}";
|
||||
nestedTomlFiles = findAllTomlFiles nestedPath;
|
||||
in
|
||||
map (file: "${dir}/${file}") nestedTomlFiles
|
||||
) dirs;
|
||||
in
|
||||
files ++ nestedFiles;
|
||||
|
||||
modelFiles = findAllTomlFiles modelsPath;
|
||||
modelEntries = map (
|
||||
file:
|
||||
let
|
||||
@@ -26,7 +46,7 @@ let
|
||||
in
|
||||
{
|
||||
name = modelName;
|
||||
display_name = parsed.name;
|
||||
display_name = parsed.name or modelName;
|
||||
max_tokens = parsed.limit.context or parsed.limit.output or 128000;
|
||||
}
|
||||
) modelFiles;
|
||||
@@ -40,24 +60,14 @@ let
|
||||
opencodeProviders = map getModelsFromProvider [
|
||||
"opencode"
|
||||
"opencode-go"
|
||||
"fireworks-ai"
|
||||
"firepass"
|
||||
];
|
||||
|
||||
openaiCompatibleProviders = builtins.listToAttrs (
|
||||
map (p: lib.nameValuePair p.name p) opencodeProviders
|
||||
);
|
||||
|
||||
opencode-wrapped = pkgs.writeShellScriptBin "opencode" ''
|
||||
set -a
|
||||
|
||||
for file in .env .env.local; do
|
||||
[ -e "$file" ] && source "$file"
|
||||
done
|
||||
|
||||
set +a
|
||||
|
||||
${lib.getExe pkgs-unstable.opencode} "$@"
|
||||
'';
|
||||
|
||||
ameba-ls = pkgs.stdenv.mkDerivation rec {
|
||||
pname = "ameba-ls";
|
||||
version = "0.1.0";
|
||||
@@ -138,7 +148,7 @@ in
|
||||
};
|
||||
agent_servers = {
|
||||
OpenCode = {
|
||||
command = lib.getExe opencode-wrapped;
|
||||
command = "opencode";
|
||||
args = [ "acp" ];
|
||||
type = "custom";
|
||||
};
|
||||
@@ -199,6 +209,10 @@ in
|
||||
];
|
||||
};
|
||||
};
|
||||
TypeScript.language_servers = [
|
||||
"tsgo"
|
||||
"vtsls"
|
||||
];
|
||||
};
|
||||
lsp = with pkgs; {
|
||||
nixd.binary.path = lib.getExe nixd;
|
||||
@@ -344,7 +358,7 @@ in
|
||||
}
|
||||
{
|
||||
label = "opencode";
|
||||
command = lib.getExe opencode-wrapped;
|
||||
command = "opencode";
|
||||
reveal = "always";
|
||||
allow_concurrent_runs = true;
|
||||
use_new_terminal = false;
|
||||
|
||||
Reference in New Issue
Block a user