Agent skill

Email Formatting

by provos in provos/ironcurtain

Markdown formatting conventions for email summary documents — heading depth, list style, line length, emoji policy, and a mandatory provenance footer.

Apache-2.0Auto-check passedDocuments & Office

Install Email Formatting

skills CLI
$ npx skills add provos/ironcurtain --skill email-formatting -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install provos/ironcurtain email-formatting --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/provos/ironcurtain.git skills-src && mkdir -p .claude/skills && cp -r skills-src/src/workflow/workflows/test-email-summary/skills/email-formatting .claude/skills/email-formatting && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
email-formatting
GitHub stars
613
Token cost
~518 tokens
SKILL.md length
254 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
Apache-2.0

At a glance

Markdown formatting conventions for email summary documents — heading depth, list style, line length, emoji policy, and a mandatory provenance footer.

  • Tasks that involve Markdown
  • SKILL.md covers Heading depth, Per-email metadata, Line length and whitespace and Emoji policy, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Email Formatting is an agent skill from provos/ironcurtain. Markdown formatting conventions for email summary documents — heading depth, list style, line length, emoji policy, and a mandatory provenance footer. Read this when producing a markdown report that summarizes one or more email messages so the output matches the project's house style.

Its SKILL.md is about 520 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Documents & Office, covering Markdown. It works with Model Context Protocol. The repository describes itself as: A secure runtime for autonomous AI agents. Policy from plain-English constitutions. (https://ironcurtain.dev). The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Markdown

Example prompts

  • “/email-formatting”

What it can do on your machine

Read from SKILL.md and the folder at commit d51a346. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Email Formatting loads about 518 tokens when it runs. Until then it costs about 76 tokens; SKILL.md has 254 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~76
When it runs · the whole SKILL.md, loaded when a task matches
~518

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from provos/ironcurtain at commit d51a346, republished under its Apache-2.0 licence (© provos). 254 words, ~518 tokens.

Download SKILL.mdSave it as .claude/skills/email-formatting/SKILL.md (or your agent's skills folder).
name
email-formatting
description
Markdown formatting conventions for email summary documents — heading depth, list style, line length, emoji policy, and a mandatory provenance footer. Read this when producing a markdown report that summarizes one or more email messages so the output matches the project's house style.

Email formatting conventions

Use these conventions whenever you write a markdown file that summarizes email content.

Heading depth

  • The document has exactly one # heading at the top: the report title.
  • Each individual email gets a ## heading whose text is the email subject.
  • Do not use ### or deeper for per-email metadata; use a bullet list instead.

Per-email metadata

For each email, render metadata as an unordered list immediately under the ## subject heading, in this order:

  • From: <sender>
  • To: <recipient(s), comma-separated>
  • Date: <as it appears in the source, no reformatting>
  • Summary: <1-2 sentences in prose>

Line length and whitespace

  • Soft-wrap at roughly 80 columns. Don't hard-break inside a sentence.
  • Exactly one blank line between sections; never two or more.
  • No trailing whitespace at end of lines.

Emoji policy

Do not use emoji in summary documents. They render inconsistently across mail clients that may consume the markdown downstream.

Preamble and outro

There is no preamble (no "Here is the summary..." opener) and no outro (no "Let me know if..." closer). The document opens with the # title.

The document MUST end with the literal HTML comment marker on a line by itself, separated from the last email's Summary: bullet by exactly one blank line:

<!-- email-summary/v1 -->

This marker is how downstream tooling identifies the generator and schema version. Producers that omit it are non-compliant; producers that change the spelling, casing, or version segment break parsers that depend on the literal string. Do not localize, prettify, or expand the marker — it is a machine-readable token, not human prose.

© provos, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in src/workflow/workflows/test-email-summary/skills/email-formatting of provos/ironcurtain.

Open the folder on GitHubat commit d51a346

Compare with similar skills

Email Formatting next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Email Formatting compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Email Formatting this skillprovos/ironcurtain613—~518Automated safety check: PassApache-2.0
Open Knowledgeojowwalker77/BonsAI145—~5.1kAutomated safety check: PassCustom licence
Web Article Extractordongbeixiaohuo/writing-agent434—~740Automated safety check: PassMIT
Gdoc To Markdowniurykrieger/claude-bedrock1051 repos~3.8kAutomated safety check: NotesMIT
Adk Docs WriterBrainDAO/adk-ts119—~4.9kAutomated safety check: PassMIT
Fetch URL As MarkdownCodeAlive-AI/ai-driven-development157—~906Automated safety check: PassMIT

Similar skills

  • Open Knowledge

    ojowwalker77/BonsAI

    Authoritative agent-runtime contract for working inside an OpenKnowledge project — a markdown-CRDT knowledge base exposed over MCP.

    145 GitHub stars~5.1k tokensUpdated 1 mo ago
    Documents & OfficeAuto-check passed
  • Web Article Extractor

    dongbeixiaohuo/writing-agent

    使用隔离的 Chrome DevTools MCP 从博客、新闻、公众号等网页提取正文,返回结构化内容,或保存 Markdown 和远程图片。用户要求提取文章、抓取网页正文、保存为 Markdown、下载文章图片或排查正文选择器时调用。

    434 GitHub stars~740 tokensUpdated 4 days ago
    Documents & OfficeAuto-check passed
  • Gdoc To Markdown

    iurykrieger/claude-bedrock

    Internal fetcher module for Google Docs and Sheets. An agent skill from iurykrieger/claude-bedrock.

    105 GitHub starsUsed in 1 repo~3.8k tokens
    Documents & OfficeAuto-check: notes
  • Adk Docs Writer

    BrainDAO/adk-ts

    ADK-TS documentation specialist for Fumadocs MDX pages. An agent skill from BrainDAO/adk-ts.

    119 GitHub stars~4.9k tokensUpdated 3 mo ago
    Documents & OfficeAuto-check passed
  • Fetch URL As Markdown

    CodeAlive-AI/ai-driven-development

    Fetch a web page (URL) and return clean Markdown via local trafilatura, with Exa MCP as a fallback for JS-rendered or anti-bot pages.

    157 GitHub stars~906 tokensUpdated 2 days ago
    Documents & OfficeAuto-check passed
  • Publishes a local Markdown file to a user-specified Confluence location, creating a new page or updating an existing one through the Atlassian MCP server.

    279 GitHub stars~2.4k tokensUpdated 7 days ago
    Documents & OfficeAuto-check passed

More from provos/ironcurtain

  • Harness Design Fuzzing

    provos/ironcurtain

    Reference vocabulary for designing instrumented harnesses that drive vulnerability discovery — design classes (trigger-driven vs coverage-driven), tiered scope (T1 isolated function / T2…

    613 GitHub stars~5.7k tokensUpdated yesterday
    Auto-check passed
  • Gmail Query Syntax

    provos/ironcurtain

    Reference for Gmail's search query syntax — operators like is:sent, newerthan:, from:, has:attachment, label:, and how they compose.

    613 GitHub stars~971 tokensUpdated yesterday
    Auto-check passed
  • JSON Schema Emails

    provos/ironcurtain

    Canonical shape of the .workflow/emails/emails.json file passed between the fetch and summarize states — required fields (sender, recipient, subject, date, body), types, and field semantics.

    613 GitHub stars~491 tokensUpdated yesterday
    Auto-check passed
  • Summary Style Guide

    provos/ironcurtain

    Tone and length conventions for email summaries — voice, verb tense, what to include vs omit, and target sentence count.

    613 GitHub stars~509 tokensUpdated yesterday
    Auto-check passed
  • Memory Safety C Cpp

    provos/ironcurtain

    Reference vocabulary for memory-safety vulnerabilities in native C/C++ code — bug-class taxonomy, common arithmetic patterns that lead to corruption, dispatch-family discipline, type-confusion…

    613 GitHub stars~5.6k tokensUpdated yesterday
    Auto-check passed
  • Vulnerability Triage

    provos/ironcurtain

    Reference vocabulary for interpreting vulnerability findings — detector-vs-impact distinction, severity anchoring on demonstrated evidence, the eleven-item interpretation rubric, delegation…

    613 GitHub stars~6.3k tokensUpdated yesterday
    Auto-check passed

Questions about Email Formatting

What does Email Formatting do?

Markdown formatting conventions for email summary documents — heading depth, list style, line length, emoji policy, and a mandatory provenance footer. Email Formatting is an agent skill from provos/ironcurtain. Markdown formatting conventions for email summary documents — heading depth, list style, line length, emoji policy, and a mandatory provenance footer.

When should I use Email Formatting?

Email Formatting fits situations like: tasks that involve Markdown.

How do I install Email Formatting in Claude Code?

Run `npx skills add provos/ironcurtain --skill email-formatting -a claude-code`. Or copy the skill folder (src/workflow/workflows/test-email-summary/skills/email-formatting in provos/ironcurtain) into .claude/skills/email-formatting in your project. Claude Code loads it when a task matches its description.

How do I install Email Formatting in Codex?

Run `npx skills add provos/ironcurtain --skill email-formatting -a codex`. Or copy the skill folder (src/workflow/workflows/test-email-summary/skills/email-formatting in provos/ironcurtain) into .agents/skills/email-formatting in your project. Codex loads it when a task matches its description.

Can I use Email Formatting in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add provos/ironcurtain --skill email-formatting -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/email-formatting, .gemini/skills/email-formatting, .github/skills/email-formatting and .opencode/skills/email-formatting in your project.

What does Email Formatting need to run?

SKILL.md names no scripts, command-line tools or credentials: Email Formatting is instructions for the agent only.

Does Email Formatting access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Email Formatting safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Email Formatting use?

Email Formatting is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Email Formatting use?

About 518 tokens (SKILL.md is roughly 2.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Email Formatting?

Skills that share tags, products or a category with Email Formatting: Open Knowledge (ojowwalker77/BonsAI, 145 stars), Web Article Extractor (dongbeixiaohuo/writing-agent, 434 stars), Gdoc To Markdown (iurykrieger/claude-bedrock, 105 stars) and Adk Docs Writer (BrainDAO/adk-ts, 119 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Email Formatting?

provos (a GitHub user) maintains it in provos/ironcurtain, which has 613 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 7, 2026.

Source: provos/ironcurtain on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.