opencode: add the OpenCode sidecar (step 1 — serve lifecycle + port report)
New officer-opencode sidecar (same philosophy as officer-claude): a singleton that owns an `opencode serve` running from DATA_PATH/opencode-sidecar (created if missing) on a random port, registers with the API as capability 'opencode', and reports its port via a new `opencode:server` protocol event. The API stores it (sidecar-server.ts, wired in server.tsx via getOpenCodeServerUrl). ecosystem.config.cjs runs the sidecar instead of a bare pm2 serve. Turn-running + API rewiring come in later steps. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+6
-11
@@ -1,5 +1,3 @@
|
||||
const { homedir } = require('os');
|
||||
|
||||
module.exports = {
|
||||
apps: [
|
||||
{
|
||||
@@ -8,21 +6,18 @@ module.exports = {
|
||||
args: 'start',
|
||||
watch: false,
|
||||
},
|
||||
{
|
||||
// The fixed OpenCode server the chat harness talks to (http://127.0.0.1:4096).
|
||||
name: 'officer-opencode',
|
||||
script: homedir() + '/.opencode/bin/opencode',
|
||||
args: 'serve --port 4096 --hostname 127.0.0.1',
|
||||
cwd: homedir(),
|
||||
env: { HOME: homedir() },
|
||||
watch: false,
|
||||
},
|
||||
{
|
||||
name: 'officer-claude',
|
||||
script: 'bun',
|
||||
args: 'run src/servers/sidecar/claude/index.ts',
|
||||
watch: false,
|
||||
},
|
||||
{
|
||||
name: 'officer-opencode',
|
||||
script: 'bun',
|
||||
args: 'run src/servers/sidecar/opencode/index.ts',
|
||||
watch: false,
|
||||
},
|
||||
{
|
||||
name: 'officer-email',
|
||||
script: 'bun',
|
||||
|
||||
Reference in New Issue
Block a user