@lebtiga/sonic-agent 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.
Files changed (62) hide show
  1. package/LICENSE.txt +223 -0
  2. package/README.md +61 -0
  3. package/bin/sonic.js +304 -0
  4. package/lib/index.js +20 -0
  5. package/lib/installer.js +156 -0
  6. package/lib/license.js +48 -0
  7. package/package.json +46 -0
  8. package/plugin/.claude-plugin/plugin.json +13 -0
  9. package/plugin/README.md +100 -0
  10. package/plugin/agents/sonic.md +80 -0
  11. package/plugin/commands/sonic-build.md +145 -0
  12. package/plugin/commands/sonic-help.md +71 -0
  13. package/plugin/skills/accessibility-qa/SKILL.md +160 -0
  14. package/plugin/skills/accessibility-qa/templates/accessibility-qa-report-template.md +123 -0
  15. package/plugin/skills/accessibility-qa/templates/wcag-compliance-statement.md +70 -0
  16. package/plugin/skills/aka-wireframe-wp/SKILL.md +149 -0
  17. package/plugin/skills/aka-wireframe-wp/assets/aka-framework-theme/README.md +190 -0
  18. package/plugin/skills/aka-wireframe-wp/assets/aka-framework-theme/footer.php +49 -0
  19. package/plugin/skills/aka-wireframe-wp/assets/aka-framework-theme/functions.php +395 -0
  20. package/plugin/skills/aka-wireframe-wp/assets/aka-framework-theme/header.php +58 -0
  21. package/plugin/skills/aka-wireframe-wp/assets/aka-framework-theme/index.php +39 -0
  22. package/plugin/skills/aka-wireframe-wp/assets/aka-framework-theme/page-answer.php +62 -0
  23. package/plugin/skills/aka-wireframe-wp/assets/aka-framework-theme/page-authority-hub.php +122 -0
  24. package/plugin/skills/aka-wireframe-wp/assets/aka-framework-theme/page-knowledge.php +58 -0
  25. package/plugin/skills/aka-wireframe-wp/assets/aka-framework-theme/style.css +633 -0
  26. package/plugin/skills/aka-wireframe-wp/references/content-generator.md +371 -0
  27. package/plugin/skills/aka-wireframe-wp/references/internal-linker.md +430 -0
  28. package/plugin/skills/aka-wireframe-wp/references/orchestrator.md +269 -0
  29. package/plugin/skills/aka-wireframe-wp/references/prompts-library.md +880 -0
  30. package/plugin/skills/aka-wireframe-wp/references/seo-optimizer.md +433 -0
  31. package/plugin/skills/aka-wireframe-wp/references/strategy-planner.md +317 -0
  32. package/plugin/skills/aka-wireframe-wp/references/wordpress-deployer.md +545 -0
  33. package/plugin/skills/authority-site-builder/SKILL.md +138 -0
  34. package/plugin/skills/brand-philosophy/SKILL.md +77 -0
  35. package/plugin/skills/freepik-spaces/SKILL.md +122 -0
  36. package/plugin/skills/freepik-spaces/docs/automation-guide.md +233 -0
  37. package/plugin/skills/freepik-spaces/docs/research-notes.md +264 -0
  38. package/plugin/skills/freepik-spaces/plans/naseberry-demo-plan.md +320 -0
  39. package/plugin/skills/freepik-spaces/templates/naseberry-demo.json +302 -0
  40. package/plugin/skills/freepik-spaces/templates/saas-demo.json +212 -0
  41. package/plugin/skills/frontend-design/LICENSE.txt +177 -0
  42. package/plugin/skills/frontend-design/SKILL.md +77 -0
  43. package/plugin/skills/programmatic-seo/SKILL.md +236 -0
  44. package/plugin/skills/programmatic-seo/references/playbooks.md +293 -0
  45. package/plugin/skills/seo-qa/SKILL.md +132 -0
  46. package/plugin/skills/seo-qa/templates/schema-localbusiness.json +49 -0
  47. package/plugin/skills/seo-qa/templates/schema-service.json +36 -0
  48. package/plugin/skills/seo-qa/templates/seo-qa-report-template.md +90 -0
  49. package/plugin/skills/visual-identity/SKILL.md +109 -0
  50. package/plugin/skills/visual-identity/templates/style-guide-template.md +108 -0
  51. package/plugin/skills/website-image-gen/SKILL.md +82 -0
  52. package/plugin/skills/website-image-gen/templates/blog-featured.md +56 -0
  53. package/plugin/skills/website-image-gen/templates/hero-service-photo.md +56 -0
  54. package/plugin/skills/wordpress-pro/SKILL.md +105 -0
  55. package/plugin/skills/wordpress-pro/references/gutenberg-blocks.md +870 -0
  56. package/plugin/skills/wordpress-pro/references/hooks-filters.md +845 -0
  57. package/plugin/skills/wordpress-pro/references/performance-security.md +1012 -0
  58. package/plugin/skills/wordpress-pro/references/plugin-architecture.md +1041 -0
  59. package/plugin/skills/wordpress-pro/references/theme-development.md +858 -0
  60. package/plugin/sops/SOP-Sonic 777/authority-site-sop.html +1100 -0
  61. package/plugin/sops/SOP-WORDPRESS-330-PAGE-SITES.md +926 -0
  62. package/scripts/postinstall.js +109 -0
@@ -0,0 +1,77 @@
1
+ ---
2
+ name: brand-philosophy
3
+ version: 1.0.0
4
+ description: Run a brand philosophy discovery session before building a site. Produces a Brand Brief — voice, tone, positioning, target customer, brand pillars. This becomes the source of truth for design and copy decisions downstream. Use this BEFORE any design or content work.
5
+ ---
6
+
7
+ # Brand Philosophy Skill
8
+
9
+ The discovery step that ALL good agencies do before designing anything. Without this, sites end up generic and forgettable. With it, every downstream decision has a reason.
10
+
11
+ ## When to use this
12
+
13
+ - At the **start** of any new authority site build
14
+ - Before invoking `visual-identity`
15
+ - Before invoking `frontend-design` or `wordpress-pro` for design work
16
+ - Before generating any copy with `programmatic-seo`
17
+
18
+ ## Output
19
+
20
+ A `BRAND-BRIEF.md` saved at the project root containing:
21
+
22
+ 1. **Target Customer** — demographic, psychographic, pain points
23
+ 2. **Positioning Statement** — why this business vs competitors
24
+ 3. **Brand Attitude** — 3-5 adjectives (e.g. "premium, trustworthy, direct")
25
+ 4. **Voice & Tone** — how the brand speaks (formal/casual, expert/peer, urgent/calm)
26
+ 5. **Three Brand Pillars** — non-negotiable values that show up everywhere
27
+ 6. **What We're NOT** — explicit anti-positioning
28
+ 7. **The Feeling** — what visitors should feel after 10 seconds on the site
29
+
30
+ ## The Discovery Flow
31
+
32
+ Sonic asks these questions in order. **Don't skip questions** even if the user seems impatient — each one informs design decisions later.
33
+
34
+ ### Round 1 — The Customer
35
+
36
+ > Before we design anything, let's get clear on who we're building this for.
37
+ >
38
+ > 1. **Who is the ideal customer for this business?** Be specific — "homeowners" isn't enough. Age range, income level, who they call when they have this problem.
39
+ > 2. **What's the moment they go looking for this service?** Are they panicking (burst pipe), planning (annual maintenance), or comparison shopping (new install)?
40
+ > 3. **What's their biggest fear about hiring someone in this category?** Bad work? Getting overcharged? Not understanding what they need?
41
+
42
+ ### Round 2 — The Positioning
43
+
44
+ > 4. **Who are 2-3 competitors you'd lose business to?** Real names if you have them.
45
+ > 5. **What does this business do differently or better than those competitors?** Even small things count.
46
+ > 6. **What's a common belief in this industry that you actually disagree with?** (This is gold for differentiation.)
47
+
48
+ ### Round 3 — The Attitude
49
+
50
+ > 7. **Pick 3 brands you admire (any industry).** Not direct competitors — brands whose VIBE feels right. Why those?
51
+ > 8. **If this brand were a person, what kind of person?** (e.g. "the experienced contractor who explains things plainly" vs "the slick salesperson with the white truck")
52
+ > 9. **What's the ONE thing you absolutely don't want this site to feel like?** (Cheesy? Cheap? Corporate? Generic?)
53
+
54
+ ### Round 4 — The Pillars
55
+
56
+ > 10. **What 3 values does the business genuinely live by?** Not aspirational — actual operating principles. (e.g. "Show up on time" / "Quote it before you do it" / "If we break it, we fix it free")
57
+
58
+ ### Round 5 — The Feeling
59
+
60
+ > 11. **A homeowner lands on the site, reads for 10 seconds, then leaves. What do you want them to feel?** (Trust? Urgency? Curiosity? Relief? "This is the one"?)
61
+
62
+ ## After the Q&A
63
+
64
+ Synthesize the answers into a 1-page Brand Brief. **Be specific and quotable** — generic answers ("we're trustworthy and reliable") get rewritten until they're concrete ("we're the only HVAC company in Tampa that texts you a 30-min ETA window before showing up").
65
+
66
+ Save to: `BRAND-BRIEF.md` in the project workspace root.
67
+
68
+ ## Then hand off
69
+
70
+ Once the user approves the Brand Brief, invoke the `visual-identity` skill next.
71
+
72
+ ## What NOT to do
73
+
74
+ - ❌ Don't generate generic answers if the user gives short replies — push back, ask follow-ups
75
+ - ❌ Don't skip rounds because "we kind of covered it" — every round informs different design decisions
76
+ - ❌ Don't accept "we're like X but better" — that's not a positioning statement
77
+ - ❌ Don't move to design until the brief is signed off
@@ -0,0 +1,122 @@
1
+ # Freepik Spaces Skill
2
+
3
+ Automate Freepik Spaces workflows via browser control. Create, configure, and run AI-powered visual pipelines for product shots, marketing campaigns, and video content.
4
+
5
+ ## Prerequisites
6
+
7
+ - Freepik account with Premium/credits
8
+ - OpenClaw Browser Relay extension installed and attached to Chrome
9
+ - Logged into Freepik in Chrome
10
+
11
+ ## Core Concepts
12
+
13
+ ### Node Types
14
+
15
+ | Node Type | Inputs | Outputs | Purpose |
16
+ |-----------|--------|---------|---------|
17
+ | **Upload** | None | Media | Import local files |
18
+ | **Media** | None | Media | Use Freepik stock/history |
19
+ | **Text** | None | Text | Prompts, lists, notes |
20
+ | **Image Generator** | Text + Reference | Generated Image | AI image creation |
21
+ | **Video Generator** | Text + Start/End Images | Generated Video | AI video creation |
22
+ | **Assistant** | Text + Reference | Text | AI writing/prompts |
23
+ | **Image Upscaler** | Image | Upscaled Image | Enhance resolution |
24
+ | **Camera Angles** | Image | Angle Variations | Generate perspectives |
25
+ | **List** | Text items | Multiple outputs | Fan out to generators |
26
+ | **Container** | Multiple media | Grouped display | Organize outputs |
27
+
28
+ ### Connectors
29
+
30
+ - **Direction**: Output (top-right) → Input (bottom-left)
31
+ - **One-to-many**: Single output can feed multiple inputs
32
+ - **One-directional**: Data flows source → target only
33
+
34
+ ### Running Workflows
35
+
36
+ - **Run single node**: Click Run button (bottom-right of node)
37
+ - **Run from here**: Executes node + all downstream nodes
38
+ - **Prerequisites**: All required inputs must be connected before Run activates
39
+
40
+ ## Workflow Patterns
41
+
42
+ ### Product Demo Pipeline
43
+ ```
44
+ Product Input → Component List → 3D Renders
45
+ → Target Audience → Persona Images
46
+ → Locations → Scene Images
47
+ All outputs → Composite Shots → Final Campaign Images/Videos
48
+ ```
49
+
50
+ ### SaaS Demo Pipeline
51
+ ```
52
+ Product Description → Feature List → Dashboard Screenshots
53
+ → UI Mockups
54
+ → User Personas → User in Context Images
55
+ → Use Cases → Scenario Visualizations
56
+ All outputs → Product + User + Scenario Composites → Demo Video
57
+ ```
58
+
59
+ ## Browser Automation
60
+
61
+ ### Key Selectors
62
+
63
+ ```javascript
64
+ // Navigation
65
+ "button:has-text('New space')" // Create new space
66
+ "button:has-text('Templates')" // Templates tab
67
+ "button:has-text('+ Add element')" // Add node menu
68
+
69
+ // Node Types (in Add menu)
70
+ "button:has-text('Text')"
71
+ "button:has-text('Image Generator')"
72
+ "button:has-text('Video Generator')"
73
+ "button:has-text('Assistant')"
74
+ "button:has-text('Upscaler')"
75
+
76
+ // Node Actions
77
+ "button:has-text('Run')" // Execute node
78
+ "button:has-text('Run from here')" // Execute chain
79
+ ```
80
+
81
+ ### Common Operations
82
+
83
+ 1. **Create Space**: Click "New space" button
84
+ 2. **Add Node**: Click "+ Add element" → select node type
85
+ 3. **Edit Text Node**: Click node → type content
86
+ 4. **Connect Nodes**: Drag from output point to input point
87
+ 5. **Run Workflow**: Click Run on final node or "Run from here"
88
+
89
+ ## Templates
90
+
91
+ ### SaaS Demo Template
92
+ See `templates/saas-demo.json` for the full workflow definition.
93
+
94
+ **Stages:**
95
+ 1. Product Input (name, description, features)
96
+ 2. Feature Visualization (dashboard, UI elements)
97
+ 3. User Persona Generation
98
+ 4. Use Case Scenarios
99
+ 5. Product + User Composites
100
+ 6. Video Generation
101
+
102
+ ## Usage
103
+
104
+ ```bash
105
+ # Create a new SaaS demo workflow
106
+ # 1. Attach browser relay to Freepik tab
107
+ # 2. Navigate to Spaces
108
+ # 3. Use this skill to automate template creation
109
+ ```
110
+
111
+ ## Files
112
+
113
+ - `SKILL.md` - This documentation
114
+ - `docs/` - Detailed guides and research
115
+ - `templates/` - Workflow template definitions
116
+ - `scripts/` - Automation helper scripts
117
+
118
+ ## Resources
119
+
120
+ - [Freepik Spaces Docs](https://www.freepik.com/ai/docs/introduction-to-spaces)
121
+ - [Nodes & Connectors](https://www.freepik.com/ai/docs/nodes-and-connectors)
122
+ - [Your First Space](https://www.freepik.com/ai/docs/your-first-space)
@@ -0,0 +1,233 @@
1
+ # Freepik Spaces Automation Guide
2
+
3
+ Step-by-step browser automation patterns for building workflows.
4
+
5
+ ## Prerequisites
6
+
7
+ 1. OpenClaw Browser Relay extension installed
8
+ 2. Attached to Chrome tab on Freepik
9
+ 3. Logged into Freepik account
10
+
11
+ ## Common Actions
12
+
13
+ ### Navigate to Spaces
14
+
15
+ ```javascript
16
+ // Direct URL
17
+ browser.navigate({ targetUrl: "https://www.freepik.com/pikaso/spaces" })
18
+
19
+ // Or via menu
20
+ browser.act({ kind: "click", ref: "spaces-menu-item" })
21
+ ```
22
+
23
+ ### Create New Space
24
+
25
+ ```javascript
26
+ // Click "New space" button
27
+ browser.act({ kind: "click", ref: "new-space-button" })
28
+ // Ref usually: button with text "New space"
29
+ ```
30
+
31
+ ### Add a Node
32
+
33
+ 1. Click "+ Add element" (left sidebar, typically first button)
34
+ 2. Select node type from menu:
35
+ - Text
36
+ - Upload
37
+ - Media
38
+ - Image Generator
39
+ - Video Generator
40
+ - Assistant
41
+ - Image Upscaler
42
+ - Camera Angles
43
+
44
+ ```javascript
45
+ // Open add menu
46
+ browser.act({ kind: "click", ref: "add-element-button" })
47
+
48
+ // Select node type (look for the type name)
49
+ browser.act({ kind: "click", ref: "text-node-option" })
50
+ ```
51
+
52
+ ### Edit Text Node
53
+
54
+ 1. Click on the text node to select it
55
+ 2. Start typing (or click into the text area)
56
+ 3. Use toolbar for formatting
57
+
58
+ ```javascript
59
+ // Select node
60
+ browser.act({ kind: "click", ref: "text-node" })
61
+
62
+ // Type content
63
+ browser.act({ kind: "type", ref: "text-node-textarea", text: "Your prompt here" })
64
+ ```
65
+
66
+ ### Configure Image Generator
67
+
68
+ 1. Click on Image Generator node
69
+ 2. Adjust settings in panel:
70
+ - Model dropdown
71
+ - Aspect ratio
72
+ - Number of images
73
+
74
+ ```javascript
75
+ // Select generator node
76
+ browser.act({ kind: "click", ref: "image-generator-node" })
77
+
78
+ // Open model dropdown
79
+ browser.act({ kind: "click", ref: "model-dropdown" })
80
+
81
+ // Select model (e.g., Flux)
82
+ browser.act({ kind: "click", ref: "flux-option" })
83
+ ```
84
+
85
+ ### Connect Nodes
86
+
87
+ 1. Hover over source node to reveal output point (top-right)
88
+ 2. Click and drag from output to target's input (bottom-left)
89
+ 3. Release to create connection
90
+
91
+ ```javascript
92
+ // This requires drag operation
93
+ browser.act({
94
+ kind: "drag",
95
+ startRef: "source-node-output",
96
+ endRef: "target-node-input"
97
+ })
98
+ ```
99
+
100
+ ### Run a Node
101
+
102
+ 1. Click on the node
103
+ 2. Click Run button (bottom-right of node, or in action bar)
104
+
105
+ ```javascript
106
+ // Click Run button on node
107
+ browser.act({ kind: "click", ref: "run-button" })
108
+
109
+ // Or "Run from here" for chain execution
110
+ browser.act({ kind: "click", ref: "run-from-here" })
111
+ ```
112
+
113
+ ### Rename a Node
114
+
115
+ 1. Click node to select
116
+ 2. Click node title/name area
117
+ 3. Type new name
118
+
119
+ ```javascript
120
+ browser.act({ kind: "click", ref: "node-title" })
121
+ browser.act({ kind: "type", ref: "node-title-input", text: "NEW NAME" })
122
+ browser.act({ kind: "press", key: "Enter" })
123
+ ```
124
+
125
+ ## Workflow: Build SaaS Demo Template
126
+
127
+ ### Phase 1: Create Structure
128
+
129
+ ```javascript
130
+ // 1. Create new space
131
+ await browser.navigate({ targetUrl: "https://www.freepik.com/pikaso/spaces" })
132
+ await browser.act({ kind: "click", ref: "new-space-button" })
133
+
134
+ // 2. Add START text node
135
+ await browser.act({ kind: "click", ref: "add-element" })
136
+ await browser.act({ kind: "click", ref: "text-option" })
137
+ // Type content
138
+ await browser.act({ kind: "type", text: "SaaS Demo Workflow - START HERE" })
139
+
140
+ // 3. Add Product Input text node
141
+ // Repeat add element flow...
142
+
143
+ // 4. Add Feature List (List node if available, or multiple Text nodes)
144
+
145
+ // 5. Add Image Generators for each output type
146
+ // - Dashboard screenshots
147
+ // - UI mockups
148
+ // - User personas
149
+ // - Scenario images
150
+
151
+ // 6. Connect all nodes appropriately
152
+ ```
153
+
154
+ ### Phase 2: Configure Generators
155
+
156
+ ```javascript
157
+ // For each Image Generator:
158
+ // 1. Click to select
159
+ // 2. Set model to Flux Kontext Pro (good quality, efficient)
160
+ // 3. Set aspect ratio (16:9 for dashboards, 1:1 for portraits)
161
+ // 4. Set num_images to 4
162
+
163
+ // For prompts, use Assistant node to generate from product description
164
+ ```
165
+
166
+ ### Phase 3: Run Workflow
167
+
168
+ ```javascript
169
+ // Run in order:
170
+ // 1. Text/input nodes (just need content)
171
+ // 2. Assistant nodes (to generate prompts)
172
+ // 3. Image generators (parallel if independent)
173
+ // 4. Final composite/hero shots
174
+ ```
175
+
176
+ ## Tips for Automation
177
+
178
+ ### Reliable Node Selection
179
+
180
+ Nodes can be identified by:
181
+ - Their label/title text
182
+ - Generated thumbnails
183
+ - Position on canvas
184
+ - Node type icons
185
+
186
+ ### Handling Loading States
187
+
188
+ After running a generator, wait for:
189
+ - Loading indicator to disappear
190
+ - Thumbnail preview to appear
191
+ - Run button to re-enable
192
+
193
+ ```javascript
194
+ // Wait pattern
195
+ browser.act({ kind: "wait", textGone: "Generating..." })
196
+ // Or wait for element
197
+ browser.act({ kind: "wait", timeMs: 5000 })
198
+ ```
199
+
200
+ ### Error Recovery
201
+
202
+ If a generation fails:
203
+ 1. Click the node
204
+ 2. Check input connections
205
+ 3. Verify prompt text is valid
206
+ 4. Click Run again
207
+
208
+ ### Batch Operations
209
+
210
+ Use List nodes to fan out:
211
+ 1. Create List node with multiple items
212
+ 2. Connect to Image Generator
213
+ 3. Generator produces output for each list item
214
+
215
+ ## Snapshot Strategy
216
+
217
+ Take snapshots before/after key operations:
218
+ - After creating new space (capture canvas state)
219
+ - After adding nodes (verify structure)
220
+ - After running generators (capture outputs)
221
+
222
+ ```javascript
223
+ // Capture current state
224
+ const snapshot = await browser.snapshot({ profile: "chrome", targetId: tabId })
225
+ // Parse snapshot to verify expected nodes exist
226
+ ```
227
+
228
+ ## Known Limitations
229
+
230
+ 1. **Drag operations**: May be unreliable; prefer click-based alternatives when available
231
+ 2. **Dynamic refs**: Node refs change between snapshots; use text/label matching
232
+ 3. **Canvas zoom**: May need to zoom out to see all nodes
233
+ 4. **Loading times**: AI generation can take 10-60 seconds; build in waits
@@ -0,0 +1,264 @@
1
+ # Freepik Spaces Research Notes
2
+
3
+ *Compiled: 2026-02-13*
4
+
5
+ ## Overview
6
+
7
+ Freepik Spaces is a **node-based visual workflow builder** for AI generation. It allows chaining together text prompts, image generators, video generators, and other tools into reusable workflows.
8
+
9
+ **Key Benefits:**
10
+ - Visual pipeline design on infinite canvas
11
+ - Multiple AI models in one interface
12
+ - Reusable templates
13
+ - Real-time collaboration
14
+ - One subscription covers multiple tools
15
+
16
+ ## Node System Deep Dive
17
+
18
+ ### Input Nodes (Output Only)
19
+
20
+ **Upload Node**
21
+ - Import files from local computer
22
+ - Supports images, videos
23
+ - No incoming connections
24
+ - Output connects to generators, upscalers, assistant
25
+
26
+ **Media Node**
27
+ - Select from personal history, Freepik stock, or Community
28
+ - Great for remixing existing content
29
+ - Output connects to generators, upscalers, assistant
30
+
31
+ **Text Node**
32
+ - Write prompts, instructions, or notes
33
+ - Supports formatting: headings, bold, italic, lists
34
+ - Toolbar appears on click with:
35
+ - Background color
36
+ - Rename/duplicate/delete
37
+ - Preview
38
+ - Run button
39
+ - Output connects to Image/Video generators, Assistant
40
+
41
+ ### Generator Nodes
42
+
43
+ **Image Generator**
44
+ - **Inputs**: Text prompt + Reference image (both optional but at least one required)
45
+ - **Output**: Generated images
46
+ - **Settings**:
47
+ - Model selection (Flux, NanoBanana Pro, etc.)
48
+ - Aspect ratio
49
+ - Number of images (1-4)
50
+ - Models available:
51
+ - Flux Kontext Pro (good consistency, saves credits)
52
+ - NanoBanana Pro (high quality edits)
53
+ - And others
54
+
55
+ **Video Generator**
56
+ - **Inputs**: Text + Start image + End image
57
+ - **Output**: Generated video
58
+ - **Settings**:
59
+ - Model (Kling, Seedance 4.5, etc.)
60
+ - Duration
61
+ - Aspect ratio
62
+ - Resolution
63
+ - Number of outputs
64
+
65
+ **Assistant Node**
66
+ - AI-powered text helper
67
+ - **Inputs**: Text + Reference media
68
+ - **Output**: Generated text
69
+ - Uses:
70
+ - Generate prompts from descriptions
71
+ - Describe images/videos
72
+ - Provide variations/suggestions
73
+ - Refine ideas
74
+
75
+ **Image Upscaler**
76
+ - **Input**: Single image
77
+ - **Output**: Upscaled image
78
+ - **Settings**:
79
+ - Mode: Creative or Precision
80
+ - Scale factor
81
+ - Engine presets
82
+ - Creative mode accepts text prompt for guidance
83
+
84
+ **Camera Angles**
85
+ - **Input**: Single image
86
+ - **Output**: Same content from different angles
87
+ - Features:
88
+ - Front/side/top rotations
89
+ - Camera position control
90
+ - Start/end frames for video transitions
91
+ - Great for product imagery
92
+
93
+ ### List Node
94
+
95
+ - Contains multiple text items
96
+ - Each item fans out to connected generators
97
+ - Perfect for batch generation:
98
+ - Multiple product variations
99
+ - Multiple personas
100
+ - Multiple locations
101
+
102
+ ### Container Node
103
+
104
+ - Groups multiple outputs visually
105
+ - Organizational tool
106
+ - Helps structure complex workflows
107
+
108
+ ## Connectors
109
+
110
+ ### Connection Points
111
+ - **Output**: Top-right corner of node
112
+ - **Input**: Bottom-left corner of node
113
+ - Points visible on hover
114
+
115
+ ### Behavior
116
+ - One-directional (source → target)
117
+ - One output → multiple inputs allowed
118
+ - Click connection line to delete
119
+
120
+ ### Valid Connections by Node Type
121
+
122
+ | Source Node | Valid Targets |
123
+ |-------------|---------------|
124
+ | Upload/Media | Image Gen, Video Gen, Assistant, Upscaler, Camera Angles |
125
+ | Text | Image Gen, Video Gen, Assistant |
126
+ | Image Generator | Upscaler, Camera Angles, Video Gen, Assistant, Container |
127
+ | Video Generator | Assistant, Container |
128
+ | Assistant | Image Gen, Video Gen, any text-accepting node |
129
+ | Upscaler | Camera Angles, Video Gen, Container |
130
+ | Camera Angles | Upscaler, Video Gen, Container |
131
+
132
+ ## Running Workflows
133
+
134
+ ### Single Node Execution
135
+ 1. Click node with selection tool
136
+ 2. Click Run button (bottom-right)
137
+ 3. Node processes and produces output
138
+ 4. Output becomes available for downstream nodes
139
+
140
+ ### Chain Execution
141
+ 1. Click Run icon on a node
142
+ 2. Select "Run from here"
143
+ 3. Executes selected node + all connected downstream nodes
144
+ 4. Great for re-running after upstream changes
145
+
146
+ ### Prerequisites
147
+ - All required inputs must be connected
148
+ - Run button stays inactive until prerequisites met
149
+
150
+ ## Best Practices (from community)
151
+
152
+ ### Efficiency
153
+ - Group related nodes visually
154
+ - Use List nodes for batch operations
155
+ - Copy/paste node structures for similar operations
156
+ - Use Assistant to generate prompts rather than writing manually
157
+
158
+ ### Credit Conservation
159
+ - Flux Kontext Pro: Good quality, lower credit cost
160
+ - NanoBanana Pro: Higher quality, higher cost
161
+ - Test with fewer outputs first, then scale up
162
+
163
+ ### Known Issues (Reddit feedback)
164
+ - Assets sometimes mix between projects
165
+ - Saved Spaces occasionally not found
166
+ - Consider phygital plus as alternative for complex node work
167
+
168
+ ## Template Analysis: Dyson Vacuum Workflow
169
+
170
+ ### Structure
171
+ ```
172
+ START HERE
173
+
174
+ INPUT PRODUCT HERE → PRODUCT BREAKDOWN
175
+ ↓ ↓
176
+ TARGET AUDIENCE MAKER → LIST OF COMPONENTS
177
+ ↓ ↓
178
+ LIST OF TARGET 3D RENDERS OF
179
+ DEMOGRAPHIC PRODUCT PARTS
180
+ ↓ ↓
181
+ IMAGE GENERATION 360 3D PRODUCT
182
+ OF DEMOGRAPHIC VIEWS
183
+ ↓ ↓
184
+ PRODUCT LOCATION → PRODUCT ASSEMBLY
185
+ LIST & GENERATION ↓
186
+ ↓ 3D PRODUCT EXPLODED
187
+ ↓ DIAGRAM
188
+ ↓ ↓
189
+ └────────┬───────────────┘
190
+
191
+ PRODUCT + TARGET DEMOGRAPHIC + LOCATION
192
+
193
+ TV COMMERCIAL SHOTS (COMPOSITES)
194
+
195
+ TV COMMERCIAL SHOTS W/ EXPLODED COMPONENTS
196
+ ```
197
+
198
+ ### Key Patterns
199
+ 1. **Parallel branches**: Product visuals + Demographics + Locations
200
+ 2. **List nodes**: Fan out to multiple generators
201
+ 3. **Convergence**: Multiple streams combine for final output
202
+ 4. **Container nodes**: Group related outputs (TV Commercial Shots)
203
+
204
+ ## SaaS Demo Template Design
205
+
206
+ ### Target Output
207
+ - Dashboard/analytics product visuals
208
+ - User personas in context
209
+ - Feature highlights
210
+ - Demo video clips
211
+
212
+ ### Proposed Structure
213
+ ```
214
+ PRODUCT INPUT (Name, Description, Key Features)
215
+
216
+ ├── FEATURE LIST → DASHBOARD SCREENSHOTS (Image Gen)
217
+ │ → UI MOCKUP VARIATIONS
218
+
219
+ ├── USER PERSONAS → PERSONA LIST → USER IMAGES (Image Gen)
220
+ │ (Startup founder, Enterprise, etc.)
221
+
222
+ └── USE CASES → SCENARIO LIST → SCENARIO IMAGES (Image Gen)
223
+ (Data analysis, Team collaboration, etc.)
224
+
225
+ All outputs combine:
226
+
227
+ PRODUCT + USER + SCENARIO COMPOSITES
228
+
229
+ DEMO VIDEO CLIPS (Video Gen) [Phase 2]
230
+ ```
231
+
232
+ ### Prompt Templates
233
+
234
+ **Dashboard Screenshot Prompt:**
235
+ ```
236
+ Professional SaaS dashboard UI screenshot, [PRODUCT] analytics platform,
237
+ clean modern interface, data visualizations, charts and graphs,
238
+ dark mode / light mode, high-fidelity mockup, web application design
239
+ ```
240
+
241
+ **User Persona Prompt:**
242
+ ```
243
+ Professional portrait of [PERSONA TYPE], using laptop showing analytics dashboard,
244
+ modern office environment, natural lighting, business casual attire,
245
+ focused expression, realistic photography style
246
+ ```
247
+
248
+ **Use Case Scenario Prompt:**
249
+ ```
250
+ [PERSONA] using [PRODUCT] for [USE CASE],
251
+ computer screen showing dashboard interface,
252
+ [ENVIRONMENT] setting, professional photography,
253
+ showing [EMOTION/RESULT] from using the product
254
+ ```
255
+
256
+ ## Resources
257
+
258
+ - Official Docs: https://www.freepik.com/ai/docs/introduction-to-spaces
259
+ - Nodes Guide: https://www.freepik.com/ai/docs/nodes-and-connectors
260
+ - First Space Tutorial: https://www.freepik.com/ai/docs/your-first-space
261
+ - YouTube Tutorials:
262
+ - "Build your first creative AI workflow in Spaces" (Freepik Academy)
263
+ - "How to get started with Spaces" (Freepik Academy)
264
+ - "Freepik Just Launched SPACES" (Third-party overview)