Configure OpenClaw gateway auth token

This commit is contained in:
ltadeu6 2026-04-03 10:40:09 -03:00
parent 8c2a82f573
commit 9d8d915e7d
4 changed files with 50 additions and 7 deletions

View file

@ -331,15 +331,33 @@
}; };
programs.openclaw = { programs.openclaw = {
enable = true;
documents = ../openclaw/documents; documents = ../openclaw/documents;
config = { instances.default = {
models.providers.openai.apiKey = { enable = true;
source = "env"; config = {
provider = "default"; gateway.mode = "local";
id = "OPENAI_API_KEY"; gateway.auth.mode = "token";
gateway.auth.token = {
source = "env";
provider = "default";
id = "OPENCLAW_GATEWAY_TOKEN";
};
gateway.remote.token = {
source = "env";
provider = "default";
id = "OPENCLAW_GATEWAY_TOKEN";
};
agents.defaults.model.primary = "ollama/llama3.1:8b";
models.providers.ollama = {
baseUrl = "http://127.0.0.1:11434";
api = "ollama";
apiKey = "ollama-local";
models = [ ];
};
}; };
}; };
instances.default.enable = true;
}; };
programs.home-manager.enable = true; programs.home-manager.enable = true;

View file

@ -20,6 +20,14 @@
mode = "0400"; mode = "0400";
}; };
} // lib.optionalAttrs } // lib.optionalAttrs
(builtins.pathExists ../../secrets/openclaw_gateway_token.age) {
openclaw_gateway_token = {
file = ../../secrets/openclaw_gateway_token.age;
owner = "ltadeu6";
group = "users";
mode = "0400";
};
} // lib.optionalAttrs
(builtins.pathExists ../../secrets/minecraft_rcon_password.age) { (builtins.pathExists ../../secrets/minecraft_rcon_password.age) {
minecraft_rcon_password.file = minecraft_rcon_password.file =
../../secrets/minecraft_rcon_password.age; ../../secrets/minecraft_rcon_password.age;
@ -133,6 +141,9 @@
if test -r /run/agenix/openai_api_key if test -r /run/agenix/openai_api_key
set -gx OPENAI_API_KEY (cat /run/agenix/openai_api_key) set -gx OPENAI_API_KEY (cat /run/agenix/openai_api_key)
end end
if test -r /run/agenix/openclaw_gateway_token
set -gx OPENCLAW_GATEWAY_TOKEN (cat /run/agenix/openclaw_gateway_token)
end
''; '';
shellAliases = { shellAliases = {
la = "exa --icons --git"; la = "exa --icons --git";
@ -240,7 +251,7 @@
acceleration = "cuda"; acceleration = "cuda";
host = "[::]"; host = "[::]";
loadModels = [ loadModels = [
"gemma4:e2b" "llama3.1:8b"
]; ];
syncModels = true; syncModels = true;
# listenAddress = "10.0.0.2:11434"; # listenAddress = "10.0.0.2:11434";
@ -420,6 +431,11 @@
export OPENAI_API_KEY="$(cat /run/agenix/openai_api_key)" export OPENAI_API_KEY="$(cat /run/agenix/openai_api_key)"
fi fi
''; '';
environment.etc."profile.d/openclaw.sh".text = ''
if [ -r /run/agenix/openclaw_gateway_token ]; then
export OPENCLAW_GATEWAY_TOKEN="$(cat /run/agenix/openclaw_gateway_token)"
fi
'';
users.groups.libvirtd.members = [ "ltadeu6" ]; users.groups.libvirtd.members = [ "ltadeu6" ];

View file

@ -0,0 +1,8 @@
age-encryption.org/v1
-> ssh-ed25519 PLsDCw GTveJoupTknp7mJ+dPIOBRPnSglbt3UTKJEvR+9P8QQ
Jpk4h5jPlEnt7aeYpMkmQA2iovkyRtcd0+QVbxjR4N8
-> ssh-ed25519 PLsDCw ldrF1V2QK/pRKgFeKVBZa3OdHmZrgryPsoxtv417MhI
92pBUOY0z3VlzRjM/Kte+gP+4uBbd1czcgdpXsXpIFk
--- aQYHE59WwNINgpDZADDtkWgzBH8f8jIP7UKkMvyi/DE
õ®½ÑÜ•´=”\uåÍä_ÎØôB 7´¤À¨<‰nêïºÀÜÇè€J±¥Éc7ý2÷Á9
Âå½<5-cáä$×(ÆÇ

View file

@ -8,6 +8,7 @@ let
}; };
in { in {
"secrets/openai_api_key.age".publicKeys = [ users.ltadeu6 systems.Nixos ]; "secrets/openai_api_key.age".publicKeys = [ users.ltadeu6 systems.Nixos ];
"secrets/openclaw_gateway_token.age".publicKeys = [ users.ltadeu6 systems.Nixos ];
"secrets/minecraft_rcon_password.age".publicKeys = [ users.ltadeu6 systems.Nixos ]; "secrets/minecraft_rcon_password.age".publicKeys = [ users.ltadeu6 systems.Nixos ];
"secrets/syncthing_pixel_id.age".publicKeys = [ users.ltadeu6 systems.Nixos ]; "secrets/syncthing_pixel_id.age".publicKeys = [ users.ltadeu6 systems.Nixos ];
"secrets/syncthing_tv_id.age".publicKeys = [ users.ltadeu6 systems.Nixos ]; "secrets/syncthing_tv_id.age".publicKeys = [ users.ltadeu6 systems.Nixos ];