How to find your chess weaknesses from your own games
Your weaknesses are already written down - in the games you have played. Collect real games, check every move against an engine, keep only the moves that cost something measurable, group them by what the position was asking for, and rank by how often each group happens. What is left is a training list you did not have to guess at.
Start with games, not with a feeling
Most players can name a weakness in one sentence. I hang pieces. I am bad at endgames. I fall apart in time trouble. Very few of those sentences survive contact with the actual games, because the feeling comes from the games you remember, and you remember the painful ones rather than the frequent ones. A weakness worth training is one that happens often, against the opponents you actually face - not one that happened once in a game that still stings.
So the first step is unglamorous: gather games. Take them from wherever you play, or from a PGN you saved after a club game. Do not keep only the losses. A win in which you were lost for fifteen moves carries more information than a clean win, and a draw you should have won carries more than either.
Decide what counts as an error
An error is not "a move the engine would not have played". An engine outplays you on nearly every move, and if you mark every difference you finish with three hundred marks and no signal. What counts is a move that changed the assessment of the position: one that turned a winning position into an equal one, or an equal one into a lost one. That is measurable - the evaluation before the move, the evaluation after it, and the size of the drop between them.
Mikhail replays each game move by move with a chess engine and records only the moves where the loss is real. Every one is stored with the game it came from, the move number, the move you played and the move the position was asking for. Nothing said about your play afterwards is allowed to disagree with that record.
Group the errors by what the position asked for
A list of forty errors is not yet a weakness list. The useful grouping is by what the position asked of you, not by which piece went missing. "Queen hung on move 22" and "knight hung on move 9" are the same weakness if both times you moved without checking what your opponent's last move attacked. They are different weaknesses if one was a calculation error at the end of a forcing line and the other was a one-move oversight in a quiet position.
Mikhail keeps a fixed set of named categories and refuses to guess between them: evidence it cannot attribute to one of them is filed as unclassified, and unclassified can never become your top weakness. That sounds like a small piece of bookkeeping. It is the difference between a diagnosis and a horoscope, because a system that always has an answer will hand you one whether or not it has grounds.
Rank by count, and say so when the count is thin
Once the errors are grouped, ranking is arithmetic: which group happens most often, and how much it costs when it does. Two things reliably corrupt that arithmetic. The first is recency - last night's loss feels like your main problem and is usually just your most recent one. The second is small numbers, because three events are a coincidence and not a habit.
The coach report is built from counted events and shows the count behind each line, with the move numbers you can go and look at yourself. When a category has too little evidence to rank, it says that instead of filling the slot with the best available guess. Below two engine-reviewed games it says nothing at all, which is the correct thing to say.
Doing this in Mikhail
Import your recent games by giving Mikhail your Chess.com or Lichess username, or paste a single PGN from anywhere. Each game gets an engine pass, and each real error becomes a counted event tied to that game and that move. The coach report then ranks the categories that have evidence behind them and shows you the moments - move number, what you played, what the position asked for.
The loop closes on the training page, where positions you actually misplayed come back to you as drills. That is the practical reason to find a weakness precisely rather than poetically: a vague weakness cannot be trained, and a counted one can.
When the answer is boring, it is probably right
For most club players the honest answer is dull. The top item is a plain tactical oversight, it lives in the middlegame, and it clusters at the moments just after the position changed. Dull is good news, because the fix is available immediately: slow down at exactly the points your own record says you are quickest and most wrong.
If the answer is genuinely unclear - nothing ahead of anything else, every count thin - that is a real result too, and it means what thin evidence always means. Play more games, review them, and ask again in a month. An ordering invented from four events would tell you less than the honest silence does.
Questions
How many games do I need before the answer means anything?
Mikhail's coach report stays silent until at least two games have been engine-reviewed, and it prints the count behind every claim so you can judge the strength of it yourself. As a rule of thumb, ten reviewed games start to show a shape and twenty make the ordering worth acting on. Below that, read the individual game reviews rather than the ranking.
Should I only review the games I lost?
No. Reviewing only losses biases the list towards the ways you lose and hides the ways you nearly lost. Include wins and draws - a move that cost something is marked the same way whatever the final result was.
Is a bad engine evaluation the same as a weakness?
No. An evaluation is a fact about one position. A weakness is a repeated cause across many positions. A single move can be terrible and tell you nothing about your play; the same kind of move in eight games is the thing worth training.
Can I do this by hand, without any software?
Yes, and it is a good exercise. Play through your last twenty games, write down every move you would take back and one sentence about why, then sort the sentences into piles. What software adds is the engine check and the arithmetic, not the insight.
Try it on your games
The part of Mikhail this guide describes is Coach report, which needs a free account — your games and your counts have to live somewhere.
