Hmbown/CodeWhale · error · anyhow::Error
DSH plugin path not available: {reason}
Error message
DSH plugin path not available: {reason} What it means
Error "DSH plugin path not available: {reason}" thrown in Hmbown/CodeWhale.
Source
Thrown at crates/tui/src/integrations/dsh/mod.rs:721
let status = command
.status()
.with_context(|| format!("launch {}", spec.binary.display()))?;
Ok(status.code().unwrap_or(1))
}
/// Install the Codewhale bundle into the dedicated `codewhale` DSH profile via
/// the documented `dsh plugin --profile codewhale add <path>` (pnpm).
pub(crate) fn install_bundle(
paths: &DshPaths,
detection: &DshDetection,
runner: &dyn DshRunner,
availability: &BundleAvailability,
app: DshAppBundle,
) -> Result<DshBundleRecord> {
let pnpm_version = match availability {
BundleAvailability::Available { pnpm_version } => pnpm_version.clone(),
BundleAvailability::NotAvailable { reason } => {
anyhow::bail!("DSH plugin path not available: {reason}")
}
};
let mut doc = DshReceiptDocument::load(&paths.receipt)?;
let Some(mut record) = doc.current.take() else {
anyhow::bail!("DSH is not connected; run `{CLI_COMMAND} connect` first");
};
if record.bundle.is_some() {
anyhow::bail!("bundle already installed; use `{CLI_COMMAND} update` or `remove-bundle`");
}
let overlay_text = std::fs::read_to_string(&paths.overlay)
.with_context(|| format!("read {}", paths.overlay.display()))?;
if sha256_hex(overlay_text.as_bytes()) != record.overlay_sha256 {
anyhow::bail!("overlay is stale; run `{CLI_COMMAND} update` before install-bundle");
}
let patch_sha = bundle::write_bundle(&paths.bundle_dir, &codewhale_version(), &overlay_text)?;
let (app_source, outcomes) =
match bundle::install_into_profile(runner, detection, app, &paths.bundle_dir) {
Ok(ok) => ok,View on GitHub (pinned to 8880682c63)
When it happens
Trigger: Thrown at crates/tui/src/integrations/dsh/mod.rs:721 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of Hmbown/CodeWhale@8880682c63 (2026-08-16).
Data as JSON: /api/errors/a4a8cf064763f64c.
Report an issue: GitHub.