smalltalk-debugger

Diagnose Pharo Smalltalk runtime errors during test runs.

14|1|Updated Dec 11, 2025
One-click install
npx skills add https://github.com/mumez/smalltalk-dev-plugin --skill smalltalk-debugger
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: smalltalk-debugger
Source: https://github.com/mumez/smalltalk-dev-plugin/tree/main/skills/smalltalk-debugger
Command: npx skills add https://github.com/mumez/smalltalk-dev-plugin --skill smalltalk-debugger

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill automates the complex process of debugging Smalltalk code, helping developers quickly identify the root cause of test failures, runtime errors, and unexpected behavior. It provides structured procedures and common error solutions, reducing the time spent on manual investigation.

Core Features & Use Cases

  • Guided Debugging Procedures: Offers step-by-step instructions for isolating errors, verifying code with partial execution, and checking intermediate values.
  • Error Pattern Recognition: Provides solutions for common Smalltalk errors like MessageNotUnderstood, KeyNotFound, and SubscriptOutOfBounds.
  • Object Inspection: Guides on how to inspect object states, collections, and dictionaries to understand runtime data.
  • Use Case: A test fails with a MessageNotUnderstood error. This skill automatically suggests using eval to check the receiver's class, search for implemented methods, and inspect the method source, leading the developer directly to the fix.

Quick Start

The 'PersonTest' is failing with an error. Debug the 'testFullName' method.

Frequently Asked Questions about smalltalk-debugger

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I debug a failing test in Pharo Smalltalk?

Debugging a failing test in Pharo involves inspecting the stack trace, checking the receiver's class and available methods, and evaluating code incrementally to isolate the error. This Skill guides you through those steps—using eval to test hypotheses, searching for method implementations, and analyzing intermediate values to pinpoint the root cause.

What does MessageNotUnderstood error mean in Smalltalk?

MessageNotUnderstood occurs when code calls a method that doesn't exist on an object. Debugging this error requires checking the receiver's class, verifying the method name, and confirming the method is actually implemented. This Skill automates that investigation process.

How do I inspect object state during Smalltalk debugging?

Inspecting object state means examining an object's instance variables, collections, and dictionaries at runtime. This Skill provides structured procedures for using the debugger to read object properties, verify data integrity, and understand how runtime values led to the error.

Can I use automated debugging for Smalltalk test failures?

Yes. This Skill automates diagnosis of Pharo Smalltalk test failures by recognizing common error patterns, suggesting incremental evaluation strategies, and guiding debugger-window analysis to resolve issues faster than manual investigation alone.

What Smalltalk errors can this debugging approach handle?

This Skill addresses MessageNotUnderstood, KeyNotFound, SubscriptOutOfBounds, timeouts, and unresponsive images. It applies structured root-cause analysis to each error type using source inspection, method search, and controlled code evaluation.

Do I need Pharo installed to use this debugging Skill?

Yes. This Skill is designed specifically for Pharo Smalltalk runtime environments. It requires access to a running Pharo image and uses its debugger, eval, and source-inspection tools to diagnose and resolve errors.