PicoAide Harness:企业级 DeepSeek Harness 一体化平台。桌面客户端 + 本地智能体引擎…
46.1/100
综合分
19
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/19 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
自动兼容检查未通过:缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add picoaide/picoaide-harness该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
dsh 原生插件 · dev
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 16 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包picoaide-harness(未发布到 npm,仅可源码安装)
✓Node 引擎要求 ^22.19.0 || >=24.0.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/30 04:31:52
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 67 处,展示前 51 条)
- 读取本地文件integration-tests/electron-shots/electron-shots.mjs:309
if (!existsSync(APP)) { - 读取本地文件integration-tests/electron-shots/electron-shots.mjs:321
const usable = socket !== undefined && existsSync(socket) && statSync(socket).isSocket() - 读取本地文件integration-tests/electron-shots/electron-shots.mjs:321
const usable = socket !== undefined && existsSync(socket) && statSync(socket).isSocket() - 发起网络请求integration-tests/electron-shots/electron-shots.mjs:333
const response = await fetch(new URL('/healthz', SERVER), { signal: AbortSignal.timeout(5000) }) - 写入本地文件integration-tests/electron-shots/electron-shots.mjs:357
mkdirSync(RUN_HOME, { recursive: true }) - 写入本地文件integration-tests/electron-shots/electron-shots.mjs:365
mkdirSync(SHOTS, { recursive: true }) - 读取本地文件integration-tests/electron-shots/electron-shots.mjs:370
const manifest = JSON.parse(readFileSync(join(PACKAGE_ROOT, 'node_modules', 'electron', 'package.json'), 'utf8')) - 发起网络请求integration-tests/electron-shots/electron-shots.mjs:438
observed = await (await fetch(`http://127.0.0.1:${port}/json/list`, { signal: AbortSignal.timeout(5000) })).json() - 读取本地文件integration-tests/electron-shots/electron-shots.mjs:470
try { entries = readdirSync(homeDir, { recursive: true, withFileTypes: true }) } catch { return undefined } - 读取本地文件integration-tests/electron-shots/electron-shots.mjs:475
const [portLine, browserPath] = readFileSync(file, 'utf8').split('\n') - 删除本地文件递归integration-tests/electron-shots/electron-shots.mjs:496
try { rmSync(RUN_HOME, { recursive: true, force: true }) } catch { } - 删除本地文件递归integration-tests/electron-shots/electron-shots.mjs:509
try { rmSync(RUN_HOME, { recursive: true, force: true }) } catch { } - 写入本地文件integration-tests/electron-shots/electron-shots.mjs:516
writeFileSync(file, Buffer.from(data, 'base64')) - 写入本地文件integration-tests/electron-shots/electron-shots.mjs:639
appendFileSync(APP_LOG, `[channel] 找不到 app.asar(候选: ${candidates.join(', ')})—— 包内渠道配置读不出来\n`) - 写入本地文件integration-tests/electron-shots/electron-shots.mjs:658
appendFileSync(APP_LOG, `[channel] 读包内渠道配置失败: ${message}\n`) - 发起网络请求integration-tests/electron-shots/electron-shots.mjs:669
const response = await fetch(new URL('/api/client/v2/channel', SERVER), { signal: AbortSignal.timeout(5000) }) - 发起网络请求integration-tests/electron-shots/electron-shots.mjs:694
const response = await fetch(new URL('/api/client/v2/auth/methods', SERVER), { signal: AbortSignal.timeout(5000) }) - 发起网络请求integration-tests/electron-shots/electron-shots.mjs:760
const version = await (await fetch(`http://127.0.0.1:${port}/json/version`, { signal: AbortSignal.timeout(5000) })).json() - 执行外部命令来自配置/变量integration-tests/electron-shots/electron-shots.mjs:834
const app = spawn(APP, ['--no-sandbox', `--remote-debugging-port=${REQUESTED_CDP_PORT}`], { - 写入本地文件integration-tests/electron-shots/electron-shots.mjs:858
try { appendFileSync(APP_LOG, text) } catch { } - 读取本地文件server/webadmin/src/api-type-disclosure.test.ts:45
const apiSource = readFileSync(resolve(here, 'api.ts'), 'utf8') - 发起网络请求server/webadmin/src/api.ts:89
const res = await fetch(`${ADMIN_API}/me`, { headers: { accept: 'application/json' } }) - 发起网络请求server/webadmin/src/api.ts:133
const res = await fetch(path, { ...init, headers }) - 发起网络请求server/webadmin/src/api.ts:188
const res = await fetch(`${ADMIN_API}/login`, { - 发起网络请求server/webadmin/src/api.ts:207
const res = await fetch(`${ADMIN_API}/login/mfa`, { - 读取本地文件server/webadmin/src/lib/capability-endpoints.spec.ts:61
if (existsSync(join(dir, 'internal', 'router', 'router.go'))) return dir - 读取本地文件server/webadmin/src/lib/capability-endpoints.spec.ts:62
if (existsSync(join(dir, 'server', 'internal', 'router', 'router.go'))) return join(dir, 'server') - 读取本地文件server/webadmin/src/lib/capability-endpoints.spec.ts:83
if (!existsSync(f)) { - 读取本地文件server/webadmin/src/lib/capability-endpoints.spec.ts:167
const ROUTER = codeOnly(readFileSync(ROUTER_GO, 'utf8')) - 读取本地文件server/webadmin/src/lib/capability-endpoints.spec.ts:184
const discovered = (readdirSync(ROUTER_PKG_DIR, { recursive: true }) as string[]) - 读取本地文件server/webadmin/src/lib/capability-endpoints.spec.ts:189
.filter((path) => /AdminRoute\(/u.test(codeOnly(readFileSync(join(ROUTER_PKG_DIR, path), 'utf8')))) - 发起网络请求server/webadmin/src/lib/channel.ts:47
inflight ??= fetch(`${CLIENT_API}/channel`, { headers: { accept: 'application/json' }, cache: 'no-store' }) - 读取本地文件server/webadmin/src/lib/dirsync-doc-parity.spec.ts:30
existsSync(join(dir, 'site', 'src', 'content', 'docs', 'admin.md')) - 读取本地文件server/webadmin/src/lib/dirsync-doc-parity.spec.ts:31
&& existsSync(join(dir, 'server', 'internal', 'serverauth', 'dirsync.go')) - 读取本地文件server/webadmin/src/lib/dirsync-doc-parity.spec.ts:50
expect(existsSync(file), `文档真源不可读:${file}`).toBe(true) - 读取本地文件server/webadmin/src/lib/dirsync-doc-parity.spec.ts:51
const text = readFileSync(file, 'utf8') - 读取本地文件server/webadmin/src/lib/dirsync-doc-parity.spec.ts:59
const src = readFileSync(DIRSYNC_GO, 'utf8') - 读取本地文件server/webadmin/src/lib/dsn.corpus.test.ts:47
const parsed = JSON.parse(readFileSync(CORPUS_PATH, 'utf8')) as { cases: CorpusCase[] } - 读取本地文件server/webadmin/src/lib/features.test.ts:42
if (existsSync(join(dir, 'src', 'App.tsx'))) return join(dir, 'src', 'App.tsx') - 读取本地文件server/webadmin/src/lib/features.test.ts:43
if (existsSync(join(dir, 'webadmin', 'src', 'App.tsx'))) return join(dir, 'webadmin', 'src', 'App.tsx') - 读取本地文件server/webadmin/src/lib/features.test.ts:50
const APP_SRC = readFileSync(APP_PATH, 'utf8') - 读取本地文件server/webadmin/src/lib/nav.test.ts:52
if (existsSync(join(dir, 'internal', 'serverauth', 'rbac.go'))) { - 读取本地文件server/webadmin/src/lib/nav.test.ts:55
if (existsSync(join(dir, 'server', 'internal', 'serverauth', 'rbac.go'))) { - 读取本地文件server/webadmin/src/lib/nav.test.ts:72
if (existsSync(join(dir, 'src', 'lib', 'rbac.ts'))) return join(dir, 'src', 'lib', 'rbac.ts') - 读取本地文件server/webadmin/src/lib/nav.test.ts:73
if (existsSync(join(dir, 'webadmin', 'src', 'lib', 'rbac.ts'))) { - 读取本地文件server/webadmin/src/lib/nav.test.ts:82
const RBAC_GO = readFileSync(RBAC_GO_PATH, 'utf8') - 读取本地文件server/webadmin/src/lib/nav.test.ts:84
const RBAC_TS = readFileSync(RBAC_TS_PATH, 'utf8') - 读取本地文件server/webadmin/src/lib/routes.test.ts:51
if (existsSync(join(dir, 'src', 'App.tsx'))) return join(dir, 'src', 'App.tsx') - 读取本地文件server/webadmin/src/lib/routes.test.ts:52
if (existsSync(join(dir, 'webadmin', 'src', 'App.tsx'))) return join(dir, 'webadmin', 'src', 'App.tsx') - 读取本地文件server/webadmin/src/lib/routes.test.ts:59
const APP_SRC = readFileSync(APP_PATH, 'utf8') - 读取本地文件server/webadmin/src/lib/routes.test.ts:268
expect(existsSync(APP_PATH), `路由真源不可读:${APP_PATH}`).toBe(true)
扫描于 2026/11/4(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
界面预览
6 张 · 点击查看大图功能亮点
- 桌面客户端
- 本地智能体引擎
- 管理后台
README
由 DeepSeek 最新模型翻译生成PicoAide Harness 中文入口
这是旧链接的兼容入口。当前中文产品 README 是 README.md,完整文档索引在 docs/README.md。
本文件不再复制一份独立的产品说明,也不代表上游 deepseek-harness 项目的 README;上游项目的文档位于固定的 deepseek-harness/ 子模块中。
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
picoaide/picoaide-harness
PicoAide Harness:企业级 DeepSeek Harness 一体化平台。桌面客户端 + 本地智能体引擎…
相关插件 · 开发 / 工程
隐私简历生成器reactive-resume/reactive-resume
Reactive Resume 已迁至 GitHub 上的…
★ 45,288已汉化MCP
71.7
长时任务执行闭环AMAP-ML/LongHorizon-Harness
面向 Computer-Use Agent 的 Loop Engineering
★ 1,764已汉化DSH
70.5
多代理编排运行时Enderfga/claw-orchestrator
面向编程智能体的运行时。把 Claude Code、Codex、Antigravity、Grok…
★ 586已汉化MCP
69.4
记忆进化插件csyangwen/dsh-memory-evolve
dsh-memory-evolve 使用场景指南
★ 461已汉化DSH
67.9
原生编程智能体paean-ai/deeptide
由 DeepSeek 打造,为 DeepSeek 而生。
★ 1,107已汉化DSH
67.7
多引擎接力台emo-xiaoyu/harness-mix
macOS/Linux 已加入源码构建与启动适配;目标系统的完整桌面验收仍需在对应机器执行。安装方式、Linux…
★ 419已汉化DSH
66.8
这是你的仓库?认领条目