🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

实证分析 Agent q2955161835-debug/Data_analysis_agent

DeepSeek Harness
q2955161835-debug36 天前有提交已提供中文文档扫描:含敏感能力

采集数据并完成计量分析,输出可复现报告

30.8/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/29 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查未通过:缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add q2955161835-debug/Data_analysis_agent
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
dsh 原生插件 · tool
装得上吗
作者未把包发布到 npm,只能用源码安装
插件本身没问题,是分发方式不同
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 36 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装

缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包data-analysis-agent(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22.19.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明

源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/13 08:11:08

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件读取剪贴板或密钥环境变量
查看扫描证据(共 84 处,展示前 83 条)
  • 读取密钥环境变量
    packages/harness-adapter/src/credentials.ts:78
    const value = process.env.DEEPSEEK_API_KEY?.trim()
  • 读取密钥环境变量
    packages/harness-adapter/src/credentials.ts:98
    return process.env.DEEPSEEK_API_KEY?.trim()
  • 读取本地文件
    packages/policies/src/native-read-policy.ts:43
    if (lstatSync(current).isSymbolicLink()) return deny('POLICY_PATH_ESCAPE')
  • 读取本地文件
    packages/policies/src/native-read-policy.ts:50
    const stat = lstatSync(candidate)
  • 读取本地文件
    packages/policies/src/native-skill-read-policy.ts:21
    if (lstatSync(current).isSymbolicLink()) return { kind: 'deny', reason: 'POLICY_PATH_ESCAPE' }
  • 读取本地文件
    packages/policies/src/native-skill-read-policy.ts:25
    || !lstatSync(absolute).isFile()) return { kind: 'deny', reason: 'POLICY_PATH_ESCAPE' }
  • 读取本地文件
    packages/profile-data-analysis/src/index.ts:72
    ?? (existsSync(defaultPython) ? defaultPython : process.platform === 'win32' ? 'python' : 'python3')
  • 读取本地文件
    packages/profile-data-analysis/src/index.ts:163
    const parsed = load(readFileSync(filename, 'utf8'), { schema: HARNESS_JS_SCHEMA })
  • 读取本地文件
    packages/profile-data-analysis/src/manifest.ts:28
    if (!existsSync(resolved)) throw new Error(`BUNDLE_PATCH_MISSING: ${resolved}`)
  • 读取本地文件
    packages/profile-data-analysis/src/manifest.ts:49
    const manifest = JSON.parse(readFileSync(templateUrl, 'utf8')) as UnknownRecord
  • 读取本地文件
    packages/skills-runtime/src/catalog.ts:147
    const entries = await readdir(path.join(directory, relative), { withFileTypes: true })
  • 读取本地文件
    packages/skills-runtime/src/catalog.ts:151
    const details = await lstat(path.join(directory, child))
  • 读取本地文件
    packages/skills-runtime/src/catalog.ts:165
    resources[relative] = sha256(await readFile(path.join(skillRoot, relative)))
  • 读取本地文件
    packages/skills-runtime/src/catalog.ts:189
    const directories = (await readdir(options.root, { withFileTypes: true }))
  • 读取本地文件
    packages/skills-runtime/src/catalog.ts:208
    content = await readFile(path.join(options.root, directory, 'SKILL.md'), 'utf8')
  • 写入本地文件
    packages/skills-runtime/src/loader.ts:119
    await mkdir(workflowRoot, { recursive: true })
  • 写入本地文件
    packages/skills-runtime/src/loader.ts:120
    await appendFile(path.join(workflowRoot, 'skill-activations.jsonl'), `${JSON.stringify(value)}\n`, 'utf8')
  • 读取本地文件
    packages/skills-runtime/src/provenance.ts:99
    value = JSON.parse(await readFile(provenancePath, 'utf8')) as unknown
  • 读取本地文件
    packages/workflow-core/src/event-store.ts:28
    const existingLog = await realpath(logPath).catch((error: unknown) => {
  • 读取本地文件
    packages/workflow-core/src/event-store.ts:44
    const content = await readFile(logPath, 'utf8').catch((error: unknown) => {
  • 写入本地文件
    packages/workflow-core/src/event-store.ts:130
    await writeFile(temporary, combined.map(event => `${JSON.stringify(event)}\n`).join(''), { encoding: 'utf8', flag: 'wx' })
  • 写入本地文件
    packages/workflow-core/src/event-store.ts:131
    await rename(temporary, logPath)
  • 删除本地文件
    packages/workflow-core/src/event-store.ts:133
    await rm(temporary, { force: true })
  • 删除本地文件
    packages/workflow-core/src/event-store.ts:135
    await rm(lockPath, { force: true })
  • 写入本地文件
    packages/workflow-core/src/fork.ts:46
    await mkdir(destination, { recursive: true })
  • 读取本地文件
    packages/workflow-core/src/fork.ts:47
    for (const entry of await readdir(source, { withFileTypes: true })) {
  • 读取本地文件
    packages/workflow-core/src/fork.ts:50
    const details = await lstat(sourcePath)
  • 写入本地文件
    packages/workflow-core/src/fork.ts:59
    await copyFile(sourcePath, destinationPath)
  • 写入本地文件
    packages/workflow-core/src/fork.ts:60
    await chmod(destinationPath, 0o444)
  • 写入本地文件
    packages/workflow-core/src/fork.ts:88
    await mkdir(childEvidenceRoot, { recursive: true })
  • 读取本地文件
    packages/workflow-core/src/fork.ts:93
    const details = await lstat(sourcePath).catch(() => undefined)
  • 读取本地文件
    packages/workflow-core/src/fork.ts:101
    const contents = await readFile(sourcePath)
  • 写入本地文件
    packages/workflow-core/src/fork.ts:108
    await writeFile(destinationPath, contents, { flag: 'wx' })
  • 写入本地文件
    packages/workflow-core/src/fork.ts:109
    await chmod(destinationPath, 0o444)
  • 删除本地文件递归
    packages/workflow-core/src/fork.ts:269
    await rm(childTaskRoot, { recursive: true, force: true })
  • 读取本地文件
    packages/workflow-core/src/plan-store.ts:37
    parsed = JSON.parse(await readFile(filename, 'utf8'))
  • 读取本地文件
    packages/workflow-core/src/plan-store.ts:77
    const entries = (await readdir(planRoot))
  • 写入本地文件
    packages/workflow-core/src/plan-store.ts:141
    await writeFile(versionTemporary, content, { encoding: 'utf8', flag: 'wx' })
  • 写入本地文件
    packages/workflow-core/src/plan-store.ts:142
    await rename(versionTemporary, versionPath)
  • 写入本地文件
    packages/workflow-core/src/plan-store.ts:144
    await writeFile(currentTemporary, content, { encoding: 'utf8', flag: 'wx' })
  • 写入本地文件
    packages/workflow-core/src/plan-store.ts:145
    await rename(currentTemporary, currentPath)
  • 删除本地文件
    packages/workflow-core/src/plan-store.ts:149
    if (versionPublished) await rm(versionPath, { force: true })
  • 删除本地文件
    packages/workflow-core/src/plan-store.ts:152
    if (previous === undefined) await rm(currentPath, { force: true })
  • 写入本地文件
    packages/workflow-core/src/plan-store.ts:154
    await writeFile(currentTemporary, `${JSON.stringify(previous, null, 2)}\n`, { encoding: 'utf8', flag: 'wx' })
  • 写入本地文件
    packages/workflow-core/src/plan-store.ts:155
    await rename(currentTemporary, currentPath)
  • 删除本地文件
    packages/workflow-core/src/plan-store.ts:163
    await rm(versionTemporary, { force: true })
  • 删除本地文件
    packages/workflow-core/src/plan-store.ts:164
    await rm(currentTemporary, { force: true })
  • 删除本地文件
    packages/workflow-core/src/plan-store.ts:168
    await rm(lockPath, { force: true })
  • 读取本地文件
    packages/workflow-core/src/storage-paths.ts:20
    const realTaskRoot = await realpath(taskRoot).catch(() => {
  • 读取本地文件
    packages/workflow-core/src/storage-paths.ts:24
    const realWorkRoot = await realpath(workRoot).catch(() => {
  • 写入本地文件
    packages/workflow-core/src/storage-paths.ts:33
    await mkdir(workflowRoot, { recursive: true })
  • 读取本地文件
    packages/workflow-core/src/storage-paths.ts:34
    const realWorkflowRoot = await realpath(workflowRoot)
  • 写入本地文件
    packages/workflow-core/src/storage-paths.ts:48
    await mkdir(directory, { recursive: true })
  • 读取本地文件
    packages/workflow-core/src/storage-paths.ts:49
    const resolved = await realpath(directory)
  • 读取本地文件
    packages/workspace/src/archive.ts:24
    if (!existsSync(source)) throw new Error(`TASK_NOT_FOUND: ${taskId}`)
  • 读取本地文件
    packages/workspace/src/archive.ts:25
    if (existsSync(target)) throw new Error(`ARCHIVE_TARGET_EXISTS: ${taskId}`)
  • 写入本地文件
    packages/workspace/src/archive.ts:26
    await mkdir(archiveRoot, { recursive: true })
  • 写入本地文件
    packages/workspace/src/archive.ts:30
    await rename(source, target)
  • 读取本地文件
    packages/workspace/src/archive.ts:33
    if (existsSync(archiveRecord)) throw new Error('ARCHIVE_RECORD_ALREADY_EXISTS')
  • 写入本地文件
    packages/workspace/src/archive.ts:34
    await writeFile(archiveRecord, `# 归档记录\n\n- 任务:${taskId}\n- 归档日期:${archivedOn}\n- 原则:归档原件只读;返工时新建任务并引用。\n`, { encoding: 'utf8', flag: 'wx' })
  • 删除本地文件
    packages/workspace/src/archive.ts:39
    if (recordCreated) await rm(archiveRecord, { force: true })
  • 写入本地文件
    packages/workspace/src/archive.ts:40
    await rename(target, source)
  • 读取本地文件
    packages/workspace/src/indexer.ts:21
    const readme = await readFile(path.join(taskRoot, 'README.md'), 'utf8')
  • 写入本地文件
    packages/workspace/src/indexer.ts:32
    await writeFile(temporary, content, { encoding: 'utf8', flag: 'wx' })
  • 写入本地文件
    packages/workspace/src/indexer.ts:33
    await rename(temporary, filename)
  • 删除本地文件
    packages/workspace/src/indexer.ts:35
    await rm(temporary, { force: true })
  • 读取本地文件
    packages/workspace/src/indexer.ts:45
    const original = await readFile(indexPath, 'utf8')
  • 读取本地文件
    packages/workspace/src/indexer.ts:49
    const entries = await readdir(tasksRoot, { withFileTypes: true })
  • 读取本地文件
    packages/workspace/src/paths.ts:53
    const realRoot = await realpath(workspaceRoot)
  • 读取本地文件
    packages/workspace/src/paths.ts:54
    const realCandidate = await realpath(candidate)
  • 写入本地文件
    packages/workspace/src/scaffold.ts:46
    await rename(staging, taskRoot)
  • 读取本地文件
    packages/workspace/src/scaffold.ts:50
    if (filesystemCode(error) !== 'EPERM' || retryDelay === undefined || existsSync(taskRoot)) throw error
  • 读取本地文件
    packages/workspace/src/scaffold.ts:58
    if (existsSync(destination)) return
  • 写入本地文件
    packages/workspace/src/scaffold.ts:59
    await mkdir(path.dirname(destination), { recursive: true })
  • 写入本地文件
    packages/workspace/src/scaffold.ts:65
    await mkdir(workspaceRoot, { recursive: true })
  • 读取本地文件
    packages/workspace/src/scaffold.ts:82
    for (const entry of await readdir(root, { withFileTypes: true })) {
  • 读取本地文件
    packages/workspace/src/scaffold.ts:89
    let content = await readFile(filename, 'utf8')
  • 写入本地文件
    packages/workspace/src/scaffold.ts:91
    await writeFile(filename, content, 'utf8')
  • 读取本地文件
    packages/workspace/src/scaffold.ts:105
    if (existsSync(taskRoot)) throw new Error(`TASK_ALREADY_EXISTS: ${taskId}`)
  • 写入本地文件
    packages/workspace/src/scaffold.ts:110
    await mkdir(containedPath(staging, directory), { recursive: true })
  • 删除本地文件递归
    packages/workspace/src/scaffold.ts:121
    await rm(taskRoot, { recursive: true, force: true })
  • 删除本地文件递归
    packages/workspace/src/scaffold.ts:125
    if (existsSync(staging) && (await stat(staging)).isDirectory()) await rm(staging, { recursive: true, force: true })
  • 读取本地文件
    packages/workspace/src/scaffold.ts:125
    if (existsSync(staging) && (await stat(staging)).isDirectory()) await rm(staging, { recursive: true, force: true })
扫描于 2026/11/4(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/cordis-plugin-group@deepseek-ai/dsh@deepseek-ai/dsh-anonymous-user-id@deepseek-ai/dsh-app-boot@deepseek-ai/dsh-atomic-write@deepseek-ai/dsh-attachment@deepseek-ai/dsh-authorization@deepseek-ai/dsh-base@deepseek-ai/dsh-bash-local@deepseek-ai/dsh-client-store@deepseek-ai/dsh-client-ui-primitives
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 数据采集
  • 计量分析
  • 输出可复现报告

DeepSeek Harness 上的学术研究与商业数据分析智能体。网页抓取、计量经济学、自主工作流、论文方法适配、可复现报告和答辩辅导。学术科研与商业数据分析智能体|数据采集与实证分析

README

由 DeepSeek 最新模型翻译生成
数据分析 Agent Data Analysis Agent 是一个基于 DeepSeek Harness 的本地优先专业数据分析 Agent。它首先面向学术研究与实证分析,也能扩展到 KPI、cohort、差异分解等商业数据分析任务。它把需求澄清、数据采集、质量核验、统计与计量分析、报告生成、独立验证和最终交付连接成一条可追踪的自适应工作流。 项目的主要强项是有边界、可恢复的网页与公开数据采集,以及把数据质量、统计假设、计量识别、完整结果和可复现交付连在一起的实证分析。 项目的需求与交付方式来自作者说明的两年、约 300 份数据分析委托实践经验。这段经验用于提炼常见研究问题、返工原因、证据边界和交付习惯,不表示这些委托数据被用于训练模型权重,也不表示 300 份项目都已成为公开基准。 它适合什么任务 - 学术研究:问卷分析、描述统计、组间比较、相关、线性与二元 Logistic 回归、因子诊断、面板模型、双重差分、工具变量和时间序列。 - 科研全流程:从研究问题与数据字典开始,经过数据质量、方法选择、结果解释、图表和多格式报告,保留来源、参数、哈希和限制。 - 参考论文方法蒸馏与迁移:读取用户指定的论文全文,提取研究设计、估计对象、假设、检验与限制,再核对当前数据是否满足迁移条件。方法迁移不是复制论文文字,也不能用论文结论替代当前数据证据。
展开完整文档(README 剩余 1 节)
数据分析 Agent

Data Analysis Agent 是一个基于 DeepSeek Harness 的本地优先专业数据分析 Agent。它首先面向学术研究与实证分析,也能扩展到 KPI、cohort、差异分解等商业数据分析任务。它把需求澄清、数据采集、质量核验、统计与计量分析、报告生成、独立验证和最终交付连接成一条可追踪的自适应工作流。

项目的主要强项是有边界、可恢复的网页与公开数据采集,以及把数据质量、统计假设、计量识别、完整结果和可复现交付连在一起的实证分析。

项目的需求与交付方式来自作者说明的两年、约 300 份数据分析委托实践经验。这段经验用于提炼常见研究问题、返工原因、证据边界和交付习惯,不表示这些委托数据被用于训练模型权重,也不表示 300 份项目都已成为公开基准。

它适合什么任务

- 学术研究:问卷分析、描述统计、组间比较、相关、线性与二元 Logistic 回归、因子诊断、面板模型、双重差分、工具变量和时间序列。
- 科研全流程:从研究问题与数据字典开始,经过数据质量、方法选择、结果解释、图表和多格式报告,保留来源、参数、哈希和限制。
- 参考论文方法蒸馏与迁移:读取用户指定的论文全文,提取研究设计、估计对象、假设、检验与限制,再核对当前数据是否满足迁移条件。方法迁移不是复制论文文字,也不能用论文结论替代当前数据证据。
- 数据采集:为公开网页、表格和接口建立字段、来源、请求、分页、速率和停止预算;支持静态与可选动态页面采集、断点记录、来源快照和部分失败说明。
- 商业分析:建立版本化 KPI 口径,处理多来源字段映射,分析 cohort、漏斗和预算/期间/基准差异,并区分事实、解释和建议。
- 自适应沟通与答辩教学:根据普通用户、实务用户或专家的当前问题调整解释深度,可辅助解释方法选择、结果含义、限制、复现位置和答辩思路,但不改变事实状态。

工作方式

Agent 不把“学术”“市场”“运营”固化成互斥模式。它先把自然语言需求编译为版本化阶段计划,再根据实际 schema、来源覆盖、统计前提和模型诊断调整后续阶段。

需求与输入 ↓ RequirementSpec → 版本化计划 → 数据采集/质量核验 ↓ 统计 / 计量 / 企业分析 ↓ 候选报告 → 独立验证 → 最终交付

关键原则:

1. 自动化开始前先配置凭据、数据、允许访问的来源与路径、隐私边界,以及请求、时间和模型预算。
2. 原始输入进入 input/ 后按只读证据处理;清洗结果写为新版本,不覆盖原件。
3. 计算由受契约约束的 Python Worker 执行,结果引用实际 artifact,不在文字中补造数值。
4. 数据、口径或识别条件不足时保持 blocked,给出缺口与可继续步骤,不生成迎合预期的结论。
5. 报告先写入 output/candidate/;只有绑定当前候选的独立验证通过并完成交付授权后,才进入 output/final/。

已实现能力

当前代码注册了以下操作族:

| 阶段 | Operations |
| 采集 | acquisition.crawl, acquisition.http_table |
| 质量 | quality.profile, quality.clean |
| 统计 | statistics.survey.analyze, statistics.descriptive, statistics.group_compare, statistics.correlation, statistics.regression, statistics.frequency, statistics.contingency, statistics.logistic, statistics.factor_diagnostics |
| 计量 | econometrics.panel, econometrics.did, econometrics.iv, econometrics.timeseries |
| 企业 | enterprise.kpi, enterprise.cohort, enterprise.variance |
| 交付 | delivery.package, validation.verify, delivery.publish |

survey.analyze 作为问卷分析兼容别名保留。完整输入、输出和方法边界见能力参考。

项目内置 14 个核心 Skills,覆盖任务工作区、需求计划、自适应重规划、用户沟通、参考论文蒸馏、数据质量与来源、采集治理、网页采集、统计、计量、企业分析、交付生产、去防御性报告写作与交付验证。运行时先读取目录元数据,仅在已批准阶段按需加载正文,并记录激活版本与内容哈希。

快速开始(开发快照)

环境要求:Node.js >=22.19.0、通过 Corepack 使用 pnpm 10.23.0、Python >=3.11,以及本地 DeepSeek Harness 运行环境。真实模型调用需要用户自己的凭据。

当前快照锁定 DeepSeek Harness 0.1.7-rc.2 和 Cordis 4.0.4,默认模型为 deepseek-official/deepseek-flash。DeepSeek Provider 使用 Messages API;自定义 DEEPSEEK_BASE_URL 必须支持该协议,留空使用官方默认地址。升级已有安装时,需同步更新对应 Profile 的依赖,不能只更新全局 CLI。

corepack pnpm install --frozen-lockfile
python -m venv .venv
.\.venv\Scripts\python.exe -m pip install -e ".\python[dev]"
corepack pnpm build
corepack pnpm typecheck
node scripts/doctor.mjs --offline
复制 .env.example 为本机 .env 后,填写工作区、Harness home 和必要凭据。不要提交 .env,也不要把密钥写进任务输入或报告。

创建独立任务目录:

corepack pnpm task:new -- --workspace '' --date 20260914 --slug survey-study --title '问卷研究'

公开快照提供构建、类型检查、Doctor、任务创建和发行构建所需源码。完整内部测试、真实 API 验收夹具和私有数据不随公开快照提供,因此不要把公开仓库中的 pnpm test 当作完整验收入口。发行构建产物不会自动上传或发布。

安装并启动 Web 入口

在非系统盘的干净 Git 源码目录中继续执行以下命令;本地构建修改版时可给打包命令添加 --dry-run。安装器要求新的 Profile 名称,已有安装请使用另一个名称,避免覆盖。

.\.venv\Scripts\python.exe -m pip install build==1.3.0 setuptools==80.9.0 wheel==0.45.1
node scripts/package-release.mjs --output dist/local

$projectRoot = (Get-Location).Path
$env:DSH_HOME = Join-Path $projectRoot 'try/tmp/local-harness'
$env:DA_WORKSPACE_ROOT = Join-Path $projectRoot 'try/tmp/local-workspace'
$env:DA_PYTHON = Join-Path $projectRoot '.venv/Scripts/python.exe'
$bundleSource = 'file:' + (Join-Path $projectRoot 'dist/local/data-analysis-profile-0.2.0.tgz').Replace('\', '/')
node scripts/profile-install.mjs --surface web --profile data-analysis-web --bundle-source $bundleSource
$profilePath = Join-Path $env:DSH_HOME 'profiles/data-analysis-web'
npm --prefix $profilePath install --ignore-scripts
$env:DA_PROJECT_ROOT = Join-Path $profilePath 'node_modules/@data-analysis-agent/profile'
New-Item -ItemType Directory -Force $env:DA_WORKSPACE_ROOT | Out-Null
.\scripts\dev.ps1 -Profile data-analysis-web

在官方 Web 入口配置自己的模型凭据。.env 是配置账本,启动脚本不会自动加载它;上面的变量显式设置在当前 PowerShell 进程。Headless 安装使用 --surface headless 和独立 Profile 名称,详细安装包流程见安装说明。

示例需求

我有一份问卷 XLSX 和研究假设。请先核对量表条目、缺失、重复和编码,再做信度、描述统计、组间差异、相关与回归。完整报告有效样本量、效应量、置信区间和诊断,生成中文 DOCX、XLSX 与 PDF 候选供我确认。

请按我提供的 DOI 阅读全文,分开列出论文中的研究设计、估计对象、识别假设和限制,再判断这些方法迁移到当前面板数据还缺哪些字段或检验。
若关键条件不满足,请停止因果解释并给出替代分析方案。

在已批准的公开来源与请求预算内采集行业指标,保留网页快照、来源时间、失败清单和字段映射;随后计算已确认口径的 KPI、cohort 与差异分解。

能力边界

- 本项目不能保证论文投稿、答辩或录用结果,也不能替代研究者、导师、伦理审查或领域专家的最终判断。
- 参考论文蒸馏要求可定位的标题、DOI、URL 或本地全文。只有摘要或元数据时会明确降低证据范围,不补写正文细节。
- 网络采集受网站条款、robots、访问权限、验证码、登录态、隐私和预算约束。未获授权的来源或字段不会自动扩大。
- 观察性相关和普通回归不自动产生因果结论。关键识别假设不能支持时,系统应降级为描述或相关结论。
- 自动化依赖用户提供正确数据、字段含义、凭据和权限。缺失关键信息时,预期行为是停止、澄清或重规划。

架构

- packages/profile-data-analysis/:Web/Headless Profile、系统提示与 operation catalog。
- packages/harness-adapter/:隔离 DeepSeek Harness 预发布接口差异。
- packages/workflow-core/:需求路由、计划 DAG、事件投影、恢复、重规划与分叉。
- packages/policies/:计划、路径、网络、风险和数据诚信约束。
- packages/skills-runtime/ 与 skills/core/:核心 Skills 发现、来源校验、按需加载和激活审计。
- packages/tools/:计划、Worker、采集与交付生命周期工具。
- python/da_worker/:受路径、格式、时间、输出和内存预算约束的确定性分析 Worker。
- packages/workspace/ 与 templates/workspace/:多任务工作区生命周期与模板。

本项目建立在 DeepSeek Harness / Cordis 之上;上游运行时与第三方科学计算、文档和字体组件保留各自许可与归属。更多设计说明见架构文档。

许可与引用

本项目以 PolyForm Noncommercial 1.0.0 提供源代码访问,用于该许可允许的非商业目的。商业使用需另行取得商业许可。这是 source-available(源代码可用)项目,不宣称为 OSI 认可的开源软件。
完整许可包含对教育机构、公共研究机构等非商业组织的明确授权,具体适用范围以 PolyForm 原文为准。MIT/OFL 等第三方组件继续适用其原许可;本版本的项目自有 Skills 使用根目录许可。历史版本已授予的 Apache-2.0/MIT 权利不因后续版本变更而撤回。

引用元数据见 CITATION.cff。作者与仓库:q2955161835-debug / Data_analysis_agent。

文档导航

- 能力与 operation 参考
- 学术与商业工作流
- 系统架构与数据流
- 常见问题与边界
- 面向检索工具与语言模型的索引
预览分享卡片长什么样 ↓q2955161835-debug/Data_analysis_agent
分享 · DeepSeek Harness Hub
q2955161835-debug/Data_analysis_agent

采集数据并完成计量分析,输出可复现报告

这是你的仓库?认领条目

回到顶部