# NousResearch/hermes-agent · Fix infinite symlink cycles in skills directory scan

## Open now

- 0 issues, 1 PR open on GitHub.
- PR #104344: fix(skills): prune symlink cycles from the skills scan instead of walking them unbounded

These items address a bug where the skills scanner follows self-referential or cyclic symlinks unbounded, silently bloating the system prompt. The fixes prune already-visited real directories and symlink cycles during the index walk.

## TL;DR

- 3 member(s): 0 open issue(s), 1 closed issue(s), 1 open PR(s), 0 merged PR(s), 1 PR(s) closed without merging.
- No fix has been merged to main; one or more PRs were attempted (see below).
- **Recommended:** review the prior/competing PR(s) below. A fix was attempted but not merged; your case may extend or revive that work.

## Maintainer resolution verdict

- Internal-tracker verdict over this cluster's issue members: `unresolved`. This is distinct from the fix status above. Weigh it yourself.

## How this cluster was grouped

- Link evidence (`STRUCTURAL_SPANNING`): every member is connected by structural evidence: shared changed files, or a closing/superseded reference.
- Pairwise link density `0.67`: the share of member pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36. `1.00` means every pair is linked.

## Closed / duplicate issues

- #104316: Skills scanner follows self-referential symlinks and silently quadruples the system prompt

## Prior & competing PRs

- **#104327: fix(skills): prune already-visited real dirs in the skill index walk**. closed without merge
  - maintainer direction: category `implemented_elsewhere`; implication `superseded`; refs `#69248`, `#18815`, `#20658`
- **#104344: fix(skills): prune symlink cycles from the skills scan instead of walking them unbounded**. open
  - maintainer direction: category `superseded_by_pr`; implication `superseded`; refs `#143312`, `#18815`, `#123961`
  - files: `agent/prompt_builder.py`, `agent/skill_utils.py`, `tests/agent/test_skill_symlink_loops.py`

## Fix status

- No merged fix on record.
- Subsystem: `skills`
