CLI UtilitiesDocumentedScanned

smalltalk

Interact with live Smalltalk image (Cuis or Squeak).

Share:

Installation

npx clawhub@latest install smalltalk

View the full skill documentation and source below.

Documentation

Smalltalk Skill

Execute Smalltalk code and browse live Squeak/Cuis images via MCP.

Prerequisites

Get the ClaudeSmalltalk repo first:

git clone

This repo contains:

  • MCP server code for Squeak (MCP-Server-Squeak.st)

  • Setup documentation (SQUEAK-SETUP.md, CLAWDBOT-SETUP.md)

  • This Clawdbot skill (clawdbot/)


Setup

  • Set up Squeak with MCP server — see [SQUEAK-SETUP.md]()

  • Configure Clawdbot — see [CLAWDBOT-SETUP.md]()
  • Usage

    # Check setup
    python3 smalltalk.py --check
    
    # Evaluate code
    python3 smalltalk.py evaluate "3 factorial"
    python3 smalltalk.py evaluate "Date today"
    
    # Browse a class
    python3 smalltalk.py browse OrderedCollection
    
    # View method source
    python3 smalltalk.py method-source String asUppercase
    
    # List classes (with optional prefix filter)
    python3 smalltalk.py list-classes Collection
    
    # Get class hierarchy
    python3 smalltalk.py hierarchy OrderedCollection
    
    # Get subclasses  
    python3 smalltalk.py subclasses Collection
    
    # List all categories
    python3 smalltalk.py list-categories
    
    # List classes in a category
    python3 smalltalk.py classes-in-category "Collections-Sequenceable"
    
    # Define a new class
    python3 smalltalk.py define-class "Object subclass: #Counter instanceVariableNames: 'count' classVariableNames: '' poolDictionaries: '' category: 'MyApp'"
    
    # Define a method
    python3 smalltalk.py define-method Counter "increment
        count := (count ifNil: [0]) + 1.
        ^ count"
    
    # Delete a method
    python3 smalltalk.py delete-method Counter increment
    
    # Delete a class
    python3 smalltalk.py delete-class Counter

    Commands

    CommandDescription
    --checkVerify VM/image paths and dependencies
    --debugDebug hung system (sends SIGUSR1, captures stack trace)
    evaluate Execute Smalltalk code, return result
    browse Get class metadata (superclass, ivars, methods)
    method-source View method source code
    define-class Create or modify a class
    define-method Add or update a method
    delete-method Remove a method
    delete-class Remove a class
    list-classes [prefix]List classes, optionally filtered
    hierarchy Get superclass chain
    subclasses Get immediate subclasses
    list-categoriesList all system categories
    classes-in-category List classes in a category

    Environment Variables

    VariableDescription
    SQUEAK_VM_PATHPath to Squeak/Cuis VM executable
    SQUEAK_IMAGE_PATHPath to Smalltalk image with MCP server

    Notes

    • Requires xvfb for headless operation on Linux servers
    • Uses Squeak 6.0 MCP server (GUI stays responsive if display available)
    • saveImage intentionally excluded for safety