You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
TUI fails to start due to infinite recursion when scanning skills directories with cyclic symlinks #40349
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 --mini worked fine initially, indicating core functionality was intact.
Running opencode (without --mini) resulted in a blank screen.
Ran opencode --pure --print-logs --log-level DEBUG to collect detailed logs.
Logs revealed thousands of duplicate skill name warnings 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/skills and ~/.agents/skills immediately 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/vue pointing to each other).
Run opencode and observe a blank TUI screen.
Check logs with --log-level DEBUG and observe infinite duplicate skill name warnings with recursive paths.
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.
Activity
github-actions commentedon Aug 4, 2026
This issue might be a duplicate of existing issues. Please check:
.claude/skillsis a symlink to.agents/skills— same "duplicate skill name" warning symptoms from symlinked skill directoriesgithub-actions commentedon Oct 4, 2026
To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.