business-email-template – skill Marketing & SEO cho agent AI
Sổ đăng ký mẫu email doanh nghiệp: trigger, loại người gửi và người nhận, mẫu tiêu đề, cấu trúc nội dung, token cá nhân hóa và bước kiểm tra trước khi gửi. Dùng cho email gửi đi lặp lại.
Cài skill business-email-template bằng một lệnh
Chọn công cụ bạn đang dùng, copy lệnh và dán vào terminal. Skill sẽ nằm trong thư mục skills của công cụ đó và sẵn sàng dùng ở phiên làm việc tiếp theo.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/business-email-template-28a33.tgz | tar xz -C ~/.claude/skills
Gọi trong Claude Code: /business-email-template – rồi mô tả công việc bạn muốn làm.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/business-email-template-28a33.tgz | tar xz -C ~/.codex/skills
Gọi trong Codex: $business-email-template – rồi mô tả công việc bạn muốn làm.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/business-email-template-28a33.tgz | tar xz -C ~/.hermes/skills
Gọi trong Hermes Agent: /business-email-template – rồi mô tả công việc bạn muốn làm.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/business-email-template-28a33.tgz | tar xz -C ~/.deepcode/skills
Gọi trong DeepSeek: /business-email-template – rồi mô tả công việc bạn muốn làm.
Nội dung SKILL.md
Nội dung SKILL.md gốc bằng tiếng Anh.
Business Email Templates
What it is: the repeatable emails a business actually sends - enquiry reply, quote, invoice, payment reminder, onboarding, complaint, review request, newsletter - with the sendable copy, the authentication records and the accessibility and spam checks each one needs.
Overview
Works out the smallest useful template set for the business in front of it, then builds it
only when asked. The default output is a short recommendation, not a set of email files.
The template register - CSV, SQL DDL, JSON Schema, Notion mapping - is produced on request,
from one field list so the four cannot drift apart.
Layer: Layer 6: Engage. Fits: Starter stage. Table code: n/a.
The rule this table exists to enforce: a template is not the HTML. A template is the
envelope - who it is from, who it is to, what triggers it, what subject pattern it uses, and
whether the domain is allowed to send it - plus the body. Sender Role and Trigger
exist because most "our email looks unprofessional" complaints are a missing trigger and a
missing signature, not a missing design. And every template needs a plain-text version,
which is a separate field here rather than an afterthought inside the HTML.
When to Use This Skill
- email templates, email signatures blocks for body copy, cold outreach
- enquiry reply, quotation, invoice email, payment reminder
- welcome email, onboarding, delivery notification
- complaint response, review request, newsletter, offer
- "our emails go to spam", SPF, DKIM, DMARC, deliverability
- email tone and structure standards
- "make our emails look professional"
Do not use it for: the printed signature block on letterhead and cards
(brand-kit-print-collateral), the mailbox and account register
(company-email-accounts in the operational pack), or marketing campaign automation.
How It Works
Follow the shared execution contract. The module-specific rules below define only domain fields, decisions, calculations, and safety constraints.
Step 1 - Identify intent
Read the request and pick the intent before asking anything.
- "set up" / "build" / "we need" -> artifacts wanted; go to Step 2.
- "ours look bad" / "fix" -> something exists; capture what is sent today, then Step 2.
- "they go to spam" / "review" / "audit" -> a deliverability check, not a build.
- "how do I write ..." -> advice question; answer directly, offer the build only if it helps.
Ask only if this is the highest-value missing fact; otherwise proceed without an opener:
> Q: What is the business called, and what does one line of it actually do?
Step 2 - Ask only what is missing
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.
Skip anything already answered. Ask the rest one at a time, and stop as soon as the
remaining answers would not change the template list.
- Volume - How many emails a day, and who reads them - one person or a team? / Are
they sent from a Gmail/Outlook account, a proper domain mailbox, or a platform?
- Categories - Which of enquiry, quote, invoice, reminder, welcome, complaint, review
request, newsletter actually happen? / Which are sent today, in any form?
- Authentication - Does the business send from its own domain? / Have SPF, DKIM and
DMARC been set up? / Is anything sent through a third-party tool?
- Constraints - Any legal or regulatory wording that must appear - unsubscribe,
sender identity, VAT or GST particulars, a claims address? / Any language the business
must not use?
- Tone - Formal or plain-spoken? / Who signs, by title or by name? / Any sector that
has a required service standard?
Never invent an answer. Domain names, SPF records, DKIM selectors, unsubscribe periods,
legal wording, senders, volumes and metrics the user has not supplied are Unknown.
Step 3 - Hold the internal context
module: business-email-template
intent: null # set up | fix | review | report | import
scale: null # Starter | Growth | Scale, only if the answer changes it
areas:
"Volume": null
"Categories": null
"Authentication": null
"Constraints": null
"Tone": null
requested_outputs: []
confirmed_facts: []
open_questions: []Step 4 - Recommend the smallest workflow
Build an already requested artifact without asking again. For advice-only requests, give a short recommendation and offer the relevant artifact.
Recommended approach: Start with the four that are sent every week and carry the most
risk - enquiry reply, quote, invoice with payment terms, and payment reminder - plus one
plain-text alternative for each. Put the signature block in a single place so it is edited
once. Confirm SPF, DKIM and DMARC before anything is sent from the domain, because no
template quality survives an unauthenticated domain.
Why this one: Those four are where money and reputation move. The enquiry reply wins
the customer, the quote and the invoice set the commercial terms, and the reminder is the
one that recovers cash. A newsletter is a marketing decision that needs consent and a list,
so it is not in the first set.
Workflow: Categories confirmed from what is actually sent → Shared structure agreed
(subject, greeting, body, action, signature) → Four templates drafted → Plain-text
alternative written for each → SPF, DKIM and DMARC confirmed → Tested in a real client →
Spam score checked → Accessibility pass on contrast and text size → Register approved and
versioned
Step 5 - Build only on request
Once the user asks for it, derive the fields from the confirmed context and emit the
requested artifacts. For machine-readable text, keep prose outside the data; for files,
provide a usable link. Report material validation failures or limitations separately.
**A selected Notion output is rendered by notion-manual-import, so route the
Notion step there.** When the user selects Notion, hand that step to
@notion-manual-import: it holds the CSV, the property
mapping, the import steps and the verification checklist, and it renders the Field
Reference below instead of defining a table of its own. Do not restate the mapping
here and do not improvise the import steps. Manual CSV and mapping outputs need no
connection. For requested workspace changes, follow the shared contract: verify actual
tool access and the target before writing. A user saying "connected" is not tool evidence.
Never ask for a Notion password or token.
Template ID,Template Name,Template Type,Trigger,Sender Role,Recipient Type,Subject Line Pattern,Preview Text,Body Structure,Tone,Call To Action,Required Fields,Personalisation Tokens,Signature Block,Unsubscribe Required,Spam Risk Notes,Test Status,Mobile Checked,Accessibility Checked,Version,Status,Notes
,Example Retail enquiry reply,Transactional,Website enquiry received,Sales,Prospective Customer,{Service} enquiry - {Business Name},Enquiry received,Thanks - next step - action - signature,Plain and direct,Reply with availability,"First Name; Service; Business Name","{First Name}; {Service}; {Business Name}",Yes - signature block only,false,Review actual provider feedback,Not tested,false,false,1.0,Draft,Synthetic example - replace before use.-- Engine assumption: PostgreSQL. For another engine use the engine's auto-increment
-- equivalent and keep the rest portable.
CREATE TABLE email_template (
template_id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
template_name VARCHAR(255) NOT NULL,
template_type VARCHAR(100) NOT NULL,
trigger TEXT NOT NULL,
sender_role VARCHAR(100) NOT NULL,
recipient_type VARCHAR(100) NOT NULL,
subject_line_pattern VARCHAR(255) NOT NULL,
preview_text VARCHAR(255),
body_structure TEXT,
tone VARCHAR(100) NOT NULL,
call_to_action TEXT,
required_fields TEXT,
personalisation_tokens TEXT,
signature_block VARCHAR(100) NOT NULL,
unsubscribe_required BOOLEAN NOT NULL,
spam_risk_notes TEXT,
test_status VARCHAR(100) NOT NULL,
mobile_checked BOOLEAN NOT NULL,
accessibility_checked BOOLEAN NOT NULL,
version VARCHAR(50) NOT NULL,
status VARCHAR(50) NOT NULL,
notes TEXT,
created_at TIMESTAMP DEFAULT NOW(),
updated_at TIMESTAMP DEFAULT NOW(),
CONSTRAINT email_template_type CHECK (template_type IN ('Transactional','Marketing','Notification','Personal','System')),
CONSTRAINT email_template_test_status CHECK (test_status IN ('Not tested','Tested - internal','Tested - real client','Tested - seed list','Failed - see Notes'))
);
CREATE INDEX idx_email_template_status ON email_template (status);
CREATE INDEX idx_email_template_type ON email_template (template_type);{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Business Email Templates",
"type": "object",
"additionalProperties": false,
"properties": {
"Template ID": { "t… (nội dung đầy đủ có trong gói tải về)
Skill liên quan
- business-website-setup – Sổ đăng ký trang web: URL, title, meta description, search intent, khối NAP, loại…
- inbox-setup – Skill thiết lập một lần, xây dựng cơ sở tri thức phân loại hộp thư cá nhân hóa thông qua…
- internal-comms – Dùng khi trưởng bộ phận People Ops, lead BizOps hoặc chủ sở hữu Internal Communications…
- password-spray-methodology – Sổ tay tấn công password spray đầu cuối: liệt kê người dùng, phát hiện khóa tài khoản…
- co-marketing – Khi người dùng muốn tìm đối tác đồng tiếp thị, lên kế hoạch chiến dịch chung, hoặc động…
- cold-email – Viết email chào hàng B2B và chuỗi email theo dõi giúp nhận được phản hồi. Dùng khi tạo…
- landing – Tạo trang landing HTML một trang cao cấp với hiệu ứng CSS 3D, hiệu ứng cuộn GSAP và độ…
- landing-page-generator – Tạo landing page có tỷ lệ chuyển đổi cao dưới dạng component Next.js/React (TSX) hoàn…