协作头脑风暴
brainstorming
在实现前澄清需求、探索设计选择,并形成清晰的开发方向。
diagnosing-bgs-problems【开发与工程】Use when a BGS modded game has CTD, crash log, FPS drop, stuttering, freeze, performance, won't start, 崩溃, 掉帧, 卡顿 symptoms and the user needs a symptom-first diagnostic ladder. NOT for proactive post-install testing; use testing-bgs-modpack.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Crashes and FPS collapses are not solved by ritual. A diagnostic pass starts with the symptom the player can reproduce, turns it into evidence, and only then chooses the tool or fix. Scanner output, last-installed-mod panic, and generic optimization lists are inputs to investigate, not verdicts to obey.
+----------------------------------------------------------------------------------------------+
| Diagnose the symptom before prescribing the cure: reproduce it, collect evidence, isolate the |
| trigger, then assign root cause. A scanner's mod name is a clue, never the diagnosis. |
+----------------------------------------------------------------------------------------------+
Use this skill when the primary question is: "It crashed / FPS tanked / froze / won't start — what is the diagnostic ladder?"
Do not use this skill as the primary skill for adjacent intents:
| User intent | Primary skill |
|---|---|
| "I installed a batch; how do I proactively verify it before playing?" | testing-bgs-modpack |
| "Which record wins / why is this override wrong / should I patch or reorder?" | xedit-conflict-audit |
| "Is this archive/loose asset conflict causing the problem?" | using-bgs-archive, then KB for game-specific asset/precombine facts |
| "Should this mod be in the pack at all?" | evaluating-bgs-mods |
Terminal handoff: once the ladder identifies the root-cause class, stop diagnosing and hand off to the narrow tool skill: xedit-conflict-audit for record-level evidence, using-bgs-archive for asset/archive evidence, writing-bgs-load-order for plugin enablement/order, or the relevant per-game KB record for crash-log signatures and console-tool routes.
Use when:
Do not use when:
testing-bgs-modpack.digraph diagnosing_bgs_problems {
rankdir=TB;
node [shape=box];
start [shape=doublecircle, label="Symptom reported\nCTD / freeze / FPS drop / won't start"];
classify [label="Classify symptom\ncrash? freeze? low FPS? stutter? missing scene? startup failure?"];
kb [label="Query KB for current game\nlogger/signature/tool facts\n(do not rely on memory)"];
reproduce [label="Reproduce or pin route\nwhere, action, save, cell, menu, newest batch"];
evidence [label="Collect evidence\ncrash log, repeat count, measured bottleneck, isolated trigger"];
weak [shape=diamond, label="Only weak signal?\nscanner blame / last mod / one boot"];
strengthen [label="Strengthen signal\nrepeat, bisect batch, compare clean route, inspect exact asset/record/cell"];
split [shape=diamond, label="Root-cause class?"];
engine [label="Engine/performance bottleneck\nmeasure, compare, query game KB"];
record [label="Record/plugin conflict\nhand off to xedit-conflict-audit"];
asset [label="Asset/archive/loose issue\nhand off to using-bgs-archive + KB"];
install [label="Missing prerequisite / loader / startup setup\nquery KB or setup skill"];
verdict [shape=doublecircle, label="Diagnostic verdict\nroot cause + evidence + next narrow action"];
start -> classify -> kb -> reproduce -> evidence -> weak;
weak -> strengthen [label="yes"];
strengthen -> evidence;
weak -> split [label="no"];
split -> engine;
split -> record;
split -> asset;
split -> install;
engine -> verdict;
record -> verdict;
asset -> verdict;
install -> verdict;
}
This skill teaches the diagnostic posture. It does not carry game-specific crash signatures, logger names, console-tool commands, or current community tooling in the body.
Always query the KB before assigning meaning to crash-log or performance evidence:
bgs_kb_query({
query: "<game> crash log scanner attribution triage",
domains: ["debugging"],
games: ["<current game>"]
})
bgs_kb_query({
query: "<symptom> diagnostic ladder performance crash freeze stutter",
domains: ["debugging", "engine", "archive-precedence", "load-order"],
games: ["<current game>"]
})
If the KB has no record for the current game's logger or signature, say so as [GAP], then proceed only with game-agnostic evidence: reproducibility, recent-change window, isolation/bisect, and readback from the appropriate tool surface.
[STOP] If you are about to write a specific crash logger name, signature phrase, or console command into this skill body, STOP. That belongs in a KB record. This skill may instruct the agent to query for those facts; it must not fossilize them.
using-bgs-archive and query KB for asset precedence or precompute/precombine-style facts.xedit-conflict-audit and prove the winner/override state instead of changing order by vibes.NOT DIAGNOSED YET and name the missing evidence; do not downgrade uncertainty into a confident fix.| Thought | Reality |
|---|---|
| "The scanner blamed mod X, so remove X." | Scanner attribution is heuristic. Treat it as a lead until the route, log pattern, or readback proves it. |
| "It booted once, so fixed." | Boot success does not prove the original crash/FPS route. Re-run the symptom route. |
| "The last installed mod caused it." | The last mod is context, not root cause. Load order, stale data, assets, and older conflicts can surface only after a new batch. |
| "FPS is low; lower graphics settings first." | BGS engines can be CPU/render-command-bound. Query KB and measure the actual bottleneck before tuning the wrong side. |
| "No crash log means no diagnosis." | Absence of a log is itself evidence. It may point to startup/loader/native-runtime failure; query KB and isolate. |
| "I can fix this with a generic optimization list." | Lists are prescriptions. Diagnosis starts from the symptom and evidence, then picks the narrow fix. |
| "The user wants speed, so skip the route." | BB84's posture is patience. Skipping the route is how the same failure returns under a different name. |
| Excuse | Reality |
|---|---|
| "Crash-log tools exist so I don't have to think." | Logs reduce search space; they do not decide causality for you. |
| "Bisecting is slow; I can guess from experience." | Guessing burns more time when the first confident prescription is wrong. Bisect only the relevant recent window, but bisect it. |
| "If disabling one mod stops the crash, that mod is bad." | It may be the trigger, a dependency victim, an asset provider, or the first mod exposing a deeper conflict. Prove the class. |
| "Optimization mods are harmless; install them all." | Unnecessary changes add variables. If the symptom is not the bottleneck they address, they muddy the diagnosis. |
| "The tool name is enough context." | Tool names are game-specific facts. Query KB for current meaning, version assumptions, and known limitations. |
| "The player only wants the game working, not a report." | The shortest useful report is still evidence-based: symptom, proof, root-cause class, next action. Anything less is ritual. |
This section reflects an experienced curator's perspective, distilled from BB84's BGS modpack curation work. It is RECOMMENDED guidance, not enforced rule. If the user has a working diagnostic process they prefer, the agent SHOULD respect that. The objective rules in this skill body still apply.
Recommended diagnostic mindset:
See KB record mod-evaluation.bb84-curator-perspective-reference for the full
curator essay.
testing-bgs-modpack — proactive post-install verification before a crash/performance symptom exists.xedit-conflict-audit — record-level root causes, winning overrides, and conflict severity after diagnosis points at plugin data.using-bgs-archive — archive/loose-file asset root causes; query KB for game-specific asset/precompute/precombine facts.writing-bgs-load-order — plugin enablement and load-order file mechanics when diagnosis points at plugin ordering.bgs_kb_query — required for per-game crash-log toolchains, scanner limitations, console-tool routes, engine signatures, and current community facts.