From 3ac39a8b106c7e608058379e6160ff390993e1c7 Mon Sep 17 00:00:00 2001 From: "will.anderson" Date: Fri, 21 Aug 2026 13:59:45 -0500 Subject: [PATCH] =?UTF-8?q?feat:=20launch=20as=20neuron=20=E2=80=94=20bin?= =?UTF-8?q?=20entry=20+=20CLI=20script=20name?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/opencode/bin/neuron | 12 ++++++++++++ packages/opencode/package.json | 2 +- packages/opencode/src/effect/bridge.ts | 2 +- packages/opencode/src/effect/instance-state.ts | 2 +- packages/opencode/src/effect/run-service.ts | 2 +- .../{control-plane => effect}/workspace-context.ts | 0 packages/opencode/src/index.ts | 2 +- 7 files changed, 17 insertions(+), 5 deletions(-) create mode 100755 packages/opencode/bin/neuron rename packages/opencode/src/{control-plane => effect}/workspace-context.ts (100%) diff --git a/packages/opencode/bin/neuron b/packages/opencode/bin/neuron new file mode 100755 index 000000000..c0014a9d2 --- /dev/null +++ b/packages/opencode/bin/neuron @@ -0,0 +1,12 @@ +#!/bin/sh +# Neuron launcher: run the CLI from source under Bun. +SELF="$0" +while [ -L "$SELF" ]; do + LINK="$(readlink "$SELF")" + case "$LINK" in + /*) SELF="$LINK" ;; + *) SELF="$(dirname "$SELF")/$LINK" ;; + esac +done +DIR="$(cd "$(dirname "$SELF")" && pwd)" +exec bun run --conditions=browser "$DIR/../src/index.ts" "$@" diff --git a/packages/opencode/package.json b/packages/opencode/package.json index dfa84a7ec..e730e5994 100644 --- a/packages/opencode/package.json +++ b/packages/opencode/package.json @@ -16,7 +16,7 @@ "dev:temporary": "bun run --conditions=browser ./src/temporary.ts" }, "bin": { - "opencode": "./bin/opencode" + "neuron": "./bin/neuron" }, "exports": { "./*": "./src/*.ts" diff --git a/packages/opencode/src/effect/bridge.ts b/packages/opencode/src/effect/bridge.ts index a51c2938d..1f0c85d5b 100644 --- a/packages/opencode/src/effect/bridge.ts +++ b/packages/opencode/src/effect/bridge.ts @@ -1,5 +1,5 @@ import { Context, Effect, Exit, Fiber } from "effect" -import { WorkspaceContext } from "@/control-plane/workspace-context" +import { WorkspaceContext } from "@/effect/workspace-context" import type { WorkspaceV2 } from "@opencode-ai/core/workspace" import { InstanceRef, WorkspaceRef } from "./instance-ref" import { attachWith } from "./run-service" diff --git a/packages/opencode/src/effect/instance-state.ts b/packages/opencode/src/effect/instance-state.ts index b40168fbc..89348804c 100644 --- a/packages/opencode/src/effect/instance-state.ts +++ b/packages/opencode/src/effect/instance-state.ts @@ -2,7 +2,7 @@ import { Effect, ScopedCache, Scope } from "effect" import type { InstanceContext } from "@/project/instance-context" import { InstanceRef, WorkspaceRef } from "./instance-ref" import { registerDisposer } from "./instance-registry" -import { WorkspaceContext } from "@/control-plane/workspace-context" +import { WorkspaceContext } from "@/effect/workspace-context" const TypeId = "~opencode/InstanceState" diff --git a/packages/opencode/src/effect/run-service.ts b/packages/opencode/src/effect/run-service.ts index cfcc50081..4b608b71b 100644 --- a/packages/opencode/src/effect/run-service.ts +++ b/packages/opencode/src/effect/run-service.ts @@ -2,7 +2,7 @@ import { Effect, Fiber, Layer, ManagedRuntime } from "effect" import * as Context from "effect/Context" import { InstanceRef, WorkspaceRef } from "./instance-ref" import * as Observability from "@opencode-ai/core/observability" -import { WorkspaceContext } from "@/control-plane/workspace-context" +import { WorkspaceContext } from "@/effect/workspace-context" import type { InstanceContext } from "@/project/instance-context" import { memoMap } from "@opencode-ai/core/effect/memo-map" diff --git a/packages/opencode/src/control-plane/workspace-context.ts b/packages/opencode/src/effect/workspace-context.ts similarity index 100% rename from packages/opencode/src/control-plane/workspace-context.ts rename to packages/opencode/src/effect/workspace-context.ts diff --git a/packages/opencode/src/index.ts b/packages/opencode/src/index.ts index 4c8c16678..70ee0f64d 100644 --- a/packages/opencode/src/index.ts +++ b/packages/opencode/src/index.ts @@ -43,7 +43,7 @@ function show(out: string) { const cli = yargs(args) .parserConfiguration({ "populate--": true }) - .scriptName("opencode") + .scriptName("neuron") .wrap(100) .help("help", "show help") .alias("help", "h")