@atezer/figma-mcp-bridge 1.7.7 → 1.7.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +231 -200
- package/dist/core/plugin-bridge-server.js +1 -1
- package/dist/local-plugin-only.js +1 -1
- package/dist/local.js +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,377 +1,408 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
-
Bu dosya [Keep a Changelog](https://keepachangelog.com/tr/1.1.0/)
|
|
3
|
+
Bu dosya [Keep a Changelog](https://keepachangelog.com/tr/1.1.0/) biçimine uygundur. Sürüm numaraları [`package.json`](package.json) ile uyumludur.
|
|
4
4
|
|
|
5
|
-
**
|
|
5
|
+
**Sürüm takibi (kullanıcılar için):**
|
|
6
6
|
|
|
7
|
-
| Kanal |
|
|
7
|
+
| Kanal | Açıklama |
|
|
8
8
|
|-------|----------|
|
|
9
|
-
| [GitHub Releases](https://github.com/atezer/FMCP/releases) |
|
|
10
|
-
| [npm - @atezer/figma-mcp-bridge](https://www.npmjs.com/package/@atezer/figma-mcp-bridge) |
|
|
11
|
-
| Bu dosya | Repoda her
|
|
9
|
+
| [GitHub Releases](https://github.com/atezer/FMCP/releases) | Sürüm etiketleri ve (yayımlandığında) derlenmiş notlar |
|
|
10
|
+
| [npm - @atezer/figma-mcp-bridge](https://www.npmjs.com/package/@atezer/figma-mcp-bridge) | Yayınlanan paket sürümü; `npm view @atezer/figma-mcp-bridge version` ile kontrol |
|
|
11
|
+
| Bu dosya | Repoda her sürüm için özet değişiklik listesi |
|
|
12
12
|
|
|
13
|
-
Bu changelog'a ekleme
|
|
13
|
+
Bu changelog'a ekleme öncesi sürümlerin tam ayrıntıları için `git log` kullanılabilir.
|
|
14
|
+
|
|
15
|
+
## [1.7.9] - 2026-04-05
|
|
16
|
+
|
|
17
|
+
### Türkçe Karakter Düzeltmesi (Kapsamlı)
|
|
18
|
+
|
|
19
|
+
**Kök neden düzeltmesi:**
|
|
20
|
+
- **7 skill'e Türkçe Karakter Kuralı eklendi:** generate-figma-screen, generate-figma-library, implement-design, ai-handoff-export, component-documentation, figma-a11y-audit, figma-screen-analyzer. Tüm Türkçe metin üretiminde doğru Unicode karakter kullanımı artık zorunlu.
|
|
21
|
+
|
|
22
|
+
**Skill iç düzeltmeleri:**
|
|
23
|
+
- **component-documentation/SKILL.md:** Dosyanın tamamı (~52 satır) ASCII Türkçe → doğru Unicode'a dönüştürüldü
|
|
24
|
+
- **generate-figma-library/SKILL.md:** Satır 166-425 arası Kritik Kurallar bölümü (~35 satır) düzeltildi
|
|
25
|
+
|
|
26
|
+
**Test output dosyaları:**
|
|
27
|
+
- **HANDOFF.md:** ~37 düzeltme (Geliştirici → Geliştirici, Şifre, Bileşen, Erişebilirlik vb.)
|
|
28
|
+
- **LoginScreen.tsx:** 2 düzeltme ("Sifre" → "Şifre")
|
|
29
|
+
- **LoginView.swift:** 3 düzeltme ("Sifre" → "Şifre", "Hesabiniz" → "Hesabınız")
|
|
30
|
+
- **LoginScreen.kt:** 2 düzeltme ("Sifre" → "Şifre", "Hesabiniz" → "Hesabınız")
|
|
31
|
+
|
|
32
|
+
**Figma tasarım dosyası:**
|
|
33
|
+
- 48+ text node ve frame ismi düzeltildi (A11y Annotations panel, component documentation frame dahil)
|
|
34
|
+
- İteratif doğrulama döngüsü: 3 tur tarama ile 327 text node'da 0 kalan hata
|
|
35
|
+
|
|
36
|
+
**Dokümantasyon:**
|
|
37
|
+
- TEST_REPORT.md, FUTURE.md, CHANGELOG.md — tüm ASCII Türkçe düzeltildi
|
|
38
|
+
|
|
39
|
+
**Yanlış pozitif koruması:** "Şifremi unuttum" (6 instance korundu), kod identifier'ları ve token isimleri değişmedi.
|
|
40
|
+
|
|
41
|
+
## [1.7.8] - 2026-04-05
|
|
42
|
+
|
|
43
|
+
### Fix
|
|
44
|
+
- **CI version consistency:** Kaynak dosyalardaki (local.ts, local-plugin-only.ts, plugin-bridge-server.ts) versiyon stringleri package.json ile senkronize edildi. CI "Version consistency check" artık başarılı.
|
|
14
45
|
|
|
15
46
|
## [1.7.6] - 2026-04-05
|
|
16
47
|
|
|
17
|
-
### component-documentation Skill (
|
|
48
|
+
### component-documentation Skill (YENİ — 18. skill)
|
|
18
49
|
|
|
19
|
-
- **Format
|
|
20
|
-
- **
|
|
21
|
-
- **
|
|
22
|
-
- **
|
|
23
|
-
- **SKILL_INDEX.md:** 17→18 skill, "
|
|
50
|
+
- **Format seçimi zorunlu:** Standard (~2400px) ve Compact (~1300px) seçenekleri kullanıcıya sunulur, onay olmadan frame oluşturulmaz
|
|
51
|
+
- **Görsel Do/Dont örnekleri:** Gerçek component instance'larıyla doğru/yanlış çift kartlar (hiyerarşi, etiket, variant kullanımı)
|
|
52
|
+
- **Endüstri standartları referansı:** `reference_industry_design_standards.md` hafıza dosyası (14 bölüm: M3, HIG, WCAG 2.2, shadcn/ui, Tailwind, Radix, Lucide, DTCG)
|
|
53
|
+
- **Yıllık güncelleme:** Standart kontrolü 1 yıldan eskiyse kullanıcıya güncelleme önerisi (9 kaynak)
|
|
54
|
+
- **SKILL_INDEX.md:** 17→18 skill, "Dokümantasyon" kategorisi eklendi
|
|
24
55
|
|
|
25
|
-
### generate-figma-library Skill (
|
|
56
|
+
### generate-figma-library Skill (Zenginleştirme)
|
|
26
57
|
|
|
27
|
-
- **Token
|
|
28
|
-
- **Text hizalama
|
|
29
|
-
- **
|
|
30
|
-
- **Code only props:** `layoutPositioning = "ABSOLUTE"` zorunlu — auto-layout gap'te
|
|
31
|
-
- **Component set
|
|
58
|
+
- **Token bağlama tablosu:** fill, text fill, stroke, strokeWeight, radius, padding, gap, minHeight, fontSize — tüm değerlerin variable'a bağlı olması zorunlu
|
|
59
|
+
- **Text hizalama kuralı:** Bileşen tipine göre textAlignHorizontal tablosu (Button=CENTER, Input=LEFT vb.)
|
|
60
|
+
- **Bileşen sizing kuralı:** Button/Tag=HUG, Input=FILL — Fixed width butonlarda yazı ortalanmaz
|
|
61
|
+
- **Code only props:** `layoutPositioning = "ABSOLUTE"` zorunlu — auto-layout gap'te boşluk yaratmayı önler
|
|
62
|
+
- **Component set oluşturma:** `figma_arrange_component_set` + sonrasında `figma_execute` ile stroke/auto-layout/rename
|
|
32
63
|
|
|
33
64
|
### Plugin Bug Fix
|
|
34
65
|
|
|
35
|
-
- **`figma_arrange_component_set`:** `getNodeById` → `getNodeByIdAsync`
|
|
66
|
+
- **`figma_arrange_component_set`:** `getNodeById` → `getNodeByIdAsync` düzeltildi (documentAccess: dynamic-page hatası)
|
|
36
67
|
|
|
37
68
|
### FUTURE.md
|
|
38
69
|
|
|
39
|
-
- P2: Component documentation skill'inin
|
|
70
|
+
- P2: Component documentation skill'inin diğer bileşen tiplerinde testi (Input, Card, Modal, Nav)
|
|
40
71
|
|
|
41
72
|
## [1.7.4] - 2026-04-04
|
|
42
73
|
|
|
43
|
-
### Graceful Port Takeover — Oturum
|
|
74
|
+
### Graceful Port Takeover — Oturum Geçişi Sorunu Çözüldü
|
|
44
75
|
|
|
45
76
|
**Bridge (plugin-bridge-server.ts):**
|
|
46
|
-
- **Graceful shutdown endpoint (`POST /shutdown`):** HTTP server'a `/shutdown` endpoint'i eklendi. Yeni bridge instance'
|
|
47
|
-
- **`requestShutdownAndRetry()` metodu (
|
|
48
|
-
- **Port stratejisi
|
|
49
|
-
- **Eski
|
|
77
|
+
- **Graceful shutdown endpoint (`POST /shutdown`):** HTTP server'a `/shutdown` endpoint'i eklendi. Yeni bridge instance'ı eskisine shutdown isteği gönderir, eski bridge gracefully kapanır.
|
|
78
|
+
- **`requestShutdownAndRetry()` metodu (YENİ):** Port meşgulse ve başka bir F-MCP bridge tespit edilirse, otomatik olarak shutdown isteği gönderir + aynı portu devralır. Plugin port değişikliği gerektirmez.
|
|
79
|
+
- **Port stratejisi güncellendi:** "no auto-scanning" → "graceful takeover". Eski oturum kapandığında yeni oturum aynı portu (varsayılan 5454) devralır, plugin otomatik bağlanır.
|
|
80
|
+
- **Eski davranış (kaldırıldı):** Port meşgulse hata verip kullanıcıdan `figma_set_port` çağrısı bekliyordu. Artık otomatik devralma yapıyor.
|
|
50
81
|
|
|
51
|
-
**Etki:** Claude Code / Cursor'da yeni oturum
|
|
82
|
+
**Etki:** Claude Code / Cursor'da yeni oturum başlatıldığında eski oturumun bridge'i portu tutuyordu. Kullanıcının plugin'de portu elle değiştirmesi gerekiyordu. Artık yeni bridge eskisini otomatik kapatıp portu devralır.
|
|
52
83
|
|
|
53
84
|
## [1.7.2] - 2026-04-04
|
|
54
85
|
|
|
55
|
-
###
|
|
86
|
+
### Kapsamlı Entegrasyon Testi + 11 Skill Güncelleme + Code-Only Props
|
|
56
87
|
|
|
57
88
|
**Test:**
|
|
58
|
-
-
|
|
89
|
+
- Uçtan uca entegrasyon testi: 46 araç, 17 skill, 11 faz
|
|
59
90
|
- 120 token (Primitives + Primitives Dark + Semantic), 6 ekran (3 boyut x 2 tema), 1 component set (5 variant)
|
|
60
|
-
- 10 dosya
|
|
61
|
-
- WCAG AA
|
|
91
|
+
- 10 dosya üretildi: 3 kod (React/Swift/Kotlin), 5 token (CSS/Tailwind/Swift/Kotlin/JSON), 1 handoff
|
|
92
|
+
- WCAG AA erişebilirlik: tüm renk çiftleri PASS, tüm touch target >= 44px
|
|
62
93
|
|
|
63
|
-
**Skill
|
|
94
|
+
**Skill düzeltmeleri (9):**
|
|
64
95
|
- `audit/apply-figma-design-system`: figma_take_screenshot → figma_capture_screenshot
|
|
65
96
|
- `ai-handoff-export`: figma_get_component_details → figma_get_component_for_development
|
|
66
97
|
- `implement-design`: componentId → nodeId
|
|
67
|
-
- `figma-screen-analyzer`: DS compliance
|
|
68
|
-
- `ds-impact-analysis`: sayfa limiti 5→20, transitif
|
|
69
|
-
- `fix-figma-design-system-finding`: 3 remediasyon modu kod
|
|
70
|
-
- `generate-figma-library`: batch hata
|
|
71
|
-
|
|
72
|
-
**Skill
|
|
73
|
-
- Token description + code syntax (Web/Android/iOS) zorunlu
|
|
74
|
-
- Semantic Token = Alias zorunlu
|
|
75
|
-
- Breakpoint / ekran boyut token'
|
|
98
|
+
- `figma-screen-analyzer`: DS compliance formülü düzeltildi
|
|
99
|
+
- `ds-impact-analysis`: sayfa limiti 5→20, transitif bağımlılık eklendi
|
|
100
|
+
- `fix-figma-design-system-finding`: 3 remediasyon modu kod örneği
|
|
101
|
+
- `generate-figma-library`: batch hata yönetimi pattern
|
|
102
|
+
|
|
103
|
+
**Skill zenginleştirmeleri (20):**
|
|
104
|
+
- Token description + code syntax (Web/Android/iOS) zorunlu adımı
|
|
105
|
+
- Semantic Token = Alias zorunlu kuralı
|
|
106
|
+
- Breakpoint / ekran boyut token'ları
|
|
76
107
|
- Dark mode token stratejisi (Pro+ native vs Free workaround)
|
|
77
|
-
- Code-Only Props
|
|
108
|
+
- Code-Only Props katmanı (Nathan Curtis yaklaşımı)
|
|
78
109
|
- Responsive boyut presetleri (3 boyut + dark = 6 ekran zorunlu)
|
|
79
|
-
- MinHeight token binding zorunlu
|
|
80
|
-
- A11y annotation frame (
|
|
81
|
-
-
|
|
82
|
-
- Code-Only Props spec data
|
|
110
|
+
- MinHeight token binding zorunlu adımı
|
|
111
|
+
- A11y annotation frame (başlık hiyerarşisi, form ilişkilendirme, odak sırası, alt text, dinamik içerik)
|
|
112
|
+
- Erişebilirlik-tasarım tutarlılık kontrolü (7 kural)
|
|
113
|
+
- Code-Only Props spec data çıkarma (handoff)
|
|
83
114
|
|
|
84
115
|
**FUTURE.md eklemeleri:**
|
|
85
|
-
- P0: Figma Make entegrasyonu +
|
|
86
|
-
- P0: Figma prototip
|
|
116
|
+
- P0: Figma Make entegrasyonu + canlı prototip süreci
|
|
117
|
+
- P0: Figma prototip bağlantıları + animasyonlar
|
|
87
118
|
- P1: Figma Dev Mode entegrasyonu
|
|
88
119
|
|
|
89
|
-
## [1.7.0] - 2026-04-04 (
|
|
120
|
+
## [1.7.0] - 2026-04-04 (güncelleme)
|
|
90
121
|
|
|
91
|
-
### Claude Code
|
|
122
|
+
### Claude Code Desteği ve Test Raporu (YENİ)
|
|
92
123
|
|
|
93
|
-
- **README: Claude Code kurulum
|
|
94
|
-
- **`.mcp.json`
|
|
95
|
-
- **`docs/TEST_REPORT.md` (
|
|
124
|
+
- **README: Claude Code kurulum bölümü eklendi.** `.mcp.json` dosyası ile NPX tabanlı config. `~/.claude/settings.json`'in MCP için çalışmadığına dair uyarı notu.
|
|
125
|
+
- **`.mcp.json` güncellendi:** Cursor'a özel bash script yerine evrensel NPX config (hem Claude Code hem Cursor ile uyumlu).
|
|
126
|
+
- **`docs/TEST_REPORT.md` (YENİ):** 46 aracın tamamı test edildi (40 PASS, 4 beklenen Figma kısıtı, 2 güvenlik nedeniyle SKIP). Free/Pro/Org/Enterprise plan bazlı yetenek matrisi. Adım adım test rehberi.
|
|
96
127
|
|
|
97
128
|
## [1.7.0] - 2026-04-03
|
|
98
129
|
|
|
99
|
-
###
|
|
130
|
+
### Çoklu Port + Otomatik AI Aracı Tespiti (YENİ)
|
|
100
131
|
|
|
101
|
-
- **Plugin
|
|
102
|
-
- **AI
|
|
103
|
-
- **Port
|
|
104
|
-
- **(i) info paneli:**
|
|
105
|
-
- **"Otomatik tara" butonu
|
|
106
|
-
- **SVG/PNG export
|
|
107
|
-
- **Token disabled:** Token girildikten sonra input +
|
|
108
|
-
- **Responsive layout:**
|
|
109
|
-
- **Plugin max height:** 420→700 (
|
|
132
|
+
- **Plugin çoklu port bağlantısı:** 5454-5470 arasını periyodik tarar (10s), bulunan tüm bridge'lere sessizce bağlanır.
|
|
133
|
+
- **AI aracı otomatik tespiti:** Bridge parent process'ten (Claude, Cursor, Claude Code, Windsurf) veya `FIGMA_MCP_CLIENT_NAME` env var'dan otomatik tespit. Welcome mesajında `clientName` gönderilir.
|
|
134
|
+
- **Port geçiş UI:** ◀▶ ok tuşlarıyla bağlı portlar arası geçiş. Status bar'da "Ready" + aktif port etiketi.
|
|
135
|
+
- **(i) info paneli:** Tıklanınca bağlı portlar listesi açılır (● aktif ○ diğerleri).
|
|
136
|
+
- **"Otomatik tara" butonu kaldırıldı:** Çoklu port bunu otomatik yapar.
|
|
137
|
+
- **SVG/PNG export düzeltmesi:** `batchExportNodes` handler + result case eklendi (timeout sorunu çözüldü).
|
|
138
|
+
- **Token disabled:** Token girildikten sonra input + süre seçici disabled (sadece sil + yeniden ekle).
|
|
139
|
+
- **Responsive layout:** İçerik taşma önlendi, sabit genişlik sadece yükseklik dinamik.
|
|
140
|
+
- **Plugin max height:** 420→700 (içerik kesilmez).
|
|
110
141
|
|
|
111
142
|
## [1.6.3] - 2026-04-03
|
|
112
143
|
|
|
113
|
-
###
|
|
144
|
+
### Dokümantasyon temizliği
|
|
114
145
|
|
|
115
|
-
- **28→21 aktif
|
|
116
|
-
- **
|
|
117
|
-
- **README sadeleştirildi:**
|
|
118
|
-
- **TOOLS.md:** Agent Canvas
|
|
146
|
+
- **28→21 aktif doküman:** 10 dosya arşivlendi (OAUTH_SETUP, SELF_HOSTING, DEPLOYMENT_COMPARISON, CLAUDE_DESKTOP_CONFIG, FIGMA_USE, FMCP_AGENT_CANVAS_COMPAT, RECONSTRUCTION_FORMAT, PUBLISH-PLUGIN, DEPENDENCY_LAYERS, RELEASE_NOTES_TEMPLATE + root: SECURITY_FIXES_ANALYSIS, HANDOFF_TEMPLATE)
|
|
147
|
+
- **Kırık link: 0** — tüm referanslar güncellendi veya kaldırıldı
|
|
148
|
+
- **README sadeleştirildi:** Doküman tablosu kullanıcı odaklı, gereksiz satırlar kaldırıldı
|
|
149
|
+
- **TOOLS.md:** Agent Canvas referansları v1.6 araçlarıyla güncellendi
|
|
119
150
|
|
|
120
151
|
## [1.6.2] - 2026-04-02
|
|
121
152
|
|
|
122
|
-
###
|
|
153
|
+
### Dokümantasyon düzeltmeleri
|
|
123
154
|
|
|
124
|
-
- README: 5
|
|
125
|
-
- README: "33
|
|
126
|
-
- FUTURE.md: 9 tamamlanan P0-P3 maddesi
|
|
155
|
+
- README: 5 kırık archived link düzeltildi, figma_export_nodes eklendi, REST_API_GUIDE + CONTRIBUTING referansları eklendi
|
|
156
|
+
- README: "33 araç" → "46 araç", tekrar eden satırlar kaldırıldı
|
|
157
|
+
- FUTURE.md: 9 tamamlanan P0-P3 maddesi işaretlendi
|
|
127
158
|
- KURULUM.md: versiyon 1.2.0 → 1.6.2
|
|
128
159
|
|
|
129
160
|
## [1.6.1] - 2026-04-02
|
|
130
161
|
|
|
131
|
-
### Batch Export (
|
|
162
|
+
### Batch Export (YENİ — 1 tool)
|
|
132
163
|
|
|
133
|
-
- **`figma_export_nodes`**: SVG/PNG/JPG/PDF batch export (1-50 node). Plugin exportAsync
|
|
134
|
-
- **`BATCH_EXPORT_NODES`** plugin handler eklendi (code.js). Promise.all ile paralel export, node
|
|
164
|
+
- **`figma_export_nodes`**: SVG/PNG/JPG/PDF batch export (1-50 node). Plugin exportAsync kullanır, REST token gerektirmez. Base64 çıktısı, ölçeklendirilebilir (0.5-4x). SVG vektörel koruma, outline text ve node ID options.
|
|
165
|
+
- **`BATCH_EXPORT_NODES`** plugin handler eklendi (code.js). Promise.all ile paralel export, node başına hata yönetimi.
|
|
135
166
|
- **Connector**: `batchExportNodes()` metodu eklendi.
|
|
136
|
-
- **Tip
|
|
167
|
+
- **Tip tanımları**: `PluginExportResult`, `PluginBatchExportPayload` (types/figma.ts).
|
|
137
168
|
|
|
138
|
-
### Toplam: 46
|
|
169
|
+
### Toplam: 46 araç (önceki: 45)
|
|
139
170
|
|
|
140
171
|
## [1.6.0] - 2026-04-02
|
|
141
172
|
|
|
142
|
-
###
|
|
173
|
+
### Tasarım Oluşturma Araçları (YENİ — 4 tool)
|
|
143
174
|
|
|
144
|
-
- **`figma_create_frame`**: Yeni frame
|
|
175
|
+
- **`figma_create_frame`**: Yeni frame oluşturma (x, y, boyut, renk, parentId)
|
|
145
176
|
- **`figma_create_text`**: Yeni metin node'u (font, boyut, renk)
|
|
146
|
-
- **`figma_create_rectangle`**:
|
|
147
|
-
- **`figma_create_group`**: Mevcut node'
|
|
177
|
+
- **`figma_create_rectangle`**: Dikdörtgen oluşturma (boyut, renk, cornerRadius)
|
|
178
|
+
- **`figma_create_group`**: Mevcut node'ları gruplama
|
|
148
179
|
|
|
149
|
-
###
|
|
180
|
+
### Kütüphane ve Tanılama (YENİ — 2 tool)
|
|
150
181
|
|
|
151
|
-
- **`figma_search_assets`**:
|
|
152
|
-
- **`figma_plugin_diagnostics`**: Plugin
|
|
182
|
+
- **`figma_search_assets`**: Takım kütüphanesi variable collection arama (plugin teamLibrary API)
|
|
183
|
+
- **`figma_plugin_diagnostics`**: Plugin sağlık kontrolü (uptime, bellek, bağlantı, port, rate limit)
|
|
153
184
|
|
|
154
|
-
###
|
|
185
|
+
### Dokümantasyon
|
|
155
186
|
|
|
156
|
-
- **CONTRIBUTING.md**: Yerel kurulum, test, tool ekleme, versiyon
|
|
157
|
-
- **docs/REST_API_GUIDE.md**: Token kurulumu,
|
|
187
|
+
- **CONTRIBUTING.md**: Yerel kurulum, test, tool ekleme, versiyon güncelleme rehberi
|
|
188
|
+
- **docs/REST_API_GUIDE.md**: Token kurulumu, örnek çağrılar, hibrit akış, rate limit yönetimi
|
|
158
189
|
- **npm keywords**: design-system, design-tokens, ui-automation, zero-trust, cursor, agent eklendi
|
|
159
190
|
|
|
160
|
-
### Toplam: 45
|
|
191
|
+
### Toplam: 45 araç (önceki: 39)
|
|
161
192
|
|
|
162
193
|
## [1.5.2] - 2026-04-02
|
|
163
194
|
|
|
164
|
-
### Test
|
|
195
|
+
### Test altyapısı
|
|
165
196
|
|
|
166
197
|
- **36 test:** response-guard.ts (18 test) + figma-url.ts (16 test) + basic (2 test)
|
|
167
|
-
- **CI'a test
|
|
168
|
-
- **Coverage config:** Plugin-only
|
|
169
|
-
- **Test
|
|
198
|
+
- **CI'a test adımı eklendi:** `npm test` her push/PR'da otomatik çalışır
|
|
199
|
+
- **Coverage config:** Plugin-only modüla odaklı; tam mod dosyaları hariç tutuldu
|
|
200
|
+
- **Test dosyaları:** `tests/core/response-guard.test.ts`, `tests/core/figma-url.test.ts`
|
|
170
201
|
|
|
171
202
|
## [1.5.1] - 2026-04-02
|
|
172
203
|
|
|
173
|
-
### TypeScript tip
|
|
204
|
+
### TypeScript tip güvenliği
|
|
174
205
|
|
|
175
|
-
- **Yeni tip
|
|
176
|
-
- **Plugin-only `any` azaltma:** 34 → 5 (%85 azalma). Kalan 5: Zod
|
|
177
|
-
- **Connector `any` azaltma:** 46 → 1 (%98 azalma).
|
|
178
|
-
- **Bridge server `any` azaltma:** 3 → 1 (%67). WebSocket mesaj tipleri
|
|
179
|
-
- **Plugin minify geri
|
|
206
|
+
- **Yeni tip dosyası:** `src/core/types/figma.ts` — RGBColor, FigmaVariable, FigmaVariableCollection, FigmaPaintStyle, FigmaTextStyle, FigmaComponent, PluginVariablesPayload, PluginStylesPayload, PluginComponentPayload vb.
|
|
207
|
+
- **Plugin-only `any` azaltma:** 34 → 5 (%85 azalma). Kalan 5: Zod şema (z.any) ve resolvedType cast.
|
|
208
|
+
- **Connector `any` azaltma:** 46 → 1 (%98 azalma). Tüm Promise<any> dönüşleri tipli hale getirildi.
|
|
209
|
+
- **Bridge server `any` azaltma:** 3 → 1 (%67). WebSocket mesaj tipleri iyileştirildi.
|
|
210
|
+
- **Plugin minify geri alındı:** esbuild minify Figma sandbox'ında "Syntax error" oluşturuyordu. Orijinal code.js geri yüklendi.
|
|
180
211
|
|
|
181
212
|
## [1.5.0] - 2026-04-02
|
|
182
213
|
|
|
183
214
|
### Plugin optimizasyonu
|
|
184
215
|
|
|
185
|
-
- **Plugin minify:** `f-mcp-plugin/code.js` esbuild ile minify (101KB→65KB, %37
|
|
216
|
+
- **Plugin minify:** `f-mcp-plugin/code.js` esbuild ile minify (101KB→65KB, %37 küçük). `build:plugin` script eklendi; `prepublishOnly` otomatik minify.
|
|
186
217
|
|
|
187
|
-
### CI/CD
|
|
218
|
+
### CI/CD güçlendirme
|
|
188
219
|
|
|
189
|
-
- **TypeScript tip
|
|
190
|
-
- **Build
|
|
191
|
-
- **Versiyon
|
|
192
|
-
- **
|
|
220
|
+
- **TypeScript tip kontrolü:** `tsc --noEmit` CI'a eklendi — derleme hataları artık otomatik yakalanıyor.
|
|
221
|
+
- **Build doğrulama:** `npm run build:local` CI'da çalıştırılır.
|
|
222
|
+
- **Versiyon tutarlılık kontrolü:** CI, `package.json` versiyonunun `src/` dosyalarıyla eşleşip eşleşmediğini otomatik kontrol ediyor.
|
|
223
|
+
- **Güvenlik taraması:** `npm audit` CI'a eklendi.
|
|
193
224
|
|
|
194
225
|
### Temizlik
|
|
195
226
|
|
|
196
|
-
- **Archive silindi:** 8.1 MB gereksiz dosya (eski zip,
|
|
197
|
-
- **Belgeler
|
|
198
|
-
- **TODO'lar temizlendi:** `enrichment-service.ts` ve `style-resolver.ts`'deki 6 TODO/FIXME notu
|
|
227
|
+
- **Archive silindi:** 8.1 MB gereksiz dosya (eski zip, görseller, eski sürüm dosyaları) — git geçmişinde mevcut.
|
|
228
|
+
- **Belgeler arşivlendi:** 6 tekrar eden / eski belge `docs/archived/` klasörüne taşınarak aktif belge sayısı 30→24'e indirildi.
|
|
229
|
+
- **TODO'lar temizlendi:** `enrichment-service.ts` ve `style-resolver.ts`'deki 6 TODO/FIXME notu açıklayıcı yorumlarla değiştirildi. Kaynak kodda sıfır TODO.
|
|
199
230
|
|
|
200
231
|
## [1.4.4] - 2026-04-02
|
|
201
232
|
|
|
202
|
-
### Versiyon
|
|
233
|
+
### Versiyon tutarlılığı (kesin düzeltme)
|
|
203
234
|
|
|
204
|
-
-
|
|
205
|
-
- npm paketi
|
|
206
|
-
- NPX
|
|
235
|
+
- Tüm kaynak kod, doküman, config ve dist dosyalarındaki versiyon string'leri 1.4.4 olarak senkronize.
|
|
236
|
+
- npm paketi güncel dist ile yeniden yayınlandı (önceki 1.4.3 npm'de eski dist içerebiliyordu).
|
|
237
|
+
- NPX örnekleri @latest kullanacak şekilde güncellendi.
|
|
207
238
|
|
|
208
|
-
## [1.4.3] - 2026-04-02 [NOT: npm paketi eski dist
|
|
239
|
+
## [1.4.3] - 2026-04-02 [NOT: npm paketi eski dist içerebilir, 1.4.4 kullanın]
|
|
209
240
|
|
|
210
|
-
### Versiyon
|
|
241
|
+
### Versiyon tutarlılığı
|
|
211
242
|
|
|
212
|
-
-
|
|
243
|
+
- Tüm kaynak kod, doküman ve config dosyalarındaki versiyon referansları senkronize edildi.
|
|
213
244
|
|
|
214
245
|
## [1.4.2] - 2026-04-02
|
|
215
246
|
|
|
216
|
-
### Kritik
|
|
247
|
+
### Kritik düzeltme
|
|
217
248
|
|
|
218
|
-
- **dist/browser pakete geri eklendi:** v1.4.1'de tam mod (local.js) `dist/browser/local.js`'i import ediyordu ama dosya paketten
|
|
249
|
+
- **dist/browser pakete geri eklendi:** v1.4.1'de tam mod (local.js) `dist/browser/local.js`'i import ediyordu ama dosya paketten çıkarılmıştı → MODULE_NOT_FOUND hatası. `dist/cloudflare/` hariç tutuldu (bu kullanılmıyor).
|
|
219
250
|
|
|
220
|
-
## [1.4.1] - 2026-04-02 [
|
|
251
|
+
## [1.4.1] - 2026-04-02 [YANLIŞ — tam mod kırık, 1.4.2 kullanın]
|
|
221
252
|
|
|
222
253
|
### npm paket optimizasyonu
|
|
223
254
|
|
|
224
|
-
- **Paket boyutu:** 284 KB → 230 KB (%19
|
|
225
|
-
- **Dosya
|
|
226
|
-
-
|
|
227
|
-
- **Korunan:** `dist/local.js` (tam mod), `dist/core/` (
|
|
255
|
+
- **Paket boyutu:** 284 KB → 230 KB (%19 küçük), açık 1.7 MB → 1.2 MB (%30 küçük)
|
|
256
|
+
- **Dosya sayısı:** 128 → 96 (32 gereksiz dosya çıkarıldı)
|
|
257
|
+
- **Çıkarılan:** `dist/cloudflare/` (440 KB), `dist/browser/` (44 KB) — plugin-only modda kullanılmıyordu
|
|
258
|
+
- **Korunan:** `dist/local.js` (tam mod), `dist/core/` (paylaşımlı), `f-mcp-plugin/`
|
|
228
259
|
|
|
229
260
|
## [1.4.0] - 2026-04-02
|
|
230
261
|
|
|
231
|
-
### Figma REST API entegrasyonu (
|
|
262
|
+
### Figma REST API entegrasyonu (YENİ)
|
|
232
263
|
|
|
233
|
-
- **`figma_set_rest_token`**: Figma REST API token
|
|
234
|
-
- **`figma_rest_api`**: Direkt REST API
|
|
235
|
-
- **`figma_get_rest_token_status`**: Token durumu, rate limit bilgisi,
|
|
264
|
+
- **`figma_set_rest_token`**: Figma REST API token girişi (figd_... formatı). Token doğrulama (/v1/me), 10s timeout.
|
|
265
|
+
- **`figma_rest_api`**: Direkt REST API çağrısı (export, comments, versions, teams). Endpoint-bazlı akıllı kırpma, 429 retry (3 deneme, exponential backoff), rate limit ön kontrolü.
|
|
266
|
+
- **`figma_get_rest_token_status`**: Token durumu, rate limit bilgisi, düşük limit uyarısı.
|
|
236
267
|
- **`figma_clear_rest_token`**: Token temizleme.
|
|
237
268
|
|
|
238
|
-
### Response Guard — Context
|
|
269
|
+
### Response Guard — Context koruması
|
|
239
270
|
|
|
240
|
-
- **`response-guard.ts`**:
|
|
241
|
-
- **Endpoint-
|
|
242
|
-
- **Boyut limitleri**: 200KB
|
|
243
|
-
- **AI bilgilendirme**:
|
|
271
|
+
- **`response-guard.ts`**: Paylaşımlı cevap kırpma modülü. AI context penceresi taşmasını önler.
|
|
272
|
+
- **Endpoint-bazlı kırpma**: comments → son 20, versions → son 10, files → ilk 20 sayfa (children stripped).
|
|
273
|
+
- **Boyut limitleri**: 200KB üstü otomatik kırpma. Gerçek test: 237KB → 10KB (comments), 533KB → 1KB (file).
|
|
274
|
+
- **AI bilgilendirme**: Kırpılan cevaplara `_truncated` ve `_responseGuard` metadata eklenir.
|
|
244
275
|
|
|
245
|
-
### 429 Rate Limit
|
|
276
|
+
### 429 Rate Limit korumaları
|
|
246
277
|
|
|
247
278
|
- **Otomatik retry**: 429 durumunda 3 deneme, Retry-After header veya exponential backoff (5s→10s→20s), max 45s.
|
|
248
|
-
-
|
|
249
|
-
- **Rate limit broadcast**: Her REST
|
|
279
|
+
- **Ön kontrol**: remaining=0 → kısa devre hata; remaining<10 → cevaba uyarı bloğu.
|
|
280
|
+
- **Rate limit broadcast**: Her REST çağrısından sonra güncellenen limitler tüm plugin'lere bildirilir.
|
|
250
281
|
|
|
251
|
-
### Plugin UI — Token ve limit
|
|
282
|
+
### Plugin UI — Token ve limit yönetimi
|
|
252
283
|
|
|
253
|
-
- **Token
|
|
254
|
-
- **
|
|
255
|
-
- **Otomatik restore**: Plugin
|
|
256
|
-
- **Rate limit
|
|
257
|
-
- **Token
|
|
284
|
+
- **Token girişi**: Advanced panelinde şifrelenmiş input + süre seçici (1/7/30/90 gün).
|
|
285
|
+
- **Kalıcı depolama**: `figma.clientStorage` ile token plugin kapatılıp açılsa bile kalır. Süre dolunca otomatik temizlenir.
|
|
286
|
+
- **Otomatik restore**: Plugin açıldığında → clientStorage → UI + bridge otomatik gönderi.
|
|
287
|
+
- **Rate limit göstergesi**: Kullanım bar'ı (yeşil/sarı/kırmızı), düşük limit uyarısı (%20), kritik uyarı (%5, nabız animasyonu), doldu mesajı.
|
|
288
|
+
- **Token süresi**: Kalan gün sayacı + bitiş tarihi; ≤7 gün sarı uyarı, dolmuş → kırmızı + otomatik silme.
|
|
258
289
|
|
|
259
290
|
### Kod kalitesi
|
|
260
291
|
|
|
261
|
-
- **`response-guard.ts`** yeni
|
|
262
|
-
- **Port
|
|
263
|
-
- **Token reconnect**: WebSocket yeniden
|
|
292
|
+
- **`response-guard.ts`** yeni modül: `estimateTokens()`, `calculateSizeKB()`, `truncateResponse()`, `truncateRestResponse()`.
|
|
293
|
+
- **Port değişiminde token koruma**: `restart()` token'ı save/restore eder.
|
|
294
|
+
- **Token reconnect**: WebSocket yeniden bağlandığında kaydedilmiş token otomatik gönderilir.
|
|
264
295
|
|
|
265
296
|
## [1.3.2] - 2026-04-02
|
|
266
297
|
|
|
267
|
-
### Bridge (hata
|
|
298
|
+
### Bridge (hata düzeltmeleri)
|
|
268
299
|
|
|
269
|
-
- **
|
|
270
|
-
- **bridgeVersion:** Plugin welcome
|
|
271
|
-
- **Versiyon
|
|
272
|
-
- **Stale dist
|
|
300
|
+
- **Hafıza sızıntısı düzeltmesi:** `tryListenAsync()` timeout yolunda `_listenResolve` temizlenmiyordu; tekrarlanan port değişikliklerinde bellek şişiyordu.
|
|
301
|
+
- **bridgeVersion:** Plugin welcome mesajında `"1.1.0"` → `"1.3.2"` olarak güncellendi.
|
|
302
|
+
- **Versiyon tutarlılığı:** McpServer version, `.cursor-plugin/plugin.json`, `package-lock.json` hepsi senkronize edildi.
|
|
303
|
+
- **Stale dist temizliği:** Silinen `figma-style-extractor` kaynak dosyasının artık dist/ kopyaları kaldırıldı.
|
|
273
304
|
|
|
274
305
|
## [1.3.1] - 2026-04-02
|
|
275
306
|
|
|
276
|
-
### Bridge (hata
|
|
307
|
+
### Bridge (hata düzeltmeleri)
|
|
277
308
|
|
|
278
|
-
- **`restart()` race condition
|
|
279
|
-
- **`figma_set_port` concurrent koruma:** Mutex flag ile
|
|
280
|
-
- **`probePort().then()` eksik `.catch()`:** Probe
|
|
281
|
-
- **`_listenResolve` callback:**
|
|
309
|
+
- **`restart()` race condition düzeltmesi:** `tryListenSync()` fire-and-forget yaklaşımı yerine async Promise tabanlı `tryListenAsync()` — port bind sonucu kesin olarak beklenir (500ms sabit delay kaldırıldı).
|
|
310
|
+
- **`figma_set_port` concurrent koruma:** Mutex flag ile eşanlı çağrılarda "devam ediyor" hatası; ikinci çağrı önceki tamamlanmadan başlamaz.
|
|
311
|
+
- **`probePort().then()` eksik `.catch()`:** Probe hatalarında `startError` set edilir, sessiz hata önlenir.
|
|
312
|
+
- **`_listenResolve` callback:** Başarılı/başarısız bind sonrası async restart akışını bilgilendirir.
|
|
282
313
|
|
|
283
|
-
### Versiyon
|
|
314
|
+
### Versiyon tutarlılığı
|
|
284
315
|
|
|
285
316
|
- McpServer version: `"1.1.2"` → `"1.3.0"` (`local-plugin-only.ts`, `local.ts`)
|
|
286
317
|
- `.cursor-plugin/plugin.json`: `"1.2.1"` → `"1.3.0"`
|
|
287
318
|
- `package-lock.json` senkronize edildi
|
|
288
319
|
|
|
289
|
-
###
|
|
320
|
+
### Dokümantasyon
|
|
290
321
|
|
|
291
|
-
- `docs/TOOLS_FULL_LIST.md`: `figma_set_port` eklendi;
|
|
322
|
+
- `docs/TOOLS_FULL_LIST.md`: `figma_set_port` eklendi; araç sayısı 34 → 35
|
|
292
323
|
|
|
293
324
|
### Temizlik
|
|
294
325
|
|
|
295
|
-
- **
|
|
326
|
+
- **Atıl kod:** `figma-style-extractor.ts` (hiç import edilmiyor) silindi; `extractVariant()` (hiç çağrılmıyor) silindi
|
|
296
327
|
- **Orphan script'ler:** `launch-figma-debug.ps1/.sh`, `launch-figma-with-plugin.sh`, `plugin-ac.py` silindi
|
|
297
|
-
- **Archive duplicate:** `archive/skills-root-duplicate/` silindi (`.cursor/skills/f-mcp/` ile
|
|
328
|
+
- **Archive duplicate:** `archive/skills-root-duplicate/` silindi (`.cursor/skills/f-mcp/` ile aynı)
|
|
298
329
|
|
|
299
330
|
## [1.3.0] - 2026-04-02
|
|
300
331
|
|
|
301
|
-
### Bridge (port
|
|
332
|
+
### Bridge (port yönetimi)
|
|
302
333
|
|
|
303
|
-
- **`figma_set_port`
|
|
304
|
-
- **Port
|
|
305
|
-
- **`figma_get_status`
|
|
306
|
-
- **`PluginBridgeServer` yeni API'ler:** `restart(port)`, `getPort()`, `isListening()`, `getStartError()`
|
|
334
|
+
- **`figma_set_port` aracı (YENİ):** Runtime'da WebSocket bridge portunu değiştirme. Port meşgulse AI aracı (Claude/Cursor) `figma_set_port(5456)` çağırarak başka bir porta geçer; Figma plugin'de aynı portu seçince bağlantı kurulur. Aralık: 5454-5470.
|
|
335
|
+
- **Port çatışması artık öldürücü değil:** Port meşgulse `process.exit(1)` yerine MCP stdio sunucusu ayakta kalır ve `figma_get_status` üzerinden hata mesajı döner. Kullanıcı `figma_set_port` ile farklı porta geçebilir.
|
|
336
|
+
- **`figma_get_status` genişledi:** `bridgeListening`, `startError` alanları eklendi; bridge dinlemiyorsa net hata mesajı ve port değiştirme yönlendirmesi.
|
|
337
|
+
- **`PluginBridgeServer` yeni API'ler:** `restart(port)`, `getPort()`, `isListening()`, `getStartError()` metodları eklendi.
|
|
307
338
|
|
|
308
|
-
###
|
|
339
|
+
### Çoklu AI aracı (aynı anda Claude + Cursor)
|
|
309
340
|
|
|
310
|
-
- Claude Desktop ve Cursor
|
|
341
|
+
- Claude Desktop ve Cursor aynı anda çalıştığında port çatışmasını çözen akış: ilk açılan varsayılan portu (5454) alır, ikinci açılan `figma_set_port` ile farklı porta geçer. Her AI aracı kendi bridge'i üzerinden bağımsız çalışır.
|
|
311
342
|
|
|
312
|
-
### Bridge (
|
|
343
|
+
### Bridge (önceki unreleased)
|
|
313
344
|
|
|
314
|
-
- **Sabit port stratejisi:** Otomatik port
|
|
315
|
-
- **Graceful shutdown:** `local-plugin-only.ts`'e SIGINT/SIGTERM handler eklendi -- IDE veya Claude
|
|
316
|
-
- **probePort edge case:** `FIGMA_BRIDGE_HOST=0.0.0.0` durumunda port probe'u `127.0.0.1`
|
|
345
|
+
- **Sabit port stratejisi:** Otomatik port taraması (5454-5470 sıralı deneme) kaldırıldı. Bridge artık yapılandırılan porta doğrudan bağlanır; port meşgulse HTTP health-check ile canlı F-MCP / ölü süreç / farklı servis ayırt edilir; ölü port için kısa gecikmeli tek retry.
|
|
346
|
+
- **Graceful shutdown:** `local-plugin-only.ts`'e SIGINT/SIGTERM handler eklendi -- IDE veya Claude kapandığında `bridge.stop()` çağrılarak port anında serbest bırakılır (ölü port sorununun ana düzeltmesi).
|
|
347
|
+
- **probePort edge case:** `FIGMA_BRIDGE_HOST=0.0.0.0` durumunda port probe'u `127.0.0.1` üzerinden yapılır.
|
|
317
348
|
|
|
318
|
-
###
|
|
349
|
+
### Dokümantasyon
|
|
319
350
|
|
|
320
|
-
- [docs/MULTI_INSTANCE.md](docs/MULTI_INSTANCE.md): "Tek MCP =
|
|
321
|
-
- [docs/CLAUDE_DESKTOP_CONFIG.md](docs/CLAUDE_DESKTOP_CONFIG.md):
|
|
322
|
-
- [KURULUM.md](KURULUM.md): Claude config "
|
|
323
|
-
- [README.md](README.md): Port
|
|
351
|
+
- [docs/MULTI_INSTANCE.md](docs/MULTI_INSTANCE.md): "Tek MCP = tüm pencereler aynı oturum" bölümü, **"Paralel görevler (Claude + Cursor + ikinci hat)"** bölümü (mimari, port tablosu, plugin Advanced uyarısı, Cursor paylaşımlı MCP notu, audit log çakışma notu).
|
|
352
|
+
- [docs/CLAUDE_DESKTOP_CONFIG.md](docs/CLAUDE_DESKTOP_CONFIG.md): çoklu `mcpServers` örneği (5455 + 5470 farklı sunucu adlarıyla).
|
|
353
|
+
- [KURULUM.md](KURULUM.md): Claude config "sık görülen hatalar" özeti.
|
|
354
|
+
- [README.md](README.md): Port çatışması uyarısı güncellemesi.
|
|
324
355
|
|
|
325
|
-
###
|
|
356
|
+
### Araçlar
|
|
326
357
|
|
|
327
|
-
- `npm run check-ports` -- [`scripts/check-ports.sh`](scripts/check-ports.sh): 5454-5470
|
|
358
|
+
- `npm run check-ports` -- [`scripts/check-ports.sh`](scripts/check-ports.sh): 5454-5470 arasında LISTEN durumundaki süreçleri listeler (paralel görev doğrulaması ve sorun giderme için).
|
|
328
359
|
|
|
329
360
|
### Cursor skills (F-MCP)
|
|
330
361
|
|
|
331
|
-
- Yeni skill'ler: `audit-figma-design-system`, `fix-figma-design-system-finding`, `apply-figma-design-system` (tuval
|
|
332
|
-
- Mevcut F-MCP skill'lerine
|
|
333
|
-
- Tuval skill'lerinde `figma_get_metadata`
|
|
334
|
-
- [.cursor/skills/f-mcp/SKILL_INDEX.md](.cursor/skills/f-mcp/SKILL_INDEX.md):
|
|
335
|
-
- `npm run validate:fmcp-skills` -- [`scripts/validate-fmcp-skills-tools.mjs`](scripts/validate-fmcp-skills-tools.mjs): skill `.md`
|
|
336
|
-
- GitHub Actions: [`.github/workflows/ci.yml`](.github/workflows/ci.yml) -- `master` / `main`
|
|
362
|
+
- Yeni skill'ler: `audit-figma-design-system`, `fix-figma-design-system-finding`, `apply-figma-design-system` (tuval içi design system audit/fix/apply; F-MCP Bridge araç eşlemesi).
|
|
363
|
+
- Mevcut F-MCP skill'lerine karşılıklı **F-MCP skill koordinasyonu** bölümleri eklendi.
|
|
364
|
+
- Tuval skill'lerinde `figma_get_metadata` kaldırıldı; Bridge ile uyum için `figma_get_file_data` / `figma_get_component` / `figma_get_design_context` eşlemesi; **design-drift-detector** koordinasyonunda tipik sıra (implement - drift) netleştirildi; **audit** içinde zincir performans notları.
|
|
365
|
+
- [.cursor/skills/f-mcp/SKILL_INDEX.md](.cursor/skills/f-mcp/SKILL_INDEX.md): tüm skill'lerin dizini, workspace kökü (FCM) notu, özet akış.
|
|
366
|
+
- `npm run validate:fmcp-skills` -- [`scripts/validate-fmcp-skills-tools.mjs`](scripts/validate-fmcp-skills-tools.mjs): skill `.md` içindeki `figma_*` adlarını `src/local.ts`, `src/local-plugin-only.ts`, `src/core/figma-tools.ts` içindeki `registerTool` birleşimine göre doğrular.
|
|
367
|
+
- GitHub Actions: [`.github/workflows/ci.yml`](.github/workflows/ci.yml) -- `master` / `main` için PR ve push'ta `npm run validate:fmcp-skills` zorunlu.
|
|
337
368
|
|
|
338
369
|
### Plugin (F-MCP Bridge)
|
|
339
370
|
|
|
340
|
-
-
|
|
341
|
-
- Advanced panel
|
|
371
|
+
- Gelişmiş panel: **Otomatik tara** düğmesi -- port alanıyla tek porta kilitlenmeyi kaldırıp 5454-5470 taramasını yeniden başlatır.
|
|
372
|
+
- Advanced panel kapatıldığında aynı kilit kalkar (ilk yüklemede çift bağlantı tetiklenmez).
|
|
342
373
|
|
|
343
|
-
###
|
|
374
|
+
### Süreç (bakımcılar)
|
|
344
375
|
|
|
345
|
-
- Sonraki
|
|
376
|
+
- Sonraki sürüm: `CHANGELOG.md` güncelle - `docs/releases/vX.Y.Z-body.md` oluştur - [RELEASE_NOTES_TEMPLATE.md](docs/RELEASE_NOTES_TEMPLATE.md) içindeki `gh release create` / `gh release edit` ile GitHub Release aç veya güncelle.
|
|
346
377
|
|
|
347
378
|
## [1.2.1] - 2026-04-01
|
|
348
379
|
|
|
349
|
-
GitHub Release: [v1.2.1](https://github.com/atezer/FMCP/releases/tag/v1.2.1);
|
|
380
|
+
GitHub Release: [v1.2.1](https://github.com/atezer/FMCP/releases/tag/v1.2.1); gövde: [docs/releases/v1.2.1-body.md](docs/releases/v1.2.1-body.md).
|
|
350
381
|
|
|
351
382
|
### Bridge
|
|
352
383
|
|
|
353
|
-
- **`figma_search_components`:**
|
|
354
|
-
- **`prepublishOnly`:** `npm publish`
|
|
384
|
+
- **`figma_search_components`:** Çıktı özetine bileşen **`key`** alanı eklendi; `figma_instantiate_component(componentKey)` akışı ile uyum.
|
|
385
|
+
- **`prepublishOnly`:** `npm publish` öncesi `build:local` + `validate:fmcp-skills` (Worker `build:cloudflare` ayrı; npm paketi bin'leri `dist/local*.js`).
|
|
355
386
|
|
|
356
|
-
###
|
|
387
|
+
### Dokümantasyon
|
|
357
388
|
|
|
358
|
-
- **`docs/TOOLS.md`**, **`docs/TOOLS_FULL_LIST.md`:** `dist/local-plugin-only.js` ile parite; `figma_search_assets` / `figma_get_code_connect` / `figma_use` bu build'de
|
|
359
|
-
- **`docs/FMCP_AGENT_CANVAS_COMPAT.md`:**
|
|
360
|
-
- **`docs/FIGMA_USE_STRUCTURED_INTENT.md`:** `figma_use` taslak;
|
|
389
|
+
- **`docs/TOOLS.md`**, **`docs/TOOLS_FULL_LIST.md`:** `dist/local-plugin-only.js` ile parite; `figma_search_assets` / `figma_get_code_connect` / `figma_use` bu build'de kayıtlı değildir notu; `figma_search_components` + `key` açıklaması.
|
|
390
|
+
- **`docs/FMCP_AGENT_CANVAS_COMPAT.md`:** Bölüm 3 güncel envanter / planlanan ayrımı.
|
|
391
|
+
- **`docs/FIGMA_USE_STRUCTURED_INTENT.md`:** `figma_use` taslak; canlı araç `figma_execute` notu.
|
|
361
392
|
|
|
362
393
|
## [1.2.0] - 2026-03-27
|
|
363
394
|
|
|
364
|
-
###
|
|
395
|
+
### Dokümantasyon
|
|
365
396
|
|
|
366
|
-
-
|
|
367
|
-
- Bu changelog
|
|
368
|
-
- GitHub [Release v1.2.0](https://github.com/atezer/FMCP/releases/tag/v1.2.0);
|
|
397
|
+
- Sürüm takibi ve güncelleme adımları: [README.md](README.md#surum-ve-guncellemeler), [KURULUM.md](KURULUM.md#surum-takibi-ve-guncelleme-notlari).
|
|
398
|
+
- Bu changelog dosyası eklendi; GitHub Releases ve npm ile birlikte tek referans olarak kullanılmalıdır.
|
|
399
|
+
- GitHub [Release v1.2.0](https://github.com/atezer/FMCP/releases/tag/v1.2.0); gövde: [docs/releases/v1.2.0-body.md](docs/releases/v1.2.0-body.md). Bakımcı akışı: [docs/RELEASE_NOTES_TEMPLATE.md](docs/RELEASE_NOTES_TEMPLATE.md).
|
|
369
400
|
|
|
370
|
-
###
|
|
401
|
+
### Bakım ve doğrulama (2026-03)
|
|
371
402
|
|
|
372
|
-
- [FUTURE.md](FUTURE.md) kod
|
|
373
|
-
- Figma Organization private plugin
|
|
403
|
+
- [FUTURE.md](FUTURE.md) kod taraması: npm `@atezer/figma-mcp-bridge@1.2.0` doğrulandı; `dist/` ile `docs/TOOLS.md` Agent Canvas üçlüsü uyumsuzluğu not edildi (doküman düzeltmesi S7'de açık).
|
|
404
|
+
- Figma Organization private plugin yayını tamamlandı (FUTURE S5).
|
|
374
405
|
|
|
375
406
|
### Not
|
|
376
407
|
|
|
377
|
-
Bu
|
|
408
|
+
Bu sürüm, npm paketi `@atezer/figma-mcp-bridge@1.2.0` ve depo kökündeki `package.json` ile hizalıdır. Önceki sürümlerin ayrıntılı kaydı bu dosyada başlamaktadır.
|
|
@@ -326,7 +326,7 @@ export class PluginBridgeServer {
|
|
|
326
326
|
logger.info({ clientId, fileKey: incomingFileKey, fileName: incomingFileName }, "Plugin bridge: client registered (fileKey=%s, fileName=%s)", incomingFileKey, incomingFileName);
|
|
327
327
|
ws.send(JSON.stringify({
|
|
328
328
|
type: "welcome",
|
|
329
|
-
bridgeVersion: "1.7.
|
|
329
|
+
bridgeVersion: "1.7.9",
|
|
330
330
|
port: this.port,
|
|
331
331
|
clientId,
|
|
332
332
|
multiClient: true,
|
|
@@ -89,7 +89,7 @@ export async function main() {
|
|
|
89
89
|
bridge.start();
|
|
90
90
|
const server = new McpServer({
|
|
91
91
|
name: "F-MCP ATezer Bridge (Plugin-only)",
|
|
92
|
-
version: "1.7.
|
|
92
|
+
version: "1.7.9",
|
|
93
93
|
});
|
|
94
94
|
// ---- figma_list_connected_files (multi-client discovery) ----
|
|
95
95
|
server.registerTool("figma_list_connected_files", {
|
package/dist/local.js
CHANGED
package/package.json
CHANGED