Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add commands/jjmartres/ai-coding-agents/compose-emailgit clone --depth 1 https://github.com/jjmartres/ai-coding-agentsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/jjmartres/ai-coding-agents/compose-email)<a href="https://agentmods.dev/commands/jjmartres/ai-coding-agents/compose-email"><img src="https://agentmods.dev/badge/commands/jjmartres/ai-coding-agents/compose-email.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00028 | $0.00882 |
| Opus 5 | $0.00014 | $0.00441 |
| Sonnet 5 | $0.00006 | $0.00176 |
| Haiku 4.5 | $0.00003 | $0.00088 |
Grade A, and why
compose-email scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
91% identical to compose-email — 2 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 143 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Draft Professional Email
Generate a professional, well-structured email using communication best practices for software developers.
Arguments
$ARGUMENTS - Optional context, topic, or existing draft to refine
Workflow
Step 1: Gather Context
If $ARGUMENTS is empty or insufficient, use AskUserQuestion to gather:
Question 1: Recipient Type (header: "Audience")
- Technical peer (developer, engineer)
- Non-technical stakeholder (PM, executive, customer)
- Cross-functional team (mixed audience)
- Manager or leadership
Question 2: Email Purpose (header: "Purpose")
- Status update or progress report
- Request (review, approval, resources)
- Information sharing (FYI, announcement)
- Escalation or raising concern
- Following up on prior conversation
Question 3: Urgency (header: "Urgency")
- Urgent - needs response today
- Standard - within 1-2 days
- Low priority - for awareness only
Step 2: Apply Communication Framework
Use the What-Why-How structure:
-
WHAT (Opening - 1-2 sentences)
- Lead with the key message or request
- State the purpose immediately
- No throat-clearing ("I hope this email finds you well...")
-
WHY (Context - 2-3 sentences)
- Provide necessary background
- Explain relevance to the recipient
- Include only essential context
-
HOW (Action - clear next steps)
- Specific call-to-action
- Clear deadline if applicable
- Who needs to do what
Step 3: Apply Email Best Practices
Subject Line:
- Specific and scannable (5-8 words ideal)
- Include action needed: "[Action Required]", "[FYI]", "[Decision Needed]"
- Include deadline if urgent: "[Due Friday]"
Body Structure:
- Bullets for multiple points (3-5 max)
- Bold key information
- One topic per email
- Short paragraphs (2-3 sentences max)
Tone Calibration by Audience:
| Audience | Tone | Jargon Level |
|---|---|---|
| Technical peer | Direct, precise | High (use technical terms) |
| Non-technical | Business-focused | Low (translate jargon) |
| Cross-functional | Balanced | Medium (explain as needed) |
| Leadership | Concise, impact-focused | Low (focus on outcomes) |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 143 lines · 28 tokens per session scan A da06546777e7
compose-email is a command published in the GitHub repository jjmartres/ai-coding-agents (43 stars, last pushed 2mo ago), licensed MIT. It adds 28 tokens to every session and 882 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. It is 91% identical to compose-email, differing in 2 lines, and is treated as a copy.
Other commands, from other repositories
publish
Release a new package version — semver bump from commits, tag, registry publish, GitHub Release.
rebase
Rebase the current branch on main, a local branch, or a remote branch (with fetch).
python-review
Comprehensive Python code review for PEP 8 compliance, type hints, security, and Pythonic idioms. Invokes the python-reviewer agent.
test-coverage
Analyze test coverage, identify gaps, and generate missing tests to reach 80%+ coverage.
release
Bump version, update CHANGELOG.md, and prepare a release.
fix-issue
Investigate and fix a GitHub issue.