{"id":"31c27569-823c-43fb-9bd1-4190d40ae857","shortId":"JBGggK","kind":"skill","title":"systematic-debugging","tagline":"Use when encountering any bug, test failure, unexpected behavior, or error. Triggers on: \"it's broken\", \"this doesn't work\", \"I'm getting an error\", \"fix this bug\", any unexpected behavior. Requires finding root cause before attempting fixes. Symptom fixes are failure.","description":"# Systematic Debugging\n\n## Overview\n\nRandom fixes waste time and create new bugs. Quick patches mask underlying issues.\n\n**Core principle:** ALWAYS find root cause before attempting fixes. Symptom fixes are failure.\n\n**Violating the letter of this process is violating the spirit of debugging.**\n\n## The Iron Law\n\n```\nNO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST\n```\n\nIf you haven't completed Phase 1, you cannot propose fixes.\n\n## When to Use\n\nUse for ANY technical issue:\n- Test failures\n- Bugs in production\n- Unexpected behavior\n- Performance problems\n- Build failures\n- Integration issues\n\n**Use this ESPECIALLY when:**\n- Under time pressure (emergencies make guessing tempting)\n- \"Just one quick fix\" seems obvious\n- You've already tried multiple fixes\n- Previous fix didn't work\n- You don't fully understand the issue\n\n**Don't skip when:**\n- Issue seems simple (simple bugs have root causes too)\n- You're in a hurry (rushing guarantees rework)\n- Manager wants it fixed NOW (systematic is faster than thrashing)\n\n## The Four Phases\n\nYou MUST complete each phase before proceeding to the next.\n\n### Phase 1: Root Cause Investigation\n\n**BEFORE attempting ANY fix:**\n\n1. **Read Error Messages Carefully**\n   - Don't skip past errors or warnings\n   - They often contain the exact solution\n   - Read stack traces completely\n   - Note line numbers, file paths, error codes\n\n2. **Reproduce Consistently**\n   - Can you trigger it reliably?\n   - What are the exact steps?\n   - Does it happen every time?\n   - If not reproducible → gather more data, don't guess\n\n3. **Check Recent Changes**\n   - What changed that could cause this?\n   - Git diff, recent commits\n   - New dependencies, config changes\n   - Environmental differences\n\n4. **Gather Evidence in Multi-Component Systems**\n\n   **WHEN system has multiple components (CI → build → signing, API → service → database):**\n\n   **BEFORE proposing fixes, add diagnostic instrumentation:**\n   ```\n   For EACH component boundary:\n     - Log what data enters component\n     - Log what data exits component\n     - Verify environment/config propagation\n     - Check state at each layer\n\n   Run once to gather evidence showing WHERE it breaks\n   THEN analyze evidence to identify failing component\n   THEN investigate that specific component\n   ```\n\n   **Example (multi-layer system):**\n   ```bash\n   # Layer 1: Workflow\n   echo \"=== Secrets available in workflow: ===\"\n   echo \"IDENTITY: ${IDENTITY:+SET}${IDENTITY:-UNSET}\"\n\n   # Layer 2: Build script\n   echo \"=== Env vars in build script: ===\"\n   env | grep IDENTITY || echo \"IDENTITY not in environment\"\n\n   # Layer 3: Signing script\n   echo \"=== Keychain state: ===\"\n   security list-keychains\n   security find-identity -v\n\n   # Layer 4: Actual signing\n   codesign --sign \"$IDENTITY\" --verbose=4 \"$APP\"\n   ```\n\n   **This reveals:** Which layer fails (secrets → workflow ✓, workflow → build ✗)\n\n5. **Trace Data Flow**\n\n   **WHEN error is deep in call stack:**\n\n   See `root-cause-tracing.md` in this directory for the complete backward tracing technique.\n\n   **Quick version:**\n   - Where does bad value originate?\n   - What called this with bad value?\n   - Keep tracing up until you find the source\n   - Fix at source, not at symptom\n\n### Phase 2: Pattern Analysis\n\n**Find the pattern before fixing:**\n\n1. **Find Working Examples**\n   - Locate similar working code in same codebase\n   - What works that's similar to what's broken?\n\n2. **Compare Against References**\n   - If implementing pattern, read reference implementation COMPLETELY\n   - Don't skim - read every line\n   - Understand the pattern fully before applying\n\n3. **Identify Differences**\n   - What's different between working and broken?\n   - List every difference, however small\n   - Don't assume \"that can't matter\"\n\n4. **Understand Dependencies**\n   - What other components does this need?\n   - What settings, config, environment?\n   - What assumptions does it make?\n\n### Phase 3: Hypothesis and Testing\n\n**Scientific method:**\n\n1. **Form Single Hypothesis**\n   - State clearly: \"I think X is the root cause because Y\"\n   - Write it down\n   - Be specific, not vague\n\n2. **Test Minimally**\n   - Make the SMALLEST possible change to test hypothesis\n   - One variable at a time\n   - Don't fix multiple things at once\n\n3. **Verify Before Continuing**\n   - Did it work? Yes → Phase 4\n   - Didn't work? Form NEW hypothesis\n   - DON'T add more fixes on top\n\n4. **When You Don't Know**\n   - Say \"I don't understand X\"\n   - Don't pretend to know\n   - Ask for help\n   - Research more\n\n### Phase 4: Implementation\n\n**Fix the root cause, not the symptom:**\n\n1. **Create Failing Test Case**\n   - Simplest possible reproduction\n   - Automated test if possible\n   - One-off test script if no framework\n   - MUST have before fixing\n   - Use the `superpowers:test-driven-development` skill for writing proper failing tests\n\n2. **Implement Single Fix**\n   - Address the root cause identified\n   - ONE change at a time\n   - No \"while I'm here\" improvements\n   - No bundled refactoring\n\n3. **Verify Fix**\n   - Test passes now?\n   - No other tests broken?\n   - Issue actually resolved?\n\n4. **If Fix Doesn't Work**\n   - STOP\n   - Count: How many fixes have you tried?\n   - If < 3: Return to Phase 1, re-analyze with new information\n   - **If ≥ 3: STOP and question the architecture (step 5 below)**\n   - DON'T attempt Fix #4 without architectural discussion\n\n5. **If 3+ Fixes Failed: Question Architecture**\n\n   **Pattern indicating architectural problem:**\n   - Each fix reveals new shared state/coupling/problem in different place\n   - Fixes require \"massive refactoring\" to implement\n   - Each fix creates new symptoms elsewhere\n\n   **STOP and question fundamentals:**\n   - Is this pattern fundamentally sound?\n   - Are we \"sticking with it through sheer inertia\"?\n   - Should we refactor architecture vs. continue fixing symptoms?\n\n   **Discuss with your human partner before attempting more fixes**\n\n   This is NOT a failed hypothesis - this is a wrong architecture.\n\n## Red Flags - STOP and Follow Process\n\nIf you catch yourself thinking:\n- \"Quick fix for now, investigate later\"\n- \"Just try changing X and see if it works\"\n- \"Add multiple changes, run tests\"\n- \"Skip the test, I'll manually verify\"\n- \"It's probably X, let me fix that\"\n- \"I don't fully understand but this might work\"\n- \"Pattern says X but I'll adapt it differently\"\n- \"Here are the main problems: [lists fixes without investigation]\"\n- Proposing solutions before tracing data flow\n- **\"One more fix attempt\" (when already tried 2+)**\n- **Each fix reveals new problem in different place**\n\n**ALL of these mean: STOP. Return to Phase 1.**\n\n**If 3+ fixes failed:** Question the architecture (see Phase 4.5)\n\n## your human partner's Signals You're Doing It Wrong\n\n**Watch for these redirections:**\n- \"Is that not happening?\" - You assumed without verifying\n- \"Will it show us...?\" - You should have added evidence gathering\n- \"Stop guessing\" - You're proposing fixes without understanding\n- \"Ultrathink this\" - Question fundamentals, not just symptoms\n- \"We're stuck?\" (frustrated) - Your approach isn't working\n\n**When you see these:** STOP. Return to Phase 1.\n\n## Common Rationalizations\n\n| Excuse | Reality |\n|--------|---------|\n| \"Issue is simple, don't need process\" | Simple issues have root causes too. Process is fast for simple bugs. |\n| \"Emergency, no time for process\" | Systematic debugging is FASTER than guess-and-check thrashing. |\n| \"Just try this first, then investigate\" | First fix sets the pattern. Do it right from the start. |\n| \"I'll write test after confirming fix works\" | Untested fixes don't stick. Test first proves it. |\n| \"Multiple fixes at once saves time\" | Can't isolate what worked. Causes new bugs. |\n| \"Reference too long, I'll adapt the pattern\" | Partial understanding guarantees bugs. Read it completely. |\n| \"I see the problem, let me fix it\" | Seeing symptoms ≠ understanding root cause. |\n| \"One more fix attempt\" (after 2+ failures) | 3+ failures = architectural problem. Question pattern, don't fix again. |\n\n## Quick Reference\n\n| Phase | Key Activities | Success Criteria |\n|-------|---------------|------------------|\n| **1. Root Cause** | Read errors, reproduce, check changes, gather evidence | Understand WHAT and WHY |\n| **2. Pattern** | Find working examples, compare | Identify differences |\n| **3. Hypothesis** | Form theory, test minimally | Confirmed or new hypothesis |\n| **4. Implementation** | Create test, fix, verify | Bug resolved, tests pass |\n\n## When Process Reveals \"No Root Cause\"\n\nIf systematic investigation reveals issue is truly environmental, timing-dependent, or external:\n\n1. You've completed the process\n2. Document what you investigated\n3. Implement appropriate handling (retry, timeout, error message)\n4. Add monitoring/logging for future investigation\n\n**But:** 95% of \"no root cause\" cases are incomplete investigation.\n\n## Supporting Techniques\n\nThese techniques are part of systematic debugging and available in this directory:\n\n- **`root-cause-tracing.md`** - Trace bugs backward through call stack to find original trigger\n- **`defense-in-depth.md`** - Add validation at multiple layers after finding root cause\n- **`condition-based-waiting.md`** - Replace arbitrary timeouts with condition polling\n\n**Related skills:**\n- **superpowers:test-driven-development** - For creating failing test case (Phase 4, Step 1)\n- **superpowers:verification-before-completion** - Verify fix worked before claiming success\n\n## Real-World Impact\n\nFrom debugging sessions:\n- Systematic approach: 15-30 minutes to fix\n- Random fixes approach: 2-3 hours of thrashing\n- First-time fix rate: 95% vs 40%\n- New bugs introduced: Near zero vs common\n\n## Examples\n\n### Example 1: Test Failure\nBug: \"Test fails with 'undefined function'\"\nPhase 1: Read error message, see exact line number, check if function exists\nPhase 2: Find working examples of similar functions\nPhase 3: Hypothesis: Function not exported\nPhase 4: Add export, test passes\n\n### Example 2: Performance Issue\nBug: \"Page loads slowly\"\nPhase 1: Reproduce consistently, measure load time, check network tab\nPhase 2: Find similar fast pages, compare\nPhase 3: Hypothesis: Large image not optimized\nPhase 4: Optimize image, measure improvement\n\n### Example 3: Integration Bug\nBug: \"API call fails intermittently\"\nPhase 1: Gather evidence at each layer (request → network → response)\nPhase 2: Find working API calls, compare\nPhase 3: Hypothesis: Race condition in state management\nPhase 4: Add proper async handling, test passes consistently\n\n## Troubleshooting\n\n### Issue: Tempted to \"just try a fix\"\nSolution: STOP. Complete Phase 1 first. Understanding root cause is faster than guessing.\n\n### Issue: Already tried 2+ fixes without success\nSolution: Return to Phase 1. Don't attempt Fix #3. Question the architecture instead.\n\n### Issue: Can't reproduce the bug\nSolution: Gather more data. Ask user for exact steps. Add logging. Don't guess without reproduction.","tags":["systematic","debugging","synapse","deve1993","agent-skills","ai-agents","ai-coding","ai-workspace","anti-poisoning","auto-learning-ai","automation","claude-code"],"capabilities":["skill","source-deve1993","skill-systematic-debugging","topic-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workspace","topic-anti-poisoning","topic-auto-learning-ai","topic-automation","topic-claude-code","topic-code-quality","topic-cursor","topic-developer-tools","topic-devops"],"categories":["Synapse"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/deve1993/Synapse/systematic-debugging","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add deve1993/Synapse","source_repo":"https://github.com/deve1993/Synapse","install_from":"skills.sh"}},"qualityScore":"0.453","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 7 github stars · SKILL.md body (10,993 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:14:14.411Z","embedding":null,"createdAt":"2026-05-18T13:21:47.634Z","updatedAt":"2026-05-18T19:14:14.411Z","lastSeenAt":"2026-05-18T19:14:14.411Z","tsv":"'-3':1376 '-30':1368 '1':103,209,217,368,492,582,682,774,979,1054,1193,1254,1346,1397,1407,1448,1487,1532,1552 '15':1367 '2':246,382,484,512,604,719,962,1174,1207,1260,1375,1420,1440,1458,1497,1544 '3':273,400,535,576,627,742,770,782,801,981,1176,1215,1265,1428,1465,1478,1504,1557 '4':293,416,423,557,636,650,673,755,795,1225,1273,1344,1434,1472,1512 '4.5':989 '40':1387 '5':434,789,799 '95':1280,1385 'activ':1190 'actual':417,753 'ad':1019 'adapt':937,1146 'add':315,645,902,1274,1315,1435,1513,1577 'address':723 'alreadi':148,960,1542 'alway':64 'analysi':486 'analyz':350,777 'api':309,1482,1500 'app':424 'appli':534 'approach':1042,1366,1374 'appropri':1267 'arbitrari':1326 'architectur':787,797,805,808,851,875,986,1178,1560 'ask':667,1572 'assum':552,1009 'assumpt':571 'async':1515 'attempt':40,69,214,793,862,958,1172,1555 'autom':690 'avail':372,1299 'backward':453,1306 'bad':460,467 'bash':366 'behavior':12,34,122 'boundari':321 'break':348 'broken':19,511,544,751 'bug':8,31,56,118,172,1077,1140,1152,1231,1305,1389,1400,1443,1480,1481,1567 'build':125,307,383,389,433 'bundl':740 'call':443,464,1308,1483,1501 'cannot':105 'care':221 'case':686,1285,1342 'catch':884 'caus':38,67,94,175,211,281,594,678,726,1070,1138,1168,1195,1240,1284,1323,1536 'chang':276,278,290,611,729,895,904,1200 'check':274,335,1091,1199,1415,1454 'ci':306 'claim':1356 'clear':587 'code':245,499 'codebas':502 'codesign':419 'commit':286 'common':1055,1394 'compar':513,1212,1463,1502 'complet':101,200,238,452,522,1155,1257,1351,1530 'compon':299,305,320,326,331,355,360,562 'condit':1329,1507 'condition-based-waiting.md':1324 'config':289,568 'confirm':1115,1221 'consist':248,1450,1519 'contain':231 'continu':630,853 'core':62 'could':280 'count':762 'creat':54,683,827,1227,1339 'criteria':1192 'data':269,324,329,436,953,1571 'databas':311 'debug':3,47,86,1084,1297,1363 'deep':441 'defense-in-depth.md':1314 'depend':288,559,1251 'develop':712,1337 'diagnost':316 'didn':154,637 'diff':284 'differ':292,537,540,547,817,939,969,1214 'directori':449,1302 'discuss':798,856 'document':1261 'doesn':21,758 'driven':711,1336 'echo':370,375,385,394,403 'elsewher':830 'emerg':136,1078 'encount':6 'enter':325 'env':386,391 'environ':398,569 'environment':291,1248 'environment/config':333 'error':14,28,219,226,244,439,1197,1271,1409 'especi':131 'everi':262,527,546 'evid':295,344,351,1020,1202,1489 'exact':233,257,1412,1575 'exampl':361,495,1211,1395,1396,1423,1439,1477 'excus':1057 'exist':1418 'exit':330 'export':1432,1436 'extern':1253 'fail':354,429,684,717,803,869,983,1340,1402,1484 'failur':10,45,74,117,126,1175,1177,1399 'fast':1074,1461 'faster':192,1086,1538 'file':242 'find':36,65,412,474,487,493,1209,1311,1321,1421,1459,1498 'find-ident':411 'first':96,1096,1099,1124,1381,1533 'first-tim':1380 'fix':29,41,43,50,70,72,91,107,143,151,153,188,216,314,477,491,622,647,675,705,722,744,757,765,794,802,811,819,826,854,864,888,920,946,957,964,982,1027,1100,1116,1119,1128,1162,1171,1184,1229,1353,1371,1373,1383,1527,1545,1556 'flag':877 'flow':437,954 'follow':880 'form':583,640,1217 'four':196 'framework':701 'frustrat':1040 'fulli':160,532,925 'function':1405,1417,1426,1430 'fundament':834,838,1033 'futur':1277 'gather':267,294,343,1021,1201,1488,1569 'get':26 'git':283 'grep':392 'guarante':183,1151 'guess':138,272,1023,1089,1540,1581 'guess-and-check':1088 'handl':1268,1516 'happen':261,1007 'haven':99 'help':669 'hour':1377 'howev':548 'human':859,991 'hurri':181 'hypothesi':577,585,614,642,870,1216,1224,1429,1466,1505 'ident':376,377,379,393,395,413,421 'identifi':353,536,727,1213 'imag':1468,1474 'impact':1361 'implement':517,521,674,720,824,1226,1266 'improv':738,1476 'incomplet':1287 'indic':807 'inertia':847 'inform':780 'instead':1561 'instrument':317 'integr':127,1479 'intermitt':1485 'introduc':1390 'investig':95,212,357,891,948,1098,1243,1264,1278,1288 'iron':88 'isn':1043 'isol':1135 'issu':61,115,128,163,168,752,1059,1067,1245,1442,1521,1541,1562 'keep':469 'key':1189 'keychain':404,409 'know':655,666 'larg':1467 'later':892 'law':89 'layer':339,364,367,381,399,415,428,1319,1492 'let':918,1160 'letter':77 'line':240,528,1413 'list':408,545,945 'list-keychain':407 'll':911,936,1111,1145 'load':1445,1452 'locat':496 'log':322,327,1578 'long':1143 'm':25,736 'main':943 'make':137,574,607 'manag':185,1510 'mani':764 'manual':912 'mask':59 'massiv':821 'matter':556 'mean':974 'measur':1451,1475 'messag':220,1272,1410 'method':581 'might':929 'minim':606,1220 'minut':1369 'monitoring/logging':1275 'multi':298,363 'multi-compon':297 'multi-lay':362 'multipl':150,304,623,903,1127,1318 'must':199,702 'near':1391 'need':565,1064 'network':1455,1494 'new':55,287,641,779,813,828,966,1139,1223,1388 'next':207 'note':239 'number':241,1414 'obvious':145 'often':230 'one':141,615,695,728,955,1169 'one-off':694 'optim':1470,1473 'origin':462,1312 'overview':48 'page':1444,1462 'part':1294 'partial':1149 'partner':860,992 'pass':746,1234,1438,1518 'past':225 'patch':58 'path':243 'pattern':485,489,518,531,806,837,931,1103,1148,1181,1208 'perform':123,1441 'phase':102,197,202,208,483,575,635,672,773,978,988,1053,1188,1343,1406,1419,1427,1433,1447,1457,1464,1471,1486,1496,1503,1511,1531,1551 'place':818,970 'poll':1330 'possibl':610,688,693 'pressur':135 'pretend':664 'previous':152 'principl':63 'probabl':916 'problem':124,809,944,967,1159,1179 'proceed':204 'process':80,881,1065,1072,1082,1236,1259 'product':120 'propag':334 'proper':716,1514 'propos':106,313,949,1026 'prove':1125 'question':785,804,833,984,1032,1180,1558 'quick':57,142,456,887,1186 'race':1506 'random':49,1372 'rate':1384 'ration':1056 're':178,776,996,1025,1038 're-analyz':775 'read':218,235,519,526,1153,1196,1408 'real':1359 'real-world':1358 'realiti':1058 'recent':275,285 'red':876 'redirect':1003 'refactor':741,822,850 'refer':515,520,1141,1187 'relat':1331 'reliabl':253 'replac':1325 'reproduc':247,266,1198,1449,1565 'reproduct':689,1583 'request':1493 'requir':35,820 'research':670 'resolv':754,1232 'respons':1495 'retri':1269 'return':771,976,1051,1549 'reveal':426,812,965,1237,1244 'rework':184 'right':1106 'root':37,66,93,174,210,593,677,725,1069,1167,1194,1239,1283,1322,1535 'root-cause-tracing.md':446,1303 'run':340,905 'rush':182 'save':1131 'say':656,932 'scientif':580 'script':384,390,402,698 'secret':371,430 'secur':406,410 'see':445,898,987,1048,1157,1164,1411 'seem':144,169 'servic':310 'session':1364 'set':378,567,1101 'share':814 'sheer':846 'show':345,1014 'sign':308,401,418,420 'signal':994 'similar':497,507,1425,1460 'simpl':170,171,1061,1066,1076 'simplest':687 'singl':584,721 'skill':713,1332 'skill-systematic-debugging' 'skim':525 'skip':166,224,907 'slowli':1446 'small':549 'smallest':609 'solut':234,950,1528,1548,1568 'sound':839 'sourc':476,479 'source-deve1993' 'specif':359,601 'spirit':84 'stack':236,444,1309 'start':1109 'state':336,405,586,1509 'state/coupling/problem':815 'step':258,788,1345,1576 'stick':842,1122 'stop':761,783,831,878,975,1022,1050,1529 'stuck':1039 'success':1191,1357,1547 'superpow':708,1333,1347 'support':1289 'symptom':42,71,482,681,829,855,1036,1165 'system':300,302,365 'systemat':2,46,190,1083,1242,1296,1365 'systematic-debug':1 'tab':1456 'technic':114 'techniqu':455,1290,1292 'tempt':139,1522 'test':9,116,579,605,613,685,691,697,710,718,745,750,906,909,1113,1123,1219,1228,1233,1335,1341,1398,1401,1437,1517 'test-driven-develop':709,1334 'theori':1218 'thing':624 'think':589,886 'thrash':194,1092,1379 'time':52,134,263,619,732,1080,1132,1250,1382,1453 'timeout':1270,1327 'timing-depend':1249 'top':649 'topic-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workspace' 'topic-anti-poisoning' 'topic-auto-learning-ai' 'topic-automation' 'topic-claude-code' 'topic-code-quality' 'topic-cursor' 'topic-developer-tools' 'topic-devops' 'trace':237,435,454,470,952,1304 'tri':149,768,894,961,1094,1525,1543 'trigger':15,251,1313 'troubleshoot':1520 'truli':1247 'ultrathink':1030 'undefin':1404 'under':60 'understand':161,529,558,660,926,1029,1150,1166,1203,1534 'unexpect':11,33,121 'unset':380 'untest':1118 'us':1015 'use':4,110,111,129,706 'user':1573 'v':414 'vagu':603 'valid':1316 'valu':461,468 'var':387 'variabl':616 've':147,1256 'verbos':422 'verif':1349 'verifi':332,628,743,913,1011,1230,1352 'verification-before-complet':1348 'version':457 'violat':75,82 'vs':852,1386,1393 'want':186 'warn':228 'wast':51 'watch':1000 'without':92,796,947,1010,1028,1546,1582 'work':23,156,494,498,504,542,633,639,760,901,930,1045,1117,1137,1210,1354,1422,1499 'workflow':369,374,431,432 'world':1360 'write':597,715,1112 'wrong':874,999 'x':590,661,896,917,933 'y':596 'yes':634 'zero':1392","prices":[{"id":"6997b920-a4eb-404f-9408-eb2245eb8126","listingId":"31c27569-823c-43fb-9bd1-4190d40ae857","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"deve1993","category":"Synapse","install_from":"skills.sh"},"createdAt":"2026-05-18T13:21:47.634Z"}],"sources":[{"listingId":"31c27569-823c-43fb-9bd1-4190d40ae857","source":"github","sourceId":"deve1993/Synapse/systematic-debugging","sourceUrl":"https://github.com/deve1993/Synapse/tree/main/skills/systematic-debugging","isPrimary":false,"firstSeenAt":"2026-05-18T13:21:47.634Z","lastSeenAt":"2026-05-18T19:14:14.411Z"}],"details":{"listingId":"31c27569-823c-43fb-9bd1-4190d40ae857","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"deve1993","slug":"systematic-debugging","github":{"repo":"deve1993/Synapse","stars":7,"topics":["agent-skills","ai-agents","ai-coding","ai-workspace","anti-poisoning","auto-learning-ai","automation","claude-code","code-quality","cursor","developer-tools","devops","fullstack-development","multi-agent-systems","nextjs","opencode","persistent-memory","self-improving","telegram-bot"],"license":"other","html_url":"https://github.com/deve1993/Synapse","pushed_at":"2026-05-15T21:34:01Z","description":"Self-improving AI brain for Claude Code & Desktop — 28 MCP tools, 253 skills, collective memory, project tracking, work logs. One server, all your sessions share the same knowledge. Deploy on Coolify in 2 minutes.","skill_md_sha":"5e6bd858b7e0ef88f6ae331a4082712e82504d16","skill_md_path":"skills/systematic-debugging/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/deve1993/Synapse/tree/main/skills/systematic-debugging"},"layout":"multi","source":"github","category":"Synapse","frontmatter":{"name":"systematic-debugging","description":"Use when encountering any bug, test failure, unexpected behavior, or error. Triggers on: \"it's broken\", \"this doesn't work\", \"I'm getting an error\", \"fix this bug\", any unexpected behavior. Requires finding root cause before attempting fixes. Symptom fixes are failure."},"skills_sh_url":"https://skills.sh/deve1993/Synapse/systematic-debugging"},"updatedAt":"2026-05-18T19:14:14.411Z"}}