Skip to content

[Bug]: Goal sidebar does not render on Windows 11 or Ubuntu 24.04 #14

Description

@tienbac2314

What happened?

@prevalentware/opencode-goal-plugin@0.1.24 loads and registers /goal, but its Goal block never appears in the OpenCode sidebar.

Vanilla 0.1.24: goal created, sidebar open, Goal block absent
Image

Reproduced with OpenCode 1.18.3 on two Windows 11 machines and Ubuntu 24.04 LTS.
On the inspected Windows install, opencode debug config lists the vanilla package in plugin_origins, /goal works, and other plugin TUI content renders.

Relevant packaging history:

  • The May 5 TUI-loading commit changed ./tui from built ./dist/tui.js to raw ./src/tui.tsx and removed the TUI entrypoint from build.
  • The July 9 dependency fix moved @opentui/solid and solid-js into runtime dependencies, but added only a package-manifest test—not a live sidebar render test.
  • OpenTUI's Solid plugin guide says runtime-loaded TS/TSX plugins require host-side @opentui/solid/runtime-plugin-support so host and plugin share runtime instances.

A direct diagnostic invocation of the registered JSX slot outside the host renderer throws No renderer found in @opentui/solid/src/reconciler.ts:createElement. This diagnostic alone is not proof because JSX slots require renderer context. It does identify the same missing-renderer failure mode suspected in the host integration.

As a comparison, a local function-API rewrite using createElement/insert/setProp renders the Goal sidebar on the same install.

Local function-API rewrite: Goal block visible on same installation
Image

Could you confirm whether OpenCode supports this package’s raw TSX ./tui entrypoint and add an end-to-end sidebar render test?

Expected behavior

After creating a goal and opening the sidebar, the Goal block should show its status, objective, elapsed time, token usage, and continuation state.

Steps to reproduce

  1. Install the vanilla package globally:

    opencode plugin -g -f @prevalentware/opencode-goal-plugin@0.1.24
  2. Run opencode debug config; confirm the package appears in plugin_origins and /goal is registered.

  3. Restart OpenCode and open a session.

  4. Run /goal create a smoke-test goal and report current goal state.

  5. Open the sidebar in a terminal wider than 120 columns.

  6. Observe that no Goal block appears although the command/server path works.

Plugin version

0.1.24

OpenCode version

1.18.3

Operating system

Windows 11 23H2, 25H2; Ubuntu 24.04 LTS

Model/provider in use

Not model-specific; failure occurs in the TUI render path.

Plugin options

{
  "opencode_version": "1.18.3",
  "plugin_origins": [
    {
      "spec": "@prevalentware/opencode-goal-plugin",
      "scope": "global",
      "source": "<redacted>"
    },
    {
      "spec": "oh-my-opencode-slim@2.2.1",
      "scope": "global",
      "source": "<redacted>"
    }
  ],
  "command_goal_registered": true,
  "goal_command_description": "Set or view the long-running session goal"
}

Relevant goal state or logs

opencode debug config:
- @prevalentware/opencode-goal-plugin is in plugin_origins
- /goal is registered
- no local fork path is present

Published package metadata:
version: 0.1.24
OpenCode engine: >=1.17.1
./server -> ./dist/server.js
./tui -> ./src/tui.tsx
build output: dist/server.js only

Outside-host diagnostic (not a complete host reproduction):
error: No renderer found
at @opentui/solid/src/reconciler.ts:createElement
at @opentui/solid/jsx-runtime.js
at @prevalentware/opencode-goal-plugin/src/tui.tsx

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions