Skip to content

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

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)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions