curly-quote-sft

curly-quote-sft is a skill for Claude Code, Codex from bojieli/ai-agent-book. It costs 0 tokens per session (638 once invoked), scanned A, original, Apache-2.0.

A writing rule set for technical documents that mix Chinese, English, Markdown, and code. It defines when to use curved Chinese quotation marks, straight ASCII quotes, and Markdown backticks.

In plain words
What is it for?
It helps edit Chinese technical comments and documentation while preserving executable code and protected text. It also describes checks and examples for validating these edits.
Why use it?
It prevents quotation marks from being changed inside code, JSON, URLs, paths, or original English text, where such edits can break meaning or syntax.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit It helps edit Chinese technical comments and documentation while preserving executable code and protected text. It also describes checks and examples for validating these edits.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/bojieli/ai-agent-book/curly-quote-sft
About the project

AI Agent: Design Principles and Engineering Practice is an open-source book that explains how AI agents combine language models, context, and tools, with accompanying experiments and code. It is intended for readers studying the principles and engineering of AI agents, from fundamentals through production use. The catalogue skills support coding-agent work related to the book's subject matter.

bojieli/ai-agent-book · 45,556 stars · on GitHub

Install

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.

Any agent
npx skills add bojieli/ai-agent-book --skill curly-quote-sft
Clone the repo
git clone --depth 1 https://github.com/bojieli/ai-agent-book

Made for: Claude Code, Codex.

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 curly-quote-sft

README.md
[![agentmods](https://agentmods.dev/badge/skills/bojieli/ai-agent-book/curly-quote-sft/github.svg)](https://agentmods.dev/skills/bojieli/ai-agent-book/curly-quote-sft)
Your own site
<a href="https://agentmods.dev/skills/bojieli/ai-agent-book/curly-quote-sft"><img src="https://agentmods.dev/badge/skills/bojieli/ai-agent-book/curly-quote-sft/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.

agentmods 80×15 button for curly-quote-sft

Your own site · 80×15
<a href="https://agentmods.dev/skills/bojieli/ai-agent-book/curly-quote-sft"><img src="https://agentmods.dev/badge/skills/bojieli/ai-agent-book/curly-quote-sft.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 0 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 638 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. ✓ AI security review Sonnet 5 · 6 Sept 2026 📄 Read the review Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
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.00000 $0.00638
Opus 5 $0.00000 $0.00319
Sonnet 5 $0.00000 $0.00128
Haiku 4.5 $0.00000 $0.00064

Measured 12d ago against content hash 848bcc4a242d, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

curly-quote-sft 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 12d ago.

The scan reads SKILL.md. This mod also ships 6 executable files (evaluate.py, generate_data.py, quality_audit.py, …), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

chapter8/curly-quote-sft/SKILL.md · 40 lines

What it actually says

中文技术文档符号与引用规范

何时加载

  • 编辑或生成同时包含中文、英文、Markdown 和代码的技术文档。
  • 用户反馈引号、反引号或代码边界格式错误时。

符号定义

  • ASCII 直引号:"';常用于英文标点和代码字符串。
  • 中文弯引号:“”‘’;用于中文自然语言引用。
  • Markdown 反引号:`;用于行内代码和字面量。

决策优先级

  1. 先保护可执行代码、JSON/schema、URL、路径和用户要求原样保留的引用文本。
  2. 识别 Markdown 代码围栏、行内代码和代码注释边界。
  3. 在中文自然语言作用域中,把成对的直引号改为弯引号,并正确处理嵌套引用。
  4. 英文原文保持原文标点;英文标识符是否使用反引号由其是否为代码字面量决定,而不是由语言决定。
  5. 无法判断作用域时保留原文并请求澄清,不做全局替换。

正反例约束

  • 正例:# 中文注释:显示 "状态"# 中文注释:显示 “状态”;同一代码块中的 name = "status"const name = "status"、SQL 标识符和 JSON 键值保持 ASCII 语法。
  • 反例:不能把代码字符串、JSON、URL、路径、英文原句或 Markdown 行内代码中的 "/' 改成弯引号;不能因为文件是中文就全局替换。
  • 每种编程语言至少提供“该改的中文注释”和“该留的可执行字面量”成对样本,并在留出/边界集更换体裁、变量名和代码结构。

数据质量门禁

  • 合成数据先按文章体裁、作用域类型和编程语言分层,再切分 train/eval/boundary,禁止 ID 和模板组合重叠。
  • 机器门禁检查未解析变量、代码围栏、非注释代码行漂移和保护区;人工抽查每个分层的首条样本,记录在 validation/manual_audit.md
  • 任何语言类别的保护区或语法门禁失败,都应回到 Skill/数据蓝图修订后重训,不能只增加 epoch 或汇报总体平均分。

验证

  • 修改必须是最小编辑,正文事实和代码内容不变。
  • Markdown、JSON 和代码语法检查必须通过。
  • 英文原文、代码和保护区域做字节级回归。
  • 记录来源 Bad Case、适用范围、例外和验证结果。
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. 12d ago First seen · 40 lines · 0 tokens per session scan A 848bcc4a242d

Subscribe to this mod's changes

curly-quote-sft is a skill published in the GitHub repository bojieli/ai-agent-book (45,556 stars, last pushed yesterday), licensed Apache-2.0. It costs nothing until one of its globs matches a file; then it loads 638 tokens. 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.

Related

Other skills, from other repositories

tura

Work in the Tura agent-runtime repository. Use for Tura architecture, Rust backend, GUI/TUI, prompts, commands, providers, sessions, documentation, tests, packaging, and release work in this directory.

Tura-AI/tura · 46 tokens

acontext-installer

Install Acontext, Login & Init Acontext Project, Add Skill Memory to Agent.

memodb-io/Acontext · 22 tokens

remem-mcp

Long-term memory for coding agents. Auto-applies at the start of any coding task — recall past context before answering, capture decisions/learnings/fixes after work, use CodeGraph instead of grep for symbol lookup. Invoke when you see [remem-mcp] in your context or when starting any non-trivial coding work.

tinhien11/remem-mcp · 71 tokens

ccc

This skill should be used when code search is needed (whether explicitly requested or as part of completing a task), when indexing the codebase after changes, or when the user asks about ccc, cocoindex-code, or the codebase index. Trigger phrases include 'search the codebase', 'find code related to', 'update the…

cocoindex-io/cocoindex-code · 80 tokens

system-monitor

Monitor system health: CPU, memory, disk, processes, and network. Alert on thresholds via any channel.

fuyuxiang/echo-agent · 25 tokens

00-init

Turns AIDD measurement on for a project, proves it is recording, lets a person opt into (or out of) naming themselves on their own records, and removes what was measured when asked. Use when the user wants to start measuring what their work costs, wants to stop, asks why nothing is being recorded, wants their own name…

ai-driven-dev/framework · 99 tokens