npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@p-dsh-market/graph-job-orchestrator

v0.1.3

Published

DSH Graph Job 多 Subagent 任务图编排器

Readme

Graph Job 多 Subagent 任务图

@p-dsh-market/graph-job-orchestrator 实现评审稿中的阶段 0~4 基础闭环:

  • Graph Draft/Revision、Agent Profile snapshot、DAG validator、静态并行预览、受限 Planner patch;
  • %LOCALAPPDATA%/dsh-desktop/plugin-data/graph-job-orchestrator/ 下的原子 JSON 与 append-only JSONL 存储;
  • DSH in-process Subagent executor、merge barrier、read 并行/write 串行、失败暂停、有限 transport/rate-limit retry、取消和终止;
  • artifactRefs workspace-relative 校验、插件 Skill/Graph Job 递归保护、/graphjob 命令、Web API、SSE 和任务图编辑面板;
  • Codex provider 的能力发现、model/reasoningEffort 快照与 capability mismatch 错误;官方 subagent-codex 按 one-shot 运行,不会误走 DSH continuable 路径。

运行时必须先安装并注册 Codex Subagent provider,阶段 4 才会显示 Codex executor 可用;没有 provider 时不会伪装成可运行,而是在能力快照和运行错误中明确说明。当前仓库的本地 runtime 只有 DSH spawn/fork provider,因此不会在安装插件时自动修改 profile。

需要 Codex 时,在目标 DSH profile 安装官方 provider Bundle 后重启该 profile:

dsh plugin --profile <name> add @deepseek-ai/dsh-subagent-codex

插件只负责发现和校验 provider,不会代替用户安装 Bundle、登录 Codex 或修改 Codex 原生权限配置。

官方 Codex Bundle 的 model 是 provider 实例级静态配置,不是一次调用时的动态参数。若希望在 Graph Job 设置中选择多个 Codex 模型,可在目标 Profile 的 cordis.patch.yml 挂载多个命名实例,例如:

- insert:
    - id: graph-job-codex-luna
      name: '@deepseek-ai/dsh-subagent-codex'
      config:
        providerName: codex-luna
        model: gpt-5.6-luna
        permissionMode: never
    - id: graph-job-codex-sol
      name: '@deepseek-ai/dsh-subagent-codex'
      config:
        providerName: codex-sol
        model: gpt-5.6-sol
        permissionMode: never

Graph Job 会从 runtime capability snapshot 读取这些 provider/model;reasoningEffort 只有 Codex provider 明确公布可选值时才显示和发送。

主要端点:

  • GET /graph-job-orchestrator/capabilities
  • GET/PUT /graph-job-orchestrator/profiles
  • GET/POST/PATCH /graph-job-orchestrator/graphs
  • POST /graph-job-orchestrator/graphs/:id/preview|confirm|run
  • GET /graph-job-orchestrator/graphs/:id/preview/:previewId
  • GET /graph-job-orchestrator/templates
  • GET /graph-job-orchestrator/templates/previews/:previewId
  • POST /graph-job-orchestrator/templates/preview|confirm|bind
  • GET/POST /graph-job-orchestrator/subagents
  • POST /graph-job-orchestrator/planner/decision
  • GET /graph-job-orchestrator/runs/:runId/events
  • POST /graph-job-orchestrator/runs/:runId/retry|cancel|terminate

带目标的 /graphjob <目标> 会向当前主对话排入一次 Planner follow-up;空 /graphjob 只打开或创建空图。首次打开时生成的空手工占位图不会阻挡第一份模型草案;真正编辑过的手工锁定图会在任务图面板要求选择 saveAs 或 overwrite,选择通过 /planner/decision 提交,不会隐式改写当前模板。Planner 只接受当前会话的 roster、Graph JSON Schema 和受限 patch;候选图必须先 preview,再由用户确认。运行时输出严格投影为 text 和 artifactRefs,子会话 ID 只保存在运行状态和事件中。

POST /graph-job-orchestrator/subagents 按所选 Agent Profile 创建 Subagent。DSH provider 创建可继续对话的子会话;官方 Codex provider 使用 one-shot start,等待单轮结果后直接显示最终正文和脱敏诊断,不创建可继续的 Codex 会话。官方 provider 的 model、权限、MCP 和 Skills 由 Profile Bundle/原生 Codex 配置决定;只有 provider 明确公布动态能力时才允许按 Profile 传入对应字段。该入口默认过滤 skill 和 Graph Job 管理工具。Host 和客户端会输出 [graph-job-orchestrator] 前缀的脱敏诊断日志,只记录会话短标识、长度、状态、耗时和错误代码,不记录用户任务正文或 token。

模板 manifest 支持 scope: "workspace" | "global",默认是当前 workspace;workspace 模板不会出现在其他工作区的模板列表中。切换模板会创建新的 Graph Instance,不会把可变模板文件直接绑定为活动 Graph。

验证命令:

npm run check:graph-job
npm test
npm run catalog:validate
Push-Location market/graph-job-orchestrator
npm pack --dry-run --json
Pop-Location