AI Coding with IBM Bob: Building a JavaFX Chess Game Live
with Ryan JarvinenWe used IBM Bob's 40-coin trial budget to build a JavaFX chess game from scratch. The prompt enhancement and custom modes impressed, but we ran out of tokens before the tests could be reactivated.

YouTube
AI Coding with IBM Bob: Building a JavaFX Chess Game Live
Load YouTube video
This video is embedded from YouTube and will only be loaded after your consent. When loading it, personal data may be transmitted to YouTube or Google and cookies may be set.
More details are available in the privacy policy.
Project Source
Working Repository
Explore prompts, instructions, and examples used in the live modernization workflow.
Open repositorySession Timeline
- 00:00Introduction
- 01:30Background on IBM Bob
- 02:56Roadmap and plan for the session
- 04:15JavaFX skill
- 05:36Bob's modes
- 10:24Bob's settings
- 13:30Prompting with prompt enhancement
- 23:50Context window
- 25:00Finalizing the plan
- 31:55Executing Code mode
- 42:25Using Orchestrator mode
- 54:20Bob Shell
- 56:11IBM Bob documentation
- 56:40Bob's modes and custom modes
- 57:50Prompting and executing
- 01:11:53Having a runnable application
- 01:14:00Plans as Markdown files
- 01:22:40Evaluating the tests
- 01:39:20Repository and custom modes
- 01:43:15Bob Hackathon and JCON
- 01:46:40Checking outputs
- 01:53:30Running out of budget!
- 01:58:50Last look at the unfinished application
- 02:01:30Conclusion
Ryan Jarvinen joined me for a live session exploring IBM Bob, IBM's AI-first development environment. The goal was straightforward: use a limited trial budget of 40 Bobcoins to build a functional JavaFX chess game from scratch and see how far an AI IDE can realistically take a project.
What Is IBM Bob?
Bob is IBM's AI-first IDE, built for chat-driven development, real-time code review, and security-aware refactoring. It claims strong first-class Java support for tasks like modernization and large-scale refactoring. One notable aspect: Bob runs on IBM's own LLM internally, and you do not see which model is actually used.

We went in with a practical question: does that promise hold up during unscripted live development?
What We Observed
Prompt Enhancement: Slow, but Powerful
Bob has a feature that takes your prompt and enriches it before sending it to the model. Enhancement takes a few seconds, but the result is a much more detailed prompt that you can review and refine before it goes to the model. The results were noticeably better when it was active. For a planned development session that is a good trade-off, but for quick back-and-forth it adds a small delay.
Modes Are the Central Concept
Bob's modes define how the agent behaves. We used Code mode for direct implementation and Orchestrator mode for higher-level planning and coordination. Modes are highly customizable, and understanding them is essential to getting good results. IBM also provides a demo repository with example custom modes.
Auto-Approval Is Gradually Adjustable
Unlike a simple on/off toggle, Bob lets you fine-tune how much autonomy the agent has before requiring approval. That kind of granularity is useful because it lets you loosen the leash as you build trust during a session, without going fully hands-off from the start.
Checkpoints After Every Edit
Bob creates checkpoints after edits, letting you revert very specific steps. That is a meaningful feature for agentic workflows where the tool makes many sequential changes. Being able to roll back a single step without losing everything else gives you more control than a simple undo.
Single-Tasked by Design
Bob pauses when you switch focus to a different task. That is different from other AI IDE tools that continue working in the background. It felt limiting at first, but Bob Shell offers a workaround: you can use the shell to run parallel tasks.
LLM Attribution
Bob can append a "Made with Bob" attribution at the end of generated files. It is optional and can be toggled on or off. A small detail, but worth knowing if you care about keeping generated files clean.
The 40-Coin Budget
The 40 Bobcoins from the trial lasted about one hour of pure AI work. That was enough to get a runnable JavaFX chess application with a board, pieces, and basic game logic, but not enough to finish and polish it. When the coins ran out, we had to stop mid-session.
What Did Not Work Well
Focus Switching While Writing Files
This was the biggest frustration. When Bob was writing files, switching focus to another editor tab or window disrupted the process. It felt like a real workflow blocker, and we hope it gets fixed in a future update.
Tests Got Disabled and Never Came Back
At one point, Bob decided to temporarily disable tests to isolate where errors were coming from. That is a reasonable debugging strategy in principle. The problem was that we ran out of Bobcoins before the tests could be reactivated. The final state of the project had tests disabled, which is exactly the kind of risk you take when an agentic tool manages your test suite under a constrained budget.
Final State of the Project
After roughly an hour of active AI work, we had a JavaFX chess application that rendered a board, placed pieces, and handled some basic move logic. It was not finished. The UI needed work and the tests were in a broken state.

Still, getting to a runnable application from zero in that timeframe, with an unfamiliar AI IDE and a hard token budget, was a useful data point.
Takeaway
Bob shows interesting ideas, especially around modes, prompt enhancement, checkpoints, and gradual auto-approval. The Java-first positioning feels genuine, and the customizability of agent behavior goes further than most competing tools.
The practical limits were also clear: the trial budget runs out fast during real development, focus switching during file writes is a real problem, and agentic test management needs more guardrails.
If you are evaluating AI IDEs beyond GitHub Copilot and Cursor, Bob is worth a look, particularly if you work in Java-heavy enterprise environments.
Useful Links
Comments
Load comments from GitHub optionally
The comment section is provided via Giscus and GitHub Discussions. It will only be loaded after your explicit consent. When loading it, personal data such as your IP address and technical metadata may be transmitted to GitHub, and cookies or similar technologies may be set.
Please confirm first before loading the comment section.