Easel is an open-source content workspace and AI agent for managing social media from trend discovery through planning, content creation, publishing, and performance analysis. It is intended for social media creators and maintains separate account profiles, content projects, platform adaptations, and publishing records. The catalogue skills support these content and publishing workflows.
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 skills add ZJU-REAL/Easel --skill roi-calculatorgit clone --depth 1 https://github.com/ZJU-REAL/EaselWrote 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/skills/zju-real/easel/roi-calculator)<a href="https://agentmods.dev/skills/zju-real/easel/roi-calculator"><img src="https://agentmods.dev/badge/skills/zju-real/easel/roi-calculator/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/zju-real/easel/roi-calculator"><img src="https://agentmods.dev/badge/skills/zju-real/easel/roi-calculator.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.1 | $0.00082 | $0.02269 |
| Opus 5.5 | $0.00033 | $0.00908 |
| Sonnet 5.5 | $0.00016 | $0.00454 |
| Haiku 4.5 | $0.00008 | $0.00227 |
Grade A, and why
roi-calculator 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 14d 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.
How it starts
The opening of the file, as written. The whole thing — 178 lines — stays where its author put it; the contents beside it link to each section on GitHub.
内容投放 ROI 计算器
根据用户提供的投放数据,计算标准营销效果指标,对比行业基准,输出结构化分析报告。
输入
用户提供以下字段的任意子集(缺失字段跳过其依赖指标):
| 字段 | 代号 | 单位 | 必要性 |
|---|---|---|---|
| 投放费用 | ad_spend | CNY | 核心(为 0 或缺失时切换有机模式) |
| 曝光量 | impressions | 次 | 可选 |
| 点击量 | clicks | 次 | 可选 |
| 互动量 | engagements | 次(赞+评+转) | 可选 |
| 转化数 | conversions | 次 | 可选 |
| 客单价 | avg_order_value | CNY | 可选 |
| 内容制作成本 | production_cost | CNY | 可选,默认不计 |
两种模式:
- Mode A — 单活动分析:一组输入数据,输出完整指标卡片
- Mode B — 多活动对比:多组数据(表格或逐条),按 ROI 降序排列,横向对比
输出
指标计算(公式表)
以下指标仅在分母数据存在且非零时计算,否则标注"数据不足,已跳过":
| 指标 | 公式 | 依赖字段 |
|---|---|---|
| CTR(点击率) | clicks / impressions | impressions, clicks |
| CPC(单次点击成本) | ad_spend / clicks | ad_spend, clicks |
| CPM(千次曝光成本) | (ad_spend / impressions) * 1000 | ad_spend, impressions |
| CPE(单次互动成本) | ad_spend / engagements | ad_spend, engagements |
| 转化率 | conversions / clicks | conversions, clicks |
| CPA(单次转化成本) | ad_spend / conversions | ad_spend, conversions |
| 营收 | conversions * avg_order_value | conversions, avg_order_value |
| ROAS(广告支出回报率) | revenue / ad_spend | revenue, ad_spend |
| 总成本 | ad_spend + production_cost | ad_spend(production_cost 缺失按 0) |
| 利润 | revenue - total_cost | revenue, total_cost |
| ROI | (revenue - total_cost) / total_cost | revenue, total_cost |
输出格式
Mode A — 单活动分析:
## 投放效果报告
### 基础数据
(用户提供的原始字段)
### 计算指标
| 指标 | 值 | 公式 | 基准对比 |
|------|----|------|----------|
| CTR | x% | clicks/impressions | ▲ 高于行业均值 |
| ... | | | |
### 基准对比图例
▲ 高于行业均值(表现良好)
▼ 低于行业均值(需关注)
≈ 接近行业均值(正常水平)
⚠ 显著偏离(超出基准 2 倍或低于 50%)
### 诊断
- 表现突出:(列出高于基准的指标及优势分析)
- 待优化:(列出低于基准的指标及具体改进方向)
- 综合评价:(一句话总结本次投放效果)
Mode B — 多活动对比:
## 多活动横向对比(按 ROI 降序)
| 活动 | 花费 | 营收 | ROI | ROAS | CTR | CPC | 综合评价 |
|------|------|------|-----|------|-----|-----|----------|
| ... | | | | | | | |
### 最优/最差活动分析
(对比 ROI 最高与最低活动的关键指标差异,找出差距来源)
### 预算分配建议
(基于各活动效率,建议预算向高 ROI 活动倾斜的比例)
### 优化建议
(针对低效活动的具体改进方向)
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 14d ago Changed f7e2da27d7a1
- 1mo ago First seen · 178 lines · 82 tokens per session scan A 03f7da4a41f3
roi-calculator is a skill published in the GitHub repository ZJU-REAL/Easel (4,115 stars, last pushed 2d ago), licensed Apache-2.0. It adds 82 tokens to every session and 2,269 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
bmad-spec
Condense any input — an idea, brief, PRD, transcript, or mixed notes — into a short spec: one kernel file plus supporting files that downstream skills build from. Also updates and validates existing specs. Use when the user says "create a spec", "distill this into a spec", "validate this spec", or "update the spec".
bmad-advanced-elicitation
Push the LLM to reconsider, refine, and improve its recent output. Use when user asks for deeper critique or mentions a known deeper critique method, e.g. socratic, first principles, pre-mortem, red team.
jacky-motion2-0
A workflow for turning a Chinese spoken script and matching SRT subtitle file into a single 16:9 HTML information animation. SRT is a subtitle file that stores text with start and end times; the animation follows those times and adds recorded-screen placeholders when needed.
bmad-build
Turns implementation work into working code, reviewed and verified. Use when the user delegates a feature, story, bug fix, or meaningful change; a bare story or issue link counts. Skip obvious, low-risk mechanical maintenance such as small ignore-file, typo-only, formatting-only, or configuration-hygiene edits.…
bmad-retrospective
Review a finished epic folder in the ticket tree against the evidence it left behind — the epic file, each ticket plan, diffs, commits — and produce a retrospective with sourced findings, action items, and an acceptance decision. Use when the user says "run a retrospective" or "lets retro the epic [epic]". Supports…
bmad-review
Runs one or more installed review lenses — adversarial critique, edge cases, verification gaps, structure, prose — and reports triaged findings. Use when, and only when, the user asks you to review a diff, a pull request, or an artifact — code or documents, one or many — and actually says "review"; an explicit…