skills-experimental/gcode-to-text/SKILL.md
Decode and interpret text content from G-code files by analyzing toolpath geometry and coordinate patterns. This skill should be used when extracting text, letters, or symbols that are encoded as movement commands in G-code files (e.g., 3D printing, CNC engraving, laser cutting). Applies to tasks like identifying what text a G-code file will print/engrave, reverse-engineering embossed or engraved text from toolpaths, or visualizing G-code geometry to reveal hidden content.
npx skillsauth add bianhaifeng789-hue/openclaw-config gcode-to-textInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
G-code files encode geometry as movement commands (X, Y, Z coordinates) rather than explicit text labels. When text is printed, engraved, or cut, the letter shapes exist only as coordinate sequences tracing their outlines. This skill provides strategies for extracting and interpreting text content from G-code by analyzing the geometric data itself.
G-code IS the content - The text being printed/engraved is fully defined by the coordinate movements. There is no separate "text field" to extract. The challenge is transforming coordinate data back into recognizable letter shapes.
Metadata is unreliable - Filenames, comments, and labels (like M486 object names) may hint at content but are not authoritative. The actual geometric data is the source of truth.
Avoid circular reasoning - Never conclude that the printed text equals the filename (e.g., assuming "text.gcode" prints "text"). This is a common pitfall.
Locate the G-code sections that produce the text content:
M486 S0 for "Embossed text")Example patterns to search:
; TYPE:.*[Tt]ext
M486.*[Tt]ext
; printing.*text
Transform coordinate data into a visual representation:
Option A: Plot coordinates programmatically
import matplotlib.pyplot as plt
# Extract X,Y coordinates from G-code
x_coords = []
y_coords = []
# Parse G1 X... Y... commands and populate lists
plt.figure(figsize=(12, 4))
plt.plot(x_coords, y_coords, 'b-', linewidth=0.5)
plt.axis('equal')
plt.savefig('toolpath.png')
Option B: ASCII art visualization For simpler cases, bin coordinates into a character grid:
# Create a 2D grid and mark visited positions
# Print as ASCII characters to reveal letter shapes
Option C: Analyze coordinate clusters Group coordinates by X-position ranges to identify individual letters.
Once visualized:
Cross-check findings:
| Pitfall | Why It Fails | Better Approach | |---------|--------------|-----------------| | Inferring text from filename | Filename is arbitrary metadata | Analyze actual coordinates | | Searching only for metadata/comments | Text is encoded in geometry, not labels | Parse and visualize coordinates | | Concluding "cannot determine" without geometric analysis | The answer exists in the data | Attempt visualization or clustering | | Over-relying on M486 labels | Labels describe sections, not content | Use labels to locate sections, then analyze geometry |
If plotting tools are unavailable:
| Command | Purpose | |---------|---------| | G0 | Rapid move (travel, not printing) | | G1 | Linear move (printing/cutting) | | G2/G3 | Arc moves (curved letters) | | M486 | Object labeling (slicer-dependent) | | E parameter | Extrusion amount (positive = printing) |
Task: Extract text from G-code
│
├─ Is there explicit text metadata?
│ ├─ Yes → Use as hint only, verify with geometry
│ └─ No → Proceed directly to geometric analysis
│
├─ Can coordinates be extracted and plotted?
│ ├─ Yes → Visualize and interpret letter shapes
│ └─ No → Use statistical/clustering analysis
│
└─ Is the result ambiguous?
├─ Yes → Try multiple visualization methods
└─ No → Report findings with confidence level
This skill includes helper scripts for G-code analysis:
extract_coordinates.py - Parse G-code and extract X/Y coordinate sequencesvisualize_toolpath.py - Generate visual plots of G-code geometrygcode_reference.md - Comprehensive G-code command referencebusiness
IAA 日报飞书输出能力。 支持把固定 CSV 模板一键转换成: - 中文运营结论 - 飞书卡片 JSON - 飞书发送载荷 Use when: - 需要把 IAA 日报直接发到飞书 - 需要从 CSV 一键生成运营日报
data-ai
IAA日报分析模型 功能: - 渠道日报自动分析 - 小时级+日级ROI联动判断 - 按地区输出加量/降量/停投建议 - 按产品类型输出阈值 - 自动识别利润区/观察区/止损区 Use when: - 分析每天投放数据 - 生成运营日报结论 - 判断是否加量/降量/停投 - 对比美加澳/日韩表现 Keywords: - 日报模型, 投放日报, 加量, 降量, 停投, ROI日报, 分地区分析
data-ai
IAA固定日报分析模板 功能: - 固定字段模板(可直接贴每天数据) - 自动输出总盘结论 - 自动输出美加澳/日韩结论 - 自动给出加量/降量/停投建议 - 适配文件修复/清理两类产品 Use when: - 需要固定日报格式 - 每天复盘渠道表现 - 给运营团队出统一结论 Keywords: - 固定模板, 日报模板, ROI模板, IAA日报, 运营模板
development
# HyperlinkPool Pattern Skill HyperlinkPool Pattern - HyperlinkPool class + strings array + stringMap + Index 0 no hyperlink + intern(hyperlink) + get(id) + undefined handling + 5-minute reset + OSC8 hyperlink interning。 ## 功能概述 从Claude Code的ink/screen.ts提取的HyperlinkPool模式,用于OpenClaw的OSC8超链接池管理。 ## 核心机制 ### HyperlinkPool Class ```typescript export class HyperlinkPool { private strings: string[] = [''] // Index 0 = no hyperlink private stringMap = new Map<string, number>() // strings