diff --git a/bar/run.go b/bar/run.go
index a125f2abfd5282b0e93900bc25d4144e0f883085..dff0ec7c971eae675eb555651feecd8ac678ddae 100644
--- a/bar/run.go
+++ b/bar/run.go
@@ -3,25 +3,42 @@
 package bar
 
 import (
+	"bufio"
 	"fmt"
+	"os"
 	"time"
 
 	"github.com/spf13/cobra"
 	"golang.org/x/sys/unix"
 )
 
+func handleCommands() {
+	logger, err := os.Create("/tmp/i3going-on.log")
+	if err != nil {
+		panic(err)
+	}
+	scanner := bufio.NewScanner(os.Stdin)
+	for scanner.Scan() {
+		logger.WriteString(scanner.Text())
+	}
+}
+
 // Run is essentially the main program.
 func Run(cmd *cobra.Command, args []string) {
+	go handleCommands()
+
 	fmt.Printf(`{ "version": 1, "stop_signal": %d, "cont_signal": %d, "click_events": true }`+"\n",
 		unix.SignalNum("SIGSTOP"), unix.SignalNum("SIGCONT"))
 	fmt.Println("[")
 	for {
 		fmt.Printf(`  [
     {
+      "name": "color",
       "full_text": "RED",
       "color": "#11ff11"
     },
     {
+      "name": "bland",
       "full_text": "default"
     }
    ],