Skip to main content ホーム クリエイター jeremylongshore tons-of-skills-marketplace windsurf-advanced-troubleshooting
windsurf-advanced-troubleshooting Advanced Windsurf debugging for hard-to-diagnose IDE, Cascade, and indexing issues.
Use when standard troubleshooting fails, Cascade produces consistently wrong output,
or investigating deep configuration problems.
Trigger with phrases like "windsurf deep debug", "windsurf mystery error",
"windsurf impossible to fix", "cascade keeps failing", "windsurf advanced debug".
インストールへ移動 Skills Marketplace コミュニティが作成したAIスキルを発見・探索
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/jeremylongshore/tons-of-skills-marketplace --skill windsurf-advanced-troubleshootingコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
Zipをダウンロード ダウンロード中... このリポジトリの他の Skills langchain-deploy-integration Deploy a LangChain 1.0 / LangGraph 1.0 app to Cloud Run, Vercel, or LangServe correctly — with timeouts sized for chain length, cold-start mitigation, SSE anti-buffering headers, and Secret Manager over .env. Use when prepping a first production deploy, debugging a stream that hangs behind a proxy, or diagnosing p99 latency spikes. Trigger with "langchain deploy", "langchain cloud run", "langchain vercel python", "langchain langserve", or "langchain docker".
langchain-langgraph-agents Build a correct LangGraph 1.0 ReAct agent with create_react_agent — typed tools, error propagation, recursion caps, and stop conditions that actually stop. Use when writing a first tool-calling agent, migrating from AgentExecutor or initialize_agent, or diagnosing an agent that loops on vague prompts. Trigger with "langgraph agent", "create_react_agent", "langgraph tool calling", "AgentExecutor migration", or "agent loop cost".
langchain-langgraph-human-in-loop Build LangGraph 1.0 human-in-the-loop approval flows with interrupt_before /
interrupt_after and Command(resume=...) — JSON-serializable state, clean
resume semantics, and UI wiring for approval decisions. Use when adding an
approval gate before an expensive tool call, wiring a Slack/web UI for agent
approvals, or debugging a graph that crashes on interrupt.
Trigger with "langgraph human in loop", "langgraph interrupt_before",
"langgraph approval flow", "Command resume", "langgraph HITL".
name windsurf-advanced-troubleshooting description Advanced Windsurf debugging for hard-to-diagnose IDE, Cascade, and indexing issues.
Use when standard troubleshooting fails, Cascade produces consistently wrong output,
or investigating deep configuration problems.
Trigger with phrases like "windsurf deep debug", "windsurf mystery error",
"windsurf impossible to fix", "cascade keeps failing", "windsurf advanced debug".
allowed-tools Read, Grep, Bash(ls:*), Bash(curl:*), Bash(find:*) version 1.11.0 license MIT author Jeremy Longshore <jeremy@intentsolutions.io> tags ["saas","windsurf","debugging","advanced","troubleshooting"] compatibility Designed for Claude Code
Windsurf Advanced Troubleshooting
Overview
Deep debugging techniques for Windsurf issues that resist standard troubleshooting. Covers Cascade context corruption, indexing engine problems, extension conflicts, MCP failures, and workspace configuration debugging.
Prerequisites
Standard troubleshooting attempted (see windsurf-common-errors)
Terminal access
Understanding of Windsurf's architecture (VS Code base + Codeium AI layer)
Instructions
Step 1: Isolate Windsurf Layer vs VS Code Layer
Windsurf = VS Code + Codeium AI Layer
If the issue is:
- Editor crashes, rendering, file system → VS Code layer
- AI suggestions wrong, Cascade fails, indexing stuck → Codeium layer
- Extension not working → Extension compatibility layer
Test VS Code layer:
windsurf --disable-extensions # Run without extensions
# If issue persists → VS Code layer problem
Test Codeium layer:
# Disable Codeium: Extensions > search "codeium" > Disable
# If issue resolves → Codeium layer problem
Step 2: Debug Cascade Context Issues
When Cascade consistently gives wrong or irrelevant suggestions:
set -euo pipefail
echo "=== Cascade Context Debug ==="
echo "--- .windsurfrules ---"
if [ -f .windsurfrules ]; then
CHARS=$(wc -c < .windsurfrules)
echo "Size: $CHARS chars (limit: 6000)"
[ "$CHARS " -gt 6000 ] && echo "WARNING: Over limit — content truncated!"
else
echo "MISSING — Cascade has no project context"
fi
echo "--- Workspace Rules ---"
TOTAL_RULE_CHARS=0
if [ -d .windsurf/rules ]; then
for rule in .windsurf/rules/*.md;
[ -f ] ||
CHARS=$( -c < )
TOTAL_RULE_CHARS=$((TOTAL_RULE_CHARS + CHARS))
HAS_TRIGGER=$(grep -c || )
RULES_CHARS=$( -c < .windsurfrules 2>/dev/null || 0)
GLOBAL_CHARS=$( -c < ~/.windsurf/global_rules.md 2>/dev/null || 0)
TOTAL=$((RULES_CHARS + GLOBAL_CHARS))
[ -gt 12000 ] &&
MEMORY_DIR=
[ -d ];
MEMORY_COUNT=$(find - f | -l)
[ -gt 50 ] &&
do
"$rule "
continue
wc
"$rule "
"^trigger:"
"$rule "
true
echo
" $(basename "$rule " ) : $CHARS chars, trigger: $([[ $HAS_TRIGGER -gt 0 ]] && echo 'YES' || echo 'MISSING') "
done
echo
"Total: $TOTAL_RULE_CHARS chars"
else
echo
"No .windsurf/rules/ directory"
fi
wc
echo
wc
echo
echo
"--- Total Rules Budget ---"
echo
"Project rules: $RULES_CHARS + Global rules: $GLOBAL_CHARS = $TOTAL chars (limit: 12000)"
"$TOTAL "
echo
"WARNING: Over 12000 total — rules will be truncated!"
echo
"--- Memories ---"
"$HOME /.codeium/windsurf/memories"
if
"$MEMORY_DIR "
then
"$MEMORY_DIR "
type
wc
echo
"Memory files: $MEMORY_COUNT "
"$MEMORY_COUNT "
echo
"WARNING: Many memories — may cause conflicting context"
else
echo
"No memories directory"
fi
Step 3: Debug Indexing Problems set -euo pipefail
echo "=== Indexing Debug ==="
TOTAL_FILES=$(find . -type f -not -path '*/node_modules/*' -not -path '*/.git/*' | wc -l)
echo "Total files (excluding node_modules, .git): $TOTAL_FILES "
echo "--- Large files (>1MB, not in node_modules) ---"
find . -type f -size +1M -not -path '*/node_modules/*' -not -path '*/.git/*' | head -10
if [ -f .codeiumignore ]; then
echo "--- .codeiumignore patterns ---"
wc -l < .codeiumignore
echo "patterns defined"
else
echo "WARNING: No .codeiumignore — indexing everything"
fi
if [ "$TOTAL_FILES " -gt 10000 ]; then
echo ""
echo "RECOMMENDATION: >10K files. Open a subdirectory instead of root."
echo "RECOMMENDATION: Add more patterns to .codeiumignore"
fi
Step 4: Debug Extension Conflicts set -euo pipefail
echo "=== Extension Conflict Check ==="
windsurf --list-extensions 2>/dev/null | while read ext; do
case "$ext " in
*copilot*|*tabnine*|*cody*|*intellicode*|*aws-toolkit*codewhisperer*)
echo "CONFLICT: $ext — competes with Supercomplete/Cascade"
;;
*remote*|*liveshare*|*container*)
echo "OK: $ext — compatible but may affect performance"
;;
*)
echo "OK: $ext "
;;
esac
done
echo ""
echo "Resolution: Disable conflicting extensions or run:"
echo " windsurf --disable-extensions # Test in clean mode"
Step 5: Debug MCP Server Issues set -euo pipefail
echo "=== MCP Debug ==="
MCP_CONFIG="$HOME /.codeium/windsurf/mcp_config.json"
if [ -f "$MCP_CONFIG " ]; then
echo "MCP config exists"
python3 -c "import json; json.load(open('$MCP_CONFIG '))" 2>&1 && echo "JSON: valid" || echo "JSON: INVALID"
python3 -c "
import json
config = json.load(open('$MCP_CONFIG '))
for name, server in config.get('mcpServers', {}).items():
cmd = server.get('command', 'N/A')
print(f' {name}: command={cmd}')
"
else
echo "No MCP config at $MCP_CONFIG "
fi
Step 6: Nuclear Reset Options ## Progressive Reset (least to most destructive)
1. Restart Cascade
Command Palette > "Cascade: Restart"
2. Reset Indexing
Command Palette > "Codeium: Reset Indexing"
3. Reload Window
Cmd/Ctrl+Shift+P > "Developer: Reload Window"
4. Clear Memories
Delete contents of ~/.codeium/windsurf/memories/
5. Reset All Codeium State
Close Windsurf
rm -rf ~/.codeium/windsurf/cache/
Reopen Windsurf (re-indexes, re-authenticates)
6. Clean Install
Uninstall Windsurf
rm -rf ~/.codeium/
rm -rf ~/.config/Windsurf/ # Linux
# or: rm -rf ~/Library/Application Support/Windsurf/ # macOS
Reinstall from windsurf.com/download
Error Handling Issue Cause Solution Cascade gives contradictory advice Conflicting memories Clear old memories Rules ignored Over 12K combined chars Trim rules, check total budget Wrong file suggestions Stale index Reset indexing Slow after update Extension incompatibility Test with --disable-extensions MCP tools missing Config JSON invalid Validate with python3 json parser Everything broken Corrupted state Progressive reset (Step 6)
Examples
Quick Diagnostic One-Liner echo "WS files: $(find . -not -path '*/node_modules/*' -not -path '*/.git/*' -type f | wc -l) | Rules: $(wc -c < .windsurfrules 2>/dev/null || echo 0) c | Ignore: $(wc -l < .codeiumignore 2>/dev/null || echo 0) patterns | Exts: $(windsurf --list-extensions 2>/dev/null | wc -l) "
Submit Support Ticket Attach:
1. Output from all diagnostic scripts above
2. Debug bundle from windsurf-debug-bundle
3. Exact prompts that produce wrong results
4. Expected vs actual Cascade behavior
Resources
Next Steps For load and scale patterns, see windsurf-load-scale.