tinyhumansai/openhuman · error

Failed to read config file {}: {error}

Error message

Failed to read config file {}: {error}

What it means

ProxyConfigTool re-reads config.toml from disk (bypassing env overrides) for every get/set/disable/apply_env action so it can rewrite the file. This error means that raw read failed — file deleted mid-session, moved, or unreadable — before any proxy mutation happened.

Source

Thrown at src/openhuman/tools/impl/system/proxy_config.rs:24

use crate::openhuman::util::MaybeSet;
use async_trait::async_trait;
use serde_json::{json, Value};
use std::fs;
use std::sync::Arc;

pub struct ProxyConfigTool {
    config: Arc<Config>,
    security: Arc<SecurityPolicy>,
}

impl ProxyConfigTool {
    pub fn new(config: Arc<Config>, security: Arc<SecurityPolicy>) -> Self {
        Self { config, security }
    }

    fn load_config_without_env(&self) -> anyhow::Result<Config> {
        let contents = fs::read_to_string(&self.config.config_path).map_err(|error| {
            anyhow::anyhow!(
                "Failed to read config file {}: {error}",
                self.config.config_path.display()
            )
        })?;

        let mut parsed: Config = toml::from_str(&contents).map_err(|error| {
            anyhow::anyhow!(
                "Failed to parse config file {}: {error}",
                self.config.config_path.display()
            )
        })?;
        parsed.config_path = self.config.config_path.clone();
        parsed.workspace_dir = self.config.workspace_dir.clone();
        Ok(parsed)
    }

    fn require_write_access(&self) -> Option<ToolResult> {
        if !self.security.can_act() {

View on GitHub (pinned to 7491200858)

Solutions

  1. Confirm config.toml exists at the configured path and is readable
  2. Restore or re-initialize the config file, then re-run the proxy_config action
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at src/openhuman/tools/impl/system/proxy_config.rs:24 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17). Data as JSON: /api/errors/517a33ab2ea693dc. Report an issue: GitHub.