Openclaudia-skills brand-dev
Fetch brand info (name, description, logos, industry) from brand.dev API and save logos locally. Use when the user asks to look up a brand, fetch a logo, get brand info, or add a company with its logo.
install
source · Clone the upstream repo
git clone https://github.com/OpenClaudia/openclaudia-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/OpenClaudia/openclaudia-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/brand-research" ~/.claude/skills/openclaudia-openclaudia-skills-brand-dev && rm -rf "$T"
manifest:
skills/brand-research/SKILL.mdsource content
Brand.dev Skill
Fetch brand data from the brand.dev API and save logos locally for serving.
Step 1: Get the Domain
Extract the target domain from the user's input. Strip protocol and trailing slashes (e.g., "https://example.com/" -> "example.com").
Step 2: Fetch Brand Info
BRANDDEV_API_KEY=$(grep BRANDDEV_API_KEY environment variables | cut -d= -f2) curl -s "https://api.brand.dev/v1/brand/retrieve?domain=${DOMAIN}" \ -H "Authorization: Bearer ${BRANDDEV_API_KEY}" \ -H "Content-Type: application/json"
Extract from the response:
- Brand name (
or.brand.title
).brand.name - Description (
).brand.description - Logo URLs (from
) — prefer icon/square logos for card layouts, full logos for headers.brand.logos[] - Industry/category if available
Step 3: Download Logos Locally
ALWAYS download logos locally for serving. Never reference external
media.brand.dev URLs in production code — they can change or go down.
Where to save
The save location depends on the project. Look for existing patterns:
- Next.js / static sites:
(served aspublic/logos/<context>/
)/logos/<context>/ - Other web projects: check for existing
,static/
,assets/
, orimages/
directoriespublic/ - If no convention exists: create a
directory under the project's static asset rootlogos/
Naming Convention
where:<brand-slug>.<ext>
is the lowercase brand name, spaces replaced by hyphens (e.g.,<brand-slug>
notmiss-a
)miss_a
matches the original file extension (png, webp, jpg, svg)<ext>
- Optionally group by context subdirectory (e.g.,
,partners/
) if the project has multiple logo collectionscustomers/
Download Command
mkdir -p <logo-dir> curl -sL "<logo-url>" -o "<logo-dir>/<brand-slug>.<ext>"
Verify Download
ls -la <logo-dir>/<brand-slug>.<ext>
Step 4: Return Results
Provide the user with:
- Brand name
- Description
- Industry
- Local logo path — the path to use in code (relative to the project's static root)
- Original source URL (for reference only)
Important Rules
- Always save images locally — never use
URLs directly in production code.media.brand.dev - Use local paths in code — reference relative to the project's static asset serving root.
- Prefer square/icon logos for card layouts (they fit better in grid cards).
- Prefer full/horizontal logos for headers and hero sections.
- If the brand has no logos in the API response, note this and suggest using a fallback icon.