返回技能列表

enhance-glyph

pjt222
更新于 2 days ago
6 次查看
17
2
17
在 GitHub 上查看
design

关于

This skill improves existing R-based pictogram glyphs for visualization layers by diagnosing and fixing issues like poor scaling, unclear metaphors, or unbalanced glow effects. It performs visual review, targeted function modifications, and before/after comparisons for skill, agent, and team glyphs. Use it when glyphs render poorly at small sizes, have proportion problems, or need updates after palette or pipeline changes.

快速安装

Claude Code

推荐
主要方式
npx skills add pjt222/agent-almanac -a claude-code
插件命令备选方式
/plugin add https://github.com/pjt222/agent-almanac
Git 克隆备选方式
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/enhance-glyph

在 Claude Code 中复制并粘贴此命令以安装该技能

技能文档

Glyphe verbessern

Eine bestehende Piktogramm-Glyphe in der viz/-Visualisierungsschicht verbessern — das aktuelle Rendering ueberpruefen, visuelle Probleme diagnostizieren, gezielte Modifikationen anwenden, neu rendern und Vorher/Nachher vergleichen. Funktioniert fuer Skill-, Agent- und Team-Glyphen.

Wann verwenden

  • Eine Glyphe rendert bei kleinen Groessen schlecht (Details gehen verloren, Formen verschmelzen)
  • Die visuelle Metapher einer Glyphe ist unklar oder passt nicht zur dargestellten Entitaet
  • Eine Glyphe hat Proportionsprobleme (zu gross, zu klein, dezentriert)
  • Der Neon-Glow-Effekt uebertrifft oder unterdrueckt die Glyphe
  • Eine Glyphe sieht in einer Palette gut aus, aber in anderen schlecht
  • Batch-Verbesserung nach dem Hinzufuegen neuer Paletten oder Aenderungen an der Rendering-Pipeline

Eingaben

  • Erforderlich: Entitaetstyp — skill, agent oder team
  • Erforderlich: Entitaets-ID der zu verbessernden Glyphe (z.B. commit-changes, mystic, tending)
  • Erforderlich: Spezifisches Problem (Lesbarkeit, Proportionen, Glow, Paletten-Kompatibilitaet)
  • Optional: Referenz-Glyphe, die das gewuenschte Qualitaetsniveau demonstriert
  • Optional: Zielpalette(n) zur Optimierung (Standard: alle Paletten)

Verfahren

Schritt 1: Pruefung — Aktuellen Zustand bewerten

Die aktuelle Glyphe untersuchen und spezifische Probleme identifizieren.

  1. Die Glyphen-Funktion basierend auf dem Entitaetstyp lokalisieren:
    • Skills: viz/R/primitives*.R (19 domaenengruppierte Dateien), zugeordnet in viz/R/glyphs.R
    • Agents: viz/R/agent_primitives.R, zugeordnet in viz/R/agent_glyphs.R
    • Teams: viz/R/team_primitives.R, zugeordnet in viz/R/team_glyphs.R
  2. Die Glyphen-Funktion lesen, um ihre Struktur zu verstehen:
    • Wie viele Ebenen verwendet sie?
    • Welche Primitives ruft sie auf?
    • Welche Skalierungsfaktoren und Positionierung sind gesetzt?
  3. Die gerenderte Ausgabe ansehen:
    • Skills: viz/public/icons/cyberpunk/<domain>/<skillId>.webp
    • Agents: viz/public/icons/cyberpunk/agents/<agentId>.webp
    • Teams: viz/public/icons/cyberpunk/teams/<teamId>.webp
    • Falls verfuegbar, 2-3 weitere Paletten fuer palettenuebergreifendes Rendering pruefen
    • Bei Icon-Groesse (~48px im Graph) und Panel-Groesse (~160px im Detail-Panel) betrachten
  4. Die Glyphe auf den Qualitaetsdimensionen bewerten:
Glyph Quality Dimensions:
+----------------+------+-----------------------------------------------+
| Dimension      | 1-5  | Assessment Criteria                           |
+----------------+------+-----------------------------------------------+
| Readability    |      | Recognizable at 48px? Clear at 160px?         |
| Proportions    |      | Well-centered? Good use of the 100x100 canvas?|
| Metaphor       |      | Does the shape clearly represent the entity?   |
| Glow balance   |      | Glow enhances without overwhelming?            |
| Palette compat |      | Looks good across cyberpunk + viridis palettes?|
| Complexity     |      | Appropriate layer count (not too busy/sparse)? |
+----------------+------+-----------------------------------------------+
  1. Die 1-2 Dimensionen mit den niedrigsten Bewertungen identifizieren — das sind die Verbesserungsziele

Erwartet: Eine klare Diagnose, was mit der Glyphe nicht stimmt und welche Dimensionen verbessert werden sollen. Die Pruefung sollte spezifisch sein: "Proportionen: Glyphe nutzt nur 40% der Leinwand", nicht "sieht schlecht aus".

Bei Fehler: Falls die Glyphen-Funktion fehlt oder die Entitaet nicht in ihrer *_glyphs.R-Zuordnung ist, wurde die Glyphe moeglicherweise noch nicht erstellt — stattdessen create-glyph verwenden.

Schritt 2: Diagnostizieren — Ursachenanalyse

Bestimmen, warum die identifizierten Probleme bestehen.

  1. Bei Lesbarkeits-Problemen:
    • Zu viele feine Details, die bei kleinen Groessen verschmelzen?
    • Unzureichender Kontrast zwischen Glyphen-Elementen?
    • Linien zu duenn (< 1.5 size bei s=1.0)?
    • Elemente zu nah beieinander?
  2. Bei Proportions-Problemen:
    • Skalierungsfaktor s zu klein oder zu gross?
    • Zentrum von (50, 50) verschoben?
    • Elemente dehnen sich ueber den sicheren Bereich (10-90) hinaus aus?
  3. Bei Glow-Problemen:
    • Glyphen-Strichbreite interagiert mit ggfx::with_outer_glow():
      • Duenne Linien: Glow macht sie unscharf
      • Dicke Fuellungen: Glow erzeugt uebertriebenes Leuchten
    • Mehrere ueberlappende Elemente: zusammengesetzter Glow erzeugt Hotspots
  4. Bei Palettenkompatibilitaets-Problemen:
    • Glyphe verwendet hartcodierte Farben statt col/bright-Parameter?
    • Kontrastarme Paletten (cividis, mako) machen die Glyphe unsichtbar?
    • Die Glyphe haengt von Farbvariation ab, die manche Paletten nicht bieten?
  5. Die spezifische Ursache fuer jedes Problem dokumentieren

Erwartet: Ursachen, die direkt auf Code-Aenderungen hinweisen. "Die Glyphe ist zu klein" -> "Skalierungsfaktor ist 0.6, sollte aber 0.8 sein." "Glow uebertrifft" -> "Drei ueberlappende gefuellte Polygone erzeugen jeweils Glow."

Bei Fehler: Falls die Ursache nicht offensichtlich aus der Code-Inspektion ist, die Glyphe isoliert mit verschiedenen Parametern rendern, um das Problem einzugrenzen. render_glyph() mit einer einzelnen Glyphe zum Testen verwenden.

Schritt 3: Modifizieren — Gezielte Korrekturen anwenden

Die Glyphen-Funktion bearbeiten, um die diagnostizierten Probleme zu beheben.

  1. Die Datei oeffnen, die die Glyphen-Funktion enthaelt
  2. Modifikationen entsprechend der Diagnose anwenden:
    • Skalierung/Proportionen: s-Multiplikator oder Element-Offsets anpassen
    • Lesbarkeit: Komplexe Elemente vereinfachen, Strichbreite erhoehen, Abstaende vergroessern
    • Glow-Balance: Ueberlappende gefuellte Bereiche reduzieren, Umrisse statt Fuellungen verwenden, wo Fuellungen Leuchten erzeugen
    • Palettenkompatibilitaet: Sicherstellen, dass alle Farben von col/bright-Parametern abgeleitet werden, Alpha fuer Tiefe hinzufuegen
  3. Dem Glyphen-Funktionsvertrag folgen:
    glyph_name <- function(cx, cy, s, col, bright) {
      # cx, cy = center (50, 50)
      # s = scale (1.0 = ~70% of canvas)
      # col = domain color, bright = brightened variant
      # Returns: list() of ggplot2 layers
    }
    
  4. Die Funktionssignatur beibehalten — Parameter nicht aendern
  5. Modifikationen minimal halten: die diagnostizierten Probleme beheben, nicht die gesamte Glyphe neu gestalten

Erwartet: Eine modifizierte Glyphen-Funktion, die die in Schritten 1-2 identifizierten spezifischen Probleme behebt. Aenderungen sind gezielt und minimal — verbessern, nicht neu gestalten.

Bei Fehler: Falls die Modifikationen andere Dimensionen verschlechtern (z.B. Proportionsfix bricht Lesbarkeit), Aenderungen rueckgaengig machen und einen anderen Ansatz versuchen. Falls die Glyphe eine vollstaendige Neugestaltung benoetigt, stattdessen create-glyph verwenden.

Schritt 4: Neu rendern — Aktualisierte Icons generieren

Die modifizierte Glyphe rendern und die Korrektur verifizieren.

  1. Basierend auf dem Entitaetstyp neu rendern:

    Fuer Skills:

    cd /mnt/d/dev/p/agent-almanac/viz
    Rscript build-icons.R --only <domain> --no-cache
    

    Fuer Agents:

    cd /mnt/d/dev/p/agent-almanac/viz
    Rscript build-agent-icons.R --only <agent-id> --no-cache
    

    Fuer Teams:

    cd /mnt/d/dev/p/agent-almanac/viz
    Rscript build-team-icons.R --only <team-id> --no-cache
    
  2. Ausgabedateien am erwarteten Pfad fuer jede Palette pruefen

  3. Dateigroessen pruefen — Icons sollten 2-15 KB (WebP) sein:

    • Unter 2 KB: Glyphe ist moeglicherweise zu einfach oder Rendering ist fehlgeschlagen
    • Ueber 15 KB: Glyphe ist moeglicherweise zu komplex (zu viele Ebenen)

Erwartet: Frische Icon-Dateien fuer alle Paletten generiert. Dateigroessen im erwarteten Bereich.

Bei Fehler: Falls das Build-Skript Fehler ausgibt, die R-Konsolenausgabe auf den spezifischen Fehler pruefen. Haeufige Ursachen: fehlende schliessende Klammer in der Glyphen-Funktion, Referenzierung undefinierter Primitives oder Rueckgabe eines Nicht-Listen-Objekts. Falls das Rendering erfolgreich ist, aber die Ausgabe leer, koennten die Glyphen-Ebenen ausserhalb der Leinwandgrenzen liegen.

Schritt 5: Vergleichen — Vorher/Nachher-Verifikation

Ueberpruefen, ob die Verbesserung die Zieldimensionen verbessert hat.

  1. Alte und neue Renderings vergleichen:
    • Die Cyberpunk-Palettenversion bei Icon- (48px) und Panel-Groesse (160px) betrachten
    • Mindestens 2 weitere Paletten pruefen (eine helle wie Turbo, eine dunkle wie Mako)
  2. Die Qualitaetsdimensionen aus Schritt 1 erneut bewerten:
    • Zieldimensionen sollten sich um mindestens 1 Punkt verbessern
    • Nicht-Zieldimensionen sollten sich nicht verschlechtern
  3. Falls die Glyphe im Force-Graph verwendet wird, dort testen:
    • HTTP-Server starten: python3 -m http.server 8080 von viz/ aus
    • Den Graph laden und den Entitaetsknoten finden
    • Verifizieren, dass das Icon bei Standard-Zoom und beim Hineinzoomen korrekt rendert
  4. Die vorgenommenen Aenderungen und die erzielte Verbesserung dokumentieren

Erwartet: Messbare Verbesserung auf den Zieldimensionen ohne Verschlechterung bei anderen. Die Glyphe sieht bei beiden Groessen und ueber Paletten hinweg besser aus.

Bei Fehler: Falls die Verbesserung marginal ist oder eine Verschlechterung auftritt, die Aenderungen rueckgaengig machen und die Diagnose ueberdenken. Manchmal sind die Einschraenkungen der urspruenglichen Glyphe dem Konzept inhaerent, nicht der Implementierung — in diesem Fall muss moeglicherweise die Metapher selbst geaendert werden (Eskalation zu create-glyph).

Validierungscheckliste

  • Aktuelle Glyphe mit spezifischer Problemdiagnose geprueft
  • Ursache fuer jedes Problem identifiziert
  • Modifikationen auf diagnostizierte Probleme ausgerichtet (nicht ueberarbeitet)
  • Glyphen-Funktionsvertrag beibehalten (Signatur unveraendert)
  • Icons fuer alle Paletten neu gerendert
  • Vorher/Nachher-Vergleich zeigt Verbesserung bei Zieldimensionen
  • Keine Verschlechterung bei Nicht-Zieldimensionen
  • Dateigroessen im erwarteten Bereich (2-15 KB WebP)
  • Glyphe rendert korrekt im Force-Graph-Kontext (falls zutreffend)

Haeufige Fehler

  • Ueberverbesserung: Ein Problem beheben und dann alles andere auch noch anpassen. Bei den diagnostizierten Problemen bleiben
  • Vertragsbruch: Die Funktionssignatur aendern bricht die Rendering-Pipeline. Der 5-Parameter-Vertrag ist unveraenderlich
  • Palettenspezifische Optimierung: Die Glyphe perfekt fuer Cyberpunk machen, aber schlecht fuer Viridis. Immer 3+ Paletten pruefen
  • Kleingeroessen-Rendering ignorieren: Ein schoenes 160px-Icon, das bei 48px zum Klecks wird, ist eine gescheiterte Verbesserung
  • Vergessen neu zu rendern: Die Funktion bearbeiten ohne den Build-Befehl auszufuehren bedeutet, dass die Aenderungen nicht sichtbar sind
  • Falscher Build-Befehl: Skills verwenden build-icons.R, Agents verwenden build-agent-icons.R, Teams verwenden build-team-icons.R

Verwandte Skills

  • create-glyph — Eine neue Glyphe von Grund auf erstellen (verwenden, wenn Verbesserung nicht ausreicht)
  • audit-icon-pipeline — Erkennen, welche Glyphen in der Pipeline verbessert werden muessen
  • render-icon-pipeline — Die vollstaendige Rendering-Pipeline nach Verbesserungen ausfuehren
  • ornament-style-mono — Visuelle Gestaltungsprinzipien, die auf Glyphen-Komposition anwendbar sind
  • chrysopoeia — Wertextraktionsmethodik parallel zur Glyphen-Optimierung (Gold verstaerken, Schlacke entfernen)

GitHub 仓库

pjt222/agent-almanac
路径: i18n/de/skills/enhance-glyph
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

相关推荐技能

content-collections

Content Collections 是一个 TypeScript 优先的构建工具,可将本地 Markdown/MDX 文件转换为类型安全的数据集合。它专为构建博客、文档站和内容密集型 Vite+React 应用而设计,提供基于 Zod 的自动模式验证。该工具涵盖从 Vite 插件配置、MDX 编译到生产环境部署的完整工作流。

查看技能

polymarket

这个Claude Skill为开发者提供完整的Polymarket预测市场开发支持,涵盖API调用、交易执行和市场数据分析。关键特性包括实时WebSocket数据流,可监控实时交易、订单和市场动态。开发者可用它构建预测市场应用、实施交易策略并集成实时市场预测功能。

查看技能

creating-opencode-plugins

该Skill帮助开发者创建OpenCode插件,用于接入命令、文件、LSP等25+种事件。它提供了插件结构、事件API规范和JavaScript/TypeScript实现模式,适合需要拦截操作、扩展功能或自定义事件处理的场景。开发者可通过它快速构建响应式模块来增强OpenCode AI助手的能力。

查看技能

sglang

SGLang是一个专为LLM设计的高性能推理框架,特别适用于需要结构化输出的场景。它通过RadixAttention前缀缓存技术,在处理JSON、正则表达式、工具调用等具有重复前缀的复杂工作流时,能实现极速生成。如果你正在构建智能体或多轮对话系统,并追求远超vLLM的推理性能,SGLang是理想选择。

查看技能