From 70159438d46e6d02a3f3fcf62bf2e7795a002437 Mon Sep 17 00:00:00 2001 From: Tai Groot Date: Thu, 24 Jul 2025 00:02:27 -0700 Subject: [PATCH] rename to use toplevel permissions --- internal/app/app.go | 4 ++-- internal/config/config.go | 11 ++++++++--- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/internal/app/app.go b/internal/app/app.go index 8aa6ce48333ea3e9e30ccf04bcb2e29bd763e709..50247b165aea1ccc6df378d0d1d3241b9526388e 100644 --- a/internal/app/app.go +++ b/internal/app/app.go @@ -61,8 +61,8 @@ func New(ctx context.Context, conn *sql.DB, cfg *config.Config) (*App, error) { files := history.NewService(q, conn) skipPermissionsRequests := cfg.Options != nil && cfg.Options.SkipPermissionsRequests allowedCommands := []string{} - if cfg.Options != nil && cfg.Options.AllowedCommands != nil { - allowedCommands = cfg.Options.AllowedCommands + if cfg.Permissions != nil && cfg.Permissions.AllowedTools != nil { + allowedCommands = cfg.Permissions.AllowedTools } app := &App{ diff --git a/internal/config/config.go b/internal/config/config.go index 0e76693557790c5b30eb2fdbf2ce2d79c7ecbef2..5766825a66fca67c1665074fde737b458d41e933 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -120,15 +120,18 @@ type TUIOptions struct { // Here we can add themes later or any TUI related options } +type Permissions struct { + AllowedTools []string `json:"allowed_tools,omitempty"` // Tools that don't require permission prompts +} + type Options struct { ContextPaths []string `json:"context_paths,omitempty"` TUI *TUIOptions `json:"tui,omitempty"` Debug bool `json:"debug,omitempty"` DebugLSP bool `json:"debug_lsp,omitempty"` DisableAutoSummarize bool `json:"disable_auto_summarize,omitempty"` - DataDirectory string `json:"data_directory,omitempty"` // Relative to the cwd - SkipPermissionsRequests bool `json:"-"` // Automatically accept all permissions (YOLO mode) - AllowedCommands []string `json:"allowed_commands,omitempty"` // Commands that don't require permission prompts + DataDirectory string `json:"data_directory,omitempty"` // Relative to the cwd + SkipPermissionsRequests bool `json:"-"` // Automatically accept all permissions (YOLO mode) } type MCPs map[string]MCPConfig @@ -245,6 +248,8 @@ type Config struct { Options *Options `json:"options,omitempty"` + Permissions *Permissions `json:"permissions,omitempty"` + // Internal workingDir string `json:"-"` // TODO: most likely remove this concept when I come back to it