peetzweg/

TRMNL Display

开发编程v1.0.3
作者:peetzweg/更新于 2026-05-17共 4 个版本 · 最新版本发布于 2026-02-07trmnl@clawhub_peetzweg/trmnl
脚本工具

据 AlphaMoat 统计,截至 2026-09,TRMNL Display 累计下载 3,939 次、获 3 个星标,在全部 5,078 个 AI 技能中排名第 2,622 位,在「开发编程」分类(577 个)中排名第 342 位。

累计安装
127
累计下载
3,939
星标
3
全站排名
#2,622
全站前 52% · 「开发编程」前 60%
平台累计安装累计下载星标评论
ClawHub ↗1273,7753-
SkillHub ↗1273,9392—

各平台的计数口径不同,统计时间不一致。

这个技能是做什么的

该技能为 TRMNL 电子墨水屏设备生成 HTML 内容,可使用 TRMNL 框架的布局、表格、进度条和排版样式,并通过 trmnl CLI 推送。发送前需要安装 CLI 并配置 webhook 插件;若没有插件,应先提示用户添加。

资料发布于 2026-10-29

可以用来做什么

  • 为 TRMNL 设备生成仪表板或通知页面
  • 使用框架样式制作表格或进度展示
  • 通过 CLI 将 HTML 内容发送到设备

什么时候用

  • 用户希望更新 TRMNL 电子墨水屏时
  • 需要向设备发送消息或仪表板内容时
  • 可以先确认插件配置并在发送前审核内容时

示例提示词

以下是根据技能文档生成的示例,不代表实际运行结果。

为 TRMNL 设备生成一个显示今日待办的简洁页面;先检查插件配置,生成后让我审核,再发送。

月度数据趋势

累计下载3,939
3,3323,6583,9842026-06 · 累计下载 3,3772026-07 · 累计下载 3,6002026-08 · 累计下载 3,6882026-09 · 累计下载 3,93926-0626-09
星标3
2332026-06 · 星标 22026-07 · 星标 32026-08 · 星标 32026-09 · 星标 326-0626-09

2026-09 起统计方法调整:同名技能按作者分别统计,并覆盖全部技能。图中虚线为调整前的月份,与之后的数据不直接比较,也不计算跨越调整的增长。

月份累计下载环比星标
2026-093,939—3
2026-083,688+2.4%3
2026-073,600+6.6%3
2026-063,377—2

SKILL.md 原文

以下是作者发布的原始文件,按纯文本显示,本站未做修改或审核;其中的链接不可点击,命令请核实后再运行。抓取于 2026-10-23。

5.0 KB · ClawHub v1.0.3
---
name: trmnl
description: Generate content for TRMNL e-ink display devices using the TRMNL CSS framework and send via the trmnl CLI. Use when the user wants to display information on their TRMNL device, send messages to an e-ink display, create dashboard content, show notifications, or update their terminal display. Supports rich layouts with the TRMNL framework (flexbox, grid, tables, progress bars, typography utilities).
---

# TRMNL Content Generator

Generate HTML content for TRMNL e-ink display devices.

## Prerequisites
展开全部(共 186 行)

**Install the `trmnl` CLI to the latest version:**
```bash
npm install -g trmnl-cli@latest
```

**Configure a webhook plugin (one-time setup):**
```bash
# Add a plugin
trmnl plugin add home "https://trmnl.com/api/custom_plugins/{uuid}"

# Verify it's configured
trmnl plugin
```

## Quick Start Workflow

1. **Install/update CLI:** Run `npm install -g trmnl-cli@latest`
2. **Check plugins:** Run `trmnl plugin` - if none, prompt user to add one
3. Confirm device type (default: TRMNL OG, 2-bit, 800x480)
4. Read relevant reference docs based on content needs
5. Generate HTML using TRMNL framework classes
6. Write HTML to a temp file and send:
   ```bash
   trmnl send --file /tmp/trmnl-content.html
   # Or to a specific plugin:
   trmnl send --file /tmp/trmnl-content.html --plugin office
   ```
7. **Minimal confirmation only** - Do NOT echo content back to chat

## Sending Content

**From file (recommended):**
```bash
# Write HTML content to file first
cat > /tmp/trmnl-content.html << 'EOF'
<div class="layout layout--col gap--space-between">
  <div class="item">
    <span class="value value--xlarge value--tnums">Hello TRMNL!</span>
  </div>
</div>
<div class="title_bar">
  <span class="title">My Plugin</span>
</div>
EOF

# Send to display
trmnl send --file /tmp/trmnl-content.html
```

**Validate before sending:**
```bash
trmnl validate --file /tmp/trmnl-content.html
```

**View send history:**
```bash
trmnl history
trmnl history --today
trmnl history --failed
```

## Webhook Limits

| Tier | Payload Size | Rate Limit |
|------|--------------|------------|
| Free | **2 KB** (2,048 bytes) | 12 requests/hour |
| TRMNL+ | **5 KB** (5,120 bytes) | 30 requests/hour |

Set tier globally for accurate validation:
```bash
trmnl tier plus  # or "free"
```

## Reference Documentation

Read these files as needed:

| File | When to Read |
|------|--------------|
| `references/patterns.md` | **Start here** - Common plugin patterns |
| `references/framework-overview.md` | Device specs, e-ink constraints |
| `references/css-utilities.md` | Colors, typography, sizing, spacing |
| `references/layout-systems.md` | Flexbox, grid, overflow engines |
| `references/components.md` | Title bar, dividers, items, tables |
| `references/webhook-api.md` | Payload format, troubleshooting |
| `assets/anti-patterns.md` | Common mistakes to avoid |

## Standard Plugin Structure

**Every plugin follows this pattern:**

```html
<div class="layout layout--col gap--space-between">
  <!-- Content sections separated by dividers -->
</div>
<div class="title_bar">
  <img class="image" src="icon.svg">
  <span class="title">Plugin Name</span>
  <span class="instance">Context</span>
</div>
```

- `layout` + `layout--col` = vertical flex container
- `gap--space-between` = push sections to edges
- `title_bar` = always at bottom, outside layout
- `divider` = separate major sections
- **CRITICAL:** Only ONE `.layout` element per view

## Quick Reference

### Grid System (10-Column)

```html
<div class="grid">
  <div class="col--span-3">30%</div>
  <div class="col--span-7">70%</div>
</div>
```

### Item Component

```html
<div class="item">
  <div class="content">
    <span class="value value--xlarge value--tnums">$159,022</span>
    <span class="label">Total Sales</span>
  </div>
</div>
```

### Value Typography

**Always use `value--tnums` for numbers.**

| Class | Usage |
|-------|-------|
| `value--xxxlarge` | Hero KPIs |
| `value--xxlarge` | Large prices |
| `value--xlarge` | Secondary metrics |
| `value--tnums` | **Required for numbers** |

### Grayscale Classes

Use dithered classes, not inline colors:
- `bg--black`, `bg--gray-60`, `bg--gray-30`, `bg--gray-10`, `bg--white`
- `text--black`, `text--gray-50`

### Data Attributes

| Attribute | Purpose |
|-----------|---------|
| `data-fit-value="true"` | Auto-resize text to fit |
| `data-clamp="N"` | Limit to N lines |
| `data-overflow="true"` | Enable overflow management |

## Best Practices

1. Use `layout` + `title_bar` structure
2. Always `value--tnums` for numbers
3. Use `data-fit-value` on primary metrics
4. Use `bg--gray-*` dithered classes
5. Keep payload under tier limit
6. **Minimal confirmations** - just "Sent to TRMNL"

## Troubleshooting

| Problem | Solution |
|---------|----------|
| `trmnl: command not found` | Run `npm install -g trmnl-cli@latest` |
| No plugins configured | Run `trmnl plugin add <name> <url>` |
| Webhook fails | `trmnl config` - verify plugin URL |
| Payload too large | `trmnl validate --file` - check size |
| Numbers misaligned | Add `value--tnums` class |
| Send history | `trmnl history --failed` |

「开发编程」分类下的热门技能

数据月份:2026-09 · 下载/星标/安装数聚合自公开技能注册库(ClawHub、SkillHub),按月更新。口径说明见数据方法。