Skip to content

Plugin cache_path stored as absolute path breaks in Docker/multi-HOME environments #3864

Closed

Description

@joshgoebelwork

Description

When a plugin is installed, cache_path in config.json is hardcoded to an absolute path
rooted at the install-time $HOME. If ~/.copilot is volume-mounted into Docker (where
$HOME differs), the path doesn't exist and sessionStart hooks silently never fire.

I'm mounting my host ~/.copilot into the active user's home folder in Docker, and that seems
to work for most things, but evidently not plugins. Any help greatly appreciated.

Root Cause

config.json stores:
"cache_path": "/Users/josh/.copilot/installed-plugins/_direct/my-plugin"

Inside Docker ($HOME = /home/deployer), that path doesn't exist.

Expected Behavior

cache_path should be $HOME-relative so it works across environments sharing ~/.copilot.

Workaround

sudo mkdir -p /Users/josh && sudo ln -sfn /home/deployer/.copilot /Users/josh/.copilot
(must be recreated each container start)

Environment

  • CLI: 1.0.59
  • Host: macOS /Users/josh
  • Container: Linux /home/deployer
  • ~/.copilot shared via Docker volume mount

Activity

  1. added
    area:pluginsPlugin system, marketplace, hooks, skills, extensions, and custom agents
    area:configurationConfig files, instruction files, settings, and environment variables
    on Jun 19, 2026
  2. added theissue type on Jun 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:configurationConfig files, instruction files, settings, and environment variablesarea:pluginsPlugin system, marketplace, hooks, skills, extensions, and custom agents

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions