summaryrefslogtreecommitdiffhomepage
path: root/cmd
diff options
context:
space:
mode:
authorDax Raad <[email protected]>2025-05-17 21:31:42 -0400
committerDax Raad <[email protected]>2025-05-26 12:40:17 -0400
commita34d020bc6b252e842f042d935c7a0e6444460cf (patch)
treeea3484499dff80e82d421e879ab639133ae9c3b4 /cmd
parent96fbc37f0175052291f8a096d530bd4480f6cb19 (diff)
downloadopencode-a34d020bc6b252e842f042d935c7a0e6444460cf.tar.gz
opencode-a34d020bc6b252e842f042d935c7a0e6444460cf.zip
sync
Diffstat (limited to 'cmd')
-rw-r--r--cmd/opencode/opencode.go32
1 files changed, 32 insertions, 0 deletions
diff --git a/cmd/opencode/opencode.go b/cmd/opencode/opencode.go
new file mode 100644
index 000000000..9a64c1fb7
--- /dev/null
+++ b/cmd/opencode/opencode.go
@@ -0,0 +1,32 @@
+package main
+
+import (
+ "context"
+ "os"
+ "os/signal"
+
+ "github.com/sst/opencode/pkg/app"
+ "github.com/sst/opencode/pkg/server"
+ "golang.org/x/sync/errgroup"
+)
+
+func main() {
+ ctx, stop := signal.NotifyContext(context.Background(), os.Interrupt)
+ cwd, _ := os.Getwd()
+ app, err := app.New(ctx, cwd)
+ if err != nil {
+ panic(err)
+ }
+
+ server, err := server.New(app)
+
+ var wg errgroup.Group
+ wg.Go(func() error {
+ defer stop()
+ return server.Start(ctx)
+ })
+
+ <-ctx.Done()
+
+ wg.Wait()
+}