Skills
Skills are reusable AI building blocks. Each skill is a named, versioned prompt that can run from any record, campaign, or workflow — giving your team consistent output without re-writing prompts every time.
What a Skill Is
A skill is:
- A named prompt — so anyone on your team can find and run it
- Templated — with variables that get filled in from the record it’s running against
- Versioned — edits create new versions; old versions still work for anything referencing them
- Role-aware — admins control who can edit, run, and publish skills
- Backed by your context — every skill automatically receives Global Context and the active record’s data
Think of skills as internal GPTs, but scoped to your company’s knowledge and safe to deploy to the whole team.
Creating a Skill
- Go to Studio → Skills and click New Skill
- Give it a name and description
- Pick the skill type:
| Type | Runs Against | Example |
|---|---|---|
| Contact | A single contact | ”Generate a LinkedIn opener” |
| Company | A single company | ”Summarize recent funding news” |
| Deal | A single deal | ”Draft a follow-up email after discovery” |
| List / Audience | A contact list | ”Score every contact against our ICP” |
| Document | A Studio document | ”Rewrite this landing page for enterprise buyers” |
| Ad-hoc | No record context | ”Write a cold email for a persona I’ll paste in” |
- Write the prompt with variables (see below)
- Click Save as Draft
- Test it against a real record before publishing
Prompt Templating
Skills use {{variable}} syntax to reference record data and global context.
Record Variables
Common variables you can use:
| Variable | Value |
|---|---|
{{contact.first_name}} | Contact’s first name |
{{contact.last_name}} | Contact’s last name |
{{contact.job_title}} | Job title |
{{contact.email}} | Email address |
{{contact.linkedin_url}} | LinkedIn URL |
{{company.name}} | Company name |
{{company.domain}} | Primary domain |
{{company.industry}} | Industry |
{{company.employee_count}} | Employee count |
{{company.description}} | Company description |
{{deal.stage}} | Deal’s current stage |
{{deal.amount}} | Deal size |
{{deal.close_date}} | Expected close date |
Global Context Variables
| Variable | Value |
|---|---|
{{global.brand_brief}} | Your brand brief from Studio → Global |
{{global.value_props}} | Your value propositions |
{{global.icp}} | Your ICP definition |
{{global.personas}} | All personas |
{{global.persona.vp_sales}} | A specific persona |
{{global.offer_brief}} | Pricing and packaging |
Custom Fields
Any custom field on a record is accessible via {{contact.custom.field_name}} or {{company.custom.field_name}}.
Testing Skills
Before publishing a skill, test it on real records:
- Open the skill draft
- Click Test
- Select a record (contact, company, or deal)
- Run — the result appears in the Test panel
- Iterate on the prompt and re-run until you’re happy
Tests are logged but don’t affect the record (no notes saved, no CRM sync).
A/B Testing Prompts
Compare two versions of the same skill before committing:
- Click A/B Test on a draft
- Create version A and version B prompts
- Select 10 records
- Run both versions
- Compare outputs side-by-side
- Pick the winner — it becomes the published version
Versioning
Every edit to a published skill creates a new version. Previous versions remain available for:
- Workflows that reference older versions
- Audit trails (who ran what version when)
- Rolling back if a new version regresses quality
| Version State | Meaning |
|---|---|
| Draft | Not yet published, only the author can run it |
| Published | Live, all eligible users can run it |
| Deprecated | Hidden from the skill picker but still runs for anything pinned to this version |
| Archived | Fully retired, no new runs allowed |
Version Pinning
Workflows and sequences can pin to a specific version. When you publish a new version, pinned references don’t auto-upgrade — they stay on their pinned version until you explicitly update them. This prevents surprise behavior changes.
Publishing and Permissions
Publishing a Skill
- With a draft selected, click Publish
- Set visibility:
- Private — only you
- Team — specified users
- Organization — everyone in your org
- Set who can run it:
- All eligible users
- Specific roles (Admin, Member, specific custom roles)
- Click Publish
Role Controls
| Capability | Admin | Member | Viewer |
|---|---|---|---|
| Run published skills | ✓ | ✓ | — |
| Create drafts | ✓ | ✓ | — |
| Publish | ✓ | Requires admin approval | — |
| Edit others’ skills | ✓ | Only if shared write access | — |
| Archive skills | ✓ | — | — |
Running Skills
Skills appear in multiple places:
| Location | Behavior |
|---|---|
| Contact detail page | Lightning bolt icon opens a skill picker |
| Company detail page | Same picker, filtered to company skills |
| Deal detail page | Deal skills only |
| List bulk action | Run a skill against every contact in a list |
| Campaign step | Use a skill as a step in a sequence |
| Workflow trigger | Auto-run a skill when a condition fires |
| Copilot | ”/skill_name” invokes the skill in chat |
Credit Costs
| Model Tier | Cost per Run |
|---|---|
| Fast | 1 credit |
| Standard | 3–5 credits |
| Deep (web access) | 10–20 credits |
| Thinking | 15–40 credits |
Set the model tier per skill. Fast is fine for simple templating; Deep is needed for research-heavy skills; Thinking is for scoring or reasoning tasks.
Troubleshooting
| Issue | Fix |
|---|---|
| Skill produces inconsistent output | Add more structure to the prompt — explicit sections, format templates, or few-shot examples |
Variable shows up as {{contact.x}} in output | The field is empty on that record — enrich first or make the variable optional |
| Skill times out | Reduce context size or switch to a faster model tier |
| Output doesn’t match template | Increase the model tier; add “Respond exactly in this format:” to the prompt |
| Published skill disappeared | An admin may have archived it; check Archive tab |
Related
- Copilot → — Skills are invokable directly in Copilot chat
- Run Actions → — How skills run from detail pages
- Workflows → — Auto-run skills on triggers
- Global Context → — The shared context every skill uses