summaryrefslogtreecommitdiff
path: root/cmd/hexai-tmux-action/main.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/hexai-tmux-action/main.go')
-rw-r--r--cmd/hexai-tmux-action/main.go8
1 files changed, 7 insertions, 1 deletions
diff --git a/cmd/hexai-tmux-action/main.go b/cmd/hexai-tmux-action/main.go
index 2d8793b..3b066cc 100644
--- a/cmd/hexai-tmux-action/main.go
+++ b/cmd/hexai-tmux-action/main.go
@@ -5,6 +5,7 @@ import (
"flag"
"fmt"
"os"
+ "strings"
"codeberg.org/snonux/hexai/internal/hexaiaction"
)
@@ -13,6 +14,7 @@ func main() {
infile := flag.String("infile", "", "Read input from this file instead of stdin")
outfile := flag.String("outfile", "", "Write output to this file instead of stdout")
uiChild := flag.Bool("ui-child", false, "INTERNAL: run interactive UI and write to -outfile atomically")
+ configPath := flag.String("config", "", "path to config file")
tmuxTarget := flag.String("tmux-target", "", "tmux split target (advanced)")
tmuxSplit := flag.String("tmux-split", "v", "tmux split orientation: v or h")
tmuxPercent := flag.Int("tmux-percent", 33, "tmux split size percentage (1-100)")
@@ -22,7 +24,11 @@ func main() {
Infile: *infile, Outfile: *outfile,
UIChild: *uiChild, TmuxTarget: *tmuxTarget, TmuxSplit: *tmuxSplit, TmuxPercent: *tmuxPercent,
}
- if err := hexaiaction.RunCommand(context.Background(), opts, os.Stdin, os.Stdout, os.Stderr); err != nil {
+ ctx := context.Background()
+ if path := strings.TrimSpace(*configPath); path != "" {
+ ctx = hexaiaction.WithConfigPath(ctx, path)
+ }
+ if err := hexaiaction.RunCommand(ctx, opts, os.Stdin, os.Stdout, os.Stderr); err != nil {
fmt.Fprintln(os.Stderr, err)
os.Exit(1)
}