ai-image-gen
通用 AI 生图:文生图 / 图生图 / 图像变体。当用户说 AI 生图、AI 画图、文生图、图生图、生成图片、生成配图、图像生成、AI 出图、AI…
人设一致性检查与品牌调性检查:对比内容与创作者画像的账号定位、内容赛道、形式、受众、 风格和偏好, 输出一致性评分和具体偏离点。当用户说"符合我的人设吗"、"一致性检查"、"风格对不对"、 "像我写的吗"、"品牌一致"、"调性检查"、"这是我的风格吗"、"人设偏了没"、 "语气对不对"、"品牌声音检查"时触发。 必须有 Profile 才能工作;无 Profile 时提示先创建。
$ npx -y skills add zju-real/easel --skill skill-persona-check --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/skill-persona-checkContext preview
The summary Claude sees to decide when to auto-load this skill.
人设一致性检查与品牌调性检查:对比内容与创作者画像的账号定位、内容赛道、形式、受众、 风格和偏好, 输出一致性评分和具体偏离点。当用户说"符合我的人设吗"、"一致性检查"、"风格对不对"、 "像我写的吗"、"品牌一致"、"调性检查"、"这是我的风格吗"、"人设偏了没"、 "语气对不对"、"品牌声音检查"时触发。 必须有 Profile 才能工作;无 Profile 时提示先创建。
name: skill-persona-check description: >- 人设一致性检查与品牌调性检查:对比内容与创作者画像的账号定位、内容赛道、形式、受众、 风格和偏好, 输出一致性评分和具体偏离点。当用户说"符合我的人设吗"、"一致性检查"、"风格对不对"、 "像我写的吗"、"品牌一致"、"调性检查"、"这是我的风格吗"、"人设偏了没"、 "语气对不对"、"品牌声音检查"时触发。 必须有 Profile 才能工作;无 Profile 时提示先创建。 layer: publish
> 检查内容是否符合创作者人设和品牌调性,输出一致性评分与偏离诊断。
| SKILL | 定位 | 关注点 | |---|---|---| | **persona-check**(本 SKILL) | 人设/品牌一致性 | 账号定位、题材、形式、受众、风格是否匹配画像 | | skill-quality-gate | 深度合规 + 质量审核 | 平台规则、内容质量 | | skill-publish-checklist | 完整性检查 | 有没有漏标题、漏封面等 |
本 SKILL **必须有 Profile 才能工作**。Profile 中应包含以下信息(部分或全部):
如果没有 Profile,直接返回提示,不做检查。
输出结构化一致性报告,JSON 格式:
{
"overall_score": 85,
"verdict": "consistent | minor_drift | major_drift",
"publish_allowed": true,
"warning": "",
"dimensions": [
{
"dimension": "检查维度名",
"score": 90,
"status": "aligned | drifted",
"evidence": "具体证据文本",
"suggestion": "调整建议"
}
],
"drift_summary": ["偏离点概述列表"],
"rewrite_hints": ["具体修改建议"],
"summary": "一句话总结"
}评分标准:
**人设评分只做提醒,不是发布权限。** `publish_allowed` 始终为 `true`;低分不得阻断发布、 不得要求用户为了通过评分而强制改稿。用户已经明确要发布时,展示警告后继续发布。内容安全、 平台合规、敏感信息等独立硬门禁不在本 SKILL 范围内,仍按对应规则处理。
1. 检测是否有 Profile 上下文(`=== EASEL ACCOUNT PROFILE ===` 标记) 2. **无 Profile** → 直接输出提示信息并终止:
未检测到账号 Profile,无法进行人设一致性检查。 请先创建 Profile:用 skill-profile-builder 引导创建,或复制 profiles/_template/ 手动填写。 Profile 的 style.md 应包含:写作风格、语气基调、人格特征、标志性表达。
3. **有 Profile** → 必须读取当前画像的 `identity.md`、`style.md`、`audience.md`、 `preferences.md`、`memory.md`;发布场景再读取 `platforms.md`。先提取账号主线、允许题材、 内容形式和受众,再提取语气、用词和平台习惯。不得只读 `style.md` 后凭语言相似度评分。
对输入内容进行多维度语言分析:
1. **题材与意图**:这条内容在讲什么,是否属于账号主线或合理延展 2. **内容形式**:小说、动画、口播、测评、图文等是否匹配账号定位 3. **目标受众**:内容解决的问题、情绪价值和阅读门槛是否面向画像受众 4. **语言风格**:语气、用词、句式、叙事视角和情感色彩 5. **平台与偏好**:是否适合目标平台,是否触碰画像明确的“不做”项
将内容特征与 Profile 特征逐维度对比,每个维度独立评分:
| 维度 | 对比内容 | 权重 | |---|---|---| | **账号定位与内容赛道** | 题材/主题 vs `identity.md` 主线、内容方向、选题池 | 30% | | **内容形式一致性** | 小说/动画/图文/口播等 vs 画像规定的主要内容形式 | 15% | | **目标受众匹配** | 内容价值与阅读/观看人群 vs `audience.md` | 15% | | **语气与叙事风格** | 语气、节奏、视角 vs `style.md` | 15% | | **人格与用词** | 表达人格、词汇、标志性表达 vs 画像 | 10% | | **平台适配** | 内容形态和表达 vs `platforms.md`(无目标平台时给中性分) | 10% | | **偏好与经验** | `preferences.md` 与当前画像 `memory.md` | 5% |
每个维度评分 0-100,加权计算总分。
为防止语言相似掩盖根本性错位,计算后应用以下上限:
示例:`2D 搞笑动画博主` 发布纯恐怖文字小说,即使同样口语化、有画面感、有反转, 账号赛道和内容形式仍严重不符,总分必须低于 60,不能因语言技巧给出 80+。
对于 score < 80 的维度,给出具体偏离证据:
1. **引用原文**:指出内容中偏离人设的具体段落或句子 2. **对比说明**:说明 Profile 期望的表达方式 vs 实际表达 3. **严重程度**:标记该偏离是否影响整体人设感知
针对每个偏离点,给出可操作的修改建议:
汇总所有维度评分,生成结构化报告:
1. 计算加权总分并应用严重偏离上限 2. 判定 verdict(consistent / minor_drift / major_drift) 3. 列出所有偏离点摘要 4. 给出优先级排序的修改建议 5. `publish_allowed` 固定输出 `true`;低于 80 分时填写醒目的 `warning` 6. 生成一句话总结,明确“这是人设提醒,不阻止用户发布”
> 自研溯源与参考项目见同目录 `EASEL-META.md`。
An open-source AI agent for social media — discover trends, create content, publish everywhere, and learn what works across Xiaohongshu, Douyin, Zhihu, Bilibili, and more.🎨一个开源的 AI 社交媒体智能体——发现热点趋势、创作内容、一键发布至各大平台,并学习分析哪些内容真正有效,覆盖小红书、抖音、知乎、哔哩哔哩等平台。
Repo: zju-real/easel
通用 AI 生图:文生图 / 图生图 / 图像变体。当用户说 AI 生图、AI 画图、文生图、图生图、生成图片、生成配图、图像生成、AI 出图、AI…
AI 音乐 / BGM 生成:给短视频、社媒内容生成原创背景音乐 / 配乐 / 纯音乐。通过可插拔 provider(阿里 DashScope / Suno 类第三方…
AI 视频生成:文生视频 / 图生视频 / 数字人首帧驱动。通过可插拔 provider(通义万相 Wan / 火山 Seedance / 快手可灵 / OpenAI…
outputs/ 目录下的产物管理:按日期/平台/类型归档、打标签、搜索历史内容、生成素材清单。 当用户说"整理素材"、"归档"、"找之前的内容"、"搜索历史"、"素材管理"、…
音频降噪:去除录音中的背景噪声、电流声、风噪、嗡嗡声,基于 ffmpeg 滤镜链(afftdn/highpass/lowpass)。…
通用音频处理:音频剪辑/裁剪、格式转码(mp3/wav/m4a/aac)、音量归一化、从视频提取音轨、多段拼接、淡入淡出、变速(保音高)。当用户说“剪音频”“裁一段”“转成…