Hi, I'm Shingo Suzuki, also known as Suzushin.
Chess is one of my hobbies. But I often find myself frustrated because I can't seem to win as much as I'd like.
One thing I particularly struggle with is noticing tactical opportunities and threats during actual games.
Even when a move seems obvious in hindsight, I miss it over the board. I started wondering, “Is there some way I could cut down on these oversights?”
Then I thought, “What if I could practice using positions where I actually missed something? Wouldn't that connect more directly to my games?”
So I decided to try building an app myself. The result was a web app called Caltrilo.
When tactics puzzles don't carry over to actual games
Recently, I started a project to work toward becoming a chess grandmaster. The idea is to start as a complete beginner, improve step by step, and ultimately aim for the GM title.
As part of that, I started playing chess games again. But things haven't been going quite as I'd hoped.
I've hung my queen in favorable positions and missed mate in one. More than once, I've thought, “I can see it now that I'm looking back. Why couldn't I spot it during the game?”
Of course, I also practice solving tactics puzzles. But something about that started to bother me.
When I'm solving a puzzle, I can look for the right move. In an actual game, though, I don't even notice that there's a tactic to look for.
For me, that seems to be quite a gap.
With a typical tactics puzzle, you start knowing that there's something in the position. In a real game, nobody tells you, “Here's your puzzle.”
And at my current level, a lot of my mistakes are much simpler than the elegant tactics you find in study material.
“I'm practicing puzzles, but that practice isn't connecting very well with the mistakes I make in my own games.”
That was the problem I had in mind when I decided to build Caltrilo.
What is Caltrilo? A web app that turns your games into puzzles

In a nutshell, Caltrilo is a web app that turns positions from your own game records into tactics puzzles for review. Its name is a playful abbreviation of “Chess Analyze Learn Train Improve Loop.” I used the “Lo” from “Loop” for the ending.
It's available as a web app, so you can use it wherever you have an internet connection. It also supports PWA installation. With a compatible browser, you can install it as an app on your computer or phone. That lets you use the app's basic features even when you're offline.
You can use it for free, with a limit of five puzzles per day. A paid plan lets you solve an unlimited number of puzzles.
You import your games from PGN, Chess.com, or Lichess. Once imported, the games are analyzed automatically and puzzles are generated. Stockfish evaluates the positions, and the app creates puzzles from positions where it identifies a mistake or an inaccurate move by you, or a mistake by your opponent.
https://caltrilo.suzushinlab.com/
Why I wanted to build it
I started with this thought: What if the positions I got wrong in my own games could be my best study material?
Solving regular tactics puzzles is useful, of course. But those positions usually come from somebody else's games.
My own game records, on the other hand, contain the exact positions where I failed to notice something:
“This is where I lost my queen.”
“I didn't see this mate in one.”
“I had a chance here, but I missed it.”
Those are the positions I personally failed to recognize during a game.
What if I turned them into puzzles and solved them repeatedly? Perhaps I'd start remembering the patterns I tend to miss. And when a similar position came up in another game, perhaps I'd be more likely to think, “There might be something here.”
That was my hypothesis.
Of course, I don't yet know whether this will actually help me miss fewer opportunities in real games. That's something I want to test by using Caltrilo myself.
Still, opening each game record, analyzing it with the Stockfish chess engine, finding the positions where I went wrong, and organizing them for later review is, honestly, quite a hassle.
If I had to do all of that by hand after every game, I probably wouldn't keep it up.
“So why not make an app where I can just import a game, and it finds the positions where I went wrong and saves them as tactics puzzles?”
That was the idea.
Fortunately, I know a bit of programming. Thinking, “Then why don't I try making it myself?” was how Caltrilo's development began.
I think of chess study as four broad areas: playing games, tactics, opening theory, and review and analysis.
Of those, Caltrilo currently handles tactics and review and analysis.
I didn't want a game to end with just the result. I wanted to turn its record into material for my next study session, then revisit the weaknesses I found there.
My aim was to make it as easy as possible to keep going through this learning cycle: play → analyze → generate puzzles → review → play again.
How to use it: from importing a game to solving puzzles
Using Caltrilo isn't particularly complicated. Here are the steps:
- Get your game record ready.
- Import it into Caltrilo.
- Let the app analyze the game and generate puzzles automatically.
- Solve the puzzles.
First, you'll need your own game record. Caltrilo supports PGN, Chess.com, and Lichess. For Chess.com and Lichess, you can import your games by entering your username.
Analysis starts automatically after you import a game. Wait a little while for the puzzles to be generated, and then you're ready to solve them.



The puzzles also support spaced repetition. A puzzle comes back several times at intervals, so you can review it again around the time you might be starting to forget it.
Trying puzzles generated from one of my own games
You might be wondering what kinds of puzzles the app actually generates. So I tried creating some from my own game records.
Here's an example. It's White to move. What is the best move in this position? Have a think before reading on.

In the actual game, I played e4 here, but apparently that was a mistake. I thought it looked reasonable because it attacked my opponent's bishop. But after looking at the best move, I could see that it led to a more favorable continuation!
The best move in this position was Bc4. Did you find it?
Because the puzzle comes from a real game of mine, the position feels familiar. I can see how things might have developed if I'd played the best move.
Even so, it certainly reminded me that I still make a lot of mistakes.
What I worked on, and what was difficult
I used Codex to develop Caltrilo. My approach was to decide on the basic specifications first, then move on to implementation. Codex wrote most of the code, so this was what people call vibe coding.
Naturally, it didn't all work on the first try. Dealing with bugs and errors was quite a challenge.
So I split the features I wanted to implement into several phases. I worked through them gradually, adding things step by step. When an error came up, I'd give Codex the message and have it fix the problem. After several rounds of that back-and-forth, the app took its current shape.
If I'd programmed everything on my own, I think building an app like this might have taken me several months. With Codex, I was able to do it in just a few days. The power of AI really is something.
For game analysis, I use Stockfish, a well-known chess engine. The app analyzes games and creates puzzles from positions identified as mistakes. Choosing how deeply the engine should search took some thought, and I adjusted it several times.
What I'd like to do next
One feature I'd like to add is the ability to play against an AI, rather than only reviewing games. That would let the app cover everything from playing to reviewing. I'm planning to add that feature soon, so I hope you'll look forward to it.
I'm also thinking of posting regular updates on my GM challenge. In those updates, I'd like to share the results of reviewing my games with Caltrilo. If I could get better at chess using an app I made myself, wouldn't that be wonderful?
Turning my own mistakes into study material
In this article, I've given a brief introduction to Caltrilo, a web app that automatically generates tactics puzzles from your own game records and lets you solve them.
I built it around a simple idea: Tactics puzzles drawn from my own games might be the puzzle collection that suits me best.
At first, I was making it just for myself. But since I'd already built it, I decided to share it publicly. I hope it might be useful to you too.
Please give the free version a try. And if you like it, I hope you'll consider the paid version as well.
If you do use it, I'd love to hear what you think in the comments.
It would make me happy to see this grow into an app that more and more people enjoy using!
https://caltrilo.suzushinlab.com/
Update: October 13, 2026
I've added AI play and other useful features to Caltrilo. You can read more about them in this article:
