fix-figma-design-system-finding
Skill10 starsChanged 29 days agoMITView on GitHub
audit-figma-design-system ile tespit edilen tek bir design system bulgusunu Figma tuvalinde dar kapsamda düzeltir (swap, token bağlama, variant hizalama). F-MCP Bridge ve figma_execute gerektirir. "tek bulguyu düzelt", "ds finding fix", "şu node'u kütüphaneye bağla", "bileşeni değiştir", "token bağla" ifadeleriyle tetiklenir.
In this repository28 other files it gives its agents.
- ai-handoff-exportSkill
- apply-figma-design-systemSkill
- audit-figma-design-systemSkill
- code-design-mapperSkill
- component-documentationSkill
- design-drift-detectorSkill
- design-system-rulesSkill
- design-token-pipelineSkill
- ds-change-trackerSkill
- ds-impact-analysisSkill
- extract-contractSkill
- figjam-diagram-builderSkill
- figma-a11y-auditSkill
- figma-canvas-opsSkill
- figma-prototype-flowSkill
- figma-screen-analyzerSkill
- fmcp-ds-audit-orchestratorSkill
- fmcp-intent-routerSkill
- fmcp-project-rulesSkill
- fmcp-screen-orchestratorSkill
- fmcp-screen-recipesSkill
- fmcp-token-sync-orchestratorSkill
- generate-figma-librarySkill
- generate-figma-screenSkill
- implement-designSkill
- inspiration-intakeSkill
- ux-copy-guidanceSkill
- visual-qa-compareSkill
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 105
Import timeout / erişilemeyen kütüphane → blocked, zorla devam etme.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Fix Figma Design System Finding (dar yazma)
Overview
Tek bulgu, tek sorunlu node veya minimal küme, minimal okuma/yazma. audit-figma-design-system çıktısı veya eşdeğer net görev tanımı olmadan kapsamı sessizce genişletme.
Ekran geneli veya çoklu bölüm için apply-figma-design-system kullan.
F-MCP araç eşlemesi
| Niyet | F-MCP Bridge |
| Okuma | figma_get_design_context, figma_capture_screenshot, figma_get_file_data (gerekirse düşük depth), figma_get_component, figma_get_variables, figma_get_styles |
| Kütüphane adayı | figma_search_components, figma_get_component |
| Tuval yazma / Plugin API | figma_execute (Figma plugin JS; swap, import, yedek kopya) |
| Bağlantı | figma_get_status() |
figma_execute içinde büyük JSON döndürme; figjam-diagram-builder skill’indeki kısa dönüş disiplinine benzer şekilde özet sonuç tercih et.
F-MCP skill koordinasyonu
| Durum | Sonraki skill |
| Audit’ten önce tek düzeltme istendi | İsteğe bağlı kısa audit-figma-design-system ile doğrula; sonra bu skill |
| Birden fazla bulgu, koordineli reconcile | apply-figma-design-system |
| Sadece kod token dosyası güncellemesi | design-token-pipeline (tuval + kod ayrı) |
| Düzeltme sonrası kod parity | design-drift-detector |
| Mapping güncellemesi | code-design-mapper |
| İsteğe bağlı regresyon (tuval) | audit-figma-design-system ile aynı node’u yeniden denetle |
Beklenen girdi
Bu skill üç farklı girdi formatını otomatik algılar:
- Tek finding JSON —
audit-figma-design-systemçıktısından tekfindingobjesi.code_locationalanı varsa bu format algılanır. - Tam audit JSON + indeks — Tüm audit çıktısı + hangi bulgunun düzeltileceği (indeks veya
ruleId).findingsdizisi varsa bu format algılanır. - Serbest metin + URL — Sorun özeti + Figma URL /
fileKey+nodeId. Yapılandırılmış JSON yoksa bu format algılanır.
Format algılama sırası: code_location → findings[] → serbest metin fallback.
Audit JSON kullanılıyorsa code_location.absolute_file_path içinden fileKey ve nodeId çıkar: /figma/<fileKey>/nodes/<nodeId>.
Kapsam kuralı
Seçilen bulgu çözülene, blocked veya needs-follow-up raporlanana kadar başka cleanup yapma. Birden fazla bulgu kullanıcıda varsa birini seç veya en yüksek öncelikli tekini uygula; geri kalanı için audit/apply yönlendir.
Required Workflow
- Plugin bağlantısını doğrula:
figma_get_status()— bağlantı yoksa devam etme. - Normalize:
fileKey,nodeId, bulgu başlığı ve gerekçe. - Uyumluluk (belirsiz replacement’ta): Yazmadan önce hangi component/variant, override’lar, layout sözleşmesi — sonuç
safe-to-apply|blocked|needs-human-choice.blocked/needs-human-choiceise yazma; durumu bildir. - Minimal kanıt:
figma_capture_screenshot; yapı içinfigma_get_design_contextveyafigma_get_file_data(dar kapsam); token bulgusuysafigma_get_variables/figma_get_styles; gerekirsefigma_search_components. - Remediasyon modu (tek seç):
swap-instance|compose-from-primitives|bind-tokens|align-variant|blocked. En küçük yeterli değişiklik. - Yedek: Yıkıcı düzenlemeden önce yalnızca etkilenen alt ağacı veya minimal üst section’ı çoğalt; net isimlendir (
Backup - Fix finding …). Mümkünse ayrıfigma_executeçağrısı; dönen node id’yi not et. Uygula:
figma_executeile adım adım. Remediasyon modu örnekleri:swap-instance (mevcut node'u kütüphane bileşeniyle değiştir):
const node = await figma.getNodeByIdAsync("<NODE_ID>"); const comp = await figma.importComponentByKeyAsync("<COMPONENT_KEY>"); // veya local: figma.root.findOne(n => n.type === "COMPONENT" && n.name === "<NAME>"); const instance = comp.createInstance(); instance.x = node.x; instance.y = node.y; instance.resize(node.width, node.height); if (node.parent) node.parent.insertChild(node.parent.children.indexOf(node), instance); node.remove(); return { swapped: instance.id, replacedName: node.name };bind-tokens (hard-coded değeri variable'a bağla):
const node = await figma.getNodeByIdAsync("<NODE_ID>"); const variable = await figma.variables.getVariableByIdAsync("<VAR_ID>"); const fills = [...node.fills]; const boundPaint = figma.variables.setBoundVariableForPaint(fills[0], "color", variable); node.fills = [boundPaint]; return { bound: node.name, variable: variable.name };align-variant (yanlış variant'ı doğrusuyla değiştir):
const instance = await figma.getNodeByIdAsync("<INSTANCE_ID>"); instance.setProperties({ "Variant": "Primary" }); return { aligned: instance.id, newVariant: "Primary" };- Doğrula: Bulgunun özellikle çözüldüğünü screenshot ve yapı ile kanıtla; global pattern dokunduysa genişlet.
- İsteğe bağlı: Regresyon için audit-figma-design-system ile aynı kapsamı yeniden çalıştır (özellikle çok adımlı fix sonrası).
Yazma kuralları
- Belirsiz replacement’ta
safe-to-applyyoksa yazma. - Tek bulgu düzeltildi diye tüm ekranı “sistemde” ilan etme.
- Component key ve variable id’leri isimden önce tercih et.
- Import timeout / erişilemeyen kütüphane →
blocked, zorla devam etme.
Kapanış raporu
- Finding fixed: Ne değişti, hangi node.
- Validation: Orijinal şikayetin giderildiği kanıtı.
- Blocked / Follow-up: Varsa kısa.
Evolution Triggers
- Bridge'e yeni
figma_executekalıpları eklendiğinde remediasyon modları güncellenmeli - Audit bulgu formatı değişirse girdi normalize adımı uyarlanmalı
- Batch düzeltme desteği eklenirse tek/toplu mod ayrımı yapılmalı
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

