Skills Plugins MCP Prompt Model 导航 博客 资讯 我的中心
开发与运行时 #agent-observability#agent-tracing#deepseek-harness#dsh-plugin#local-first#typescript

dsh-agent-run-logger

为会话写入本地 JSONL 运行轨迹,并提供实时只读查看器(运行/步骤/模型/工具时序)

bluefateludi @bluefateludi ⬇ 2 ★ 0 main

安装

dsh plugin --profile web add github:bluefateludi/dsh-agent-run-logger
下载安装清单

需要可复现安装时,可在仓库后追加 #commit 固定提交。

为会话写入本地 JSONL 运行轨迹,并提供实时只读查看器(运行/步骤/模型/工具时序)

该插件未提供要点说明,请参考仓库 README。

agent-observabilityagent-tracingdeepseek-harnessdsh-pluginlocal-firsttypescript
  1. 安装并启动 DeepSeek Harness:npx @deepseek-ai/dsh web
  2. 在终端执行上面的安装命令(CLI 会解析插件并核验来源)
  3. 用 dsh plugins list 确认已安装,必要时重启 Harness 生效

插件以当前 dsh 进程的权限运行,安装时可能执行代码。请先通读仓库源码与许可证,确认无破坏性命令与越权访问;本站只做索引,不对第三方插件安全性作担保。

代码仓库github.com/bluefateludi/dsh-agent-run-logger
许可证MIT
主要语言main
下载量2
GitHub 星标0
最近推送2026-08-18
收录日期2026-09-19
分类开发与运行时

事实信息来自公开插件目录快照(2026-10-01),介绍文案由本站再加工。

以下为插件仓库 README 全文(原始内容,由公开目录抓取整理)。

# Agent Run Logger

[中文](README.zh.md) | English

Agent Run Logger is a DeepSeek Harness plugin that writes compact local JSONL traces and serves a live, read-only viewer. It turns Session events into run, step, model, and tool timing records without replacing the canonical Session log.

Each Session writes to its own file under `/.dsh/traces/` by default. Writers preserve source-event order inside one Session and drain independently across concurrent Sessions. The viewer incrementally indexes those files and presents Session lineage, a timing waterfall, event details, failures, token usage, gaps, and truncated values.

Content capture is off by default. Enabling it records prompts, replies, tool arguments, and tool results after credential-like values are redacted and before each value is truncated to its configured UTF-8 byte limit.

## Install

Install the package directly from npm:

```sh
npm install dsh-agent-run-logger
```

Add the plugin to a DeepSeek Harness profile:

```sh
dsh plugin --profile trace-demo add dsh-agent-run-logger
dsh --profile trace-demo --dump-config
dsh --profile trace-demo
```

The bundle adds this row, which a profile patch may replace:

```yaml
- id: agent-run-logger
  name: dsh-agent-run-logger
  config:
    outputDir: .dsh/traces
    includeContent: false
    maxContentBytes: 65536
    maxPendingBytes: 4194304
    redactSensitiveContent: true
    redactKeys: []
```

`outputDir` may be absolute or relative to each Session working directory. Byte limits are positive integers. `redactKeys` adds case-insensitive object-key names to the built-in credential list.

## View traces

Run the viewer from the project whose `.dsh/traces` directory you want to inspect:

```sh
npx dsh-agent-run-logger view
```

The command binds to `127.0.0.1`, selects a port beginning at `4318`, and opens the dashboard. It does not accept remote connections.

```text
Usage: dsh-agent-run-logger view [options]

  --trace-dir        Trace directory (default: .dsh/traces)
  --port           Preferred loopback port (default: 4318)
  --poll-ms        Refresh interval (default: 750)
  --page-size      Records returned per page (default: 500)
  --no-open                Print the URL without opening a browser
  --retention-days   Delete old regular JSONL files at startup
```

Retention is disabled unless `--retention-days` is supplied. The viewer otherwise performs read-only filesystem access. See the [viewer design](docs/visualizer-design.md) for data, lifecycle, privacy, and HTTP behavior.

## Record behavior

The trace schema version is `1`. The plugin writes `session.meta`, `run.start`, `run.end`, `step.start`, `step.end`, `llm.first_token`, `llm.end`, `tool.start`, `tool.end`, and `trace.gap`. Every record includes `sessionId`, `sourceSeq`, and `time`.

The Session event path never waits for disk I/O. Each Session has a bounded 4 MiB queue by default. Queue overflow drops new trace records and a later `trace.gap` reports the affected source sequence range. A directory, write, or sync failure warns once and disables only that Session writer.

## Limitations

- The logger observes only events committed after activation; it does not backfill canonical Session history.
- Subagent Sessions remain separate files. The viewer navigates `parentSessionId` relationships when both files are present, but does not merge their timelines.
- The viewer is local only and provides no authentication, remote exporter, trace upload, database, or OpenTelemetry integration.
- Content redaction reduces accidental credential storage but cannot classify every secret. Keep `includeContent: false` unless content is required.
- `run.end` and plugin disposal request a filesystem sync, but an operating-system or power failure may still lose an unsynced tail.
- Trace files are diagnostics, not a replacement for the canonical DeepSeek Harness Session log.

数据来源:公开的 DeepSeek Harness 插件目录与各插件 GitHub 仓库。本站为独立第三方目录,与 DeepSeek、幻方(High-Flyer)及插件作者均无隶属或背书关系。

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。