Exploring Shogi GUI programs and Engines available for free
Programs listed here can read and write Shogi records available through various internet source (Kif, KIFU, KI2, CSA, PSN etc.,)
You can also create your own board situation and output board graphics to share your games with others.
All of them come bundled with a Shogi engine or two.
In recent years, most shogi playing applications are made up of two parts. Namely, "GUI part" and "Engine part."
This makes it easy for backend (Engine) developer to focus on developing engine part only while frontend (GUI) developer can polish up the user experience.
This also means, although each GUI part comes with a select Shogi Engine(s), you can pick any other engine and pair with your choice of GUI program. This is made possible with standardized communication protocol called USI.
What is USI protocol? It stands for Universal Shogi Interface. This was inspired by UCI, the Universal Chess Interface protocol.
As a matter of fact, if you are familiar with Chess program such as Arena, you should feel at home with this paradigm. Only thing is that instead of UCI or WinBoard, The Shogi variant uses USI to communicate.
USI was proposed by Tord Romstad. You can still read a draft of his proposal on this link. Japanese version of the spec with some extention, which is implemented by Shogidokoro author can be seen here on his site in Japanese.
There are three notable Shogi GUI programs. There may be more but those are the ones you can easily find on the Internet.
| GUI Name | Default Engine | Download site | File format | Adding Engines |
|---|---|---|---|---|
| BCM Games | Spear | ChessVariants.com | All kinds | settings.ini |
| ShogiDokoro | LesserKai(Lesserpyon) | Shogidokoro Download | CSA,KIF,KI2,PSN | Dialog(Engine Manager) |
| ShogiGUI | GPSShogi | ShogiGUI home page | KIF,JPEG | Dialog(Engine Settings) |
| GUI Name | BCM Games |
| Default Engine | Spear |
| Download Sites | ChessVariants.com |
| File Format | All kinds |
| Adding engines | settings.ini |
| GUI Name | ShogiDokoro |
| Default Engine | LesserKai(Lesserpyon) |
| Download Sites | Shogidokoro Download |
| File Format | CSA,KIF,KI2,PSN |
| Adding engines | Dialog(Engine Manager) |
| GUI Name | ShogiGUI |
| Default Engine | GPSShogi |
| Download Sites | ShogiGUI home page |
| File Format | KIF,JPEG |
| Adding engines | Dialog(Engine Settings) |
ShogiDokoro menu system will default to English in Non-Japanese system.
ShogiGUI language settings can be changed from Tools menu and then by restarting the program.
BCM games default to system settings for its language.
[2025 Edit]
There is a *new Kid on the block* called ShogiHome. You can download a executable file from their website
The GUI is written on Electron framework and is open source. Source code is available on their github repository
It comes with beginners level shogi engines built in. It also has a nice interface to manage additional Shogi Engines.
Since it is Electron, you can install it on Windows, Mac or Linux.
It also supports touch display interface.
Currently, this is my recommended Shogi GUI over the three programs I listed above.
Shogi Engines
Link of Various Shogi Engines are available at Shogidokoro site
There are additional resources in ShogiHome wiki's links page. These are Japanese pages, so keep one of translation extensions of your browser handy.
There are many engines listed on the page, ShogiHome's reference also lists engines that are behind paywall.
For beginners to play against, Shogidokoro's LesserKai or Shogihome's built in engines gives you a gentle introduction to Shogi. Once you are comfortable with it, you can replace the engine with stronger engines, such as Bonanza.
Bonanza is a standalone program and it's GUI is rather primitive.
Bonadapter middleware makes Bonanza USI compatible. All you need is add Bonadapater in Bonanza folder and select Bonadapter from Shogidokoro's engine manager. Once setup, set Bonanza's strength to the weakest by adjusting its evaluation depth to 1. Work it up to more challenging settings as you progress.
For BCM games, bundled engine is Spear. The strength level is set to 10 (the strongest) and this is too strong for someone who just started playing. You can adjust the level by opening engines_0 configuratoin file (which is for Engine 1) and find "SpearLevel Value 10" line for [Engines:Spear2008v1.4(included)] section. Change the value of 10 to lesser number of your choice. Now the game will be more reasonable when you start a game against Spear from Engine 1.
You can use Spear in other program. download the "spear for Shogidokoro" zip file. Despite the name, this file works for all programs. extract all files to new folder. In ShogiHome, all you need to do is to go to engine management, select add button and point to executable file. The level settings becomes much easier through it's engine management dialog. Next time you hit play button, the engine should be listed in the selection box.
If you are looking for free and "Most formidable" engine as of 2025, It is either Suishou5(水匠5) or Hao, but these are only half of the engine ("eval" binary). For other half of the engine ("explore" executable) , you actually need to download Yaneuraou. I know it's confusing so we will add another page to explain the detail of this set up soon. (or you can take a look at Yaneuraou's installation instruction page and solicit AI translation to forge ahead)
If your PC is a top of the line (powerful CPU and powerful graphics card), then consider Deep Learning Shogi (DLShogi) The latest dlshogi version isn't publicily available and can only be used through 棋神アナリティクス (Kishin Analytics) which is a service of Shogiwars app. Public version (2022 seems the latest) is in their github release page. According to the release note, it uses TensorRT. This suggests you will need Graphics card with Nvidia GPU. Cards with other manufacturers GPU might work but performance is most likely be worse. Because of this limited appolicability, we mention the availability but will not covering dl type engines on this site.
UpdatedThis page was originally created 2 years, 8 months ago and last updated 1 month ago