| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2026-09-11 | 5.1 kB | |
| v1.19.0 source code.tar.gz | 2026-09-11 | 5.3 MB | |
| v1.19.0 source code.zip | 2026-09-11 | 5.8 MB | |
| Totals: 3 Items | 11.1 MB | 0 | |
Added
- Added an opt-in authoritative run store through
OrchestratorConfig.runStoreandRunTasksOptions.runStore; it gives a logical run a durable lifecycle record, an execution lease, and a monotonically increasing fencing token so one worker at a time advances the run and a worker that was taken over cannot write after the takeover. - Added the
RunStoreinterface, theMemoryStoreRunStoreadapter over anyMemoryStorewith compare-and-set, and theRunLedgerandRunLeaseHandlesurface for reading, cancelling, and resuming a run from outside its worker.
Changed
TeamConfig.maxConcurrencynow bounds the agent pool for that team's runs instead of being accepted and ignored. It intersects withOrchestratorConfig.maxConcurrency, and the smaller value wins, so a team can narrow its own pool but never widen it past the orchestrator ceiling. A team that set a cap below the orchestrator's was previously running at the orchestrator value and now runs at its own lower value; raise or remove the team cap to keep the previous throughput. A cap that is not an integer of at least 1 is reported as anINVALID_TEAM_MAX_CONCURRENCYwarning ononProgressand the orchestrator value applies.- With a run store configured, execution-ownership and run-lifecycle writes fail closed instead of following the best-effort semantics of checkpoint and telemetry writes: a fenced-out checkpoint write never reaches the store, a lost lease stops the run at the dispatch gate, and a worker that lost its lease reports the fence failure rather than success. Runs with no run store configured are unchanged.
- The
omaCLI default model forprovider: 'deepseek'is nowdeepseek-flash(DeepSeek-V4.1-Flash), replacingdeepseek-v4-flash. The retired name still resolves, and library users that pass an explicit model are unaffected. Provider docs, adapter JSDoc, the scaffolder env template, and the DeepSeek examples moved to the same name. - The DeepSeek adapter JSDoc no longer states that thinking runs at high effort. The adapter forwards whatever effort the caller passes and sets none itself; runtime behavior is unchanged.
- Corrected published JSDoc that misstated runtime behavior, including
onAgentStreamcoverage inrunTasks(),donestream-event payloads per layer, retryable-error classification, and theRedactingStoreexample constructor call. - The
delegate_to_agenterror returned when the pool has no free slot now points at both ceilings: "Increase maxConcurrency on the orchestrator or the team" rather than the orchestrator alone. Callers that match on that string should update it. - The
@open-multi-agent/corepackage description on npm was rewritten to lead with running in your own environment, approval gates, and a verifiable record of every run. - LICENSE now names Shenzhen YuanASI Technology Co., Ltd. alongside the open-multi-agent contributors, package READMEs close with a maintainer line, and the
authorfield in the published package.json files points at YuanASI. The MIT terms are unchanged.
Compatibility
- Runs that do not configure a run store keep the existing single-process checkpoint and restore behavior.
restore()is the resume command either way; with a run store it additionally makes a suspended record eligible and takes the lease before reconciling the approval ledger. - A team that set
maxConcurrencybelow the orchestrator value previously ran at the orchestrator value and now runs at its own lower cap. Raise or remove the team cap, or raiseOrchestratorConfig.maxConcurrency, to keep the previous parallelism; leave the field unset to keep the old behavior exactly. - Non-integer or less-than-1 team caps no longer pass through silently. They emit an
INVALID_TEAM_MAX_CONCURRENCYwarning ononProgressand fall back to the orchestrator value. This is a new code on the existingwarningevent; no event type was added. - The old
deepseek-v4-flashname still resolves, and library callers that pass an explicitmodelare unaffected. Cost maps, telemetry filters, or snapshot assertions that key on the model string should be reviewed because the CLI default now sendsdeepseek-flash. - No existing export was removed or renamed and every new config field is optional, so existing code keeps compiling and running unchanged unless it opts into the run store or relies on ignored team concurrency caps.
- The otel package changed only in shipped-file metadata; it has no public API or runtime change.
- The
.env.examplethat create-oma-app scaffolds now namesdeepseek-flashin the commented-outOMA_MODELline of its DeepSeek section; existing generated projects are not rewritten by this release.
Packages
@open-multi-agent/core:1.19.0@open-multi-agent/otel:0.1.4create-oma-app:0.8.5; generated starters pin core1.19.0
Thanks
- @aniruddhaadak80: normalize CRLF when checking README CSV columns in test (#596)
Install
:::bash
npm i @open-multi-agent/core@1.19.0
npm create oma-app@latest my-oma