DSH HUB
首页插件商店插件包社区排行榜资源发布指南
插件源码
返回插件目录

CyanoOrg /

CyanoOrg/dsh-norm-spec

仅 Topic 仓库

plugin for norm-spec: session-scoped .norm convention injection, post-edit validation, and native norm tools.

★ 0 Stars0 Forks0 IssuesN/A 社区评分0 已确认安装
查看 GitHub
README来源: main@2d5c0463

dsh-norm-spec

DeepSeek Harness (dsh) Cordis plugin adapter for norm-spec conventions: per-session .norm convention injection and soft post-edit convention validation, backed by the canonical Rust engine.

Why

Conventions only matter if they reach the agent while it works. A validated .norm tree on disk is inert by itself; the common workaround — an always-resident instruction file — spends tokens re-establishing the same ambiguity while its effectiveness decays with distance and competing context.

This adapter delivers convention knowledge the way a cache wants it:

Page the conventions that apply to the current working directory into the agent's perception at action time, and check edits against them afterward.

Delivery is host-specific. On DSH rc.6 the only injection seam (agent/pre-step) writes into the session log, so the reminder is durable: injected once, suppressed while unchanged (SHA-1 digest), and — when the collected conventions change — superseded in place through a single slot (surfaceOp replace). The model never carries stale conventions and occupancy stays bounded no matter how long the session drifts across directories. The same format and semantics run under a different host in pi-norm-spec — the delivery layer is the host-specific part, and that boundary is the point.

Status: 0.1.0 stable, published to npm as @cyanoorg/dsh-norm-spec. DSH host supported: @deepseek-ai/dsh@0.1.0-rc.6.

Install

dsh plugin add @cyanoorg/dsh-norm-spec --profile <name>

That is all: the package ships a sealed upstream norm-spec payload and a native bridge, resolved at runtime from the installed tree — no PATH lookups, no environment variables. Platform binaries arrive through npm optionalDependencies (darwin-arm64, darwin-x64, linux-x64, win32-x64); npm selects the matching one automatically.

What it does

  • Starts one verified dsh-norm-bridge child per DSH agent session (agent/session-start) against a sealed upstream norm-spec payload.
  • Injects collected .norm conventions at agent/pre-step as one durable <system-reminder> user message, most-specific first — the same injection idiom as dsh's own agent-instructions. The reminder occupies at most one session-surface slot: unchanged conventions are digest-suppressed, changed ones supersede the previous reminder in place (single-slot replacement, D008).
  • After successful write/edit tool calls, appends bounded strict validation feedback through tools/post-execute (soft feedback; never blocks or reverts).
  • Registers native norm_validate / norm_collect / norm_scan tools and one dsh-norm-spec skill so the model can inspect conventions on demand.
  • Never writes custom session event types; never falls back to a norm on PATH.

Local development

# Rust gates
cargo fmt --check
cargo clippy --workspace --all-targets --all-features -- -D warnings
cargo test --workspace --all-features

# TypeScript
npm install
npm run typecheck
npm test

Development may override the packaged runtime resolution with DSH_NORM_BRIDGE and DSH_NORM_PAYLOAD environment variables; packaged installs never use them. Release procedure (five-package publish, dist-tag policy, post-publish verification) lives in docs/RELEASE-SOP.md.

Documentation

  • docs/ARCHITECTURE.md — Rust/TypeScript boundary and DSH host surface
  • docs/BRIDGE-PROTOCOL.md — dsh-norm-spec/bridge/v1 process contract
  • docs/decisions.md — decision records D001–D012
  • docs/RELEASE-SOP.md — release and publish procedure
  • docs/planning/status.md — live development state
  • ROADMAP.md — milestone plan

License

MIT

—/ 5

暂无评分

需要先验证清单

Commit 2d5c0463c935

社区评论

还没有评论,来写第一条。

DSH HUB

社区维护的 DSH 插件索引。不是 GitHub 或 DeepSeek AI 的官方产品。

社区资源API关于