semantic-linter

DSH PLUGIN记忆与知识

仓库 SummerSec/semantic-linter

记忆与知识 L5 · 运行验证通过 安全审查:低风险 可信度:金 可安装插件
安装这个插件

Semantic-Linter 是一款面向 LLM 指令文件的 DSH plugin 与 CLI,检测语义边界过宽的用词,通过 Hook 与项目级规则注入减少幻觉和范围漂移。

验证等级 L5 L5 · 运行验证通过
GitHub 星标 2 复刻 0 · 未关闭 issue 未标注
最近更新 2026-08-15 创建于 2026-04-10
README 5.1 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:SummerSec/semantic-linter
兼容 DSH 版本0.2.0-rc.2 等 10 个版本版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

能做什么

4 项功能
字段来自项目仓库与公开索引,中文说明由本站标注

semantic-linter:DeepSeek Harness 的语义边界检查插件

  • 检测宽边界用词
  • 注入项目级规则
  • Hook 写入期预警
  • CLI 扫描入口

适用场景

文件读写代码评审终端命令

上游标签

dsh-plugin

验证等级与安全审查

L5 · 运行验证通过
自动化流程结论,不是人工审核
验证等级L5 · 运行验证通过在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度稳定按仓库活跃度与最近更新时间给出
可信度金综合仓库活跃度与验证结果

上面的结论来自上游最近一次自动化验证(2026-10-08): 同一套检查会在插件发新版后重跑,页面显示的是最新一次的逐项结果。

逐项检查结果

L1 · 已找到 ✓ 通过
  • L1.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L2 · 结构化 ✓ 通过
  • L2.0_DEFAULTED_FROM_L3 由 L3 推定 默认通过——L3 安装规范已通过(全库 L3 扫描策略)
L3 · 安装规范 ✓ 通过
  • L3.1_INSTALL_COMMAND_PARSED 安装命令已解析 方式:安装规范解析
  • L3.2_DSH_VERSION_DECLARED DSH 版本已声明 方式:DSH 版本声明
L4 · 安装已测 ✓ 通过
  • L4.1_INSTALL_EXECUTED_CONFINED 受限沙盒内执行安装 方式:沙盒安装执行
  • L4.2_INSTALL_SUCCESS 沙盒安装成功 方式:沙盒安装执行
  • L4.3_ARTIFACT_CONFIRMED 安装产物已确认 方式:沙盒安装执行
L5 · 运行已测 ✓ 通过
  • L5.1_INSTALL_PASSED_SANDBOXED 沙盒安装通过 方式:沙盒安装执行
  • L5.2_WEB_BOOT_READY Web 启动就绪 方式:Web 启动
  • L5.3_HTTP_SERVED HTTP 服务响应 方式:HTTP 请求
  • L5.4_PLUGIN_INVENTORY_ACTIVE 插件清单中已激活 方式:插件清单查询
— · 其它检查项
  • L4_0_SANDBOX 沙盒安装判定 方式:沙盒安装执行

风险详情

  • 审查结论 通过
  • 结论说明 vet 静态分析未发现可疑行为,判定为干净(clean)。
  • 风险计数 严重 0 / 高 0 / 中 0
  • 风险详情 未发现严重或警告级问题。

仓库档案

记忆与知识
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方SummerSec仓库 semantic-linter · 默认分支 未标注
分类记忆与知识knowledge
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言JavaScript仓库主语言
许可证NOASSERTION商用或二次分发前请确认条款原文
星标 / 复刻 / issue2 / 0 / 未标注收录时的数值,非实时
创建 / 更新2026-04-10 · 2026-08-15最后推送 未标注
本站收录2026-08-27首次进入本站目录的时间

README 全文

5.1 KB
作者原文,中文版优先;只做安全转义,不改内容

English Version

Semantic-Linter

Semantic-Linter 是一个面向 LLM 指令文件的插件与 CLI,用来收窄语义边界过宽的表达。它主要用于 SKILL.md、AGENTS.md、CLAUDE.md、prompt 文档、command 文档等指令资产,帮助减少因为措辞过宽带来的幻觉和范围漂移。

当前架构

Semantic-Linter 现在使用分层设计,不再是旧的 pointer-only 方案:

  • SessionStart 注入一条紧凑的 STL: 规则指针,指向当前生效的 semantic-rules.md
  • SubagentStart 把同样的规则指针传播给子代理
  • UserPromptSubmit 可以在提示词进入模型前提醒宽边界表达
  • PreToolUse 会在 Write 和 Edit 修改指令文件前给出预警
  • PostToolUse 会在写入后再次检查结果,并记录升级状态
  • bin/scan.js 仍然保留为显式 CLI 扫描入口,可扫描单文件、目录或当前工作区

默认运行模式是 guarded:

  • off:关闭 semantic-linter
  • pointer:只保留轻量规则指针
  • guarded:规则指针 + 写入期检查
  • strict:规则指针 + 写入期检查 + prompt 扫描

规则来源策略

默认使用 project-first 规则解析策略:

  1. 从当前编辑文件或工作区开始,向上查找最近的 semantic-rules.md
  2. 如果项目内没有,则回退到插件自带的 semantic-rules.md

你也可以通过 .semantic-linter.json 强制使用 plugin-only。

安装

Claude Code

claude plugin marketplace add SummerSec/semantic-linter
claude plugin install semantic-linter@summersec-semantic-linter
/reload-plugins

Codex

codex plugin marketplace add SummerSec/semantic-linter
codex plugin add semantic-linter@semantic-linter

Codex 不直接消费 Claude 的 hook manifest。它的项目级接入方式是把受管规则块写入 AGENTS.md。

DeepSeek Harness

安装官方 DSH CLI,并把本仓库作为 bundle 加入需要使用的 profile:

npm install -g @deepseek-ai/[email protected]
dsh plugin --profile headless add github:SummerSec/semantic-linter
dsh plugin --profile web add github:SummerSec/semantic-linter

本地开发时可以在仓库根目录执行:

dsh plugin --profile headless add .

如果 pnpm 返回 ERR_PNPM_ADDING_TO_ROOT,在命令末尾追加 --ignore-workspace-root-check 后重试。

这个 DSH bundle 会把仓库根目录 skills/ 下的四个 Skill 注册到 ctx.skills。DSH 还会读取工作区中的 AGENTS.md 或 CLAUDE.md;调用 rules-installer 后,项目可以通过受管规则块按需读取 semantic-rules.md。

DSH 不会直接执行本仓库的 Claude hook manifest。DSH 下提供的是 packaged Skill + 项目 instruction pointer;SessionStart、SubagentStart、UserPromptSubmit、PreToolUse、PostToolUse 和 /stl-mode 仍仅属于 Claude hook 路径。

项目初始化

如果你想把项目本地规则注入到当前仓库,可以运行:

node /absolute/path/to/semantic-linter/scripts/build-rules.js --existing "$(pwd)"

这会生成:

  • semantic-rules.md
  • AGENTS.md 和或 CLAUDE.md 中的受管规则区块

如果两个文件都不存在,脚本会根据宿主环境创建默认目标:

  • Codex 或 auto:AGENTS.md
  • Claude:CLAUDE.md

常用命令:

npm run build-rules
npm run build-rules:check
npm run build-lexicon
npm run build-lexicon:check
npm run scan --
npm test

配置

可选配置文件为 .semantic-linter.json。

支持的字段:

{
"ignoreTrapIds": ["T01"],
"ignorePathSubstrings": ["fixtures/generated/"],
"ignoreStructuralTypes": ["open_ended_verb"],
"defaultMode": "guarded",
"ruleSource": "project-first",
"enablePromptScan": false,
"maxFindingsPerHook": 3
}

说明:

  • defaultMode 支持 off、pointer、guarded、strict
  • ruleSource 支持 project-first 和 plugin-only
  • enablePromptScan 会在 guarded 模式下启用 UserPromptSubmit
  • strict 会始终开启 prompt 扫描

检测范围

Semantic-Linter 会按路径约定扫描指令类文件:

  • 文件名:SKILL.md、AGENTS.md、CLAUDE.md
  • 后缀:*.prompt.md、*_definitions.md、*_examples.md
  • 目录:skills/、agents/、commands/、rules/、prompts/

开发说明

核心运行时文件:

  • hooks/session-start.js
  • hooks/subagent-start.js
  • hooks/user-prompt-submit.js
  • hooks/pre-tool-use.js
  • hooks/post-tool-use.js
  • hooks/config.js
  • hooks/runtime.js
  • hooks/rules-resolver.js

核心库文件:

  • lib/content-scanner.js
  • lib/structural-analyzer.js
  • lib/report-formatter.js
  • lib/state-manager.js
  • lib/config-loader.js

测试

npm test

npm test 会依次运行:

  • build-lexicon:check
  • build-rules:check
  • tests/test-scanner.js
  • tests/test-new-features.js

测试覆盖扫描器行为、生成器幂等性、manifest 一致性,以及基于 stdin 的 hook 入口行为。

常见问题

7 问
答案由本站依据条目字段整理,不引用上游原文
semantic-linter 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add github:SummerSec/semantic-linter` 即可。

semantic-linter 的验证等级是什么意思?

L5 · 运行验证通过。在 dsh 沙盒中完成安装与运行冒烟——装得上、跑得起来

semantic-linter 安全吗?

低风险。vet 静态分析未发现可疑行为,判定为干净(clean)。

semantic-linter 支持哪些 DSH 版本?

上游记录的兼容版本包括 0.2.0-rc.2、0.1.7-rc.2、0.1.6-alpha.2、0.1.6-alpha.1、0.1.5-rc.2、0.1.3-alpha.2、0.1.3-alpha.1、0.1.2-rc.1。版本较多,只列出前 8 个。

semantic-linter 用的是什么许可证?

上游标注为 NOASSERTION。商用或二次分发前请到仓库确认许可证原文。

semantic-linter 有哪些功能?

检测宽边界用词、注入项目级规则、Hook 写入期预警、CLI 扫描入口。

这条记录的数据可靠吗?

本站按仓库名去重后合并整理,字段以作者仓库与 npm 元数据为准;安装命令、仓库地址与 README 保持原文,带 L4 / L5 标记的安装命令已在隔离沙盒里真实跑通。

记忆与知识
按星标排序,可作替代方案

ruflo

ruflo

L3 · 安装规范通过 7.4 万 星

OpenViking

OpenViking

面向 DeepSeek Harness 的 OpenViking 记忆与上下文插件:pre-step 自动召回与画像注入、会话捕获、`vik

L3 · 安装规范通过 3.9 万 星

WeKnora

WeKnora

把 WeKnora 知识库接入 dsh 的四个只读工具:列出知识库、混合检索原文片段、按顺序还原单篇文档,以及直接取用 WeKnora 自己

L4 · 沙盒安装通过 3.3 万 星

distilly

distilly

Distilly — Distill how they think into reusable Skills for any Agent o

L4 · 沙盒安装通过 2.5 万 星

EverOS

EverOS

L4 · 沙盒安装通过 1.3 万 星

MemOS

MemOS

L4 · 沙盒安装通过 1.2 万 星

SummerSec 的其它插件

3 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 2026-10-08。