feat: add agent-notify server command
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -41,6 +41,8 @@ func run(cmd string, args []string) error {
|
||||
return cmdLogs(args)
|
||||
case "inbox":
|
||||
return cmdInbox(args, os.Stdout, os.Stderr)
|
||||
case "server":
|
||||
return cmdServer(args)
|
||||
case "version", "-V":
|
||||
return cmdVersion()
|
||||
case "help", "-h", "--help":
|
||||
@@ -205,6 +207,7 @@ Commands:
|
||||
test claude [--apply]
|
||||
logs [--tail 30]
|
||||
inbox <list|show|done|rm|clear|serve|ssh-config>
|
||||
server [--listen ADDR] [--db PATH] [--token TOKEN]
|
||||
version
|
||||
doctor
|
||||
`)
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"flag"
|
||||
"fmt"
|
||||
"net/http"
|
||||
"os"
|
||||
|
||||
"github.com/longbin/agent-notify/internal/server"
|
||||
)
|
||||
|
||||
func cmdServer(args []string) error {
|
||||
fs := flag.NewFlagSet("server", flag.ExitOnError)
|
||||
listen := fs.String("listen", ":8080", "listen address")
|
||||
db := fs.String("db", "./agent-notify.db", "SQLite database path")
|
||||
token := fs.String("token", "", "API bearer token")
|
||||
_ = fs.Parse(args)
|
||||
|
||||
tok := *token
|
||||
if tok == "" {
|
||||
tok = os.Getenv("AGENT_NOTIFY_TOKEN")
|
||||
}
|
||||
if tok == "" {
|
||||
return fmt.Errorf("--token or AGENT_NOTIFY_TOKEN is required")
|
||||
}
|
||||
|
||||
store, err := server.Open(*db)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer store.Close()
|
||||
|
||||
handler := server.NewHandler(store, tok)
|
||||
fmt.Fprintf(os.Stderr, "agent-notify server listening on %s\n", *listen)
|
||||
return http.ListenAndServe(*listen, handler)
|
||||
}
|
||||
Reference in New Issue
Block a user