Documentation
¶
Overview ¶
Package fence 提示词注入卫生(agent 输入卫生原语)。
两个互补原语:
- Data:把不可信内容(diff/文件内容/PR 描述/外部工具返回等)包进显式数据区, 并中和内容中出现的围栏标记序列——防止不可信文本伪造"数据区结束"把后续 注入文本抬出数据区、以数据身份获得指令待遇。返回中和次数作注入特征信号, 由调用方留痕/打点(fence 零依赖、零副作用,可观测策略归调用方)。
- EscapeUntrusted:中和不可信文本自身的 markdown 结构与 HTML 注释边界 (v0.10.9 自 safejson 包迁入——包名与内容不符且与本包同属注入卫生)。
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Data ¶
Data 用数据区围栏包裹 content。
返回围栏文本与被中和的标记序列数:n>0 表示内容里出现了围栏标记 (试图伪造数据区边界的注入特征),调用方应计数/告警。 content 为空返回 ("", 0)——空内容不值得围栏,调用方应直接跳过注入。
func EscapeUntrusted ¶
EscapeUntrusted 中和不可信文本(LLM 产出、用户输入)中的 markdown 结构与 HTML 注释边界,防止攻击者借 diff/PR 描述注入伪造报告标题、列表条目等。 与 Data(数据区围栏)同属本包的注入卫生面:Data 圈住不可信内容的边界、 EscapeUntrusted 中和不可信内容自身的 markdown 语义。 策略:HTML 注释开/闭序列实体化;行首标题/引用/代码围栏/列表标记/水平线/ 表格行/引用定义前插零宽空格;反引号替换为同类引号防打断代码段。 前提:下游渲染器仍需自行 sanitize 裸 HTML(本包不处理 <img>/<script> 等标签)。
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.