Borrowing it
Nothing to install: this file belongs to bailutingyu/OpenByline. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/bailutingyu/OpenByline/main/.claude/skills/voice-profile/SKILL.mdgit clone --depth 1 https://github.com/bailutingyu/OpenBylineWrote 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/bailutingyu/openbyline/voice-profile)<a href="https://agentmods.dev/skills/bailutingyu/openbyline/voice-profile"><img src="https://agentmods.dev/badge/skills/bailutingyu/openbyline/voice-profile.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.1 | $0.00112 | $0.07263 |
| Opus 5 | $0.00056 | $0.03632 |
| Sonnet 5 | $0.00022 | $0.01453 |
| Haiku 4.5 | $0.00011 | $0.00726 |
Grade A, and why
voice-profile 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 7d 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 — 252 lines — stays where its author put it; the contents beside it link to each section on GitHub.
voice-profile:还原"写得像你"的核心资产方法论
针对"AI 写的稿子跟我毫无关系"的痛点——不追求"看起来像作者",而追求"读起来有作者的味道"。
一句话流程:采样 → 拆出表层+深层特征(每条配原文为证)→ 落成 voice-profile.md → drafter 照写 / style-aligner 逐项打分(<80 不过 G5)→ 在私有环境里版本化、每季度刷新。
采样维度、画像字段、style-aligner 打分项一一对应——少抓一项,G5 就少一项可打的分。
画像的两种类型:作者本人 vs 参考博主
- 作者本人画像
voice-profile.md:还原"写得像你",是你的真声音 + 真实私货——文章的魂。 - 参考博主画像
voice-profile.ref.<博主名>.md:从某个爆款博主(如某 AI 领域科技博主)多篇文章里提炼的可学习的"风格公式/技法"——开头怎么钩、结构怎么搭、节奏、把硬知识讲通俗的手法、收尾套路。这是可借用的形。素材可取自你自己整理的公众号/文章素材库。 - 形魂分离原则(最重要):用参考画像写作时,借的是博主的"怎么写"(技法层),内核仍是你自己的——你的观点、立场、真实经历/私货。一句话"X 的形,你的魂"。
- ✅ 健康:用博主的开头钩子 + 结构 + 通俗讲法,写你自己的事、你的观点、你的真实账。新手借此快速补写作技法。
- ❌ 变味:连博主的人设、专属经历、口头禅、引流话术一起搬,写成他的二手——那是模仿秀/洗稿,丢了原创与真实,也和"不要二手加工别人内容"的原则冲突。
- 参考画像只提炼"可复用技法",标清边界:提炼结构/节奏/钩子/讲解手法 → 标【可借】;博主的真实经历/专属人设/引流话术 → 标【勿搬】(借用即变模仿)。
- 写作时由作者指定"用 X 的风格写",drafter 加载「参考画像(形)+ 作者画像/私货(魂)」。
一、采样要求(决定画像质量的上限)
垃圾进、垃圾出。样本不对,后面全错。
- 数量:3-5 篇代表作,或等量的未加工真实语料(口述/日记/聊天大段输出优先——最难被 AI 仿);已发布文章若含 AI 辅助痕迹,按清洗规则剔除后再用。
- 类型搭配:正式作品打底 + 社媒/聊天大段表达加持更佳。
- 正式作品(公众号文章、报告、专栏)→ 拿到结构与论证习惯。
- 社媒/朋友圈/聊天大段输出 → 拿到最放松、最真实的"私下腔调"和口头禅,这部分最难被 AI 仿出来,含金量最高。
- 清洗:去掉表情符号、链接、@、话题标签、转发引用、图片说明,只保留作者自己写的纯文字。引用他人/官方套话的段落要剔除,避免把别人的腔调当成作者的。
- 一体裁一画像:不同体裁差异极大,各建一份独立画像文件,不要混在一起。
voice-profile.公众号.md/voice-profile.小红书.md/voice-profile.报告.md- 同一作者写小红书短平快、写报告严谨克制,强行合并会得到"四不像"。
- 采样自检(采集前问作者):
- 这几篇你自己满意吗?是不是"你写得最像你"的时候?
- 有没有混进代笔、模板、转载、AI 辅助生成的段落?(有就剔除)
- 体裁/平台是否一致?(不一致就分开建画像)
二、分析维度
表层特征(怎么说话)—— 决定第一眼像不像
| 维度 | 要抓什么 | 提问 |
|---|---|---|
| 语气基调 | 风趣 / 严谨 / 温情 / 犀利 / 自嘲 | 读完像哪种人在说话? |
| 句长与节奏 | 长短句比例、是否爱用短句断喝、是否长句铺陈 | 平均句长?有没有"三字一顿"的节奏? |
| 标志性口头禅/常用词 | 高频独特词、起承转合的固定说法 | 哪些词换个人就不会这么用? |
| 修辞偏好 | 比喻 / 反问 / 排比 / 举例 / 引用 / 反讽 | 最爱用哪一种?比喻取材自哪个领域(生活/科技/历史)? |
| 人称视角 | "你/我/我们"的用法,是否直接对话读者 | 是促膝恳谈,还是居高临下? |
| 段落过渡习惯 | 怎么从一段接到下一段("对了""说回来""但问题是") | 过渡是硬切还是软衔接? |
| 标点习惯 | 破折号、省略号、感叹号、括号补充的偏好 | 有没有标志性标点? |
深层特征(怎么思考)—— 决定耐读之后还像不像
| 维度 | 要抓什么 | 提问 |
|---|---|---|
| 思考逻辑/论证方式 | 归纳还是演绎?先给结论还是先铺垫?爱不爱"反直觉转折" | 他说服你的套路是什么? |
| 价值观/立场 | 成长导向 / 效率优先 / 长期主义 / 人文关怀 / 实用主义 | 字里行间替谁说话、反对什么? |
| 案例偏好 | 个人经历 / 行业案例 / 数据 / 历史典故 / 名人金句 | 论证时第一反应抓哪种素材? |
| 隐含世界观 | 对"成功/努力/运气/系统"等的默认假设 | 他默认这个世界是怎么运转的? |
| 创作方法论(谋篇套路) | 怎么起题 / 搭结构 / 收尾的固定打法:开头惯用什么切口、主体怎么推进、结尾怎么落 | 给 TA 一个题目,TA 大概会怎么搭这篇? |
| 独特标记(指纹) | 一眼认出是 TA 的 2-3 个最难仿的招(如"爱用做饭比喻讲商业""每篇先认怂再翻盘") | 拿掉署名,凭哪 2-3 点还能认出是 TA? |
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.
- 7d ago First seen · 252 lines · 112 tokens per session scan A 860cbc3a45a5
voice-profile is a skill published in the GitHub repository bailutingyu/OpenByline (2 stars, last pushed 2mo ago), licensed MIT. It adds 112 tokens to every session and 7,263 once invoked, about $0.0006 per session on Opus 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-31.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
next-partial-prefetching-adoption
Turn on Partial Prefetching in a Next.js app and work through the insights it surfaces. Use when the user wants to enable or adopt Partial Prefetching, flip the partialPrefetching flag, opt routes in with export const prefetch = 'partial', audit Link prefetch={true} behavior, preserve existing prefetched UI with…
chronicle
Analyze Copilot session history for standup reports, usage tips, session search, and session reindexing. Use when the user asks for a standup, daily summary, usage tips, workflow recommendations, wants to search or find past sessions by keyword/file/PR, wants to reindex their session store, or asks about deleting…
babysit-pr
Babysit a GitHub pull request after creation by continuously polling review comments, CI checks/workflow runs, and mergeability state until the PR is merged/closed or user help is required. Diagnose failures, retry likely flaky failures up to 3 times, auto-fix/push branch-related issues when appropriate, and keep…