multica-ai/multica · error
execenv: prepare hermes-home: %w
Error message
execenv: prepare hermes-home: %w
What it means
Error "execenv: prepare hermes-home: %w" thrown in multica-ai/multica.
Source
Thrown at server/internal/daemon/execenv/execenv.go:526
}
// For Hermes, redirect HERMES_HOME to a per-task compatibility overlay ONLY
// when the agent has skills bound. A skill-less Hermes task keeps the user's
// real home and its original behavior untouched. The overlay makes the bound
// skills visible — Hermes discovers skills only from its home, so the old
// .agent_context/skills/ fallback was never read (issue #5242). See
// hermes_home.go.
//
// Note this is a local contract, not an observable product behaviour: the
// server appends the platform's built-in skills to every agent's skill set
// (service.LoadAgentSkillBundles), so a claimed task's AgentSkills is never
// empty and the skill-less branch is effectively unreachable in production.
// Emptying an agent's own skill list is NOT a way to opt out of the overlay.
if params.Provider == "hermes" && len(params.Task.AgentSkills) > 0 {
hermesHome := filepath.Join(envRoot, "hermes-home")
sessions, err := prepareHermesHome(hermesHome, params.HermesSourceHome, params.HermesSourceMustExist, params.Task.AgentSkills, params.HermesEnv, params.HermesMemoryStore, params.HermesSessionStore, logger)
if err != nil {
return nil, fmt.Errorf("execenv: prepare hermes-home: %w", err)
}
env.HermesHome = hermesHome
if sessions.Mounted {
env.HermesSessionStore = params.HermesSessionStore
env.HermesSessionHistoryPresent = sessions.HistoryPresent
}
}
if params.Provider == "qwenpaw" {
qwenpawWorkspace := filepath.Join(envRoot, "qwenpaw-workspace")
if err := prepareQwenpawWorkspace(qwenpawWorkspace, params.Task.AgentSkills, logger); err != nil {
return nil, fmt.Errorf("execenv: prepare qwenpaw workspace: %w", err)
}
env.QwenpawWorkspace = qwenpawWorkspace
}
// For Reasonix, deny the `ask` tool for this task through a project-scoped
// reasonix.toml. Degraded, not fatal: without it the task still runs under
// the backend's fail-closed question handling.View on GitHub (pinned to 2c0912b6ec)
Solutions
- Inspect the wrapped error from hermes-home preparation.
When it happens
Trigger: Thrown at server/internal/daemon/execenv/execenv.go:526 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of multica-ai/multica@2c0912b6ec (2026-08-15).
Data as JSON: /api/errors/def2fbb069d8c39a.
Report an issue: GitHub.