paracosm 0.8.608 → 0.8.649

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -5,14 +5,14 @@
5
5
  <h1 align="center">PARACOSM</h1>
6
6
 
7
7
  <p align="center">
8
- <em>Counterfactual world simulations for AI agents. From a prompt to a structured world model to forked futures.</em>
8
+ <em>A structured world model for AI agents. Prompt to runnable world to forked futures.</em>
9
9
  </p>
10
10
 
11
11
  <p align="center">
12
12
  <a href="https://www.npmjs.com/package/paracosm"><img src="https://img.shields.io/npm/v/paracosm?style=flat-square&color=e8b44a&labelColor=14110e" alt="npm" /></a>
13
13
  <a href="https://github.com/framersai/paracosm/blob/master/LICENSE"><img src="https://img.shields.io/badge/license-Apache--2.0-e06530?style=flat-square&labelColor=14110e" alt="License" /></a>
14
14
  <a href="https://paracosm.agentos.sh/docs"><img src="https://img.shields.io/badge/docs-API%20Reference-4ca8a8?style=flat-square&labelColor=14110e" alt="Docs" /></a>
15
- <a href="https://agentos.sh"><img src="https://img.shields.io/badge/built%20on-AgentOS-e06530?style=flat-square&labelColor=14110e" alt="AgentOS" /></a>
15
+ <a href="https://agentos.sh/en"><img src="https://img.shields.io/badge/built%20on-AgentOS-e06530?style=flat-square&labelColor=14110e" alt="AgentOS" /></a>
16
16
  </p>
17
17
 
18
18
  <p align="center">
@@ -27,7 +27,7 @@
27
27
 
28
28
  Paracosm is a structured world model for AI agents. It compiles a JSON scenario draft (or a prompt, or an extracted document) into a runnable world, plays it through a deterministic kernel, and lets agents with HEXACO personality profiles decide turn by turn how the world unfolds. Snapshots persist on disk. Runs replay byte-for-byte. Any past turn can be forked with a different actor, a different seed, or a custom event, and the divergent branch streams alongside the trunk so the contrast is visible in the artifact, not promised in copy.
29
29
 
30
- The product is the contrast. Same compiled world, same crises, same kernel: swap one variable and the trajectory measurably moves. That is what `WorldModel.fork()` is for.
30
+ The product is the contrast. Same compiled world, same crises, same kernel: swap one variable and the trajectory measurably moves.
31
31
 
32
32
  ---
33
33
 
@@ -37,7 +37,7 @@ The product is the contrast. Same compiled world, same crises, same kernel: swap
37
37
  >
38
38
  > Jorge Luis Borges, *The Garden of Forking Paths*, 1941
39
39
 
40
- A counterfactual world simulation needs three things: a deterministic substrate that can be rewound, an LLM reasoner that can be replayed against the same state, and a contract for what state actually means. Paracosm carries all three. Snapshots are JSON, the kernel round-trips through `JSON.stringify`, and every fork resumes from the captured state without recomputing the prefix.
40
+ A world model that can be forked needs three things: a deterministic substrate that can be rewound, an LLM reasoner that can be replayed against the same state, and a contract for what state actually means. Paracosm carries all three. Snapshots are JSON, the kernel round-trips through `JSON.stringify`, and every fork resumes from the captured state without recomputing the prefix.
41
41
 
42
42
  ```typescript
43
43
  import { WorldModel } from 'paracosm/world-model';
@@ -192,16 +192,7 @@ The authoring contract is JSON because JSON validates, diffs, caches, and snapsh
192
192
  }
193
193
  ```
194
194
 
195
- Every scenario declares its own vocabulary via `labels.populationNoun` (plural), `labels.settlementNoun` (singular), and `labels.timeUnitNoun`. The dashboard, kernel, and progression hooks pick those up everywhere user-facing copy renders. Without overrides, paracosm falls back to `colonists` / `colony` / `tick`. A handful of working shapes:
196
-
197
- | Scenario | settlementNoun | populationNoun | timeUnitNoun |
198
- |-------------------|----------------|----------------|--------------|
199
- | Mars Genesis | colony | colonists | year |
200
- | Submarine patrol | habitat | crew | day |
201
- | Medieval kingdom | kingdom | subjects | year |
202
- | Corporate strategy| company | employees | quarter |
203
- | Generation ship | vessel | passengers | year |
204
- | Benchmark arena | session | agents | tick |
195
+ Every scenario declares its own vocabulary via `labels.populationNoun` (plural), `labels.settlementNoun` (singular), and `labels.timeUnitNoun`. The dashboard, kernel, and progression hooks pick those up everywhere user-facing copy renders. Without overrides, paracosm falls back to `colonists` / `colony` / `tick`.
205
196
 
206
197
  Time is unit-agnostic. `setup.defaultTimePerTurn` and `setup.defaultStartTime` are plain numbers; whether they represent years, quarters, hours, or ticks is decided by `timeUnitNoun`. The dashboard turn header reads `Quarter 5`, `Day 22`, or `Year 2043` straight from the label.
207
198
 
@@ -287,7 +278,7 @@ For non-TypeScript consumers, `npm run export:json-schema` emits `schema/run-art
287
278
 
288
279
  ## Digital twins: subjects and interventions
289
280
 
290
- For simulations that revolve around a single subject under a counterfactual intervention, paracosm exposes a `DigitalTwin` subpath plus `SubjectConfig` and `InterventionConfig` as first-class input primitives.
281
+ For simulations that revolve around a single subject under an intervention, paracosm exposes a `DigitalTwin` subpath plus `SubjectConfig` and `InterventionConfig` as first-class input primitives.
291
282
 
292
283
  ```typescript
293
284
  import { DigitalTwin } from 'paracosm/digital-twin';
@@ -479,6 +470,8 @@ curl -s -X POST http://localhost:3456/simulate \
479
470
 
480
471
  The body accepts either a pre-compiled `ScenarioPackage` or a raw scenario draft (auto-compiled server-side with optional `options.seedText` / `options.seedUrl` grounding). The response is `{ artifact, scenario, durationMs }`. Rate limiting and the 5 MiB body cap match `/setup`.
481
472
 
473
+ The dashboard server also exposes nine read-and-replay routes under `/api/v1/*` (list runs, fetch artifacts, re-execute, import). Wire-level reference: [`docs/HTTP_API.md`](docs/HTTP_API.md).
474
+
482
475
  ---
483
476
 
484
477
  ## Storage
@@ -536,15 +529,9 @@ The engine owns the chassis. The scenario owns the domain. The kernel handles st
536
529
 
537
530
  ---
538
531
 
539
- ## What paracosm is not
540
-
541
- - Not a generative visual world model. Sora, Genie 3, and World Labs Marble produce pixels or 3D scenes. Paracosm produces a structured `RunArtifact`: metrics, decisions, specialist notes, citations, forged tools.
542
- - Not a JEPA-style predictive-representation model. LeCun's AMI Labs trains neural representations from sensor streams. Paracosm composes a kernel with an LLM reasoner; no training pipeline.
543
- - Not a multi-agent task orchestration framework. LangGraph, AutoGen, CrewAI, and the OpenAI Agents SDK execute real tasks. Paracosm is a simulation; nothing leaves the run.
544
- - Not a bottom-up swarm intelligence simulator. MiroFish and OASIS simulate millions of emergent agents for aggregate prediction. Paracosm is top-down (one actor decides), runs on the order of 100 agents by design, and outputs a deterministic trajectory plus divergence across actors.
545
- - Not a generative-agents library. Stanford Generative Agents and Concordia build emergent social simulacra in open-ended sandboxes. Paracosm ships a deterministic turn loop, personality drift, runtime tool forging, and a universal result schema.
532
+ ## Background
546
533
 
547
- Paracosm sits in the lineage of structured world models ([Xing 2025](https://arxiv.org/abs/2507.05169), [ACM CSUR 2025](https://dl.acm.org/doi/full/10.1145/3746449)) and counterfactual world simulation ([Kirfel et al, 2025](https://link.springer.com/article/10.1007/s43681-025-00718-4)), and the LLM-world-model anchor closest to the implementation is [Yang et al, 2026](https://openreview.net/forum?id=XmYCERErcD). Full taxonomy mapping in [`docs/positioning/world-model-mapping.md`](docs/positioning/world-model-mapping.md).
534
+ Paracosm sits in the structured world model lineage ([Xing 2025](https://arxiv.org/abs/2507.05169), [ACM CSUR 2025](https://dl.acm.org/doi/full/10.1145/3746449)). The LLM-world-model implementation closest to it is [Yang et al, 2026](https://openreview.net/forum?id=XmYCERErcD), which evaluates LLM-based world models through policy verification, action proposal, and policy planning. Full taxonomy mapping in [`docs/positioning/world-model-mapping.md`](docs/positioning/world-model-mapping.md).
548
535
 
549
536
  ---
550
537
 
@@ -554,7 +541,7 @@ Paracosm sits in the lineage of structured world models ([Xing 2025](https://arx
554
541
  >
555
542
  > *SOMA*, Frictional Games, 2015
556
543
 
557
- Paracosm uses [AgentOS](https://agentos.sh) for agent orchestration, LLM dispatch, tool forging, and memory. The composition is what makes the runs feel inhabited rather than scripted: department heads remember, specialists invent tools mid-decision, and the LLM judge holds the line on safety before any forge enters the pipeline.
544
+ Paracosm uses [AgentOS](https://agentos.sh/en) for agent orchestration, LLM dispatch, tool forging, and memory. The composition is what makes the runs feel inhabited rather than scripted: department heads remember, specialists invent tools mid-decision, and the LLM judge holds the line on safety before any forge enters the pipeline.
558
545
 
559
546
  | AgentOS API | Used for |
560
547
  |------------------------------|-----------------------------------------------------------------------|
@@ -590,7 +577,7 @@ The open-source engine is the permanent foundation. The hosted product targets o
590
577
  | Landing page | [paracosm.agentos.sh](https://paracosm.agentos.sh) |
591
578
  | API docs | [paracosm.agentos.sh/docs](https://paracosm.agentos.sh/docs) |
592
579
  | npm | [npmjs.com/package/paracosm](https://www.npmjs.com/package/paracosm) |
593
- | AgentOS | [agentos.sh](https://agentos.sh) |
580
+ | AgentOS | [agentos.sh](https://agentos.sh/en) |
594
581
  | Discord | [wilds.ai/discord](https://wilds.ai/discord) |
595
582
 
596
583
  ## License
@@ -2273,7 +2273,7 @@ export function createMarsServer(options = {}) {
2273
2273
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="22" height="22" style="margin-right:8px;flex-shrink:0;display:block" role="img" aria-label="Paracosm"><style>.ph{animation:ph-p 4s ease-in-out infinite}.pg{animation:ph-g 4s ease-in-out infinite}@keyframes ph-p{0%,100%{opacity:1}50%{opacity:.75}}@keyframes ph-g{0%,100%{opacity:.06}50%{opacity:.15}}@media(prefers-reduced-motion:reduce){.ph,.pg{animation:none!important}}</style><line x1="32" y1="32" x2="37.63" y2="10.98" stroke="#f5f0e4" stroke-width="1.6" opacity=".5"/><line x1="32" y1="32" x2="53.02" y2="26.37" stroke="#f5f0e4" stroke-width="1.6" opacity=".5"/><line x1="32" y1="32" x2="47.39" y2="47.39" stroke="#f5f0e4" stroke-width="1.6" opacity=".5"/><line x1="32" y1="32" x2="26.37" y2="53.02" stroke="#f5f0e4" stroke-width="1.6" opacity=".5"/><line x1="32" y1="32" x2="10.98" y2="37.63" stroke="#f5f0e4" stroke-width="1.6" opacity=".5"/><line x1="32" y1="32" x2="16.61" y2="16.61" stroke="#f5f0e4" stroke-width="1.6" opacity=".5"/><line x1="37.63" y1="10.98" x2="47.39" y2="47.39" stroke="#f5f0e4" stroke-width="1.1" opacity=".18"/><line x1="53.02" y1="26.37" x2="26.37" y2="53.02" stroke="#f5f0e4" stroke-width="1.1" opacity=".18"/><line x1="47.39" y1="47.39" x2="10.98" y2="37.63" stroke="#f5f0e4" stroke-width="1.1" opacity=".18"/><line x1="26.37" y1="53.02" x2="16.61" y2="16.61" stroke="#f5f0e4" stroke-width="1.1" opacity=".18"/><line x1="10.98" y1="37.63" x2="37.63" y2="10.98" stroke="#f5f0e4" stroke-width="1.1" opacity=".18"/><line x1="16.61" y1="16.61" x2="53.02" y2="26.37" stroke="#f5f0e4" stroke-width="1.1" opacity=".18"/><circle class="pg" cx="32" cy="32" r="9.2" fill="#e8b44a"/><circle class="ph" cx="32" cy="32" r="5.12" fill="#e8b44a"/><circle cx="37.63" cy="10.98" r="3.52" fill="#e06530"/><circle cx="53.02" cy="26.37" r="3.52" fill="#e8b44a"/><circle cx="47.39" cy="47.39" r="3.52" fill="#4ca8a8"/><circle cx="26.37" cy="53.02" r="3.52" fill="#e06530"/><circle cx="10.98" cy="37.63" r="3.52" fill="#4ca8a8"/><circle cx="16.61" cy="16.61" r="3.52" fill="#e8b44a"/></svg>
2274
2274
  <span class="pdh-brand">PARA<span style="color:#e8b44a">COSM</span></span>
2275
2275
  </a>
2276
- <a href="https://agentos.sh" target="_blank" rel="noopener" class="pdh-tag">AGENTOS</a>
2276
+ <a href="https://agentos.sh/en" target="_blank" rel="noopener" class="pdh-tag">AGENTOS</a>
2277
2277
  <span class="pdh-sep">|</span>
2278
2278
  <span class="pdh-current">API Reference v${PARACOSM_VERSION}</span>
2279
2279
  </div>
@@ -2294,7 +2294,7 @@ export function createMarsServer(options = {}) {
2294
2294
  <a href="/docs">API Docs</a>
2295
2295
  <a href="https://github.com/framersai/paracosm" target="_blank" rel="noopener">GitHub</a>
2296
2296
  <a href="https://www.npmjs.com/package/paracosm" target="_blank" rel="noopener">npm</a>
2297
- <a href="https://agentos.sh" target="_blank" rel="noopener">AgentOS</a>
2297
+ <a href="https://agentos.sh/en" target="_blank" rel="noopener">AgentOS</a>
2298
2298
  <a href="https://wilds.ai/discord" target="_blank" rel="noopener">Discord</a>
2299
2299
  </div>
2300
2300
  <script>
@@ -2338,7 +2338,7 @@ export function createMarsServer(options = {}) {
2338
2338
  // Inject footer before </body>
2339
2339
  html = html.replace('</body>', `<div class="paracosm-docs-footer">
2340
2340
  <div class="pdf-links">
2341
- <a href="https://agentos.sh">agentos.sh</a>
2341
+ <a href="https://agentos.sh/en">agentos.sh</a>
2342
2342
  <a href="https://github.com/framersai/paracosm">GitHub</a>
2343
2343
  <a href="https://www.npmjs.com/package/paracosm">npm</a>
2344
2344
  <a href="https://frame.dev">Frame.dev</a>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "paracosm",
3
- "version": "0.8.608",
3
+ "version": "0.8.649",
4
4
  "description": "Prompt/document/URL-grounded structured world model for AI agents: typed ScenarioPackages, deterministic kernels, HEXACO actors, LLM events, runtime tool forging, and reproducible counterfactual RunArtifacts. Built on AgentOS.",
5
5
  "type": "module",
6
6
  "main": "dist/engine/index.js",
@@ -82,11 +82,11 @@
82
82
  "leader:b": "npx tsx src/cli/run-b.ts"
83
83
  },
84
84
  "dependencies": {
85
- "@framers/agentos": "^0.5.2",
85
+ "@framers/agentos": "^0.5.12",
86
86
  "@framers/sql-storage-adapter": "^0.6.3",
87
87
  "better-sqlite3": "^12.9.0",
88
- "pdfjs-dist": "^4.10.38",
89
- "zod": "^4.3.6"
88
+ "pdfjs-dist": "^5.7.284",
89
+ "zod": "^4.4.1"
90
90
  },
91
91
  "devDependencies": {
92
92
  "@types/node": "^25.6.0",
@@ -125,5 +125,5 @@
125
125
  "type": "git",
126
126
  "url": "https://github.com/framersai/paracosm"
127
127
  },
128
- "homepage": "https://agentos.sh"
128
+ "homepage": "https://agentos.sh/en"
129
129
  }