Skip to content

opencode attach: File path duplicates client's relative directory, causing ENOENT #4967

@ZergRocks

Description

@ZergRocks

Description

When using opencode attach from a subdirectory of the server's workspace, file references using @ syntax cause the client's relative path to be duplicated in the final resolved path.

Steps to reproduce

  1. Start the server from a parent directory:

    cd ~/Development
    opencode serve --port 9999
  2. From another terminal, navigate to a subdirectory and attach:

    cd ~/Development/saturdays
    opencode attach http://localhost:9999
  3. Reference a file using @ that exists in ~/Development/saturdays/docs/:

    @docs/report.md
    
  4. Server throws ENOENT with a duplicated path:

    ENOENT: no such file or directory, stat '/Users/an/Development/saturdays/saturdays/docs/report.md'
    

Expected behavior

The file should be resolved to:

/Users/an/Development/saturdays/docs/report.md

Actual behavior

The path becomes:

/Users/an/Development/saturdays/saturdays/docs/report.md

The subdirectory saturdays appears twice - once from the client's cwd context and once from the path resolution.

Environment

  • OpenCode version: 1.0.126
  • OS: macOS
  • Server location: ~/Development (via opencode serve --port 9999)
  • Client attach location: ~/Development/saturdays (via opencode attach http://localhost:9999)

Metadata

Metadata

Assignees

Labels

opentuiThis relates to changes in v1.0, now that opencode uses opentui

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions