agentleFS
ContineroContinero/artima-plugin/skills/brand-voice-setup/SKILL.md

brand-voice-setup

Skill0 starsChanged 41 days agoMITView on GitHub

Sets up an Artima AI assistant that writes in the user's brand voice. Reads the brand basics from their website, fills the gaps with a few questions, writes structured assistant instructions, then creates or updates the assistant in Artima and makes it the default when asked. Use when the user wants Artima to write like their brand, set up or improve a brand assistant, or change the default assistant. Triggers include "set up our brand voice", "here's our website, make Artima write like us", "create an assistant for our brand", "nastav asistenta podle našeho webu", "udělej z něj výchozího asistenta".

1 other project uses a version of this.

Adopted by

Most recently taken up by

  • Other versions1 project uses a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 1

    1. UXMagicai/seosorted-skills★ 0same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • In this repository5 other files it gives its agents.

The file

We split this skill into the rules it gives an agent

10 rules. About 0 are common, 3 are distinctive, and 7 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈3

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 7

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    No duplicates: Check list_assistants first.

    line 13
  2. Very specific:

    When improving an existing assistant, call get_assistant to read its full instructions.

    line 23
  3. Very specific:

    Call extract_brand_from_url with the user's URL.

    line 27
  4. Very specific:

    If it returns {"error": ...} or nothing useful, say so and continue with the interview.

    line 29
  5. Distinctive:

    Ask only what you still don't know, in one message:

    line 35
  6. Distinctive:

    If the user says not to ask anything, make reasonable assumptions from what you have, label them as assumptions in your summary, and carry …

    line 45
  7. Distinctive:

    Write them in the language the assistant will write in.

    line 49
  8. Very specific:

    New: call create_assistant with name, instructions, aiName, aiModel, an optional avatar (an emoji or image URL), and isDefault: true only …

    line 72
  9. Very specific:

    Existing: call update_assistant with assistantId and only the fields that change.

    line 73
  10. Very specific:

    Call get_assistant with the new or updated id.

    line 83

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Brand voice setup

Turn what you can learn about a brand into one well-structured Artima assistant. An assistant is a saved name, a set of instructions and an AI model that Artima uses when it writes for this workspace.

Ground rules

  • Role. Creating, updating and deleting assistants needs the Editor role or higher in the active workspace. Check with list_workspaces; switch with set_workspace if the user names another workspace.
  • No duplicates. Check list_assistants first. If an assistant for this brand already exists, improve it with update_assistant instead of creating a second one, unless the user wants a new one.
  • Don't guess the model. create_assistant needs aiName (chatgpt, gemini or grok) and an aiModel ID for that provider. Use the model the user names. If they don't know, offer to reuse the aiName and aiModel of an existing assistant from list_assistants, or ask them to pick one in Artima's assistant settings. Never make up a model ID.
  • What runs at once. create_assistant and update_assistant take effect immediately; there is no approval screen. Both are reversible in Artima under Settings → Assistants. update_assistant overwrites the fields you pass, so show the user what will change before you overwrite existing instructions. delete_assistant is permanent, so call it only when the user explicitly asks, and confirm the assistant by name first.

Workflow

1. Check what exists

  1. list_workspaces: confirm Editor or higher.
  2. list_assistants: note the current assistants, which one isDefault, and their aiName and aiModel.
  3. When improving an existing assistant, call get_assistant to read its full instructions.

2. Read the brand from the website

Call extract_brand_from_url with the user's URL. It is free. It returns visual identity only: siteName, themeColor, a palette of colours with roles, fonts, and logoUrl. It does not return the site's text, so it cannot tell you the voice by itself.

  • If it returns {"error": ...} or nothing useful, say so and continue with the interview.
  • For the voice, read the site's own copy (home and about pages) with a web-fetch tool if this session has one, or ask the user to paste a few paragraphs they like.
  • Optional: the user's best posts are good voice samples. Use list_accounts, then analyze_post_performance with socialAccountId, then get_post_detail on the top posts.

3. Fill the gaps

Ask only what you still don't know, in one message:

  • What the business offers, and to whom (the audience).
  • Tone in three adjectives, plus "we are X, not Y".
  • Words and phrases to use, and ones to avoid (competitor names, clichés, banned claims).
  • Language or languages, and formality. For Czech, ask tykání or vykání.
  • Emoji, hashtags, and how long posts should be.
  • Typical call to action, and per-platform rules.
  • Facts that must always be right: the brand name's spelling, prices, claims that must not be made.

If the user says not to ask anything, make reasonable assumptions from what you have, label them as assumptions in your summary, and carry on.

4. Write the instructions

Write them in the language the assistant will write in. Use this structure and keep it concrete:

Role: You write social media posts for <brand>.
Brand: <one paragraph: what it is, what it offers, what makes it different>
Audience: <who they are, what they care about>
Voice: <3 adjectives>. We are <X>, not <Y>.
Do: <4-6 bullet rules>
Don't: <4-6 bullet rules>
Vocabulary: use <...>; avoid <...>
Language and formality: <e.g. Czech, vykání>
Format: <emoji policy, hashtag policy, typical length, line breaks>
Platform notes: <Instagram / LinkedIn / Facebook specifics>
Facts and guardrails: <spelling, prices, forbidden claims, never invent offers>
Examples: <2-3 short sample posts in the voice>

Name: short, 1 to 40 characters, such as "Kavárna Lípa – hlas značky".

Show the name, the instructions and the model to the user, and wait for their OK, unless they told you to go ahead without review.

5. Create or update

  • New: call create_assistant with name, instructions, aiName, aiModel, an optional avatar (an emoji or image URL), and isDefault: true only if the user asked for it to be the default.
  • Existing: call update_assistant with assistantId and only the fields that change. When you change the provider, pass aiName together with aiModel.

6. Default assistant

  • To make an assistant the default, pass isDefault: true on create, or call update_assistant with isDefault: true. Artima unsets the previous default automatically.
  • isDefault: false does not clear a default. To change the default, make another assistant the default.
  • The default assistant cannot be deleted. Make another one default first.

7. Verify and report

Call get_assistant with the new or updated id. Report the name, provider and model, whether it is the default, and the first lines of the instructions. Mention that the user can tweak it in Artima under Settings → Assistants.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.