@pedroab0/skills 0.0.0-stage → 1.0.0
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/README.md +173 -2
- package/bin/cli.js +748 -0
- package/figma-extractor/README.md +170 -0
- package/figma-extractor/SKILL.md +199 -0
- package/figma-extractor/demo/desktop_home.json +2434 -0
- package/figma-extractor/demo/dt_money_desktop_home.png +0 -0
- package/figma-extractor/demo/dt_money_preview.png +0 -0
- package/figma-extractor/demo/dt_money_selection.json +472 -0
- package/figma-extractor/demo/index.html +188 -0
- package/figma-extractor/demo/style.css +360 -0
- package/figma-extractor/figma-plugin/README.md +70 -0
- package/figma-extractor/figma-plugin/code.js +407 -0
- package/figma-extractor/figma-plugin/manifest.json +10 -0
- package/figma-extractor/figma-plugin/ui.html +470 -0
- package/figma-extractor/scripts/fetch_figma.js +1314 -0
- package/figma-extractor/scripts/test_fetch_figma.js +601 -0
- package/figma-node-builder/README.md +107 -0
- package/figma-node-builder/SKILL.md +113 -0
- package/figma-node-builder/scripts/inspect_spec.js +514 -0
- package/figma-node-builder/scripts/test_inspect_spec.js +148 -0
- package/figma-to-code/README.md +160 -0
- package/figma-to-code/SKILL.md +211 -0
- package/figma-to-code/scripts/fetch_figma.js +1251 -0
- package/figma-to-code/scripts/test_fetch_figma.js +581 -0
- package/package.json +39 -4
package/README.md
CHANGED
|
@@ -1,3 +1,174 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Skills
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
A curated collection of modular, production-ready skills developed for AI coding agents (such as Claude Code, OpenCode, Codex, Google Antigravity, and Cursor).
|
|
4
|
+
|
|
5
|
+
Each skill in this repository is designed to give AI assistants specialized, autonomous capabilities while maintaining:
|
|
6
|
+
- **Token Efficiency**: Pruning unnecessary data and noise to keep agent context windows lean and fast.
|
|
7
|
+
- **Zero or Minimal Dependencies**: Standalone scripts that execute on demand without fragile background daemons.
|
|
8
|
+
- **Domain Intelligence**: Structured, context-aware outputs (such as resolved design tokens and component props) that allow agents to generate production-quality code.
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Available Skills
|
|
13
|
+
|
|
14
|
+
| Skill | Role / Workflow | Description | Links |
|
|
15
|
+
| :--- | :--- | :--- | :--- |
|
|
16
|
+
| **[`figma-to-code`](./figma-to-code)** | **One-Shot / Fast Prototyping** | Direct, single-turn conversion of Figma designs into clean, production-ready UI components. Best for rapid prototyping and standalone components. | [Guide](./figma-to-code/README.md) · [`SKILL.md`](./figma-to-code/SKILL.md) |
|
|
17
|
+
| **[`figma-extractor`](./figma-extractor)** | **SDD Step 1 (Ingest)** | Pure specification scraper (CLI / REST API) and companion Figma Desktop plugin that pull compact layout trees, design tokens, and preview images into `./.specs/`. Never touches application code. | [Guide](./figma-extractor/README.md) · [Plugin](./figma-extractor/figma-plugin/README.md) · [`SKILL.md`](./figma-extractor/SKILL.md) |
|
|
18
|
+
| **[`figma-node-builder`](./figma-node-builder)** | **SDD Step 2 (Implement)** | Grounded UI builder that reads extracted Figma Node specifications (`.specs/*.json`) and preview images (`*.png`) to build components without CSS hallucinations. | [Guide](./figma-node-builder/README.md) · [`SKILL.md`](./figma-node-builder/SKILL.md) |
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## Two Supported Workflows
|
|
23
|
+
|
|
24
|
+
```mermaid
|
|
25
|
+
flowchart TD
|
|
26
|
+
subgraph PathA ["⚡ Workflow A: Fast Prototyping (One-Shot)"]
|
|
27
|
+
A1["Figma URL"] --> A2["figma-to-code"]
|
|
28
|
+
A2 --> A3["Working UI Component"]
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
subgraph PathB ["📐 Workflow B: Spec-Driven Development (SDD)"]
|
|
32
|
+
B1["Figma URL or Canvas Selection"] --> B2["figma-extractor<br/>(CLI or Figma Desktop Plugin)"]
|
|
33
|
+
B2 --> B3["Specification Contract<br/>.specs/card.json (+ .png)"]
|
|
34
|
+
B3 --> B4["Human Review & Gap Analysis"]
|
|
35
|
+
B4 --> B5["figma-node-builder"]
|
|
36
|
+
B5 --> B6["Grounded Production Component"]
|
|
37
|
+
end
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
* **Use `figma-to-code`** when you want fast execution: you provide a Figma URL, and the agent extracts and writes the component in one turn.
|
|
41
|
+
* **Use `figma-extractor` + `figma-node-builder`** in formal Spec-Driven Development (SDD): the design specification is extracted to disk first (via CLI or the companion Figma Desktop plugin), reviewed/approved, and then systematically implemented into your design system without premature code edits.
|
|
42
|
+
|
|
43
|
+
> [!TIP]
|
|
44
|
+
> **Zero-API Figma Desktop Plugin**: To extract specifications directly inside Figma Desktop without API tokens or rate limits, use the companion **Figma Node JSON Extractor** plugin:
|
|
45
|
+
> * **Figma Community (Recommended)**: Search for **Figma Node JSON Extractor** in Plugins.
|
|
46
|
+
> * **Manual Manifest Import (Local Backup)**: In Figma Desktop, go to **Plugins** $\rightarrow$ **Development** $\rightarrow$ **Import plugin from manifest...** and select `manifest.json` from your installed skills folder (e.g. `~/.claude/skills/figma-extractor/figma-plugin/manifest.json` or `~/.gemini/config/skills/figma-extractor/figma-plugin/manifest.json`).
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Quick Install via `npx`
|
|
51
|
+
|
|
52
|
+
Install any or all skills into your favorite AI coding assistant with a single interactive command:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
# Recommended (npm registry):
|
|
56
|
+
npx @pedroab0/skills
|
|
57
|
+
|
|
58
|
+
# Or directly from GitHub:
|
|
59
|
+
npx github:pedroab0/skills
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
The installer features a clean, interactive terminal UI:
|
|
63
|
+
* **Navigate**: Use keyboard arrows (`↑` / `↓`) or vim keys (`k` / `j`) to move between options.
|
|
64
|
+
* **Select**: Press `[Enter]` or press number keys (`1` - `5`) to select directly.
|
|
65
|
+
* **Exit**: Press `[ESC]` or `q` at any time to cancel cleanly.
|
|
66
|
+
|
|
67
|
+
### Selection Options & Presets
|
|
68
|
+
|
|
69
|
+
1. **All skills** `[Enter / 1]`: Installs `figma-to-code`, `figma-extractor`, and `figma-node-builder` (recommended).
|
|
70
|
+
2. **figma-extractor and figma-node-builder** `[2]`: Spec-Driven Development (SDD) Suite.
|
|
71
|
+
3. **figma-to-code** `[3]`: Fast prototyping (URL ──► UI Code).
|
|
72
|
+
4. **figma-extractor** `[4]`: Figma design scraper (extracts layout AST, tokens & preview images to `.specs/`).
|
|
73
|
+
5. **figma-node-builder** `[5]`: Builds UI components from extracted Figma JSON specs (`.specs/*.json`).
|
|
74
|
+
|
|
75
|
+
Or specify flags for fast, non-interactive setup:
|
|
76
|
+
```bash
|
|
77
|
+
# Install all skills for Claude Code globally
|
|
78
|
+
npx @pedroab0/skills --agent claude --skill all
|
|
79
|
+
|
|
80
|
+
# Install SDD skills for Google Antigravity
|
|
81
|
+
npx @pedroab0/skills --agent antigravity --skill figma-extractor,figma-node-builder
|
|
82
|
+
|
|
83
|
+
# Install one-shot coder for Cursor (.cursor/rules)
|
|
84
|
+
npx @pedroab0/skills --agent cursor --skill figma-to-code
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Manual Installation Guide
|
|
90
|
+
|
|
91
|
+
If you prefer to install manually, all skills follow the open Agent Skills standard (`SKILL.md` format):
|
|
92
|
+
|
|
93
|
+
### 1. Claude Code
|
|
94
|
+
|
|
95
|
+
Claude Code supports skills both locally within a repository or globally across your user profile.
|
|
96
|
+
|
|
97
|
+
- **Global Installation (All Projects)**:
|
|
98
|
+
```bash
|
|
99
|
+
mkdir -p ~/.claude/skills
|
|
100
|
+
ln -s /path/to/skills/figma-to-code ~/.claude/skills/figma-to-code
|
|
101
|
+
ln -s /path/to/skills/figma-extractor ~/.claude/skills/figma-extractor
|
|
102
|
+
ln -s /path/to/skills/figma-node-builder ~/.claude/skills/figma-node-builder
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
- **Usage & Activation**:
|
|
106
|
+
- **Automatic**: Claude Code inspects `SKILL.md` descriptions on startup and loads the appropriate skill automatically based on your prompt.
|
|
107
|
+
- **Manual Slash Command**: Run `/figma-to-code <FigmaURL>` or `/figma-extractor <FigmaURL>` directly in the chat.
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
### 2. OpenCode
|
|
112
|
+
|
|
113
|
+
OpenCode discovers skills from project or user configuration directories, maintaining full compatibility with the open `SKILL.md` standard.
|
|
114
|
+
|
|
115
|
+
- **Global Installation (All Projects)**:
|
|
116
|
+
```bash
|
|
117
|
+
mkdir -p ~/.config/opencode/skills
|
|
118
|
+
ln -s /path/to/skills/figma-to-code ~/.config/opencode/skills/figma-to-code
|
|
119
|
+
ln -s /path/to/skills/figma-extractor ~/.config/opencode/skills/figma-extractor
|
|
120
|
+
ln -s /path/to/skills/figma-node-builder ~/.config/opencode/skills/figma-node-builder
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
### 3. Cursor
|
|
126
|
+
|
|
127
|
+
In Cursor, reference skills via `.cursor/rules/` or mention them in Composer chat:
|
|
128
|
+
* To extract specs: prompt `@figma-extractor extract this frame: <url>`.
|
|
129
|
+
* To implement a spec: prompt `@figma-node-builder implement .specs/card.json`.
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
### 4. Google Antigravity / Gemini CLI
|
|
134
|
+
|
|
135
|
+
Symlink or copy the skills into your Antigravity skills directory (`~/.gemini/config/skills` for Antigravity 2.0, or legacy `~/.gemini/antigravity-cli/skills`):
|
|
136
|
+
```bash
|
|
137
|
+
mkdir -p ~/.gemini/config/skills
|
|
138
|
+
ln -s /path/to/skills/figma-to-code ~/.gemini/config/skills/figma-to-code
|
|
139
|
+
ln -s /path/to/skills/figma-extractor ~/.gemini/config/skills/figma-extractor
|
|
140
|
+
ln -s /path/to/skills/figma-node-builder ~/.gemini/config/skills/figma-node-builder
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
145
|
+
## Repository Structure
|
|
146
|
+
|
|
147
|
+
```text
|
|
148
|
+
skills/
|
|
149
|
+
├── README.md # Curated skills repository catalog (this file)
|
|
150
|
+
├── figma-to-code/ # Direct one-shot Figma to UI code generator
|
|
151
|
+
│ ├── SKILL.md # One-shot agent skill definition
|
|
152
|
+
│ ├── README.md # One-shot documentation & flags
|
|
153
|
+
│ └── scripts/ # Extraction scripts & test suite
|
|
154
|
+
├── figma-extractor/ # SDD Step 1: Pure Figma design specification scraper
|
|
155
|
+
│ ├── SKILL.md # Pure scraper skill definition (outputs to .specs/)
|
|
156
|
+
│ ├── README.md # In-depth scraper documentation & flags
|
|
157
|
+
│ ├── figma-plugin/ # Zero-API Figma Desktop plugin (AST + preview exporter)
|
|
158
|
+
│ └── scripts/ # Standalone Node.js extraction scripts & tests
|
|
159
|
+
└── figma-node-builder/ # SDD Step 2: Spec-driven UI component builder
|
|
160
|
+
├── SKILL.md # 4-Phase SDD implementation skill definition
|
|
161
|
+
├── README.md # In-depth builder documentation
|
|
162
|
+
└── scripts/ # Spec inspector CLI & test suite
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
---
|
|
166
|
+
|
|
167
|
+
## Adding New Skills
|
|
168
|
+
|
|
169
|
+
When adding new skills to this curation:
|
|
170
|
+
1. Create a dedicated directory: `<skill-name>/`
|
|
171
|
+
2. Include a `SKILL.md` with standard YAML frontmatter (`name`, `description`) and agent instructions.
|
|
172
|
+
3. Provide a `README.md` with detailed skill-specific documentation and manual execution flags.
|
|
173
|
+
4. Keep scripts self-contained with minimal external dependencies.
|
|
174
|
+
5. Update this root `README.md` catalog to list the new skill.
|