用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/josiahlandes/Casterly-Rock --skill 3d-printing命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | 3d-printing |
| description | Slice 3D models, manage print presets, upload to printer, and monitor print jobs on Elegoo Centauri Carbon |
| homepage | https://www.elegoo.com/products/elegoo-centauri-carbon |
| metadata | {"openclaw":{"emoji":"🖨️","os":["darwin","linux"],"requires":{"bins":"[Truncated]","envVars":"[Truncated]"},"install":["[Truncated]"]}} |
| tools | [{"name":"slice_model","description":"Slice a 3D model file (.stl, .3mf, .obj) into gcode using specified presets","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"list_presets","description":"List all available filament and quality presets from the configuration","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"save_preset","description":"Create or update a filament or quality preset in the configuration","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"delete_preset","description":"Delete a filament or quality preset from the configuration","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"find_models","description":"Search for 3D model files in a directory","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"list_sliced_jobs","description":"List previously sliced jobs with their gcode files","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"upload_to_printer","description":"Upload a gcode file to the Elegoo Centauri Carbon printer over the network","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"start_print","description":"Start printing a file that has been uploaded to the printer","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"check_print_status","description":"Get the current print status from the printer","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"get_printer_info","description":"Get printer connection status and basic information","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"cancel_print","description":"Cancel the current print job","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"pause_print","description":"Pause the current print job","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}},{"name":"resume_print","description":"Resume a paused print job","inputSchema":{"type":"object","properties":"[Truncated]","required":"[Truncated]"}}] |
Control the complete 3D printing workflow: slicing models, managing presets, uploading to printer, and monitoring jobs.
Presets are stored in ~/.casterly/config/3d-printing.yaml. The configuration includes:
Use find_models to search for 3D model files:
find_models("/Users/name/Downloads", "benchy", recursive=true)
Supported formats: .stl, .3mf, .obj
List available presets:
list_presets("all")
Common filament presets:
pla_basic - Standard PLA settingspla_plus - Enhanced PLA for better layer adhesionpetg_standard - PETG with typical settingspetg_strong - Higher temp PETG for strengthabs_standard - ABS with enclosure settingstpu_flexible - TPU for flexible printsCommon quality presets:
draft - 0.3mm layer, fast printingstandard - 0.2mm layer, balancedfine - 0.12mm layer, detailedultra_fine - 0.08mm layer, maximum detailslice_model(
model_path="/path/to/model.stl",
filament_preset="pla_basic",
quality_preset="standard",
output_description="benchy test print"
)
This will:
~/.casterly/prints/YYYY-MM-DD_description/Upload the sliced gcode:
upload_to_printer("/path/to/output.gcode")
Start the print:
start_print("output.gcode")
Check status anytime:
check_print_status()
Returns:
save_preset(
preset_type="filament",
name="silk_pla",
settings={
"material": "PLA",
"nozzle_temp": 215,
"bed_temp": 60,
"flow_ratio": 0.98,
"retraction_length": 0.8,
"retraction_speed": 35,
"notes": "Silk PLA needs slightly higher temp"
}
)
save_preset(
preset_type="quality",
name="speed_draft",
settings={
"layer_height": 0.28,
"first_layer_height": 0.3,
"infill_percentage": 10,
"wall_loops": 2,
"top_layers": 3,
"bottom_layers": 3,
"print_speed": 150,
"travel_speed": 250,
"notes": "Fast draft for prototypes"
}
)
The printer is accessed via its network API. Configure in 3d-printing.yaml:
printer:
name: "Elegoo Centauri Carbon"
address: "192.168.1.100"
port: 80
api_type: "moonraker" # or "elegoo" for native API
If something goes wrong:
cancel_print(confirm=true)
pause_print()
resume_print()
Sliced jobs are stored in:
~/.casterly/prints/
└── 2024-01-15_benchy-test-print/
├── model.stl # Original model
├── output.gcode # Sliced gcode
├── metadata.json # Slice settings used
└── thumbnail.png # Preview (if available)
Install OrcaSlicer and ensure orca-slicer is in your PATH.
get_printer_info() to test connection