diagnosing-config
Skill6 starsChanged 8 days agoMITView on GitHub
Diagnose Hermes configuration issues — config.yaml not parsing, missing file, wrong path, orphaned settings, and legacy key migration.
In this repository32 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- diagnosing-authSkill
- diagnosing-backupSkill
- diagnosing-bot-modeSkill
- diagnosing-browserSkill
- diagnosing-cli-tuiSkill
- diagnosing-commandsSkill
- diagnosing-cronSkill
- diagnosing-desktopSkill
- diagnosing-gatewaySkill
- diagnosing-hooksSkill
- diagnosing-host-pressureSkill
- diagnosing-mcpSkill
- diagnosing-memoriesSkill
- diagnosing-memorySkill
- diagnosing-pathSkill
- diagnosing-pluginsSkill
- diagnosing-profilesSkill
- diagnosing-providersSkill
- diagnosing-runtimeSkill
- diagnosing-secretsSkill
- diagnosing-sessionsSkill
- diagnosing-skillsSkill
- diagnosing-storageSkill
- diagnosing-triageSkill
- diagnosing-updateSkill
- diagnosing-voiceSkill
- hermes-configuration-guideSkill
- hermes-post-updateSkill
- installing-hermesSkill
- plugin-authoringSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 79
Check hermes-configuration-guide for the current key structure
- Distinctive: line 111
After applying the fix:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Diagnosing Configuration
Goal: reduce any config problem to one concrete fix — a YAML syntax correction, a path change, or a key migration.
1. How to inspect
hermes config path— resolves the active config file (ground truth for $HERMES_HOME)hermes config show— dumps effective config after mergehermes doctor— flags config parse errorshermes guide— runscheck_config_parses(config check)
2. Common failures
Config file missing
Symptom: hermes config path points to a non-existent file.
Cause: First run without config bootstrap, or $HERMES_HOME points to wrong directory.
Fix:
hermes config path # verify the path
cfg=$(hermes config path)
ls -la "$cfg" # check existence
# If missing, create minimal config:
mkdir -p "$(dirname "$cfg")"
echo "model:" > "$cfg"Config does not parse (YAML syntax error)
Symptom: hermes doctor reports CONFIG_UNPARSEABLE; hermes guide shows config check as broken.
Cause: Invalid YAML — tabs instead of spaces, unquoted special characters, missing colons.
Fix:
# Validate YAML syntax
python -c "import yaml; yaml.safe_load(open('$cfg'))"
# Common fixes:
# - Replace tabs with spaces
# - Quote strings with colons: "key: value" not key: value
# - Ensure proper indentation (2 spaces per level)Wrong $HERMES_HOME
Symptom: Config changes don't take effect; Hermes uses different settings than expected.
Cause: $HERMES_HOME env var overrides default location; profile-specific home.
Fix:
echo "HERMES_HOME=$HERMES_HOME"
hermes config path # ground truth
# If mismatched, unset or correct HERMES_HOME:
unset HERMES_HOME
# Or set explicitly:
export HERMES_HOME=/path/to/correct/.hermesOrphaned / legacy settings
Symptom: Settings in config.yaml have no effect; Hermes ignores them.
Cause: Hermes migrated from flat keys to nested structure, or keys were renamed.
Fix:
- Check
hermes-configuration-guidefor the current key structure - Move legacy flat keys to their nested equivalents
- Remove deprecated keys
Config path unresolved
Symptom: hermes config path fails or returns empty.
Cause: Hermes installation broken, or running from wrong environment.
Fix:
which hermes
hermes --version
# Reinstall if needed: see installing-hermes skill3. Verification
hermes config path # resolves correctly
hermes config show # dumps effective config
hermes doctor # no config errors
hermes guide # config check healthyPass: config check shows healthy; hermes config show reflects your edits.
Fail: config check shows broken — re-check YAML syntax and $HERMES_HOME.
Verification
After applying the fix:
# Confirm config parses
hermes config path # resolves correctly
hermes config show # dumps effective config
hermes doctor # no config errors
hermes guide # config check healthyPass: config check shows healthy; hermes config show reflects your edits.
Fail: config check shows broken — re-check YAML syntax and $HERMES_HOME.
4. Related
hermes-configuration-guide— full config map and key referencediagnosing-path— path resolution issuesdiagnosing-plugins— plugin config issues
Facts re-verified 2026-10-31 against upstream source at commit cedf4a3d78675283fa93e4e6ea2d6212bf414667: hermes_cli/config.py (load_config, config path resolution), hermes_constants.py (get_hermes_home). Re-verify before reuse.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

