DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

dsh-table-ingest

Table Ingest

把 docx/xlsx/csv 转成规则检查器能吃的表格 JSON,带候选表、表头识别、预览与置信度。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add dsh-table-ingest@0.2.3
README兼容性版本

兼容性与来源证明

Table Ingest 以 dsh-table-ingest 发布,当前版本为 0.2.3。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
any
发布来源
npm
Registry 更新时间
2026/11/4

版本

0.2.3stable
2026/11/4
0.2.2stable
2026/10/30
0.2.1stable
2026/10/27
查看其余 3 个版本收起版本
0.2.0stable
2026/10/23
0.1.1stable
2026/10/23
0.1.0stable
2026/10/23

相关插件

正在加载相关插件…

最新版
0.2.3
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
259 kB
文件数
30
Surface
any
许可证
Apache-2.0
发布源
npm
GitHub
★ 0
周下载
1,056
安全扫描
✓ v0.2.3 扫描通过
最近提交
2026/11/4
查看源码 ↗项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 productivity-workflow 分类下经过校验的插件。

Acp App@deepseek-ai/dsh-acp-appdsh ACP 配置文件包:基于 dsh-base 的仅限自动化的 JSON-RPC stdio 和进程生命周期管理Experimental Schedule Bundle@deepseek-ai/dsh-experimental-schedule-bundle为 Web 组合添加 Schedule、其任务页面和时间上下文的可选捆绑包Ab Ocrdsh-ab-ocr--- description: "外部 ocr 工具:逐页识别扫描的 PDF 或图像,仅在处理完最后一页后按顺序合并页面,并使用模型确定的标题级别保存为一个 Markdown 文档。" kind: "package-reference" ---Ds Harness Remoteds-harness-remote通过桌面端、网页端和 Android 端,端到端加密远程访问 DeepSeek Harness 和实验性 Codex 工作区,并支持 dsh-TUI Host。

README

dsh-table-ingest — Table ingest

English · 简体中文 · Español · Português · हिन्दी

What it is — Converts docx, xlsx and csv into table JSON and reports the headers and columns it recognised. Who it is for — staff converting tables for checks. What you give it — docx, xlsx or csv files converted into table JSON What it does not do — no compliance verdict, no liability finding, no replacement for the reviewer; differences only. How to start — from the command line (not sold separately yet): dsh plugin --profile <name> add dsh-table-ingest

dsh-table-ingest converts a .docx, .xlsx, .xlsm, .csv or .tsv file into the table JSON that this family's rule checkers consume. A checker can only read a table it can recognise; most real workplace documents are Word files with several tables, merged cells and a title row above the header. This package is the step that turns one into the other, and — more importantly — tells you when it could not, instead of guessing.

It performs no business judgement. It does not decide whether a document is compliant, and it has no rules of its own: rules/table-ingest.yaml is deliberately empty.

Install

dsh plugin --profile <name> add dsh-table-ingest
dsh --profile <name> --dump-config | grep 'dsh-table-ingest'

What it looks like

Workflow diagram for dsh-table-ingest: document → rule pack → findings.

Workflow overview: document → rule pack → findings.

Boundary: this is a converter, not a checker. It never reports a finding, never scores a document, and never writes to the file it read. When a document has several plausible tables it returns the candidates and asks which one you meant, because a silently misread table makes the downstream checker report differences that do not exist — which is far more expensive than one extra question. It also does not read .doc (BIFF), scanned images, or PDFs: those need a converter or OCR that this family deliberately does not carry.

What it answers

  • Which tables does this document actually contain, and how big is each one?
  • Which row is the header, and what are the column names?
  • Is the chosen table reliable enough to run rules against, or should a human confirm first?
  • If there is no usable table, is that because the document has none, or because it needs OCR?

Standards it follows

This package encodes no legal or regulatory clause, so its rule pack is empty and there is no evidence directory to cite. What it does encode is the OOXML structure of word/document.xml and xl/worksheets/*.xml:

  • <w:tbl>, <w:tr>, <w:tc> for table structure; <w:gridSpan> for horizontal merges and <w:vMerge/> (no w:val) for "continue the cell above" — the latter is empty in the XML, so filling it down is required or a complete document looks like it is missing dates.
  • <w:tblHeader> plus shading and bold as header hints; there is no normative definition of "header row" in the format, so header detection is a scored heuristic and its result is reported with a confidence level.
  • sharedStrings.xml for shared strings (the <v> is an index, not the value), inline strings (t="inlineStr", whose value is not in <v>), and the three-level indirection from c@style → cellXfs → numFmtId that decides whether a number is a date.

Compatibility

SurfaceStatus
Harnesspeer range >=0.1.2-rc.1 <0.2.0 || >=0.2.0-0 <0.3.0
Node`^22.19.0
Platformsall (pure ESM; no native code, no network, no model call)

What it does

There are no rules. The tool exposes one operation, table_ingest, which takes a file path and optional hints and returns:

FieldMeaning
okWhether a single table could be identified with enough confidence
tableIndex, headerRow, columnsWhat was chosen
rowCount, candidateCountHow much was read, and how many tables were found
confidencehigh, medium or low — low means "a human should look at this"
previewA markdown table of the first rows, for confirmation
tableJsonThe table in the shape a rule checker accepts
warnings, errorWhat was odd, or why no table was chosen

The chosen table is emitted in the same shape parseTable accepts, so a checker can consume it directly.

Configuration

KeyDefaultMeaning
rulesFilerules/table-ingest.yaml规则库路径

Material format

A .docx with a title row, a header row and two data rows:

序号 | 日期        | 施工部位   | 监理情况
1    | 2026-10-08  | 1#楼三层   | 旁站检查…
2    | 2026-10-08  | 1#楼三层   | 旁站全过程…

becomes:

{
  "target": "site-log.docx",
  "tableIndex": 0,
  "headerRows": [2],
  "columns": ["序号", "日期", "施工部位", "监理情况"],
  "header": {},
  "rows": [
    { "序号": "1", "日期": "2026-10-08", "施工部位": "1#楼三层", "监理情况": "旁站检查…" },
    { "序号": "2", "日期": "2026-10-08", "施工部位": "1#楼三层", "监理情况": "旁站全过程…" }
  ],
  "warnings": ["1 个单元格为空,已从上方合并单元格补值"],
  "mergedCells": 1,
  "sections": [],
  "ragged": false
}

For .csv and .tsv the same shape is produced with headerRows: [1].

Rule sources

This package cites no clause, so it has no rules/evidence/ directory and its rule pack is empty by design. Confirm that with:

pnpm run check:citations   # expects 0 segments, 0 placeholders, 0 untraceable

Known limits, stated rather than hidden:

  • Header detection is a heuristic. It scores bold, shading, tblHeader, short text, absence of digits and a small vocabulary, over the first six rows. A header further down is reported as "no header" rather than searched for indefinitely.
  • Two-level headers are not merged by default. Merging them breaks the alias matching downstream (金额(元)/合计 is not 合计), so the most specific row is used, and the parent label is only prefixed when a child name repeats.
  • A ragged table is reported, not repaired. When a row's cells do not add up to the declared width, the result is marked ragged and low confidence; there is no information in the file to recover the author's intent.
  • expectedColumns is the strongest signal you can give. Supplying it turns an ambiguous four-table document into a deterministic choice.

Troubleshooting

  • The plugin installs but the tool never appears: check that main resolves to lib/index.mjs and that pnpm run build produced it.
  • dsh plugin add rejects the package: the peer range covers 0.1.x and 0.2.x; outside it, grant an explicit exemption.
  • A rule did not run: read the skipped array.

Development

pnpm install
pnpm run typecheck
pnpm test
pnpm run build
node ../scripts/sync-shared.mjs dsh-table-ingest

PerryLink DSH Plugin Family

Full family index: choose a checker by material and all plugins. This repository is one of them.

License

Apache License 2.0 © 2026 dsh-table-ingest contributors.