Smalltalk交互工具

3小时前更新 1 00

连接Squeak/C

收录时间:
2026-02-26
Smalltalk交互工具Smalltalk交互工具
Smalltalk交互工具

技能简介

该技能用于与运行中的Smalltalk镜像(支持Cuis或Squeak)进行交互,可执行代码、浏览类结构、查看方法源码、定义类与方法,以及查询继承关系和系统分类。

能做什么

  • 在Live Smalltalk镜像中执行代码并获取结果
  • 浏览类元数据,包括实例变量和方法列表
  • 查看指定方法的源代码(实例侧或类侧)
  • 动态定义新类和新增/修改方法
  • 查询类的继承链和子类
  • 按系统分类浏览类组织
  • 删除类或方法

使用说明

前置准备

  1. 克隆ClaudeSmalltalk仓库:git clone https://github.com/CorporateSmalltalkConsultingLtd/ClaudeSmalltalk.git
  2. 按SQUEAK-SETUP.md配置Squeak环境并加载MCP服务器
  3. 按CLAWDBOT-SETUP.md完成Clawdbot配置

启动守护进程

Playground模式(默认,临时镜像):

nohup python3 smalltalk-daemon.py start > /tmp/daemon.log 2>&1 &

Dev模式(持久化自定义镜像):

nohup python3 smalltalk-daemon.py start --dev --image ~/MyProject.image > /tmp/daemon.log 2>&1 &

常用命令示例

# 检查环境
python3 smalltalk.py --check

# 执行代码
python3 smalltalk.py evaluate "3 factorial"
python3 smalltalk.py evaluate "Date today"

# 浏览类信息
python3 smalltalk.py browse OrderedCollection

# 查看方法源码
python3 smalltalk.py method-source String asUppercase
python3 smalltalk.py method-source MCPServer version --class-side

# 查询类关系
python3 smalltalk.py hierarchy OrderedCollection
python3 smalltalk.py subclasses Collection

# 按分类浏览
python3 smalltalk.py list-categories
python3 smalltalk.py classes-in-category "Collections-Sequenceable"

# 定义类和方法
python3 smalltalk.py define-class "Object subclass: #Counter instanceVariableNames: 'count' classVariableNames: '' poolDictionaries: '' category: 'MyApp'"
python3 smalltalk.py define-method Counter "increment\n    count := (count ifNil: [0]) + 1.\n    ^ count"

# 删除操作
python3 smalltalk.py delete-method Counter increment
python3 smalltalk.py delete-class Counter

# 守护进程管理
python3 smalltalk.py --daemon-status
python3 smalltalk-daemon.py stop
python3 smalltalk-daemon.py restart --dev --image ~/MyProject.image

输入与输出

见下方输入与输出表格。

项目内容
输入Smalltalk代码字符串、类名、方法选择器、系统分类名、类定义表达式、方法源码、镜像文件路径(Dev模式)
输出代码执行结果、类元数据(父类/实例变量/方法列表)、方法源代码、继承链列表、子类列表、分类列表、操作状态确认
适用人群Smalltalk开发者、Squeak/Cuis用户、需要动态调试Smalltalk代码的工程师、学习Smalltalk语言的学生
不包含静态代码分析功能、跨镜像数据迁移、图形界面操作、版本控制集成、自动测试执行

 

风险提示

  • Playground模式下所有更改随守护进程停止而丢失,重要操作请使用Dev模式
  • Dev模式需确保.image文件与同名的.changes文件位于同一目录
  • 删除类和删除方法操作不可逆,执行前建议备份镜像
  • 代码执行直接作用于运行中的镜像,可能影响系统状态
  • 依赖xvfb-run和python3环境,缺失会导致功能异常

来源信息

原始链接:https://github.com/openclaw/skills/tree/main/skills/johnmci/smalltalk/SKILL.md
来源类型:GitHub仓库

数据统计

相关导航

暂无评论

none
暂无评论...