Two small hooks from affaan-m/ECC at 4eb71d92a39cab44ad40ac9d8a6a5ccb4029d6c2 (MIT, copyright 2026 Affaan Mustafa). The scripts live in upstream-hooks/. This page is the estate wrapper. It is not a bulk install of ECC.
When to use
- An agent is editing ESLint, Prettier, Biome, Ruff, Stylelint, markdownlint, or
lint-ratchet-baseline.jsonthat already exists. - An agent is editing
.ts,.tsx,.js, or.jsxand may leaveconsole.logbehind.
Do not use this to install ECC profiles, a second orchestrator, or a memory store.
What the scripts do
upstream-hooks/config-protection.pyblocks an edit only when that config file already exists. Creating a new config is allowed. The hook fails open and writes a one-line diagnostic on stderr.upstream-hooks/check-console-log.pywarns on stderr and exits 0. Tests and scripts are excluded. It never blocks the edit.
Estate limits
- Do not point config protection at
settings.json. Frank has to be able to edit his own settings. - Do not treat a markdown handover as a lint file.
- Review state for the upstream repo is
watch. Browse named pieces. Do not copy thefullprofile into~/.hermes.
Install
Copy this folder to ~/.hermes/skills/ecc-session-guard/ and wire the two scripts only if you want them in ~/.hermes/config.yaml. Read docs/HERMES-HOOKS.md upstream before enabling a block.
License
The Python files stay under the upstream MIT notice. This SKILL.md is MIT, Frank Riemer, and names the upstream commit above.