DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins

@playform/hook-dsh-workspace-observe

Hook Dsh Workspace Observe

The workspace-observe hook: a DeepSeek Harness plugin that records the workspace's first step of the invisible flow - on every fs/observed event (heard on the ROOT context, the factory's Wire registration) it writes one observation stamp (the path, the ob

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add @playform/hook-dsh-workspace-observe@0.2.1
READMECompatibilityVersions

Compatibility and provenance

Hook Dsh Workspace Observe is published as @playform/hook-dsh-workspace-observe and currently resolves to version 0.2.1. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
npm
Registry updated
11/4/2026

Versions

0.2.1stable
10/28/2026
0.2.0stable
10/25/2026
0.1.0stable
10/25/2026

Related plugins

Loading related plugins…

Latest
0.2.1
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
40.5 kB
Files
42
Surface
any
License
CC0-1.0
Source
npm
GitHub
★ 2
Weekly downloads
293
Security scan
✓ v0.2.1 scan passed
Last push
11/4/2026
View source ↗Project homepage ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in productivity-workflow.

Acp App@deepseek-ai/dsh-acp-appThe dsh ACP profile bundle: automation-only JSON-RPC stdio and process lifecycle over dsh-baseExperimental Schedule Bundle@deepseek-ai/dsh-experimental-schedule-bundleOptional bundle that adds Schedule, its task page, and time context to the Web compositionAb Ocrdsh-ab-ocr--- description: "The out-of-tree ocr tool: recognizes a scanned PDF or image page by page, merges the pages in order only after the last one, and saves one Markdown document with the heading levels the model decided." kind: "package-reference" ---Ds Harness Remoteds-harness-remoteEnd-to-end encrypted remote access to DeepSeek Harness and experimental Codex workspaces from desktop, web, and Android, with dsh-TUI Host support.

README

@playform/hook-dsh-workspace-observe

v0.1.0 - UNPUBLISHED - plan: Workspace-Family/OBSERVE

The role

The workspace-observe hook serves the DeepSeek Harness plugin family (the Classic release, Wave 1).

It is the first step of the invisible flow: on every fs/observed event the hook records one observation stamp in its own KV storage domain, and the conversation never sees the stamps.

A later wave's events surface them.

The surfaces

  • The fs/observed listener on the ROOT context (the factory's Wire) is the only registration.
  • The family's trace bus emission observe/stamp (when ctx.trace exists).
  • The own KV storage domain workspace_observe (tables stamps + ring).
  • There is no tool, no provided service, no file read, and no file write.

What it records

One stamp per distinct version (and per manual call; the repeat guard below coalesces the rest):

{ path, version, origin: "fs/observed" | "manual", sequence }
  • path - the event's displayPath (the model-facing form), verbatim.

  • version - the observed version token, verbatim; absent for an absent observation (never a fabricated token).

  • origin - how the stamp was recorded.

  • sequence - the plugin's own monotonic counter, incremented once per stamp and persisted with the domain (recovered on mount as the maximum loaded sequence).

    It is never a wall clock, which follows the family's no-real-timers rule.

The disciplines

  • The listener registers on the ROOT context (the factory's Wire, the exact ctx.root.on("fs/observed", ...) registration), so it hears every fs/observed emission.

  • Each recorded stamp is emitted on the family's trace bus as observe/stamp (the indexer's first source, D5): the payload is { path, version, origin }.

    The bus (ctx.trace, provided by @playform/plugin-dsh-factory) is optional, so a context without it records stamps exactly as before and emits nothing.

  • The listener is a synchronous recorder: no awaits, no throws, no I/O. It reads the event only, and it never reads file content and never writes a file.

  • Guard chain, in order: an event whose actor is the hook's own actor object is ignored (ignored <path> (own actor)), a path matching exclude is ignored (ignored <path> (excluded)), a non-matching path under a non-empty include is ignored (ignored <path> (not included)), and a repeat event (the same path carrying the same version within the coalescing window) is dropped silently (no line, no stamp).

  • The repeat-event guard (Function/Duplicate, the monitor's clock pattern with no timer) treats a repeat event for the same path within a short window (2 s on the module's clock, overridable in tests via the State.Now seam) as a file state that is already recorded, because the version token identifies the state, while a different version, or the same version after the window, is stamped normally, so the last distinct version always wins.

    The manual path is never guarded.

  • A malformed event is caught and ledgered (failed <path> (<reason>)), so the listener never throws.

  • The latest stamp per path is the record (keyed by the path), and a bounded ring of the last maxStamps stamps lives under the meta record __ring, where the oldest drop is ledgered (capped <path> (maxStamps <n>)) and never silently discarded.

  • The domain is the hook's own (workspace_observe, version 1, per-record layout, backup-and-skip, tables stamps + ring), not extension records in the shared governance domain.

    An absent storage facility is a silent skip (the stamps live in memory only), while a present facility whose open fails is loud (one ledger line, never rethrown).

The configuration

See SCHEME.md.

Every knob is a volatile cell (hot edits commit without remounting): enabled, domain, maxStamps, include, exclude (plus the universal log/logFile).

The policy block (D6)

The config carries the shared per-action allowlist (policy: Policy(), composed from the factory's block), mapped to State.Allow:

actiondefaultactiondefault
readautowriteapprove
indexautocommitapprove
recordautospawnapprove
suggestautomessageauto

This hook's action class is RECORD (it records one observation stamp per fs/observed event), and that class is automatic.

The hook has NO gated action (it never writes a file, commits a batch, or spawns an agent), so the block documents the posture and refuses nothing.

The block is one volatile object, so a policy flip is hot-editable without a remount, and a resolved pack's policy section overrides the defaults per action (the wiring is the next refinement).

The IDLE-forever posture

The plugin ships DISABLED: the bundle entry declares enabled: false only, the plugin never appears in the profile's bundles, and it enables only by an explicit ACTIVATE (you edit the profile and restart).

A cold mount logs disabled (enabled=false) and wires nothing.

The ledger

One log per module: ~/.dsh/playform/hook-dsh-workspace-observe.log (config logFile).

The strings are the contract (byte-exact, observe: prefix; the durable file lines are the [ISO] message forms):

observe: disabled (enabled=false)
observe: activated (domain=<domain>)
observe: stamped <path> version <version> (fs/observed)
observe: ignored <path> (own actor)
observe: ignored <path> (excluded)
observe: ignored <path> (not included)
observe: capped <path> (maxStamps <n>)
observe: failed <path> (<reason>)
observe: manual <path> version <version>
observe: storage open failed: <reason>

The build and the tests

The build is pnpm prepublishOnly (Source/prepublishOnly.sh): the plugin build (ESM Target/, Test tree excluded), the Test build, the harness selfcheck, and the Test type-check.

The smoke folders are Guards-And-Ring, Policy-Defaults, Storage-And-Service, and Wiring-And-Stamps.

The plan

  • Workspace-Family/OBSERVE - the observe step (Wave 1).

License

CC0-1.0.