From 49e8a31fcca737220dad761eae9075ff2efcd238 Mon Sep 17 00:00:00 2001 From: Kunal Karmakar Date: Mon, 23 Mar 2026 02:19:27 +0000 Subject: [PATCH] Move log level config to gateway property --- cmd/picoclaw/internal/helpers.go | 2 +- config/config.example.json | 4 ++-- pkg/config/config.go | 8 ++++---- pkg/config/defaults.go | 2 +- pkg/gateway/gateway.go | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/cmd/picoclaw/internal/helpers.go b/cmd/picoclaw/internal/helpers.go index ae1d58c29..0f45e7425 100644 --- a/cmd/picoclaw/internal/helpers.go +++ b/cmd/picoclaw/internal/helpers.go @@ -32,7 +32,7 @@ func LoadConfig() (*config.Config, error) { if err != nil { return nil, err } - logger.SetLevelFromString(cfg.Agents.Defaults.LogLevel) + logger.SetLevelFromString(cfg.Gateway.LogLevel) return cfg, nil } diff --git a/config/config.example.json b/config/config.example.json index 29655b594..b2f78987c 100644 --- a/config/config.example.json +++ b/config/config.example.json @@ -1,7 +1,6 @@ { "agents": { "defaults": { - "log_level": "fatal", "workspace": "~/.picoclaw/workspace", "restrict_to_workspace": true, "model_name": "gpt-5.4", @@ -562,6 +561,7 @@ "gateway": { "host": "127.0.0.1", "port": 18790, - "hot_reload": false + "hot_reload": false, + "log_level": "fatal" } } diff --git a/pkg/config/config.go b/pkg/config/config.go index 253650986..7495e17e2 100644 --- a/pkg/config/config.go +++ b/pkg/config/config.go @@ -285,7 +285,6 @@ type AgentDefaults struct { SteeringMode string `json:"steering_mode,omitempty" env:"PICOCLAW_AGENTS_DEFAULTS_STEERING_MODE"` // "one-at-a-time" (default) or "all" SubTurn SubTurnConfig `json:"subturn" envPrefix:"PICOCLAW_AGENTS_DEFAULTS_SUBTURN_"` ToolFeedback ToolFeedbackConfig `json:"tool_feedback,omitempty"` - LogLevel string `json:"log_level,omitempty" env:"PICOCLAW_LOG_LEVEL"` } const ( @@ -733,9 +732,10 @@ func (c *ModelConfig) Validate() error { } type GatewayConfig struct { - Host string `json:"host" env:"PICOCLAW_GATEWAY_HOST"` - Port int `json:"port" env:"PICOCLAW_GATEWAY_PORT"` - HotReload bool `json:"hot_reload" env:"PICOCLAW_GATEWAY_HOT_RELOAD"` + Host string `json:"host" env:"PICOCLAW_GATEWAY_HOST"` + Port int `json:"port" env:"PICOCLAW_GATEWAY_PORT"` + HotReload bool `json:"hot_reload" env:"PICOCLAW_GATEWAY_HOT_RELOAD"` + LogLevel string `json:"log_level,omitempty" env:"PICOCLAW_LOG_LEVEL"` } type ToolDiscoveryConfig struct { diff --git a/pkg/config/defaults.go b/pkg/config/defaults.go index f638dc624..092cb3da1 100644 --- a/pkg/config/defaults.go +++ b/pkg/config/defaults.go @@ -26,7 +26,6 @@ func DefaultConfig() *Config { return &Config{ Agents: AgentsConfig{ Defaults: AgentDefaults{ - LogLevel: "fatal", Workspace: workspacePath, RestrictToWorkspace: true, Provider: "", @@ -424,6 +423,7 @@ func DefaultConfig() *Config { Host: "127.0.0.1", Port: 18790, HotReload: false, + LogLevel: "fatal", }, Tools: ToolsConfig{ MediaCleanup: MediaCleanupConfig{ diff --git a/pkg/gateway/gateway.go b/pkg/gateway/gateway.go index 92bef6c15..7f920a6f1 100644 --- a/pkg/gateway/gateway.go +++ b/pkg/gateway/gateway.go @@ -85,7 +85,7 @@ func Run(debug bool, configPath string, allowEmptyStartup bool) error { return fmt.Errorf("error loading config: %w", err) } - logger.SetLevelFromString(cfg.Agents.Defaults.LogLevel) + logger.SetLevelFromString(cfg.Gateway.LogLevel) if debug { logger.SetLevel(logger.DEBUG)