OpenByline: Skill for Claude Code

.claude/skills/voice-profile/SKILL.md

voice-profile is a skill for Claude Code from bailutingyu/OpenByline. It costs 112 tokens per session (7,263 once invoked), scanned A, original, MIT.

A writing guide for building and applying a voice profile: a written description of how an author naturally writes. It separates an author’s own ideas and experiences from reusable techniques found in another writer’s style.

In plain words
What is it for?
It helps collect writing samples, document tone and structure, draft in the author’s voice, borrow general writing techniques responsibly, and check whether a draft matches the profile.
Why use it?
It helps prevent drafts from sounding generic or unlike the intended author. It also sets boundaries against copying another writer’s personal identity, stories, or catchphrases.

Skill for Claude Code

Written for Claude Code: installed under .claude/.

This is bailutingyu/OpenByline's own configuration. It tells Claude Code how to work on OpenByline itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything OpenByline configures →

Reuse

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.

Copy the file
curl -O https://raw.githubusercontent.com/bailutingyu/OpenByline/main/.claude/skills/voice-profile/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/bailutingyu/OpenByline

Made for: Claude Code.

Wrote 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.

agentmods badge for voice-profile

README.md
[![agentmods](https://agentmods.dev/badge/skills/bailutingyu/openbyline/voice-profile.svg)](https://agentmods.dev/skills/bailutingyu/openbyline/voice-profile)
Your own site
<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>
Per session 112 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 7,263 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce 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

Measured 7d ago against content hash 860cbc3a45a5, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-07, from the pricing page.

Security

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.

.claude/skills/voice-profile/SKILL.md · 252 lines

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?

Read the full file on GitHub · 252 lines

Changes

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.

  1. 7d ago First seen · 252 lines · 112 tokens per session scan A 860cbc3a45a5

Subscribe to this mod's changes

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.

Related

Other skills, from other repositories

systematic-debugging

Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.

obra/superpowers · 21 tokens

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…

microsoft/ai-agents-for-beginners · 200 tokens

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…

vercel/next.js · 95 tokens

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…

vercel/next.js · 103 tokens

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…

microsoft/vscode · 72 tokens

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…

openai/codex · 114 tokens