signature-authoring
Skill0 starsChanged 32 days agoMITView on GitHub
Create or edit a Scribe email-signature template: the draft → preview → publish → install loop, the block-tree content format, smart fields, and reply/internal variants. Use whenever the user wants to build, restyle, fix, or publish a signature in Scribe.
In this repository6 other files it gives its agents.
- marketing-campaignsSkill
- signature-analyticsSkill
- signature-rolloutSkill
- signature-troubleshootingSkill
- teammate-dataSkill
- workspace-auditSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 14
get_content_schemafirst: Always, before writing any draft_content. - Distinctive: line 30
Read the returned HTML: Check for overlapping lines, broken spacing, a missing logo, a social row that collapsed.
≈ “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.
Files
Authoring a Scribe signature template
A signature template in Scribe has two copies of its content: draft_content (what you
edit) and content (what is live in people's mail clients). Writing never touches the live
copy — only publish_signature promotes draft → live. Preview before you publish.
The loop
get_content_schemafirst. Always, before writing anydraft_content. One call returns the strict JSON Schema for the block tree, a flatenumslookup of every allowed value (including the 100+iconnames), asocial_iconsmap from platform name to its non-obvious enum (linkedin→linkedin-in,facebook→facebook-f), a complete workedexampleto adapt, and short authoringguidance. Never guess enum spellings or brute-force the format — the server strict-validates and rejects unknown keys.list_smart_fieldsto see the merge fields available (job title, phone, photo, …). Put smart fields in the tree rather than hardcoding one person's details — that is what makes one template work for the whole company.kindandintegration_idmatter: a field with a non-nullintegration_idis synced from Google/Microsoft and is read-only per teammate.list_assetsfor logos and banners already in the workspace before uploading a new one withcreate_asset(file_base64+filename, orsource_url; images only, ≤15 MB).create_signature(namerequired,draft_contentthe block tree, optionalfolder_id) orupdate_signaturefor an existing one. Updates are partial: an omitted field is unchanged,nullclears it. The live signature does not move.preview_signature— renders the draft to HTML with smart fields shown as their labels. Read the returned HTML. Check for overlapping lines, broken spacing, a missing logo, a social row that collapsed. Fix the draft and preview again. This is the only cheap feedback loop; publishing is what people actually see.publish_signature— copies draft → live, setslast_published_at, and triggers installation where the plan and integration allow it. Confirm with the user first: this changes the signature on real outgoing mail.get_signature_htmlwith a specificemail_idfor the real, final installed HTML for one recipient (live content, that person's real values, tracking on). Empty until the template has been published, and the email must actually be a recipient.
Variants (reply / internal)
list_signature_variants shows the reply and internal (same-domain) alternates, each
with its own state and content, plus a supported flag. Variants require an active Microsoft
365 signatures integration — without one, writes fail with 409 variants_unavailable.
update_signature_variantupserts a variant'sdraft_contentand itsactivated/hidden/show_marketing_campaignsflags.publish_signature_variantpromotes that variant's draft and redeploys via the primary.delete_signature_variantis a reset to primary, not a hard delete: it deactivates the variant and restores the primary's content.
Rules of thumb
- Reads run freely; confirm before every write — create, update, publish, install, delete.
- Publishing is the moment of truth. Preview first, every time, even for a one-word change.
install_signaturere-deploys the current livecontentwithout publishing a new draft — use it when a rollout failed, not as a substitute for publish. 403 = the plan lacks installation; 409 = no signature integration connected.- Organize with folders (
list_folders/create_folder); a folder with signatures in it cannot be deleted (409). - For product questions ("how do smart fields work?", "how do I set up DNS?"), call
search_docs/read_docs_pageinstead of answering from memory.
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
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.

