anomalyco / anomalyco/opencode
TUI fails to start due to infinite recursion when scanning skills directories with cyclic symlinks
Open
@jlongster is already working on this.
Since Aug 4, 2026.
- Dominant language
- TypeScript
- Stars
- 209k
- Forks
- 27.5k
- PR merge metrics
- PR metrics pending
Description
Description
When running opencode on Windows, the TUI screen remains completely blank. Commands like -h and -v work normally, but entering the TUI shows nothing.
Troubleshooting process:
opencode --miniworked fine initially, indicating core functionality was intact.- Running
opencode(without--mini) resulted in a blank screen. - Ran
opencode --pure --print-logs --log-level DEBUGto collect detailed logs. - Logs revealed thousands of
duplicate skill namewarnings with endlessly nested paths (e.g.,vue\vue\vue\...\SKILL.md), indicating the program entered an infinite recursion loop while scanning skills directories. - Deleting
~/.claude/skillsand~/.agents/skillsimmediately resolved the issue.
Plugins
None
OpenCode version
1.18.11
Steps to reproduce
- Have two skill directories in the user folder:
C:\Users\<username>\.claude\skills\C:\Users\<username>\.agents\skills\
- Create cyclic symbolic links (junction points) between them (e.g.,
skills/vuepointing to each other). - Run
opencodeand observe a blank TUI screen. - Check logs with
--log-level DEBUGand observe infiniteduplicate skill namewarnings with recursive paths.
Screenshot and/or share link
Log snippet:
level=WARN message="duplicate skill name" name=vue existing="C:\\Users\\cai\\.claude\\skills\\vue\\vue\\vue\\...\\SKILL.md" duplicate="C:\\Users\\cai\\.agents\\skills\\vue\\vue\\vue\\...\\SKILL.md"
The vue segment repeats hundreds of times, indicating the scanner entered an infinite loop. Full log file grew to several MB with thousands of similar warnings.
Operating System
Windows 11 (10.0.26200.8655)
Terminal
Windows Terminal / PowerShell
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.