Using Claude Code to create skills, commands, plans, ... for SWI-Prolog

Are you using separate so called memory files to keep track of what Claude learns that is of value?


Using a Memory File with Claude in IDE Projects

When working in a project folder with an IDE, keep a MEMORY.md file in the project root alongside a .claude/CLAUDE.md file. The CLAUDE.md should instruct Claude to update MEMORY.md whenever it learns something significant that has been verified — for example, by successfully running a test.

A few things to be aware of: Claude may also create and use CLAUDE.md and/or MEMORY.md at the user account level (e.g., ~/.claude/) rather than inside the project folder. To confirm which files are being updated, watch the file paths during writes, or simply read the files directly since they’re standard markdown.

When set up correctly, this approach keeps Claude focused on the current problem and what has already worked, preventing it from backtracking — and ensuring that key context isn’t lost during session compression.


Model Notes

Claude Haiku 4.5 now handles SWI-Prolog at a solid basic level, making it a good daily driver for routine coding tasks. For planning or serious debugging, Sonnet or Opus is still the better choice — but Haiku 4.5 is notably more token-efficient for everyday use.

ChatGPT can also work with SWI-Prolog, though it generally requires more scaffolding and prompting to get comparable results. That said, it’s worth exploring if you’re spending more time in that ecosystem.