chenhg5/cc-connect · error
resolve current directory: %w
Error message
resolve current directory: %w
What it means
normalizeSendWorkDir could not resolve the base directory for a relative work_dir path: no base was supplied and os.Getwd() failed (e.g. working directory was deleted). Wraps the OS error before joining the relative path.
Source
Thrown at core/engine.go:11500
return "", fmt.Errorf("work_dir is required")
}
if dir == "~" || strings.HasPrefix(dir, "~/") {
home, err := os.UserHomeDir()
if err != nil {
return "", fmt.Errorf("resolve home directory: %w", err)
}
if dir == "~" {
dir = home
} else {
dir = filepath.Join(home, strings.TrimPrefix(dir, "~/"))
}
}
if !filepath.IsAbs(dir) {
if strings.TrimSpace(base) == "" {
var err error
base, err = os.Getwd()
if err != nil {
return "", fmt.Errorf("resolve current directory: %w", err)
}
}
dir = filepath.Join(base, dir)
}
abs, err := filepath.Abs(filepath.Clean(dir))
if err != nil {
return "", err
}
return abs, nil
}
// SendTTSToSession synthesizes and sends a voice message to an active session.
// It is used by the local API/CLI so agents can call `cc-connect send --tts`.
func (e *Engine) SendTTSToSession(sessionKey, text string) error {
text = strings.TrimSpace(text)
if text == "" {
return fmt.Errorf("tts text is required")
}View on GitHub (pinned to 4000b2338a)
Solutions
- Pass an absolute work_dir
- Ensure the process still has a valid working directory (cwd not deleted)
Defensive patterns
Strategy: fallback
When it happens
Trigger: Thrown at core/engine.go:11500 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of chenhg5/cc-connect@4000b2338a (2026-09-06).
Data as JSON: /api/errors/f452c022ba35b3e7.
Report an issue: GitHub.