opencode-skills-collection 4.1.0 → 4.1.2

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 (219) hide show
  1. package/README.md +46 -42
  2. package/bundled-skills/.antigravity-install-manifest.json +127 -1
  3. package/bundled-skills/360-feedback-system/SKILL.md +481 -0
  4. package/bundled-skills/access-matrix/SKILL.md +338 -0
  5. package/bundled-skills/accounting-audit-system-builder/SKILL.md +302 -0
  6. package/bundled-skills/accounting-audit-system-builder/references/catalog.md +114 -0
  7. package/bundled-skills/accounting-software-selection/SKILL.md +427 -0
  8. package/bundled-skills/accounting-software-selection/references/build-artifacts.md +362 -0
  9. package/bundled-skills/accounting-software-selection/references/common-pitfalls.md +44 -0
  10. package/bundled-skills/accounting-software-selection/references/field-reference.md +93 -0
  11. package/bundled-skills/accounting-software-selection/references/select-options.md +202 -0
  12. package/bundled-skills/admin-access-register/SKILL.md +381 -0
  13. package/bundled-skills/advanced-analytics-dashboard/SKILL.md +318 -0
  14. package/bundled-skills/ai-image-generation-studio/SKILL.md +259 -0
  15. package/bundled-skills/ai-logo-maker/SKILL.md +259 -0
  16. package/bundled-skills/ai-multilingual-dubbing/SKILL.md +259 -0
  17. package/bundled-skills/ai-photo-restyler/SKILL.md +259 -0
  18. package/bundled-skills/ai-podcast-voiceover/SKILL.md +259 -0
  19. package/bundled-skills/alumni-re-hire-tracker/SKILL.md +314 -0
  20. package/bundled-skills/announcement-board/SKILL.md +336 -0
  21. package/bundled-skills/antigravity-maintainer-batch-release/SKILL.md +48 -3
  22. package/bundled-skills/asset-it-management/SKILL.md +407 -0
  23. package/bundled-skills/attendance/SKILL.md +331 -0
  24. package/bundled-skills/audit-log/SKILL.md +314 -0
  25. package/bundled-skills/audit-preparation/SKILL.md +416 -0
  26. package/bundled-skills/beatra/SKILL.md +260 -0
  27. package/bundled-skills/board-governance/SKILL.md +360 -0
  28. package/bundled-skills/brand-growth-system-builder/SKILL.md +360 -0
  29. package/bundled-skills/brand-kit-print-collateral/SKILL.md +498 -0
  30. package/bundled-skills/buddy-program-manager/SKILL.md +329 -0
  31. package/bundled-skills/budget-cash-flow/SKILL.md +352 -0
  32. package/bundled-skills/busabase/SKILL.md +118 -0
  33. package/bundled-skills/business-email-template/SKILL.md +480 -0
  34. package/bundled-skills/business-email-template/references/common-pitfalls.md +30 -0
  35. package/bundled-skills/business-website-setup/SKILL.md +489 -0
  36. package/bundled-skills/business-website-setup/references/common-pitfalls.md +32 -0
  37. package/bundled-skills/candidate-talent-pool/SKILL.md +359 -0
  38. package/bundled-skills/capacity-workload-planner/SKILL.md +354 -0
  39. package/bundled-skills/changelog-entry/SKILL.md +141 -0
  40. package/bundled-skills/clients-accounts/SKILL.md +398 -0
  41. package/bundled-skills/code-of-conduct/SKILL.md +488 -0
  42. package/bundled-skills/code-of-conduct/references/common-pitfalls.md +31 -0
  43. package/bundled-skills/company-email-accounts/SKILL.md +404 -0
  44. package/bundled-skills/competency-matrix/SKILL.md +335 -0
  45. package/bundled-skills/contract-document-renewal/SKILL.md +396 -0
  46. package/bundled-skills/course-upskilling-requests/SKILL.md +354 -0
  47. package/bundled-skills/credit-cycle-analysis/SKILL.md +303 -0
  48. package/bundled-skills/credit-cycle-analysis/references/best-practices.md +35 -0
  49. package/bundled-skills/credit-cycle-analysis/references/common-pitfalls.md +5 -0
  50. package/bundled-skills/credit-cycle-analysis/references/examples.md +34 -0
  51. package/bundled-skills/credit-cycle-analysis/references/field-reference.md +47 -0
  52. package/bundled-skills/credit-cycle-analysis/references/how-it-works.md +494 -0
  53. package/bundled-skills/credit-cycle-analysis/references/security-notes.md +16 -0
  54. package/bundled-skills/credit-cycle-analysis/references/select-options.md +32 -0
  55. package/bundled-skills/csv-manual-export/SKILL.md +499 -0
  56. package/bundled-skills/csv-manual-export/references/common-pitfalls.md +19 -0
  57. package/bundled-skills/culture-retention/SKILL.md +346 -0
  58. package/bundled-skills/data-export-engine/SKILL.md +308 -0
  59. package/bundled-skills/data-privacy-controls/SKILL.md +317 -0
  60. package/bundled-skills/day-book/SKILL.md +499 -0
  61. package/bundled-skills/day-book/references/best-practices.md +32 -0
  62. package/bundled-skills/day-book/references/common-pitfalls.md +58 -0
  63. package/bundled-skills/day-book/references/field-reference.md +45 -0
  64. package/bundled-skills/day-book/references/how-it-works.md +7 -0
  65. package/bundled-skills/day-book/references/related-skills.md +18 -0
  66. package/bundled-skills/day-book/references/relations.md +14 -0
  67. package/bundled-skills/day-book/references/reusable-prompt.md +50 -0
  68. package/bundled-skills/day-book/references/security-safety-notes.md +19 -0
  69. package/bundled-skills/day-book/references/select-options.md +38 -0
  70. package/bundled-skills/dei-dashboard/SKILL.md +307 -0
  71. package/bundled-skills/design-theme-guide/SKILL.md +472 -0
  72. package/bundled-skills/disciplinary-pip-tracker/SKILL.md +345 -0
  73. package/bundled-skills/document-management-system/SKILL.md +328 -0
  74. package/bundled-skills/ecommerce-listing-image-set/SKILL.md +259 -0
  75. package/bundled-skills/employee-suggestion-hub/SKILL.md +322 -0
  76. package/bundled-skills/esop-equity-tracker/SKILL.md +331 -0
  77. package/bundled-skills/events-activities/SKILL.md +355 -0
  78. package/bundled-skills/expense-accounting/SKILL.md +496 -0
  79. package/bundled-skills/expense-accounting/references/common-pitfalls.md +41 -0
  80. package/bundled-skills/expense-accounting/references/related-skills.md +11 -0
  81. package/bundled-skills/expense-accounting/references/reusable-prompt.md +36 -0
  82. package/bundled-skills/expense-management/SKILL.md +351 -0
  83. package/bundled-skills/free-design-resources/SKILL.md +480 -0
  84. package/bundled-skills/free-design-resources/references/common-pitfalls.md +44 -0
  85. package/bundled-skills/free-design-resources/references/related-skills.md +24 -0
  86. package/bundled-skills/free-design-resources/references/reusable-prompt.md +12 -0
  87. package/bundled-skills/gamification-engine/SKILL.md +307 -0
  88. package/bundled-skills/gbp-local-seo-intent/SKILL.md +466 -0
  89. package/bundled-skills/gbp-local-seo-intent/references/best-practices.md +41 -0
  90. package/bundled-skills/gbp-local-seo-intent/references/common-pitfalls.md +40 -0
  91. package/bundled-skills/gbp-local-seo-intent/references/related-skills.md +17 -0
  92. package/bundled-skills/gbp-local-seo-intent/references/reusable-prompt.md +11 -0
  93. package/bundled-skills/gbp-local-seo-intent/references/security-safety-notes.md +27 -0
  94. package/bundled-skills/health-wellness/SKILL.md +334 -0
  95. package/bundled-skills/intern-program/SKILL.md +354 -0
  96. package/bundled-skills/internal-communication/SKILL.md +318 -0
  97. package/bundled-skills/inventory-stock-reconciliation/SKILL.md +470 -0
  98. package/bundled-skills/inventory-stock-reconciliation/references/best-practices.md +18 -0
  99. package/bundled-skills/inventory-stock-reconciliation/references/common-pitfalls.md +42 -0
  100. package/bundled-skills/inventory-stock-reconciliation/references/related-skills.md +13 -0
  101. package/bundled-skills/inventory-stock-reconciliation/references/relations.md +8 -0
  102. package/bundled-skills/inventory-stock-reconciliation/references/reusable-prompt.md +31 -0
  103. package/bundled-skills/inventory-stock-reconciliation/references/security-safety-notes.md +17 -0
  104. package/bundled-skills/inventory-stock-reconciliation/references/select-options.md +45 -0
  105. package/bundled-skills/invoices-billing/SKILL.md +385 -0
  106. package/bundled-skills/issue-grievance-tracker/SKILL.md +400 -0
  107. package/bundled-skills/json-schema-manual/SKILL.md +309 -0
  108. package/bundled-skills/json-schema-manual/references/best-practices.md +9 -0
  109. package/bundled-skills/json-schema-manual/references/common-pitfalls.md +25 -0
  110. package/bundled-skills/json-schema-manual/references/input-modules.md +203 -0
  111. package/bundled-skills/json-schema-manual/references/related-skills.md +8 -0
  112. package/bundled-skills/json-schema-manual/references/reusable-prompt.md +10 -0
  113. package/bundled-skills/json-schema-manual/references/security-safety-notes.md +13 -0
  114. package/bundled-skills/knowledge-base/SKILL.md +318 -0
  115. package/bundled-skills/kpi-tracker/SKILL.md +345 -0
  116. package/bundled-skills/learning-career-development/SKILL.md +349 -0
  117. package/bundled-skills/leave-management/SKILL.md +341 -0
  118. package/bundled-skills/legal-compliance-vault/SKILL.md +324 -0
  119. package/bundled-skills/linktree-link-hub/SKILL.md +453 -0
  120. package/bundled-skills/logo-image-design/SKILL.md +459 -0
  121. package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package-lock.json +3 -3
  122. package/bundled-skills/loki-mode/examples/todo-app-generated/backend/package.json +2 -1
  123. package/bundled-skills/mentorship-program/SKILL.md +332 -0
  124. package/bundled-skills/mirrord/SKILL.md +90 -0
  125. package/bundled-skills/monthly-closing-statements/SKILL.md +488 -0
  126. package/bundled-skills/monthly-closing-statements/references/related-skills.md +17 -0
  127. package/bundled-skills/monthly-closing-statements/references/reusable-prompt.md +8 -0
  128. package/bundled-skills/music-generation-studio/SKILL.md +259 -0
  129. package/bundled-skills/notification-reminder-hub/SKILL.md +324 -0
  130. package/bundled-skills/notion-manual-import/SKILL.md +376 -0
  131. package/bundled-skills/notion-manual-import/references/best-practices.md +10 -0
  132. package/bundled-skills/notion-manual-import/references/common-pitfalls.md +26 -0
  133. package/bundled-skills/notion-manual-import/references/input-modules.md +203 -0
  134. package/bundled-skills/notion-manual-import/references/related-skills.md +7 -0
  135. package/bundled-skills/notion-manual-import/references/reusable-prompt.md +8 -0
  136. package/bundled-skills/notion-manual-import/references/security-safety-notes.md +15 -0
  137. package/bundled-skills/observability-cloud-planning/SKILL.md +487 -0
  138. package/bundled-skills/observability-cloud-planning/references/common-pitfalls.md +39 -0
  139. package/bundled-skills/observability-cloud-planning/references/related-skills.md +20 -0
  140. package/bundled-skills/observability-cloud-planning/references/reusable-prompt.md +12 -0
  141. package/bundled-skills/observability-cloud-planning/references/security-safety-notes.md +30 -0
  142. package/bundled-skills/offboarding-exit/SKILL.md +343 -0
  143. package/bundled-skills/offer-appointment/SKILL.md +351 -0
  144. package/bundled-skills/okr-system/SKILL.md +355 -0
  145. package/bundled-skills/omentir-linkedin-outreach/SKILL.md +96 -0
  146. package/bundled-skills/onboarding-playbook/SKILL.md +292 -0
  147. package/bundled-skills/organization-design/SKILL.md +324 -0
  148. package/bundled-skills/party-ledger-reconciliation/SKILL.md +411 -0
  149. package/bundled-skills/payment-accounting/SKILL.md +421 -0
  150. package/bundled-skills/payments-received/SKILL.md +315 -0
  151. package/bundled-skills/payroll-finance/SKILL.md +351 -0
  152. package/bundled-skills/people-directory/SKILL.md +459 -0
  153. package/bundled-skills/performance-management/SKILL.md +367 -0
  154. package/bundled-skills/petty-cash-management/SKILL.md +448 -0
  155. package/bundled-skills/policy-acknowledgement/SKILL.md +314 -0
  156. package/bundled-skills/policy-library/SKILL.md +327 -0
  157. package/bundled-skills/poster-design-studio/SKILL.md +259 -0
  158. package/bundled-skills/pre-boarding/SKILL.md +326 -0
  159. package/bundled-skills/presentation-deck/SKILL.md +491 -0
  160. package/bundled-skills/presentation-deck/references/related-skills.md +19 -0
  161. package/bundled-skills/presentation-deck/references/reusable-prompt.md +11 -0
  162. package/bundled-skills/probation-tracker/SKILL.md +347 -0
  163. package/bundled-skills/product-photo-studio/SKILL.md +259 -0
  164. package/bundled-skills/project-based-performance/SKILL.md +323 -0
  165. package/bundled-skills/projects-work-management/SKILL.md +368 -0
  166. package/bundled-skills/promotion-upgrade-requests/SKILL.md +377 -0
  167. package/bundled-skills/purchase-accounting/SKILL.md +414 -0
  168. package/bundled-skills/receipt-accounting/SKILL.md +424 -0
  169. package/bundled-skills/recognition-rewards/SKILL.md +324 -0
  170. package/bundled-skills/recruitment-pipeline/SKILL.md +399 -0
  171. package/bundled-skills/remote-work-tracker/SKILL.md +306 -0
  172. package/bundled-skills/reports-analytics/SKILL.md +320 -0
  173. package/bundled-skills/salary-benchmarking/SKILL.md +318 -0
  174. package/bundled-skills/salary-wage-accounting/SKILL.md +412 -0
  175. package/bundled-skills/sales-accounting/SKILL.md +494 -0
  176. package/bundled-skills/sales-accounting/references/common-pitfalls.md +28 -0
  177. package/bundled-skills/sales-accounting/references/related-skills.md +13 -0
  178. package/bundled-skills/sales-accounting/references/reusable-prompt.md +8 -0
  179. package/bundled-skills/seo-directory-backlinks/SKILL.md +484 -0
  180. package/bundled-skills/seo-directory-backlinks/references/common-pitfalls.md +36 -0
  181. package/bundled-skills/seo-directory-backlinks/references/related-skills.md +15 -0
  182. package/bundled-skills/seo-directory-backlinks/references/reusable-prompt.md +11 -0
  183. package/bundled-skills/since-cutoff/SKILL.md +68 -0
  184. package/bundled-skills/skill-gap-analysis/SKILL.md +338 -0
  185. package/bundled-skills/social-media-setup/SKILL.md +477 -0
  186. package/bundled-skills/social-media-setup/references/common-pitfalls.md +34 -0
  187. package/bundled-skills/social-media-setup/references/related-skills.md +19 -0
  188. package/bundled-skills/social-media-setup/references/reusable-prompt.md +11 -0
  189. package/bundled-skills/social-media-setup/references/security-safety-notes.md +27 -0
  190. package/bundled-skills/sop-company-wiki/SKILL.md +324 -0
  191. package/bundled-skills/source-document-filing/SKILL.md +368 -0
  192. package/bundled-skills/spreadsheet-manual-build/SKILL.md +493 -0
  193. package/bundled-skills/spreadsheet-manual-build/references/best-practices.md +9 -0
  194. package/bundled-skills/spreadsheet-manual-build/references/common-pitfalls.md +22 -0
  195. package/bundled-skills/spreadsheet-manual-build/references/related-skills.md +8 -0
  196. package/bundled-skills/spreadsheet-manual-build/references/reusable-prompt.md +9 -0
  197. package/bundled-skills/spreadsheet-manual-build/references/security-safety-notes.md +16 -0
  198. package/bundled-skills/stakeholder-investor-reports/SKILL.md +303 -0
  199. package/bundled-skills/suno-lyrics-to-song/SKILL.md +259 -0
  200. package/bundled-skills/talking-avatar-video/SKILL.md +260 -0
  201. package/bundled-skills/tax-register/SKILL.md +363 -0
  202. package/bundled-skills/tds-booking-payment/SKILL.md +405 -0
  203. package/bundled-skills/team-calendar/SKILL.md +312 -0
  204. package/bundled-skills/telegram/assets/boilerplate/nodejs/package-lock.json +3 -3
  205. package/bundled-skills/telegram/assets/boilerplate/nodejs/package.json +1 -0
  206. package/bundled-skills/template-library/SKILL.md +304 -0
  207. package/bundled-skills/time-tracking/SKILL.md +353 -0
  208. package/bundled-skills/vendor-contractor-management/SKILL.md +327 -0
  209. package/bundled-skills/viral-video-teardown-remake/SKILL.md +260 -0
  210. package/bundled-skills/voice-cloning-studio/SKILL.md +260 -0
  211. package/bundled-skills/voiceover-narration-studio/SKILL.md +259 -0
  212. package/bundled-skills/whatsapp-cloud-api/assets/boilerplate/nodejs/package-lock.json +3 -3
  213. package/bundled-skills/whatsapp-cloud-api/assets/boilerplate/nodejs/package.json +1 -0
  214. package/dist/skill-pointer/index.d.ts +2 -1
  215. package/dist/skill-pointer/index.js +2 -1
  216. package/dist/skill-pointer/pointer-generator.d.ts +4 -2
  217. package/dist/skill-pointer/pointer-generator.js +4 -2
  218. package/package.json +1 -1
  219. package/skills_index.json +4312 -0
@@ -0,0 +1,459 @@
1
+ ---
2
+ name: logo-image-design
3
+ description: 'Brand asset register: asset type, format, dimensions and aspect ratio, colour mode, background variant, clear space, approved and prohibited uses, rights owner and licence. Use for brand control.'
4
+ category: business
5
+ risk: safe
6
+ source: self
7
+ source_type: self
8
+ date_added: "2026-09-27"
9
+ author: WHOISABHISHEKADHIKARI
10
+ tags: [sme, brand, logo, mark, imagery, photography, stock, icon, trademark, licence, rights, brand-guidelines, csv, sql, notion]
11
+ tools: []
12
+ source_repo: WHOISABHISHEKADHIKARI/sme-ops-system-builder
13
+ ---
14
+
15
+ # Logo & Image Design
16
+
17
+ **What it is:** the mark and the image library - every logo variant, photograph, icon and graphic the business is allowed to use, with the rights attached to it.
18
+
19
+ ## Overview
20
+
21
+ Works out the smallest useful asset set for the business in front of it, then builds it only
22
+ when asked. The default output is a short recommendation, not a folder of files. The asset
23
+ register - CSV, SQL DDL, JSON Schema, Notion mapping - is produced on request, from one
24
+ field list so the four cannot drift apart.
25
+
26
+ Layer: Layer 2: Brand & Design. Fits: Starter stage. Table code: n/a.
27
+
28
+ **The rule this table exists to enforce:** a logo is not a picture, and a picture is not
29
+ free to use. `Asset Type` separates the mark from the imagery, and `Licence`,
30
+ `Rights Owner` and `Trademark Status` exist because the expensive failure in branding is
31
+ not an ugly logo - it is a mark that was already registered, or a stock photo whose
32
+ licence expired, discovered two years later. Every asset carries its rights on the same row
33
+ as the file.
34
+
35
+ ## When to Use This Skill
36
+
37
+ - logo, brand mark, wordmark, monogram, symbol, favicon
38
+ - lockups, horizontal and stacked versions, one-colour version
39
+ - photography library, product photos, team photos, office shots
40
+ - icons, illustrations, graphics, patterns
41
+ - "we need brand guidelines"
42
+ - "can we use this image we found"
43
+ - "is this logo already taken"
44
+
45
+ Do not use it for: the colour and type system underneath the mark (`design-theme-guide`),
46
+ the printed items the mark goes on (`brand-kit-print-collateral`), or stock-footage sourcing
47
+ for ads.
48
+
49
+ ## How It Works
50
+
51
+ Follow the shared execution contract. The module-specific rules below define only domain fields, decisions, calculations, and safety constraints.
52
+
53
+ ### Step 1 - Identify intent
54
+
55
+ Read the request and pick the intent before asking anything.
56
+
57
+ - "design" / "make" / "we need" -> artifacts wanted; go to Step 2.
58
+ - "we already have one" -> something exists; capture what is in use, then Step 2.
59
+ - "review" / "check" / "audit" / "is this ok" -> a check, not a build.
60
+ - "can we use this" -> a rights question; answer it from what they show, no build.
61
+ - "fix" / "refresh" -> capture the current mark and its problem, then Step 2.
62
+
63
+ Ask only if this is the highest-value missing fact; otherwise proceed without an opener:
64
+
65
+ > **Q:** What is the business called, and what does one line of it actually do?
66
+
67
+ ### Step 2 - Ask only what is missing
68
+
69
+ Treat ambiguous replies as unanswered and ask which explicit option the user means. Record unknown values as `Unknown`; `Unknown` is not zero. A record must not be `Done` when a required check fails.
70
+
71
+ Skip anything already answered. Ask the rest one at a time, and stop as soon as the
72
+ remaining answers would not change the asset set.
73
+
74
+ - **Identity** - Exact spelling of the name, and any tagline? / What the business does, in
75
+ one line? / Any name change coming, or a trading name separate from the registered one?
76
+ - **Current state** - Is there a logo today, and who made it? / Where is it used - sign,
77
+ vehicle, invoices, app, uniform? / Does the file still exist in an editable format?
78
+ - **Rights** - Does the business already own any marks or registered names? / Any prior
79
+ designer whose rights were not transferred in writing? / Who signs off the final mark?
80
+ - **Imagery** - Do the products or the premises need photographing? / Who is in the photos?
81
+ Any consent needed? / Is there a real premises to shoot, or is stock acceptable?
82
+ - **Delivery** - Which formats and where are they needed - web, print, embroidery, social?
83
+ / Does anything need to work at very small size?
84
+
85
+ Never invent an answer. Names, designer credits, licence terms, trademark numbers and
86
+ consent statuses the user has not supplied are `Unknown`.
87
+
88
+ ### Step 3 - Hold the internal context
89
+
90
+ ```yaml
91
+ module: logo-image-design
92
+ intent: null # design | refresh | review | import | fix
93
+ scale: null # Starter | Growth | Scale, only if the answer changes it
94
+ areas:
95
+ "Identity": null
96
+ "Current State": null
97
+ "Rights": null
98
+ "Imagery": null
99
+ "Delivery": null
100
+ requested_outputs: []
101
+ confirmed_facts: []
102
+ open_questions: []
103
+ ```
104
+
105
+ ### Step 4 - Recommend the smallest workflow
106
+
107
+ Build an already requested artifact without asking again. For advice-only requests, give a short recommendation and offer the relevant artifact.
108
+
109
+ **Recommended approach:** A trademark search first, then one primary mark with three
110
+ required variants - full colour, one colour, and a small-size or favicon version - plus a
111
+ clear-space rule and a minimum size, recorded once and reused everywhere. Alongside it, a
112
+ photography rule: real premises and real people, shot on a phone, in a fixed set of
113
+ framings, with the consent record kept next to the images.
114
+
115
+ **Why this one:** The variants are what stop the business from stretching a logo. One mark
116
+ that has a defined small-size version does not need four more that nobody approved. And the
117
+ search comes first because a mark that is already registered cannot be re-designed, only
118
+ re-named.
119
+
120
+ **Workflow:** Name and mark searched → Direction chosen → Master mark drawn → Required
121
+ variants derived → Clear space and minimum size set → Digital and print masters exported →
122
+ Imagery shot or licensed → Consent and licence recorded per asset → Register approved and
123
+ versioned
124
+
125
+ ### Step 5 - Build only on request
126
+
127
+ Once the user asks for it, derive the fields from the confirmed context and emit the
128
+ requested artifacts. For machine-readable text, keep prose outside the data; for files,
129
+ provide a usable link. Report material validation failures or limitations separately.
130
+
131
+ **A selected Notion output is rendered by `notion-manual-import`, so route the
132
+ Notion step there.** When the user selects Notion, hand that step to
133
+ @notion-manual-import: it holds the CSV, the property
134
+ mapping, the import steps and the verification checklist, and it renders the Field
135
+ Reference below instead of defining a table of its own. Do not restate the mapping
136
+ here and do not improvise the import steps. Manual CSV and mapping outputs need no
137
+ connection. For requested workspace changes, follow the shared contract: verify actual
138
+ tool access and the target before writing. A user saying "connected" is not tool evidence.
139
+ Never ask for a Notion password or token.
140
+
141
+ ```csv
142
+ Asset ID,Asset Name,Asset Type,Format,Dimensions,Aspect Ratio,Colour Mode,Background Variant,Minimum Size,Clear Space,Placement,Usage Approved,Usage Not Approved,Source,Rights Owner,Licence,Trademark Status,Version,Status,Notes
143
+ ,Example Retail primary mark,Logo,SVG and PNG,512x512 and 2400x1200,1:1 and 2:1,CMYK and RGB,Light and dark,24 px digital,Mark height on all sides,Lockup left of text,"Website, social avatar, invoice header","Dark backgrounds, embroidery under 25 mm",Unsplash internal shoot,Example Retail,Example Retainers (transfer in writing),Not searched,1.0,Draft,Example row - replace every value before use.
144
+ ```
145
+
146
+ ```sql
147
+ -- Engine assumption: PostgreSQL. For another engine use the engine's auto-increment
148
+ -- equivalent and keep the rest portable.
149
+ CREATE TABLE brand_asset (
150
+ asset_id BIGINT PRIMARY KEY,
151
+ asset_name VARCHAR(255) NOT NULL,
152
+ asset_type VARCHAR(100) NOT NULL,
153
+ format VARCHAR(100) NOT NULL,
154
+ dimensions VARCHAR(100),
155
+ aspect_ratio VARCHAR(50),
156
+ colour_mode VARCHAR(100) NOT NULL,
157
+ background_variant VARCHAR(100) NOT NULL,
158
+ minimum_size VARCHAR(50),
159
+ clear_space VARCHAR(255),
160
+ placement TEXT,
161
+ usage_approved TEXT,
162
+ usage_not_approved TEXT,
163
+ source VARCHAR(255),
164
+ rights_owner VARCHAR(255),
165
+ licence VARCHAR(255),
166
+ trademark_status VARCHAR(100) NOT NULL,
167
+ version VARCHAR(50) NOT NULL,
168
+ status VARCHAR(50) NOT NULL,
169
+ notes TEXT,
170
+ created_at TIMESTAMP DEFAULT NOW(),
171
+ updated_at TIMESTAMP DEFAULT NOW(),
172
+ CONSTRAINT asset_trademark_status CHECK (trademark_status IN ('Not searched','Searched - clear','Application filed','Registered','Conflicting mark found','Unknown')),
173
+ CONSTRAINT asset_status CHECK (status IN ('Draft','In review','Approved','Retired'))
174
+ );
175
+
176
+ CREATE INDEX idx_brand_asset_status ON brand_asset (status);
177
+ CREATE INDEX idx_brand_asset_type ON brand_asset (asset_type);
178
+ ```
179
+
180
+ ```json
181
+ {
182
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
183
+ "title": "Logo & Image Design",
184
+ "type": "object",
185
+ "additionalProperties": false,
186
+ "properties": {
187
+ "Asset ID": { "type": "integer" },
188
+ "Asset Name": { "type": "string" },
189
+ "Asset Type": { "type": "string" },
190
+ "Format": { "type": "string" },
191
+ "Dimensions": { "type": "string" },
192
+ "Aspect Ratio": { "type": "string" },
193
+ "Colour Mode": { "type": "string" },
194
+ "Background Variant": { "type": "string" },
195
+ "Minimum Size": { "type": "string" },
196
+ "Clear Space": { "type": "string" },
197
+ "Placement": { "type": "string" },
198
+ "Usage Approved": { "type": "string" },
199
+ "Usage Not Approved": { "type": "string" },
200
+ "Source": { "type": "string" },
201
+ "Rights Owner": { "type": "string" },
202
+ "Licence": { "type": "string" },
203
+ "Trademark Status": { "type": "string" },
204
+ "Version": { "type": "string" },
205
+ "Status": { "type": "string" },
206
+ "Notes": { "type": "string" }
207
+ },
208
+ "required": [
209
+ "Asset Name",
210
+ "Asset Type",
211
+ "Format",
212
+ "Colour Mode",
213
+ "Background Variant",
214
+ "Trademark Status",
215
+ "Version",
216
+ "Status"
217
+ ]
218
+ }
219
+ ```
220
+
221
+ ```markdown
222
+ | CSV column | Notion property | Set after import |
223
+ |---|---|---|
224
+ | Asset ID | Text (preserve source ID) | Keep imported IDs as Text; optionally add a separate Unique ID property |
225
+ | Asset Name | Title | Use as the database title |
226
+ | Asset Type | Select (add options after import) | Convert to Select, add options: "Logo", "Logo Variant", "Icon", "Illustration", "Photograph", "Product Image", "Pattern", "Graphic", "Video Still", "Document Cover" |
227
+ | Format | Select (add options after import) | Convert to Select, add options: "SVG", "EPS", "PNG", "JPG", "WebP", "PDF", "AI", "MP4" |
228
+ | Dimensions | Text | Leave as Text. Record the pixel or mm size, and the print resolution separately in Notes |
229
+ | Aspect Ratio | Text | Leave as Text |
230
+ | Colour Mode | Select (add options after import) | Convert to Select, add options: "RGB", "CMYK", "Greyscale", "One colour", "Duotone" |
231
+ | Background Variant | Select (add options after import) | Convert to Select, add options: "Light", "Dark", "Transparent", "Coloured", "Photographic" |
232
+ | Minimum Size | Text | Leave as Text. The smallest size at which the mark still reads |
233
+ | Clear Space | Text | Leave as Text. Expressed in mark units, e.g. "mark height on all sides" |
234
+ | Placement | Text | Leave as Text |
235
+ | Usage Approved | Text | Leave as Text |
236
+ | Usage Not Approved | Text | Leave as Text. The misuse list |
237
+ | Source | Text | Leave as Text. Where the file or the licence came from |
238
+ | Rights Owner | Text | Leave as Text. Not the designer - the copyright holder |
239
+ | Licence | Text | Leave as Text. Name it: Unsplash licence, OFL, CC BY 4.0, owned outright |
240
+ | Trademark Status | Select (add options after import) | Convert to Select, add options: "Not searched", "Searched - clear", "Application filed", "Registered", "Conflicting mark found", "Unknown" |
241
+ | Version | Text | Leave as Text |
242
+ | Status | Select (add options after import) | Convert to Select, add options: "Draft", "In review", "Approved", "Retired" |
243
+ | Notes | Text | Leave as Text |
244
+ ```
245
+
246
+ The rows above are documentation examples only. Emit empty templates unless the user explicitly requests examples. Rights fields the user has not confirmed are
247
+ `Unknown` or `Not searched` - never assumed clear.
248
+
249
+ ## Field Reference
250
+
251
+ | # | Field | Type | SQL | JSON Schema | Notion | CSV example |
252
+ |---:|---|---|---|---|---|---|
253
+ | 1 | Asset ID | `id` | `BIGINT PRIMARY KEY` | `integer` | Text or Notion auto-ID | `(blank)` |
254
+ | 2 | Asset Name | `text` | `VARCHAR(255)` | `string` | Text | `Example Retail primary mark` |
255
+ | 3 | Asset Type | `select` | `VARCHAR(100)` | `string` | Select | `Logo` |
256
+ | 4 | Format | `select` | `VARCHAR(100)` | `string` | Select | `SVG and PNG` |
257
+ | 5 | Dimensions | `text` | `VARCHAR(100)` | `string` | Text | *(blank)* |
258
+ | 6 | Aspect Ratio | `text` | `VARCHAR(50)` | `string` | Text | *(blank)* |
259
+ | 7 | Colour Mode | `select` | `VARCHAR(100)` | `string` | Select | `CMYK and RGB` |
260
+ | 8 | Background Variant | `select` | `VARCHAR(100)` | `string` | Select | `Light and dark` |
261
+ | 9 | Minimum Size | `text` | `VARCHAR(50)` | `string` | Text | *(blank)* |
262
+ | 10 | Clear Space | `text` | `VARCHAR(255)` | `string` | Text | *(blank)* |
263
+ | 11 | Placement | `long_text` | `TEXT` | `string` | Text | *(blank)* |
264
+ | 12 | Usage Approved | `long_text` | `TEXT` | `string` | Text | *(blank)* |
265
+ | 13 | Usage Not Approved | `long_text` | `TEXT` | `string` | Text | *(blank)* |
266
+ | 14 | Source | `text` | `VARCHAR(255)` | `string` | Text | *(blank)* |
267
+ | 15 | Rights Owner | `text` | `VARCHAR(255)` | `string` | Text | *(blank)* |
268
+ | 16 | Licence | `text` | `VARCHAR(255)` | `string` | Text | *(blank)* |
269
+ | 17 | Trademark Status | `select` | `VARCHAR(100)` | `string` | Select | `Not searched` |
270
+ | 18 | Version | `text` | `VARCHAR(50)` | `string` | Text | `1.0` |
271
+ | 19 | Status | `select` | `VARCHAR(50)` | `string` | Select | `Draft` |
272
+ | 20 | Notes | `long_text` | `TEXT` | `string` | Text | *(blank)* |
273
+
274
+ ## Select Options
275
+
276
+ **Asset Type** - a starting set. `Photograph` and `Product Image` are separated because a
277
+ product image is repeatable and needs a consistent framing, while a photograph of a
278
+ premises is one-off.
279
+
280
+ ```
281
+ Logo | Logo Variant | Icon | Illustration | Photograph | Product Image | Pattern | Graphic | Video Still | Document Cover
282
+ ```
283
+
284
+ **Format**
285
+
286
+ ```
287
+ SVG | EPS | PNG | JPG | WebP | PDF | AI | MP4
288
+ ```
289
+
290
+ **Colour Mode**
291
+
292
+ ```
293
+ RGB | CMYK | Greyscale | One colour | Duotone
294
+ ```
295
+
296
+ **Background Variant** - tells the designer which version of the mark to reach for.
297
+
298
+ ```
299
+ Light | Dark | Transparent | Coloured | Photographic
300
+ ```
301
+
302
+ **Trademark Status** - `Unknown` and `Not searched` are different: the first means nobody
303
+ knows, the second means nobody looked. Both are honest answers.
304
+
305
+ ```
306
+ Not searched | Searched - clear | Application filed | Registered | Conflicting mark found | Unknown
307
+ ```
308
+
309
+ **Status**
310
+
311
+ ```
312
+ Draft | In review | Approved | Retired
313
+ ```
314
+
315
+ ## Relations
316
+
317
+ None. This table is standalone. Photo consent records, if the business keeps them
318
+ separately, are referenced from `Notes` by their document number - confirm with the
319
+ business before making that a live relation.
320
+
321
+ ## Examples
322
+
323
+ **Prompt**
324
+
325
+ ```
326
+ We have a logo someone made in Canva about three years ago. We cannot find the file, it
327
+ is on the shopfront, and we are now printing visiting cards.
328
+ ```
329
+
330
+ **Context first** - one question per message, nothing already answered:
331
+
332
+ > **Q:** What is the business called, and what does one line of it actually do?
333
+ > **A:** Example Retail, home and kitchen goods.
334
+ >
335
+ > **Q:** Where is the current logo used - sign, vehicle, invoices, anything else?
336
+ > **A:** Shopfront and the invoices.
337
+ >
338
+ > **Q:** Has anyone checked whether the name is already registered as a trademark?
339
+ > **A:** No.
340
+ >
341
+ > **Q:** Do the cards need to match the shopfront, or can the mark change?
342
+ > **A:** It can change, but the sign cannot - that is expensive.
343
+
344
+ **Recommended next step** - offered, not built:
345
+
346
+ > One mark, derived to work on the sign and on a 55x90mm card, with a trademark search run
347
+ > before any drawing starts. Then three variants - full colour, one colour, and a small
348
+ > size version for a favicon - with clear space and a minimum size written down once, and
349
+ > the whole set in an asset register so nobody stretches it again.
350
+ >
351
+ > Workflow: Name and mark searched → Direction chosen → Master mark drawn → Required
352
+ > variants derived → Clear space and minimum size set → Digital and print masters exported →
353
+ > Register approved and versioned
354
+ >
355
+ > Want the CSV, SQL DDL, JSON Schema and Notion mapping for this?
356
+
357
+ ## Best Practices
358
+
359
+ - Run the trademark search before designing. USPTO, EUIPO, IP India or the national IP
360
+ office; WIPO's Global Brand Database covers several at once. It is free.
361
+ - A mark needs three variants, not one: full colour, single colour, and a simplified
362
+ version for small sizes. Anything more is a decision to defer.
363
+ - Set clear space in a unit of the mark itself, so it scales. "One cap-height on all sides"
364
+ survives a resize; "5mm" does not.
365
+ - Set a minimum size and record it. Below that, the small-size variant is used instead of
366
+ the master.
367
+ - Keep an editable master. The Canva-file problem is the normal outcome, not the exception.
368
+ - Rights in writing. If a designer made it, the transfer of copyright must be a document,
369
+ not an email thread. In many countries copyright does not transfer by implication.
370
+ - Photograph the real premises and the real people. Stock beats nothing, but it never beats
371
+ the actual shopfront, and a phone photo with good light is a legitimate brand image.
372
+ - Get written consent for any identifiable person, and keep the consent record next to the
373
+ image reference. A face on a website is a data-protection question as well as a
374
+ permissions one.
375
+ - Export SVG as the master for anything that scales, PNG at 1x/2x/3x for the web, and CMYK
376
+ for print. Never upscale a raster logo.
377
+ - Keep a one-page "logo misuse" sheet next to the files. Most of what looks like a bad
378
+ logo is a stretched, rotated or recoloured one.
379
+ - Derive all four artifacts from the field list in this file, never by hand.
380
+ - If the user requests an example row, keep it obviously fake so nobody imports it as a real asset.
381
+
382
+ ## Limitations
383
+
384
+ - This skill produces a register and a specification. It does not draw, and it cannot
385
+ attach a vector file.
386
+ - A trademark search is a screening step, not a legal opinion, and it is not a
387
+ registration. `Trademark Status` records what stage the business is at.
388
+ - It cannot confirm a stock licence. `Licence` records what the business says the licence
389
+ is; verifying the photographer's actual terms is the business's action.
390
+ - Vector artwork for embroidery, laser engraving and small-format print has constraints
391
+ (minimum stroke width, no gradients, few colours) that this table does not model.
392
+ - "Does this logo look good" is not a question this skill answers. It answers whether the
393
+ mark is being used within its own rules.
394
+ - The register tracks files. It is not a DAM, and it does not store the binaries.
395
+ - Rebranding cost, rollout sequencing and internal re-training are out of scope.
396
+ - Legal review of the final mark before launch is still required.
397
+
398
+ ## Security & Safety Notes
399
+
400
+ - Never invent a designer credit, a licence name, a trademark number or a registration
401
+ status. `Unknown` and `Not searched` are correct answers.
402
+ - Never assert that a name is available to trademark. Say that a search has not been run.
403
+ - Local reads, generation commands, and validation are part of a requested artifact build.
404
+ External writes, messages, provisioning, and publication require authorization for that
405
+ action and target; existing explicit authorization does not need to be repeated.
406
+ - If the user pastes an existing brand guideline or an unreleased product, note that it
407
+ stays in the conversation and should be deleted if it is confidential.
408
+ - Personal data on a photograph - faces, name badges, plates, screens - is a data
409
+ protection question. Flag it; do not decide it.
410
+ - A person's likeness used commercially can need a release. Treat consent as a required
411
+ field, not a nice-to-have.
412
+
413
+ ## Common Pitfalls
414
+
415
+ - **Problem:** a static mapping is described as a completed workspace build.
416
+ **Solution:** deliver manual mappings without a connection; claim a live change only
417
+ after the authorized tool operation succeeds.
418
+ - **Problem:** asked all five questions in one message.
419
+ **Solution:** ask one, wait, and drop any the first answer already covered.
420
+ - **Problem:** a logo was designed before the name was checked, and the name is taken.
421
+ **Solution:** the mark is redone. A search is cheaper than a rebrand and takes a day.
422
+ - **Problem:** the mark is stretched on a banner and blurred on a business card.
423
+ **Solution:** that is a missing clear-space and minimum-size rule. Both are columns here.
424
+ - **Problem:** the same logo exists in six files with six different blues.
425
+ **Solution:** version the asset, and make `Status` = `Approved` the only one that ships.
426
+ - **Problem:** a stock photo was used and the licence was for personal use only.
427
+ **Solution:** `Licence` is a required column, and "personal use only" is not a licence
428
+ for a business website.
429
+ - **Problem:** the register has assets but no owner and no review date, so it is never
430
+ updated.
431
+ **Solution:** `Last Reviewed` and `Status` are what make it a register and not a list.
432
+ - **Problem:** all four artifacts drift apart.
433
+ **Solution:** derive all four from the field list in this file, never by hand.
434
+ - **Problem:** Notion import shows every column as Text.
435
+ **Solution:** that is expected. Apply the property mapping table once, after import.
436
+
437
+ ## Related Skills
438
+
439
+ - @brand-growth-system-builder - routes to this skill and the other 12 brand and growth modules.
440
+ - @design-theme-guide - the colour and type tokens this module's assets must use.
441
+ - @brand-kit-print-collateral - where the mark gets onto letterhead, cards and folders.
442
+ - @free-design-resources - icon sets, illustration libraries, stock photography, and the
443
+ trademark search databases.
444
+ - @gbp-local-seo-intent - the profile photos and the store-front shots, which are the
445
+ highest-value images the business owns.
446
+ - @presentation-deck - the mark on slides, and the misuse rules that apply there too.
447
+ - @social-media-setup - per-platform avatar and cover crops of the same master.
448
+
449
+ ## Reusable Prompt
450
+
451
+ ```
452
+ I need a logo and an image library for my business - the mark, its variants, and the
453
+ photography and icons we are allowed to use.
454
+ Ask me one short question at a time, and only about what I have not already told you.
455
+ Never invent a designer credit, a licence or a trademark status. Then recommend the
456
+ smallest asset set that fits, including a trademark search before any drawing, and wait
457
+ for me to ask before you build it.
458
+ When I ask, output CSV, SQL DDL, JSON Schema and a Notion property mapping. Data only.
459
+ ```
@@ -933,9 +933,9 @@
933
933
  "license": "ISC"
934
934
  },
935
935
  "node_modules/ip-address": {
936
- "version": "10.4.0",
937
- "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.4.0.tgz",
938
- "integrity": "sha512-oSK96Grm3aP6OrS263xVxbNDGVL7rzBtYdpGqlDG8iQdoenDoTs/nkki+DflYbAEE8Xl6o5YxhxlrKvI3nqKXQ==",
936
+ "version": "10.7.2",
937
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.2.tgz",
938
+ "integrity": "sha512-7H/2gFSIitxc0hG3nOI1glS8QLo/EHBFFLk8vEUjXY/xu0AdL8jZ9U1IzO2PUm0d2D/ofQcAifb0g6OBkt8U7w==",
939
939
  "license": "MIT",
940
940
  "engines": {
941
941
  "node": ">= 12"
@@ -25,6 +25,7 @@
25
25
  "overrides": {
26
26
  "diff": "4.0.4",
27
27
  "path-to-regexp": "0.1.13",
28
- "qs": "^6.16.0"
28
+ "qs": "^6.16.0",
29
+ "ip-address": "^10.5.1"
29
30
  }
30
31
  }