Agent skill

Novel Outline

by suihe1 in suihe1/short-drama-production

把小说或故事改编为短剧大纲,确定人物去留、分集因果、剧情重点与资产预算,产出可校验 JSON、Markdown 和评审报告。用于短剧大纲、改编方案和现有大纲诊断;不写完整剧本或镜头方案。

Apache-2.0Auto-check: notesMedia & Creative

Install Novel Outline

skills CLI
$ npx skills add suihe1/short-drama-production --skill novel-outline -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install suihe1/short-drama-production novel-outline --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/suihe1/short-drama-production.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/novel-outline .claude/skills/novel-outline && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
novel-outline
GitHub stars
181
Token cost
~1.3k tokens
SKILL.md length
206 words
Files
12 (incl. scripts, references, assets)
Skills in repo
7
Repo updated
First seen
Licence
Apache-2.0

At a glance

把小说或故事改编为短剧大纲,确定人物去留、分集因果、剧情重点与资产预算,产出可校验 JSON、Markdown 和评审报告。用于短剧大纲、改编方案和现有大纲诊断;不写完整剧本或镜头方案。

  • Works in 8 steps: 复用项目参数,补齐真正缺失的信息 → 定位输入 → 分卷摘要(长文本才需要) → …
  • Tasks that involve Creative writing and fiction
  • SKILL.md covers 输入与创作权限, novel-outline, 体检模式 and 联动更新, plus 4 more sections
  • Runs JavaScript scripts from its folder; calls node

What it does

Novel Outline is an agent skill from suihe1/short-drama-production. 把小说或故事改编为短剧大纲,确定人物去留、分集因果、剧情重点与资产预算,产出可校验 JSON、Markdown 和评审报告。用于短剧大纲、改编方案和现有大纲诊断;不写完整剧本或镜头方案。

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 15 other files, including scripts, reference files and assets (for example `README.en.md`, `README.md` and `examples/渡口-outline.json`).

It sits in Media & Creative, covering Creative writing and fiction. It works with MiniMax. The repository describes itself as: AI 短剧生产总控 / 短剧skill:专业导演与分镜、MiniMax H3、CompShare、声音资产、粗剪与 QC,默认 16:9。 The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Creative writing and fiction

Example prompts

  • “/novel-outline”

Requirements

  • Node.js
  • Pre-approved tools (allowed-tools): Read, Write, Bash, Task, Glob

Workflow steps

8 steps, taken from the step headings in SKILL.md.

  1. 复用项目参数,补齐真正缺失的信息
  2. 定位输入
  3. 分卷摘要(长文本才需要)
  4. 快版骨架 → 用户拍板 ⛔
  5. 细版骨架
  6. 分集梗概(分批)
  7. 校验 ⛔ 不能跳
  8. 输出与汇报

What it can do on your machine

Read from SKILL.md and the folder at commit dbd3310. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Bash
    • Task
    • Glob

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 2 files in scripts/ (JavaScript), which the agent can run.

    Shell commands in SKILL.md call:

    • node

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Novel Outline loads about 1.3k tokens when it runs, and up to ~5.6k if it reads all its reference files. Until then it costs about 27 tokens; SKILL.md has 206 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~27
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~5.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Write, Bash, Task, Glob

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from suihe1/short-drama-production at commit dbd3310, republished under its Apache-2.0 licence (© suihe1). 206 words, ~1,320 tokens.

Download SKILL.mdSave it as .claude/skills/novel-outline/SKILL.md (or your agent's skills folder). This skill also uses 11 other files; get the full folder from GitHub.
name
novel-outline
description
把小说或故事改编为短剧大纲,确定人物去留、分集因果、剧情重点与资产预算,产出可校验 JSON、Markdown 和评审报告。用于短剧大纲、改编方案和现有大纲诊断;不写完整剧本或镜头方案。
allowed-tools
Read, Write, Bash, Task, Glob
metadata.license
Apache-2.0
metadata.runtimes
claude-code, codex
metadata.version
1.1.0
metadata.triggers
novel-outline, 改编大纲, 短剧大纲, 拆大纲, 小说转短剧, 大纲体检, adaptation outline

输入与创作权限

先读用户实际材料与目标,复用已确定的事实和规格;已有剧本、资产或分镜直接进入相关工作,不为流程完整重写上游。未授权的删线、合人、改变人物身份、主题、结局或重要表演意图,先展示原位置、具体方案与得失,再由用户选择;已授权的局部修正直接完成。

下面的类型经验、批次和创作预算是适配起点,不是用户接受过的创作要求。旧校验器可能仍将部分经验规则报为失败:区分实际数据/引用/模型接口错误与创作建议,说明不适用项,保留原稿;不伪造字段、不静默改戏或降低技术投产要求。总控可用时参考其 references/creative-agreement.md;独立任务按本段处理,不强制依赖总控。

novel-outline

输入一本小说 + 目标参数,输出短剧改编大纲五件套。四件模型写、一件脚本算(资产清单从分集数据自动汇总)。

{baseDir} = 本文件所在目录。脚本 {baseDir}/scripts/novel-outline.mjs,零依赖,node 直接跑。

边界(不做的事):不写剧本台词、不做分镜、不出图像/TTS 提示词。梗概按阅读与决策需要组织,必要的对白引用可以保留。想从小说拆角色设定(画像/形象提示词/设定图),那是 novel-characters 的活。


Step 0 — 复用项目参数,补齐真正缺失的信息

先读取用户本轮与既有约定、production.json 和输入文本。能确定的参数直接复用;只有会改变整部改编的缺失项才集中询问,并继续阅读源文、整理人物与冲突等不依赖答案的工作。

参数处理
总集数 × 单集时长优先继承已有约定;确实未知且影响改编规模时询问
题材从原文与创作要求确定;类型混合或目标不明时询问
改编幅度继承用户授权;未确定时先给具体取舍方案,不能默认抽核或借壳
已有偏好默认无(想保哪个角色、哪场戏)

角色、场景规模与叙事节奏由原作、用户目标和具体产能决定,不以默认数量阈值删合人物或增加爽点。默认不运行这类创作门;reviewPolicy: strict 仅在用户明确选择旧版整套规则时启用。

如果用户有 novel-characters 的产出(cast.json),直接拿来当人物原料——角色、别名、关系都是现成的,不用重拆原文。分档按 importance 映射:protagonist/major → lead,supporting → support,minor → functional。

Step 1 — 定位输入

按任务选择阅读顺序,以下是长篇定位的一种起点;完整短篇可直接通读:

  1. 用户点名的精读章节
  2. 章节目录 + 简介
  3. 全文分卷摘要(Step 2)

禁止凭书名脑补内容——一切判断基于给到的文本。落地手段:adaptation.keep 的关键取舍要附 evidence(原文逐字片段)。

直接粘正文的先落成 .txt。输出目录:用户指定就用,没指定用原书同级目录。

Step 2 — 分卷摘要(长文本才需要)

这一步是脚手架,不是交付物——分卷摘要是给没读过原文的模型压缩用的。两种情况直接跳到 Step 3:

  • 短篇,单卷装得下
  • 当前会话已经通读过原文(比如刚跑完 novel-characters 的分块扫描)——不用再压缩一遍,也不用事后补档

长篇且没读过原文:

bash
node {baseDir}/scripts/novel-outline.mjs chunk <book.txt> <workdir>

按章节标题分卷(默认每卷 15 章,--per-volume 可调),识别不出章节就按字数切。打印 {"volumes": N, ...};truncated: true 就明确告诉用户尾部没扫到,别闷着。

每卷一个子代理(支持并发就同一条消息里全部发出):读 {baseDir}/references/volume-pass.md,读 <workdir>/vol-NN.txt,把卷摘要写到 <workdir>/summary-NN.json,只回一句「done NN」。

Step 3 — 快版骨架 → 用户拍板 ⛔

读 {baseDir}/references/outline-pass.md 和 {baseDir}/references/schema.md,照着做。产出骨架四块(adaptation / characters / scenes / beats),写成 <workdir>/outline.json。

bash
node {baseDir}/scripts/novel-outline.mjs validate <workdir>/outline.json --stage beats

先展示原文依据、保留点、拟议删合与结局方向,以及推荐理由和损失。未授权的结构取舍由用户决定后再展开;若已有明确改编授权覆盖当前方案,直接推进,不重复确认。旧校验器的 beats 档若仅因类型规则不适用失败,仍可呈现方向提案,不为通过而凭空增加爽点。

Step 4 — 细版骨架

吸收用户意见改骨架,再过一次 validate --stage beats。用户没意见就直接进 Step 5。

Step 5 — 分集梗概(分批)

批次按篇幅、上下文容量与用户审阅需要确定。先固定各批交接状态:人物知情范围、道具归属、时间推进与前后钩子,再处理可独立的分集;存在未决因果的批次顺序编写。每个子代理拿到:拍板后的骨架四块、自己负责的集数区间、区间内的爽点,读 {baseDir}/references/episode-pass.md 照着写,产出写到 <workdir>/eps-NN.json。

合并时按 ep 排序拼进 outline.json 的 episodes。

Step 6 — 校验 ⛔ 不能跳
bash
node {baseDir}/scripts/novel-outline.mjs validate <输出目录>/<书名>-outline.json

默认校验结构与实际引用,不要求固定角色数量、每几集有爽点、第一集钩子、结尾悬念、三人必须拆解或梗概禁止引号。没有爽点可用空 beats;无需改编删线时 cut 可为空,不因“抽核”标签强迫砍戏。用户选择旧版 strict 时才检查这些旧模板规则。

结构与引用错误必须修复;题材或平台节奏与默认阈值冲突时,先记录创作依据,再用已支持的 params.thresholds 调整并重新校验,不能为过门硬塞爽点或删掉必要角色。

Step 7 — 输出与汇报
bash
cd <输出目录>
node {baseDir}/scripts/novel-outline.mjs render <书名>-outline.json --md   > <书名>-outline.md
node {baseDir}/scripts/novel-outline.mjs render <书名>-outline.json --html > outline-report.html

报告界面默认中文;用户要英文界面就加 --lang en(或在 outline.json 顶层写 lang 字段,--lang 优先)。只翻译界面文案,数据内容(爽点类型、梗概、质量门文案)原样出。

report 里自带:KPI 带、关键决策(拍板三件事,大爆点列表和角色位统计自动算)、爽点时间轴(空档标在轴上,超阈值变红)、每集调度矩阵、场景概览卡、资产量折算、质量门(✓/✗ 烘进页面,未过弹病灶横幅)、导出 JSON 按钮(下载的就是 outline.json 原样)。

汇报一句话说清:几集、几个角色几个场景、爽点分布、报告路径;被截断或有没过的门要明说。

最终落地:

<输出目录>/
├── <书名>-outline.json
├── <书名>-outline.md
└── outline-report.html            ← 双击就能开

体检模式

用户贴一份已有大纲只想要诊断:转成 outline.json(缺的字段问用户或标注缺失),然后:

bash
node {baseDir}/scripts/novel-outline.mjs checkup <outline.json>   # 终端 ✓/✗
node {baseDir}/scripts/novel-outline.mjs render <outline.json> --html > outline-report.html

质量门面板就是诊断书。未过的门不阻止渲染——要的就是把病灶摆出来看。

联动更新

用户改了上游就跑一次 validate,报错会点名下游哪里断了:合并人物后哪些集还引用着被删的 ID、砍场景后哪些集空转、爽点挪动后哪里出现真空区。不要靠记忆提示联动,靠校验器。

边界

  • 单次上限 60 卷(每卷 15 章约 900 章)。超了明确报 truncated,不静默截断
  • 阈值是参数不是圣旨:平台不同就用 params.thresholds 覆盖,别改代码
  • 报告界面内置中英(--lang,默认中文、或跟 outline.json 的 lang 字段):界面文案与质量门标签翻译,数据内容(爽点类型、梗概、人名)与门的失败详情保持原文
  • 五件套的第五件(资产清单)永远是算出来的,模型手写必漏

自测

bash
node {baseDir}/scripts/selftest.mjs

219 项断言,不调模型、不花额度。13 道质量门每一道都有击穿用例——证明它真的会拦。改完脚本先跑这个。

自带样例

{baseDir}/examples/渡口-outline.json:把短故事《渡口》(novel-characters 的自带样例)改编成 6 集 × 2 分钟的微型大纲,四角色三场景四爽点,全部质量门通过。当质量基准,也是自测夹具。

制作交接

独立使用时,自检后主动打开当前报告并给绝对路径链接,说明本轮范围、检查重点和下一步;需要锁定内容时在对话中收取通过或修改结论。已有确认覆盖当前版本就不重复询问,打开页面或下载 JSON 不算批准。总控已接管时,由总控统一收取这次结论,不另开重复审批。当前内容、依赖或源图改变后,不因旧文件仍存在就跳过复核;输出新版本并保留原审阅笔记。

本项目的阶段职责、变更记录和交付顺序由 short-drama-production 的 references/company-workflow.md 统一维护;未安装总控时按本 skill 的输入和交付范围独立完成,不将总控变成硬依赖。

涉及尚未授权的创作取舍时,给用户 2–3 个有具体差异的选项,说明收益、损失与推荐,允许保留原稿或自定义。模型先完成阅读、诊断和短样段,不把准备工作推给用户;已经明确授权的范围直接执行。未经用户选择,不把暂定片长预算升级成删词、删情绪段落的理由。

© suihe1, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 11 other files (scripts, references, assets) in skills/novel-outline of suihe1/short-drama-production.

  • SKILL.md
  • README.en.md
  • README.md
  • assets/report.webp
  • examples/渡口-outline.json
  • references/episode-pass.md
  • references/outline-pass.md
  • references/report-style.md
  • references/schema.md
  • references/volume-pass.md
  • scripts/novel-outline.mjs
  • scripts/selftest.mjs

Open the folder on GitHubat commit dbd3310

Compare with similar skills

Novel Outline next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Novel Outline compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Novel Outline this skillsuihe1/short-drama-production181—~1.3kAutomated safety check: NotesApache-2.0
Novel Storyboardeternityspring/shuohao-skills4.3k—~1.8kAutomated safety check: NotesApache-2.0
Short Drama Novel Analyzezenstory-ai/drama-skills2.7k—~1.9kAutomated safety check: PassMIT
Storyboard Managerailabs-393/ai-labs-claude-skills4551 repos~4.6kAutomated safety check: PassMIT
Story To Video WorkflowUtopai-Research/pai-code357—~2kAutomated safety check: PassCustom licence
Pneuma Plotwisepandazki/pneuma-skills161—~8.9kAutomated safety check: PassMIT

Similar skills

  • Novel Storyboard

    eternityspring/shuohao-skills

    给 AI 短剧出分镜:三层结构——段(一次视频生成,≤15 秒)→ 分镜(段内 2–5 秒的剪切,认领剧本节拍) → 分镜图(每切一张关键帧:主分镜图钉 0.00 秒,子分镜图钉各自切点)。

    4.3k GitHub stars~1.8k tokensUpdated 3 days ago
    Media & CreativeAuto-check: notes
  • Short Drama Novel Analyze

    zenstory-ai/drama-skills

    把长篇小说、连载网文或多集散稿拆成可追溯的原著分析:章节索引、改编价值快评、逐章功能提取、剧情单元与节奏聚合、人物与设定归并,最后给出改编价值判定与分集候选,交给 $short-drama-develop 立契约。用户说“导入这本小说”“拆这本书”“分析原著”“这本书能不能改短剧”“先看看值不值得拆”“把长篇拆成分集候选”,或直接给出小说文件路径时使用。只做只读的结构化分析,不写剧本、不建资产、…

    2.7k GitHub stars~1.9k tokensUpdated 8 days ago
    Media & CreativeAuto-check passed
  • Storyboard Manager

    ailabs-393/ai-labs-claude-skills

    Assist writers with story planning, character development, plot structuring, chapter writing, timeline tracking, and consistency checking.

    455 GitHub starsUsed in 1 repo~4.6k tokens
    Media & CreativeAuto-check passed
  • Story To Video Workflow

    Utopai-Research/pai-code

    Orchestrates story, script, screenplay, concept, product promo, and multi-shot idea work into finished video.

    357 GitHub stars~2k tokensUpdated 11 days ago
    Media & CreativeAuto-check passed
  • Pneuma Plotwise

    pandazki/pneuma-skills

    Pneuma Plotwise workspace guidelines. An agent skill from pandazki/pneuma-skills.

    161 GitHub stars~8.9k tokensUpdated 2 days ago
    Writing & ContentAuto-check passed
  • Emotion Performance Director

    kangarooking/director-skills

    A skill your agent uses when the user wants to design, rewrite, refine, or vary emotional acting prompts for live-action AI video characters.

    181 GitHub stars~2.4k tokensUpdated 4 days ago
    Media & CreativeAuto-check passed

More from suihe1/short-drama-production

  • Novel Art

    suihe1/short-drama-production

    为 AI 短剧设计场景和叙事道具母本、光照与状态变体,产出 art.json、Markdown、评审报告和可选设定图。用于美术设定、场景与道具一致性;不代替导演调度或成片人流设计。

    181 GitHub stars~1.3k tokensUpdated 25 days ago
    Auto-check: notes
  • Novel Characters

    suihe1/short-drama-production

    从故事中整理人物身份、关系、外观和声线设计,产出角色卡、图像提示词与评审报告,可按需生成设定图。用于角色分析、人物画像和角色母本;短剧制作中按已批准大纲与当前批次选角。

    181 GitHub stars~1.8k tokensUpdated 25 days ago
    Auto-check: notes
  • Novel Script

    suihe1/short-drama-production

    将分集大纲写成结构化场次、动作节拍和逐句台词,核对人物与美术引用、估算时长并交付剧本评审报告。用于写剧本、对白和场次修订;不分镜、不直接执行配音或视频生成。

    181 GitHub stars~658 tokensUpdated 25 days ago
    Auto-check: notes
  • Novel Storyboard

    suihe1/short-drama-production

    将剧本与导演意图转成生成段、逐镜时间、参考素材计划和可校验分镜报告;使用官方 h3-prompt-writing 编写 H3 提示词,可导出投产包。用于技术分镜、镜头表和分镜修订;生成视频须另有明确任务与成本授权,不负责最终选片或剪辑。

    181 GitHub stars~2.1k tokensUpdated 25 days ago
    Auto-check: notes
  • Short Drama Production

    suihe1/short-drama-production

    统筹 AI 短剧的阶段、依赖、审批、H3 任务、声音资产、粗剪和 QC,并用 production.json 追踪返工;默认支持 16:9。用于整部短剧生产、继续项目、状态检查或上游变更影响分析;单独创作大纲、角色、美术、剧本或分镜时使用对应专业 skill。

    181 GitHub stars~1.1k tokensUpdated 25 days ago
    Auto-check passed
  • Short Drama Director

    suihe1/short-drama-production

    把剧本转成表演、场面调度、镜头覆盖、景别、机位、运镜与剪辑意图,产出可校验导演镜头包。用于导演方案、拍法、镜头诊断和分镜重构;只要求大纲、剧本或资产设定时不触发。

    181 GitHub stars~1.2k tokensUpdated 25 days ago
    Auto-check passed

Works with

Questions about Novel Outline

What does Novel Outline do?

把小说或故事改编为短剧大纲,确定人物去留、分集因果、剧情重点与资产预算,产出可校验 JSON、Markdown 和评审报告。用于短剧大纲、改编方案和现有大纲诊断;不写完整剧本或镜头方案。. Novel Outline is an agent skill from suihe1/short-drama-production.

When should I use Novel Outline?

Novel Outline fits situations like: tasks that involve Creative writing and fiction.

How do I install Novel Outline in Claude Code?

Run `npx skills add suihe1/short-drama-production --skill novel-outline -a claude-code`. Or copy the skill folder (skills/novel-outline in suihe1/short-drama-production) into .claude/skills/novel-outline in your project. Claude Code loads it when a task matches its description.

How do I install Novel Outline in Codex?

Run `npx skills add suihe1/short-drama-production --skill novel-outline -a codex`. Or copy the skill folder (skills/novel-outline in suihe1/short-drama-production) into .agents/skills/novel-outline in your project. Codex loads it when a task matches its description.

Can I use Novel Outline in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add suihe1/short-drama-production --skill novel-outline -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/novel-outline, .gemini/skills/novel-outline, .github/skills/novel-outline and .opencode/skills/novel-outline in your project.

What does Novel Outline need to run?

Going by SKILL.md and its folder, Novel Outline needs JavaScript for the scripts in its folder and the command-line tools its instructions call (node). Our summary lists: Node.js. Its frontmatter pre-approves these tools: Read, Write, Bash, Task, Glob.

Does Novel Outline access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Novel Outline safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Novel Outline use?

Novel Outline is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Novel Outline use?

About 1.3k tokens (SKILL.md is roughly 5.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 4.3k tokens, read only when the agent opens those files.

What are the alternatives to Novel Outline?

Skills that share tags, products or a category with Novel Outline: Novel Storyboard (eternityspring/shuohao-skills, 4.3k stars), Short Drama Novel Analyze (zenstory-ai/drama-skills, 2.7k stars), Storyboard Manager (ailabs-393/ai-labs-claude-skills, 455 stars) and Story To Video Workflow (Utopai-Research/pai-code, 357 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Novel Outline?

suihe1 (a GitHub user) maintains it in suihe1/short-drama-production, which has 181 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on September 16, 2026.

Source: suihe1/short-drama-production on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.