sneakoscope 1.18.6 → 1.18.7
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 +32 -13
- package/crates/sks-core/Cargo.lock +1 -1
- package/crates/sks-core/Cargo.toml +1 -1
- package/crates/sks-core/src/main.rs +1 -1
- package/dist/.sks-build-stamp.json +4 -4
- package/dist/bin/sks.js +1 -1
- package/dist/build-manifest.json +27 -9
- package/dist/cli/command-registry.js +2 -2
- package/dist/commands/codex-app.js +17 -2
- package/dist/commands/codex.js +3 -2
- package/dist/commands/dfix.d.ts +14 -0
- package/dist/commands/image-ux-review.d.ts +27 -0
- package/dist/commands/ppt.d.ts +20 -0
- package/dist/commands/tmux.d.ts +2 -0
- package/dist/core/agents/agent-codex-cockpit.d.ts +3 -0
- package/dist/core/agents/agent-command-surface.d.ts +5 -0
- package/dist/core/agents/agent-command-surface.js +7 -2
- package/dist/core/agents/agent-merge-coordinator.d.ts +14 -0
- package/dist/core/agents/agent-merge-coordinator.js +47 -0
- package/dist/core/agents/agent-orchestrator.d.ts +20 -0
- package/dist/core/agents/agent-orchestrator.js +31 -3
- package/dist/core/agents/agent-patch-apply-worker.d.ts +26 -0
- package/dist/core/agents/agent-patch-apply-worker.js +119 -0
- package/dist/core/agents/agent-patch-proof.d.ts +18 -0
- package/dist/core/agents/agent-patch-proof.js +21 -0
- package/dist/core/agents/agent-patch-queue.d.ts +24 -0
- package/dist/core/agents/agent-patch-queue.js +55 -0
- package/dist/core/agents/agent-patch-schema.d.ts +23 -0
- package/dist/core/agents/agent-patch-schema.js +41 -0
- package/dist/core/agents/agent-proof-evidence.d.ts +7 -0
- package/dist/core/agents/agent-proof-evidence.js +12 -1
- package/dist/core/agents/agent-runner-codex-exec.js +23 -15
- package/dist/core/agents/agent-schema.d.ts +7 -1
- package/dist/core/agents/route-collaboration-ledger.d.ts +20 -0
- package/dist/core/codex/codex-0-134-compat.d.ts +76 -0
- package/dist/core/codex/codex-0-134-compat.js +194 -0
- package/dist/core/codex/managed-proxy-env.d.ts +14 -0
- package/dist/core/codex/managed-proxy-env.js +50 -0
- package/dist/core/codex-adapter.js +2 -0
- package/dist/core/codex-app.d.ts +6 -1
- package/dist/core/codex-app.js +111 -8
- package/dist/core/codex-compat/codex-compat-report.d.ts +90 -4
- package/dist/core/codex-compat/codex-compat-report.js +39 -8
- package/dist/core/codex-compat/codex-version-policy.d.ts +9 -3
- package/dist/core/codex-compat/codex-version-policy.js +21 -12
- package/dist/core/codex-compat/codex-version.d.ts +2 -0
- package/dist/core/codex-compat/codex-version.js +4 -1
- package/dist/core/commands/basic-cli.d.ts +2 -0
- package/dist/core/commands/computer-use-command.js +31 -2
- package/dist/core/commands/dfix-command.d.ts +14 -0
- package/dist/core/commands/dfix-command.js +4 -0
- package/dist/core/commands/image-ux-review-command.d.ts +27 -0
- package/dist/core/commands/image-ux-review-command.js +41 -8
- package/dist/core/commands/mad-sks-command.js +65 -18
- package/dist/core/commands/ppt-command.d.ts +20 -0
- package/dist/core/commands/qa-loop-command.js +74 -10
- package/dist/core/commands/research-command.js +8 -3
- package/dist/core/commands/run-command.js +3 -3
- package/dist/core/commands/team-command.js +14 -4
- package/dist/core/computer-use-status.js +5 -5
- package/dist/core/decision-contract.js +2 -1
- package/dist/core/dfix.d.ts +14 -0
- package/dist/core/dfix.js +14 -0
- package/dist/core/feature-registry.js +10 -2
- package/dist/core/fsx.d.ts +1 -1
- package/dist/core/fsx.js +1 -1
- package/dist/core/hermes.js +12 -0
- package/dist/core/hooks-runtime.js +1 -1
- package/dist/core/image-ux-review/imagegen-adapter.js +16 -15
- package/dist/core/image-ux-review/recapture.js +9 -3
- package/dist/core/image-ux-review.d.ts +6 -0
- package/dist/core/image-ux-review.js +18 -9
- package/dist/core/imagegen/imagegen-capability.d.ts +21 -0
- package/dist/core/imagegen/imagegen-capability.js +50 -16
- package/dist/core/init.js +14 -15
- package/dist/core/mad-sks/permission-model.d.ts +3 -0
- package/dist/core/mad-sks/permission-model.js +3 -0
- package/dist/core/mcp/mcp-0-134-policy.d.ts +37 -0
- package/dist/core/mcp/mcp-0-134-policy.js +226 -0
- package/dist/core/openclaw.js +13 -1
- package/dist/core/pipeline-internals/runtime-core.js +11 -9
- package/dist/core/pipeline-internals/runtime-gates.js +9 -6
- package/dist/core/proof/route-finalizer.js +6 -5
- package/dist/core/proof/runtime-truth-matrix.d.ts +1 -1
- package/dist/core/proof/runtime-truth-matrix.js +23 -5
- package/dist/core/qa-loop.d.ts +4 -2
- package/dist/core/qa-loop.js +27 -17
- package/dist/core/questions.d.ts +1 -1
- package/dist/core/questions.js +3 -3
- package/dist/core/recallpulse.js +1 -1
- package/dist/core/routes.d.ts +9 -2
- package/dist/core/routes.js +47 -17
- package/dist/core/source-intelligence/codex-history-search.d.ts +26 -0
- package/dist/core/source-intelligence/codex-history-search.js +71 -0
- package/dist/core/tmux-ui.d.ts +2 -0
- package/dist/core/triwiki-attention.js +2 -2
- package/dist/core/version.d.ts +1 -1
- package/dist/core/version.js +1 -1
- package/dist/scripts/release-parallel-check.js +13 -0
- package/package.json +16 -1
package/README.md
CHANGED
|
@@ -6,11 +6,17 @@ Sneakoscope Codex (`sks`) is a Codex CLI/App harness that makes repeatable Codex
|
|
|
6
6
|
|
|
7
7
|
SKS does not try to clone every other harness. It focuses on one thing: making Codex work auditable, visual-evidence-bound, safety-gated, and reproducible through Completion Proof.
|
|
8
8
|
|
|
9
|
+
## LLM Init Prompt for Hermes / OpenClaw Agent Builders
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
Set up this agent project with Sneakoscope Codex. Use [[mandarange/Sneakoscope-Codex](https://github.com/mandarange/Sneakoscope-Codex)] as the repo reference and [npm i -g sneakoscope] as the recommended global install command, then run the appropriate `sks` setup, doctor, Codex App, and proof checks for this repo. Keep generated SKS state out of source control unless documented, and record every version-facing change in CHANGELOG.md.
|
|
13
|
+
```
|
|
14
|
+
|
|
9
15
|

|
|
10
16
|
|
|
11
17
|
## Current Release
|
|
12
18
|
|
|
13
|
-
SKS **1.18.
|
|
19
|
+
SKS **1.18.7** closes the Codex 0.134 ultra-stability loop: the release matrix now covers `--profile` as the primary selector, bounded local Codex history search, managed proxy propagation, MCP 0.134 environment/OAuth/schema/readOnlyHint policy, proof-safe parallel agent patches, runtime truth P6 rows, the 1.18.7 release gate audit, MAD-SKS as general scoped permission widening, and gpt-image-2 imagegen as a core evidence capability.
|
|
14
20
|
|
|
15
21
|
```bash
|
|
16
22
|
sks mad-sks plan --target-root <path> --json
|
|
@@ -30,6 +36,13 @@ npm run agent:ast-aware-work-graph
|
|
|
30
36
|
npm run proof:fake-vs-real-policy
|
|
31
37
|
npm run proof:fake-real-policy-v2
|
|
32
38
|
npm run release:runtime-truth-matrix
|
|
39
|
+
npm run codex:0.134-official-compat
|
|
40
|
+
npm run codex:profile-primary
|
|
41
|
+
npm run codex:managed-proxy-env
|
|
42
|
+
npm run mcp:0.134-modernization
|
|
43
|
+
npm run source-intelligence:codex-history-search
|
|
44
|
+
npm run agent:parallel-write-kernel
|
|
45
|
+
npm run release:gate-existence-audit
|
|
33
46
|
npm run route:blackbox-realism
|
|
34
47
|
npm run release:real-check
|
|
35
48
|
npm run agent:backfill-route-blackbox
|
|
@@ -37,7 +50,7 @@ npm run team:actual-route-backfill
|
|
|
37
50
|
npm run release:readiness
|
|
38
51
|
```
|
|
39
52
|
|
|
40
|
-
Detailed release history lives in [CHANGELOG.md](CHANGELOG.md). Current release gate status lives in [docs/release-readiness.md](docs/release-readiness.md).
|
|
53
|
+
Detailed release history lives in [CHANGELOG.md](CHANGELOG.md); every version-facing change should be recorded there before release. Current release gate status lives in [docs/release-readiness.md](docs/release-readiness.md).
|
|
41
54
|
|
|
42
55
|
## Documentation
|
|
43
56
|
|
|
@@ -74,7 +87,7 @@ Detailed release history lives in [CHANGELOG.md](CHANGELOG.md). Current release
|
|
|
74
87
|
- Fake vs real proof policy: [docs/fake-vs-real-proof-policy.md](docs/fake-vs-real-proof-policy.md)
|
|
75
88
|
- Runtime truth matrix: [docs/runtime-truth-matrix.md](docs/runtime-truth-matrix.md)
|
|
76
89
|
- Warp MAD tmux lanes: [docs/warp-mad-tmux-lanes.md](docs/warp-mad-tmux-lanes.md)
|
|
77
|
-
- Migration 1.18.
|
|
90
|
+
- Migration 1.18.6 to 1.18.7: [docs/migration-1.18.6-to-1.18.7.md](docs/migration-1.18.6-to-1.18.7.md)
|
|
78
91
|
- Codex official Goal mode: [docs/codex-official-goal-mode.md](docs/codex-official-goal-mode.md)
|
|
79
92
|
- Release parallel full coverage: [docs/release-parallel-full-coverage.md](docs/release-parallel-full-coverage.md)
|
|
80
93
|
- Priority closure P0-P4: [docs/priority-closure-p0-p4.md](docs/priority-closure-p0-p4.md)
|
|
@@ -94,6 +107,8 @@ Detailed release history lives in [CHANGELOG.md](CHANGELOG.md). Current release
|
|
|
94
107
|
|
|
95
108
|
## 60-second start
|
|
96
109
|
|
|
110
|
+
Recommended install: use the global npm package so `sks` and the Codex App `$` skills are refreshed together.
|
|
111
|
+
|
|
97
112
|
```sh
|
|
98
113
|
npm i -g sneakoscope
|
|
99
114
|
sks root
|
|
@@ -117,7 +132,7 @@ sks rust smoke --json
|
|
|
117
132
|
|
|
118
133
|
## Install Options
|
|
119
134
|
|
|
120
|
-
|
|
135
|
+
Recommended: install globally with `npm i -g sneakoscope`, then run `sks` from either a project or any global shell location:
|
|
121
136
|
|
|
122
137
|
```sh
|
|
123
138
|
npm i -g sneakoscope
|
|
@@ -125,7 +140,7 @@ sks root
|
|
|
125
140
|
sks doctor
|
|
126
141
|
```
|
|
127
142
|
|
|
128
|
-
`npm i -g sneakoscope` automatically refreshes the `sks` command shim, global Codex App `$` skills, and SKS bootstrap surface. When the install is run from a project, postinstall bootstraps that project. When it is run outside a repo/project marker, postinstall bootstraps the per-user global runtime root instead of writing `.sneakoscope` into a random current directory. `sks root` tells you which root SKS will use.
|
|
143
|
+
`npm i -g sneakoscope` is the recommended install path. It automatically refreshes the `sks` command shim, global Codex App `$` skills, and SKS bootstrap surface. When the install is run from a project, postinstall bootstraps that project. When it is run outside a repo/project marker, postinstall bootstraps the per-user global runtime root instead of writing `.sneakoscope` into a random current directory. `sks root` tells you which root SKS will use.
|
|
129
144
|
|
|
130
145
|
If you only want a one-shot run without keeping `sks` installed globally:
|
|
131
146
|
|
|
@@ -186,7 +201,7 @@ The default `sks` runtime checks npm for newer `sneakoscope` and `@openai/codex`
|
|
|
186
201
|
|
|
187
202
|
### Global Install
|
|
188
203
|
|
|
189
|
-
Use this when you want `sks` available from any repo:
|
|
204
|
+
Use this recommended path when you want `sks` available from any repo:
|
|
190
205
|
|
|
191
206
|
```sh
|
|
192
207
|
npm i -g sneakoscope
|
|
@@ -280,7 +295,7 @@ sks codex-lb repair
|
|
|
280
295
|
sks
|
|
281
296
|
```
|
|
282
297
|
|
|
283
|
-
Bare `sks` can also prompt for codex-lb auth; SKS stores the base URL/key in `~/.codex/sks-codex-lb.env`, writes the codex-lb Codex CLI / IDE Extension provider block into `~/.codex/config.toml` for Codex App routing, loads the provider env key for tmux launches, and syncs the macOS user launch environment so the Codex App can see `CODEX_LB_API_KEY` after restart. If the provider block disappears but the stored env file is still recoverable, bare `sks`, npm postinstall upgrades, `sks doctor --fix`, and `sks codex-lb repair` restore it with `env_key = "CODEX_LB_API_KEY"`, `supports_websockets = true`, and `requires_openai_auth = false`;
|
|
298
|
+
Bare `sks` can also prompt for codex-lb auth; SKS stores the base URL/key in `~/.codex/sks-codex-lb.env`, writes the codex-lb Codex CLI / IDE Extension provider block into `~/.codex/config.toml` for Codex App routing, loads the provider env key for tmux launches, and syncs the macOS user launch environment so the Codex App can see `CODEX_LB_API_KEY` after restart. If the provider block disappears but the stored env file is still recoverable, bare `sks`, npm postinstall upgrades, `sks doctor --fix`, and `sks codex-lb repair` restore it with `env_key = "CODEX_LB_API_KEY"`, `supports_websockets = true`, and `requires_openai_auth = false`; imagegen checks may record this provider as configured codex-lb routing, but it is not accepted as official Codex App `$imagegen` evidence. If an older SKS release left the codex-lb dashboard key only in the shared Codex `auth.json` login cache, SKS migrates that key back into `~/.codex/sks-codex-lb.env` when a codex-lb provider or env base URL is already recoverable. It does not rewrite the shared Codex `auth.json` login cache by default; set `SKS_CODEX_LB_SYNC_CODEX_LOGIN=1` only if you intentionally want the old API-key login-cache behavior. When codex-lb is active, SKS opens a fresh `sks-codex-lb-*` tmux session and sweeps older detached codex-lb sessions for the same repo before launch so stale Responses API chains are not reused. Configured launch paths run a response-chain health check. `previous_response_not_found` is treated as a stateless-LB warning and keeps codex-lb active. Hard failures are surfaced to the user; SKS only bypasses codex-lb when the user chooses OAuth fallback or `SKS_CODEX_LB_AUTOBYPASS=1` is set.
|
|
284
299
|
|
|
285
300
|
If codex-lb provider auth drifts after launch/reinstall, run `sks doctor --fix` or `sks codex-lb repair`; to replace it, run `sks codex-lb reconfigure --host <domain> --api-key <key>`.
|
|
286
301
|
|
|
@@ -317,10 +332,10 @@ This flips `model_provider` away from `codex-lb` in the top-level Codex App conf
|
|
|
317
332
|
|
|
318
333
|
```sh
|
|
319
334
|
sks --mad
|
|
320
|
-
sks --mad --yes
|
|
335
|
+
sks --mad --allow-package-install --allow-service-control --allow-network --yes
|
|
321
336
|
```
|
|
322
337
|
|
|
323
|
-
This syncs existing codex-lb provider auth, creates/uses the `sks-mad-high`
|
|
338
|
+
This syncs existing codex-lb provider auth, creates/uses the `sks-mad-high` high-power maintenance profile, opens the MAD-SKS permission gate for that tmux run, and launches a single Codex CLI pane. Bare `sks --mad` grants target-project file and shell scope only; add explicit `--allow-*` flags for packages, services, network, Computer Use, browser use, generated assets, file permissions, DB writes, or other high-risk scopes. MAD-SKS is not a DB-only unlock: it is explicit user authorization to widen approved target-project scopes. The session recreates the named session so stale split-pane MAD sessions collapse back to one pane. Catastrophic database wipe/all-row/project-management safeguards remain active, and the pipeline contract still forbids unrequested fallback implementation code.
|
|
324
339
|
|
|
325
340
|
Before launching, SKS checks npm for a newer `sneakoscope`; answer `y` to update or `n` to continue. Use `--yes` to approve missing dependency installs automatically.
|
|
326
341
|
|
|
@@ -364,6 +379,7 @@ Effort is assigned per agent. Simple read-only/docs slices can run low, ordinary
|
|
|
364
379
|
```sh
|
|
365
380
|
sks qa-loop prepare "http://localhost:3000"
|
|
366
381
|
sks qa-loop run latest --max-cycles 2
|
|
382
|
+
sks codex-app chrome-extension --json
|
|
367
383
|
sks goal create "persist this migration workflow"
|
|
368
384
|
sks research prepare "evaluate this approach"
|
|
369
385
|
sks research run latest --max-cycles 12 --cycle-timeout-minutes 120
|
|
@@ -397,7 +413,7 @@ sks code-structure scan --json
|
|
|
397
413
|
|
|
398
414
|
### Ambiguity Questions
|
|
399
415
|
|
|
400
|
-
Clarification asks only for ambiguity that changes execution; predictable defaults are inferred and sealed. `sks skill-dream` records cheap counters and periodically writes advisory skill reports. `$Goal` controls native `/goal` persistence without replacing the selected execution route. `$Computer-Use` / `$CU` is
|
|
416
|
+
Clarification asks only for ambiguity that changes execution; predictable defaults are inferred and sealed. `sks skill-dream` records cheap counters and periodically writes advisory skill reports. `$Goal` controls native `/goal` persistence without replacing the selected execution route. Web, browser, localhost, website, webapp, and web-based app verification use the official Codex Chrome Extension path first; if it is not installed/enabled, SKS stops and asks the user to set it up before resuming. `$Computer-Use` / `$CU` is now reserved for native macOS, desktop-app, OS-settings, and non-web visual work.
|
|
401
417
|
|
|
402
418
|
### Create A Presentation
|
|
403
419
|
|
|
@@ -419,6 +435,7 @@ After installing, run:
|
|
|
419
435
|
```sh
|
|
420
436
|
sks bootstrap
|
|
421
437
|
sks codex-app check
|
|
438
|
+
sks codex-app chrome-extension --json
|
|
422
439
|
sks codex-app remote-control --status
|
|
423
440
|
sks dollar-commands
|
|
424
441
|
```
|
|
@@ -429,9 +446,11 @@ For headless remotely controllable Codex App/server sessions on Codex CLI 0.130.
|
|
|
429
446
|
sks codex-app remote-control -- --help
|
|
430
447
|
```
|
|
431
448
|
|
|
432
|
-
`sks codex-app check` reports whether the installed Codex CLI is new enough, whether the required app flags are visible, whether Fast/speed-selector config is unlocked, whether Codex App Git Actions can use Commit, Push, Commit and Push, and PR flows, and whether installed OpenAI default plugins such as Browser, Chrome, Computer Use, Documents, Presentations, Spreadsheets, and LaTeX are enabled. When codex-lb is configured, SKS keeps it selected as the top-level Codex App provider while still preserving required app flags and plugin settings. Codex CLI 0.130.0+ app-server/remote-control threads can pick up config changes live; older CLI/TUI sessions should still be restarted after `.codex/config.toml` or MCP/plugin changes.
|
|
449
|
+
`sks codex-app check` reports whether the installed Codex CLI is new enough, whether the required app flags are visible, whether Fast/speed-selector config is unlocked, whether Codex App Git Actions can use Commit, Push, Commit and Push, and PR flows, whether the Codex Chrome Extension path is ready for web/browser/webapp verification, and whether installed OpenAI default plugins such as Browser, Chrome, Computer Use, Documents, Presentations, Spreadsheets, and LaTeX are enabled. `sks codex-app chrome-extension --json` is the rapid preflight for web QA/UX/browser routes. When codex-lb is configured, SKS keeps it selected as the top-level Codex App provider while still preserving required app flags and plugin settings. Codex CLI 0.130.0+ app-server/remote-control threads can pick up config changes live; older CLI/TUI sessions should still be restarted after `.codex/config.toml` or MCP/plugin changes.
|
|
450
|
+
|
|
451
|
+
For web-related verification, SKS follows the official Codex Chrome Extension setup path first: https://developers.openai.com/codex/app/chrome-extension. `$QA-LOOP`, `$UX-Review`, `$Image-UX-Review`, browser smoke, authenticated web checks, localhost checks, and web visual review must halt quickly if that extension is missing or disabled. Only after the user says the extension setup is complete should the pipeline resume. Codex Computer Use is for native Mac/non-web targets only; it must not be used as browser/web-app verification evidence.
|
|
433
452
|
|
|
434
|
-
|
|
453
|
+
Imagegen is a core SKS capability, not a decorative add-on. `$Image-UX-Review`, `$UX-Review`, `$Visual-Review`, `$UI-UX-Review`, and PPT generated-review paths require real Codex App `$imagegen`/`gpt-image-2` output before full visual verification can pass. For newest-model image requests, prompts should say "Use ChatGPT Images 2.0 / GPT Image 2.0 with gpt-image-2" while still invoking Codex App `$imagegen` when live generation is needed. Use `imagegen-source-scout` when current official docs plus X/social prompt-workflow signals are needed; social sources are prompt heuristics only, not capability or evidence specs. `npm run imagegen:capability` checks that the official Codex App imagegen surface is visible and records that capability detection is not output proof; OpenAI API, Responses image-generation, codex-lb, or `CODEX_LB_API_KEY` fallbacks are non-Codex paths and do not satisfy Codex App generated-image evidence unless a separate API fallback task is explicitly requested. The README architecture asset uses the same rule: run `npm run imagegen:readme-architecture:prompt` to print/write the official prompt, generate the image in Codex App `$imagegen`, then rerun `npm run imagegen:readme-architecture -- --output <path>` after Codex App creates a real gpt-image-2 output. When exactly one current generated_images candidate exists after the prompt, `npm run imagegen:readme-architecture -- --auto-pick-latest` can select it automatically. To let the verifier wait while Codex App writes the file, use `npm run imagegen:readme-architecture -- --wait-ms <milliseconds>`; it still accepts only one current candidate under `$CODEX_HOME/generated_images`. Env forms such as `SKS_CODEX_APP_IMAGEGEN_OUTPUT=<path>` remain supported for automation. Use the selected file directly under `$CODEX_HOME/generated_images`; moved or copied files are not accepted as provenance evidence. Disabled or missing `image_generation` remains a blocker that `sks codex-app check`, `npm run imagegen:capability`, and selftest cover.
|
|
435
454
|
|
|
436
455
|
Then open Codex App and use prompt commands directly in the chat. Examples:
|
|
437
456
|
|
|
@@ -579,7 +598,7 @@ sks codex-app check
|
|
|
579
598
|
codex mcp list
|
|
580
599
|
```
|
|
581
600
|
|
|
582
|
-
Codex App workflows need the app installed.
|
|
601
|
+
Codex App workflows need the app installed. Web/browser evidence requires the Codex Chrome Extension path, native Mac/non-web visual evidence requires first-party Codex Computer Use, and generated raster/image-review evidence requires real `$imagegen`/`gpt-image-2` output. After setup/upgrade, start a fresh thread so Codex reloads plugin tools.
|
|
583
602
|
|
|
584
603
|
### Codex App commit/push is blocked
|
|
585
604
|
|
|
@@ -4,7 +4,7 @@ use std::io::{self, Read, Seek, SeekFrom};
|
|
|
4
4
|
fn main() {
|
|
5
5
|
let mut args = std::env::args().skip(1);
|
|
6
6
|
match args.next().as_deref() {
|
|
7
|
-
Some("--version") => println!("sks-rs 1.18.
|
|
7
|
+
Some("--version") => println!("sks-rs 1.18.7"),
|
|
8
8
|
Some("compact-info") => {
|
|
9
9
|
let mut input = String::new();
|
|
10
10
|
let _ = io::stdin().read_to_string(&mut input);
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema": "sks.dist-build-stamp.v1",
|
|
3
3
|
"package_name": "sneakoscope",
|
|
4
|
-
"package_version": "1.18.
|
|
5
|
-
"source_digest": "
|
|
6
|
-
"source_file_count":
|
|
7
|
-
"built_at_source_time":
|
|
4
|
+
"package_version": "1.18.7",
|
|
5
|
+
"source_digest": "49e153f303c7d5abf79e2f2fe77ecfd9215172f34b2fb944fd34095aa9bf638c",
|
|
6
|
+
"source_file_count": 1466,
|
|
7
|
+
"built_at_source_time": 1779875860601
|
|
8
8
|
}
|
package/dist/bin/sks.js
CHANGED
package/dist/build-manifest.json
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema": "sks.dist-build.v2",
|
|
3
|
-
"version": "1.18.
|
|
4
|
-
"package_version": "1.18.
|
|
3
|
+
"version": "1.18.7",
|
|
4
|
+
"package_version": "1.18.7",
|
|
5
5
|
"typescript": true,
|
|
6
6
|
"mjs_runtime_files": 0,
|
|
7
|
-
"compiled_file_count":
|
|
8
|
-
"compiled_js_count":
|
|
9
|
-
"compiled_dts_count":
|
|
10
|
-
"source_digest": "
|
|
11
|
-
"source_file_count":
|
|
12
|
-
"source_files_hash": "
|
|
13
|
-
"source_list_hash": "
|
|
7
|
+
"compiled_file_count": 896,
|
|
8
|
+
"compiled_js_count": 448,
|
|
9
|
+
"compiled_dts_count": 448,
|
|
10
|
+
"source_digest": "49e153f303c7d5abf79e2f2fe77ecfd9215172f34b2fb944fd34095aa9bf638c",
|
|
11
|
+
"source_file_count": 1466,
|
|
12
|
+
"source_files_hash": "743d83c31ee39e65ac8d73c42993b5baffed6474210ec913259194ca1e58900f",
|
|
13
|
+
"source_list_hash": "743d83c31ee39e65ac8d73c42993b5baffed6474210ec913259194ca1e58900f",
|
|
14
14
|
"src_mjs_runtime_files": 0,
|
|
15
15
|
"dist_stamp_schema": "sks.dist-build-stamp.v1",
|
|
16
16
|
"files": [
|
|
@@ -214,12 +214,22 @@
|
|
|
214
214
|
"core/agents/agent-ledger-schemas.js",
|
|
215
215
|
"core/agents/agent-lifecycle.d.ts",
|
|
216
216
|
"core/agents/agent-lifecycle.js",
|
|
217
|
+
"core/agents/agent-merge-coordinator.d.ts",
|
|
218
|
+
"core/agents/agent-merge-coordinator.js",
|
|
217
219
|
"core/agents/agent-message-bus.d.ts",
|
|
218
220
|
"core/agents/agent-message-bus.js",
|
|
219
221
|
"core/agents/agent-orchestrator.d.ts",
|
|
220
222
|
"core/agents/agent-orchestrator.js",
|
|
221
223
|
"core/agents/agent-output-validator.d.ts",
|
|
222
224
|
"core/agents/agent-output-validator.js",
|
|
225
|
+
"core/agents/agent-patch-apply-worker.d.ts",
|
|
226
|
+
"core/agents/agent-patch-apply-worker.js",
|
|
227
|
+
"core/agents/agent-patch-proof.d.ts",
|
|
228
|
+
"core/agents/agent-patch-proof.js",
|
|
229
|
+
"core/agents/agent-patch-queue.d.ts",
|
|
230
|
+
"core/agents/agent-patch-queue.js",
|
|
231
|
+
"core/agents/agent-patch-schema.d.ts",
|
|
232
|
+
"core/agents/agent-patch-schema.js",
|
|
223
233
|
"core/agents/agent-persona.d.ts",
|
|
224
234
|
"core/agents/agent-persona.js",
|
|
225
235
|
"core/agents/agent-plan.d.ts",
|
|
@@ -358,8 +368,12 @@
|
|
|
358
368
|
"core/codex-lb/codex-lb-setup.js",
|
|
359
369
|
"core/codex-model-guard.d.ts",
|
|
360
370
|
"core/codex-model-guard.js",
|
|
371
|
+
"core/codex/codex-0-134-compat.d.ts",
|
|
372
|
+
"core/codex/codex-0-134-compat.js",
|
|
361
373
|
"core/codex/codex-web-search-adapter.d.ts",
|
|
362
374
|
"core/codex/codex-web-search-adapter.js",
|
|
375
|
+
"core/codex/managed-proxy-env.d.ts",
|
|
376
|
+
"core/codex/managed-proxy-env.js",
|
|
363
377
|
"core/codex/official-goal-mode.d.ts",
|
|
364
378
|
"core/codex/official-goal-mode.js",
|
|
365
379
|
"core/commands/agent-command.d.ts",
|
|
@@ -614,6 +628,8 @@
|
|
|
614
628
|
"core/mad-sks/write-guard.js",
|
|
615
629
|
"core/managed-paths.d.ts",
|
|
616
630
|
"core/managed-paths.js",
|
|
631
|
+
"core/mcp/mcp-0-134-policy.d.ts",
|
|
632
|
+
"core/mcp/mcp-0-134-policy.js",
|
|
617
633
|
"core/mcp/xai-mcp-detector.d.ts",
|
|
618
634
|
"core/mcp/xai-mcp-detector.js",
|
|
619
635
|
"core/mcp/xai-search-adapter.d.ts",
|
|
@@ -773,6 +789,8 @@
|
|
|
773
789
|
"core/session/project-namespace.js",
|
|
774
790
|
"core/skill-forge.d.ts",
|
|
775
791
|
"core/skill-forge.js",
|
|
792
|
+
"core/source-intelligence/codex-history-search.d.ts",
|
|
793
|
+
"core/source-intelligence/codex-history-search.js",
|
|
776
794
|
"core/source-intelligence/source-intelligence-policy.d.ts",
|
|
777
795
|
"core/source-intelligence/source-intelligence-policy.js",
|
|
778
796
|
"core/source-intelligence/source-intelligence-proof.d.ts",
|
|
@@ -122,8 +122,8 @@ export const COMMANDS = {
|
|
|
122
122
|
'ux-review': entry('labs', 'Alias for image UX review', 'dist/core/commands/image-ux-review-command.js', commandArgsCommand(() => import('../core/commands/image-ux-review-command.js'), 'imageUxReviewCommand', 'dist/core/commands/image-ux-review-command.js')),
|
|
123
123
|
'visual-review': entry('labs', 'Alias for image UX review', 'dist/core/commands/image-ux-review-command.js', commandArgsCommand(() => import('../core/commands/image-ux-review-command.js'), 'imageUxReviewCommand', 'dist/core/commands/image-ux-review-command.js')),
|
|
124
124
|
'ui-ux-review': entry('labs', 'Alias for image UX review', 'dist/core/commands/image-ux-review-command.js', commandArgsCommand(() => import('../core/commands/image-ux-review-command.js'), 'imageUxReviewCommand', 'dist/core/commands/image-ux-review-command.js')),
|
|
125
|
-
'computer-use': entry('beta', 'Record Computer Use visual evidence', 'dist/core/commands/computer-use-command.js', commandArgsCommand(() => import('../core/commands/computer-use-command.js'), 'computerUseCommand', 'dist/core/commands/computer-use-command.js')),
|
|
126
|
-
cu: entry('beta', 'Alias for Computer Use', 'dist/core/commands/computer-use-command.js', commandArgsCommand(() => import('../core/commands/computer-use-command.js'), 'computerUseCommand', 'dist/core/commands/computer-use-command.js')),
|
|
125
|
+
'computer-use': entry('beta', 'Record native Mac/non-web Computer Use visual evidence', 'dist/core/commands/computer-use-command.js', commandArgsCommand(() => import('../core/commands/computer-use-command.js'), 'computerUseCommand', 'dist/core/commands/computer-use-command.js')),
|
|
126
|
+
cu: entry('beta', 'Alias for native Computer Use', 'dist/core/commands/computer-use-command.js', commandArgsCommand(() => import('../core/commands/computer-use-command.js'), 'computerUseCommand', 'dist/core/commands/computer-use-command.js')),
|
|
127
127
|
context7: entry('beta', 'Context7 checks and docs', 'dist/cli/context7-command.js', subcommand(() => import('./context7-command.js'), 'context7Command', 'dist/cli/context7-command.js', 'check')),
|
|
128
128
|
recallpulse: entry('labs', 'RecallPulse evidence route', 'dist/commands/recallpulse.js', directCommand(() => import('../commands/recallpulse.js'), 'dist/commands/recallpulse.js')),
|
|
129
129
|
pipeline: entry('beta', 'Inspect pipeline missions', 'dist/commands/pipeline.js', directCommand(() => import('../commands/pipeline.js'), 'dist/commands/pipeline.js')),
|
|
@@ -1,11 +1,26 @@
|
|
|
1
1
|
import { flag } from '../cli/args.js';
|
|
2
2
|
import { printJson } from '../cli/output.js';
|
|
3
|
-
import { codexAccessTokenStatus, codexAppIntegrationStatus, formatCodexAppStatus } from '../core/codex-app.js';
|
|
3
|
+
import { codexAccessTokenStatus, codexAppIntegrationStatus, codexChromeExtensionStatus, formatCodexAppStatus } from '../core/codex-app.js';
|
|
4
4
|
import { codexAppRemoteControlCommand } from '../cli/codex-app-command.js';
|
|
5
5
|
export async function run(_command, args = []) {
|
|
6
6
|
const action = args[0] || 'check';
|
|
7
7
|
if (action === 'remote-control' || action === 'remote')
|
|
8
8
|
return codexAppRemoteControlCommand(args.slice(1));
|
|
9
|
+
if (action === 'chrome-extension' || action === 'chrome') {
|
|
10
|
+
const status = await codexChromeExtensionStatus();
|
|
11
|
+
if (flag(args, '--json')) {
|
|
12
|
+
printJson(status);
|
|
13
|
+
if (!status.ok)
|
|
14
|
+
process.exitCode = 1;
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
console.log(`Codex Chrome Extension: ${status.ok ? 'available' : status.status}`);
|
|
18
|
+
for (const line of status.guidance || [])
|
|
19
|
+
console.log(`- ${line}`);
|
|
20
|
+
if (!status.ok)
|
|
21
|
+
process.exitCode = 1;
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
9
24
|
if (action === 'pat') {
|
|
10
25
|
const status = codexAccessTokenStatus();
|
|
11
26
|
if (flag(args, '--json'))
|
|
@@ -29,7 +44,7 @@ export async function run(_command, args = []) {
|
|
|
29
44
|
process.exitCode = 1;
|
|
30
45
|
return;
|
|
31
46
|
}
|
|
32
|
-
console.error('Usage: sks codex-app check|status|pat status|remote-control [--json]');
|
|
47
|
+
console.error('Usage: sks codex-app check|status|chrome-extension|pat status|remote-control [--json]');
|
|
33
48
|
process.exitCode = 1;
|
|
34
49
|
}
|
|
35
50
|
//# sourceMappingURL=codex-app.js.map
|
package/dist/commands/codex.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { flag } from '../cli/args.js';
|
|
1
|
+
import { flag, readOption } from '../cli/args.js';
|
|
2
2
|
import { printJson } from '../cli/output.js';
|
|
3
3
|
import { codexCompatibilityReport, codexDoctorReport } from '../core/codex-compat/codex-compat-report.js';
|
|
4
4
|
import { codexVersionReport } from '../core/codex-compat/codex-version.js';
|
|
@@ -6,7 +6,8 @@ import { codexSchemaSnapshotReport } from '../core/codex-compat/codex-schema-sna
|
|
|
6
6
|
export async function run(_command, args = []) {
|
|
7
7
|
const action = args[0] || 'compatibility';
|
|
8
8
|
if (action === 'compatibility' || action === 'compat') {
|
|
9
|
-
const
|
|
9
|
+
const requiredBaseline = readOption(args, '--require', null);
|
|
10
|
+
const result = await codexCompatibilityReport({ requiredBaseline, require: requiredBaseline });
|
|
10
11
|
if (flag(args, '--json'))
|
|
11
12
|
return printJson(result);
|
|
12
13
|
console.log(`Codex compatibility: ${result.ok ? result.status : 'blocked'} (${result.required_baseline})`);
|
package/dist/commands/dfix.d.ts
CHANGED
|
@@ -103,6 +103,13 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
103
103
|
};
|
|
104
104
|
selected_template: import("../core/dfix/patch-templates.js").DfixPatchTemplate | null;
|
|
105
105
|
mode: string;
|
|
106
|
+
route_parallel_write: {
|
|
107
|
+
write_mode: any;
|
|
108
|
+
apply_patches: boolean;
|
|
109
|
+
dry_run_patches: boolean;
|
|
110
|
+
max_write_agents: number;
|
|
111
|
+
route_level_flags_wired: boolean;
|
|
112
|
+
};
|
|
106
113
|
target_file: any;
|
|
107
114
|
find_text_present: boolean;
|
|
108
115
|
replace_text_present: boolean;
|
|
@@ -154,6 +161,13 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
154
161
|
created_at: string;
|
|
155
162
|
explicit_apply_opt_in: boolean;
|
|
156
163
|
apply_opt_in: boolean;
|
|
164
|
+
route_parallel_write: {
|
|
165
|
+
write_mode: any;
|
|
166
|
+
apply_patches: boolean;
|
|
167
|
+
dry_run_patches: boolean;
|
|
168
|
+
max_write_agents: number;
|
|
169
|
+
route_level_flags_wired: boolean;
|
|
170
|
+
};
|
|
157
171
|
patch_mode: any;
|
|
158
172
|
patch_result_present: boolean;
|
|
159
173
|
patch_applied: any;
|
|
@@ -46,6 +46,8 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
46
46
|
original_resolution_required: boolean;
|
|
47
47
|
local_only_default: boolean;
|
|
48
48
|
accepted_sources: string[];
|
|
49
|
+
web_capture_doc: string;
|
|
50
|
+
web_verification_policy: string;
|
|
49
51
|
privacy: string;
|
|
50
52
|
};
|
|
51
53
|
image_generation_review: {
|
|
@@ -298,6 +300,7 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
298
300
|
contract_hash: any;
|
|
299
301
|
real_source_screenshot_present: boolean;
|
|
300
302
|
computer_use_or_user_screenshot_source: any;
|
|
303
|
+
official_or_user_screenshot_source: any;
|
|
301
304
|
gpt_image_2_callout_generated: boolean;
|
|
302
305
|
generated_image_ingested: boolean;
|
|
303
306
|
callout_extraction_schema_valid: boolean;
|
|
@@ -627,6 +630,20 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
627
630
|
status: string;
|
|
628
631
|
}[];
|
|
629
632
|
};
|
|
633
|
+
parallel_write_policy: {
|
|
634
|
+
schema: string;
|
|
635
|
+
generated_at: string;
|
|
636
|
+
route: string;
|
|
637
|
+
route_command: string;
|
|
638
|
+
write_mode: "off" | "proof-safe" | "parallel" | "serial";
|
|
639
|
+
apply_patches: boolean;
|
|
640
|
+
dry_run_patches: boolean;
|
|
641
|
+
max_write_agents: number;
|
|
642
|
+
readonly: boolean;
|
|
643
|
+
patch_queue_required: boolean;
|
|
644
|
+
patch_apply_mode: string;
|
|
645
|
+
route_level_flags_wired: boolean;
|
|
646
|
+
};
|
|
630
647
|
proof: {
|
|
631
648
|
schema: string;
|
|
632
649
|
ok: boolean;
|
|
@@ -638,6 +655,12 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
638
655
|
route_command: string;
|
|
639
656
|
route_blackbox_kind: string;
|
|
640
657
|
real_route_command_used: boolean;
|
|
658
|
+
parallel_write_policy: string;
|
|
659
|
+
parallel_write_route_flags_wired: boolean;
|
|
660
|
+
parallel_write_mode: any;
|
|
661
|
+
parallel_write_apply_patches: boolean;
|
|
662
|
+
parallel_write_dry_run_patches: boolean;
|
|
663
|
+
parallel_write_max_write_agents: number;
|
|
641
664
|
real_parallel_claim: boolean;
|
|
642
665
|
fake_backend_disclaimer: string | null;
|
|
643
666
|
agent_count: any;
|
|
@@ -796,6 +819,8 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
796
819
|
original_resolution_required: boolean;
|
|
797
820
|
local_only_default: boolean;
|
|
798
821
|
accepted_sources: string[];
|
|
822
|
+
web_capture_doc: string;
|
|
823
|
+
web_verification_policy: string;
|
|
799
824
|
privacy: string;
|
|
800
825
|
};
|
|
801
826
|
image_generation_review: {
|
|
@@ -1048,6 +1073,7 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
1048
1073
|
contract_hash: any;
|
|
1049
1074
|
real_source_screenshot_present: boolean;
|
|
1050
1075
|
computer_use_or_user_screenshot_source: any;
|
|
1076
|
+
official_or_user_screenshot_source: any;
|
|
1051
1077
|
gpt_image_2_callout_generated: boolean;
|
|
1052
1078
|
generated_image_ingested: boolean;
|
|
1053
1079
|
callout_extraction_schema_valid: boolean;
|
|
@@ -1188,6 +1214,7 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
1188
1214
|
contract_hash: any;
|
|
1189
1215
|
real_source_screenshot_present: boolean;
|
|
1190
1216
|
computer_use_or_user_screenshot_source: any;
|
|
1217
|
+
official_or_user_screenshot_source: any;
|
|
1191
1218
|
gpt_image_2_callout_generated: boolean;
|
|
1192
1219
|
generated_image_ingested: boolean;
|
|
1193
1220
|
callout_extraction_schema_valid: boolean;
|
package/dist/commands/ppt.d.ts
CHANGED
|
@@ -479,6 +479,20 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
479
479
|
status: string;
|
|
480
480
|
}[];
|
|
481
481
|
};
|
|
482
|
+
parallel_write_policy: {
|
|
483
|
+
schema: string;
|
|
484
|
+
generated_at: string;
|
|
485
|
+
route: string;
|
|
486
|
+
route_command: string;
|
|
487
|
+
write_mode: "off" | "proof-safe" | "parallel" | "serial";
|
|
488
|
+
apply_patches: boolean;
|
|
489
|
+
dry_run_patches: boolean;
|
|
490
|
+
max_write_agents: number;
|
|
491
|
+
readonly: boolean;
|
|
492
|
+
patch_queue_required: boolean;
|
|
493
|
+
patch_apply_mode: string;
|
|
494
|
+
route_level_flags_wired: boolean;
|
|
495
|
+
};
|
|
482
496
|
proof: {
|
|
483
497
|
schema: string;
|
|
484
498
|
ok: boolean;
|
|
@@ -490,6 +504,12 @@ export declare function run(command: any, args?: any): Promise<void | {
|
|
|
490
504
|
route_command: string;
|
|
491
505
|
route_blackbox_kind: string;
|
|
492
506
|
real_route_command_used: boolean;
|
|
507
|
+
parallel_write_policy: string;
|
|
508
|
+
parallel_write_route_flags_wired: boolean;
|
|
509
|
+
parallel_write_mode: any;
|
|
510
|
+
parallel_write_apply_patches: boolean;
|
|
511
|
+
parallel_write_dry_run_patches: boolean;
|
|
512
|
+
parallel_write_max_write_agents: number;
|
|
493
513
|
real_parallel_claim: boolean;
|
|
494
514
|
fake_backend_disclaimer: string | null;
|
|
495
515
|
agent_count: any;
|
package/dist/commands/tmux.d.ts
CHANGED
|
@@ -37,6 +37,7 @@ export declare function run(_command: any, args?: any): Promise<void | {
|
|
|
37
37
|
plugins: {
|
|
38
38
|
computer_use_cache: string | null;
|
|
39
39
|
browser_use_cache: string | null;
|
|
40
|
+
chrome_cache: string | null;
|
|
40
41
|
default_plugins: {
|
|
41
42
|
ok: boolean;
|
|
42
43
|
checked: boolean;
|
|
@@ -60,6 +61,7 @@ export declare function run(_command: any, args?: any): Promise<void | {
|
|
|
60
61
|
fast_mode_config_ok: boolean;
|
|
61
62
|
};
|
|
62
63
|
};
|
|
64
|
+
chrome_extension: any;
|
|
63
65
|
guidance: any[];
|
|
64
66
|
}>;
|
|
65
67
|
//# sourceMappingURL=tmux.d.ts.map
|
|
@@ -11,6 +11,9 @@ export type CodexCockpitHookPayload = {
|
|
|
11
11
|
session_id?: string;
|
|
12
12
|
transcript_path?: string | null;
|
|
13
13
|
agent_transcript_path?: string | null;
|
|
14
|
+
slot_id?: string | null;
|
|
15
|
+
generation_index?: number | null;
|
|
16
|
+
persona_id?: string | null;
|
|
14
17
|
last_assistant_message?: string | null;
|
|
15
18
|
stop_hook_active?: boolean;
|
|
16
19
|
turn_id?: string;
|
|
@@ -13,6 +13,11 @@ export declare function parseAgentCommandArgs(command: string, args?: string[]):
|
|
|
13
13
|
mock: boolean;
|
|
14
14
|
real: boolean;
|
|
15
15
|
readonly: boolean;
|
|
16
|
+
profile: string | null;
|
|
17
|
+
writeMode: "off" | "proof-safe" | "parallel" | "serial";
|
|
18
|
+
applyPatches: boolean;
|
|
19
|
+
dryRunPatches: boolean;
|
|
20
|
+
maxWriteAgents: number;
|
|
16
21
|
apply: boolean;
|
|
17
22
|
dryRun: boolean;
|
|
18
23
|
drain: boolean;
|
|
@@ -16,6 +16,11 @@ export function parseAgentCommandArgs(command, args = []) {
|
|
|
16
16
|
const mock = hasFlag(args, '--mock') || backend === 'fake';
|
|
17
17
|
const real = hasFlag(args, '--real');
|
|
18
18
|
const readonly = hasFlag(args, '--readonly') || hasFlag(args, '--read-only');
|
|
19
|
+
const profile = String(readOption(args, '--profile', '') || '') || null;
|
|
20
|
+
const writeMode = String(readOption(args, '--write-mode', hasFlag(args, '--parallel-write') ? 'parallel' : 'off'));
|
|
21
|
+
const applyPatches = hasFlag(args, '--apply-patches');
|
|
22
|
+
const dryRunPatches = hasFlag(args, '--dry-run-patches') || hasFlag(args, '--dryrun-patches');
|
|
23
|
+
const maxWriteAgents = Number(readOption(args, '--max-write-agents', Math.max(1, Math.min(concurrency, agents))));
|
|
19
24
|
const apply = hasFlag(args, '--apply');
|
|
20
25
|
const dryRun = hasFlag(args, '--dry-run') || hasFlag(args, '--dryrun');
|
|
21
26
|
const drain = hasFlag(args, '--drain');
|
|
@@ -23,14 +28,14 @@ export function parseAgentCommandArgs(command, args = []) {
|
|
|
23
28
|
const graceMs = Number(readOption(args, '--grace-ms', 750));
|
|
24
29
|
const killEscalation = hasFlag(args, '--kill-escalation') || !hasFlag(args, '--no-kill-escalation');
|
|
25
30
|
const codexApp = hasFlag(args, '--codex-app');
|
|
26
|
-
const positionals = positionalArgs(rest, new Set(['--agents', '--target-active-slots', '--work-items', '--minimum-work-items', '--max-queue-expansion', '--concurrency', '--backend', '--route', '--mission', '--mission-id', '--agent', '--lane', '--stale-ms', '--grace-ms']));
|
|
31
|
+
const positionals = positionalArgs(rest, new Set(['--agents', '--target-active-slots', '--work-items', '--minimum-work-items', '--max-queue-expansion', '--concurrency', '--backend', '--route', '--mission', '--mission-id', '--agent', '--lane', '--stale-ms', '--grace-ms', '--profile', '--write-mode', '--max-write-agents']));
|
|
27
32
|
const missionDefault = action === 'run' || action === 'spawn' || action === 'plan' ? '' : 'latest';
|
|
28
33
|
const positionalMission = action === 'run' || action === 'spawn' || action === 'plan' ? '' : (positionals[0] || '');
|
|
29
34
|
const missionId = String(readOption(args, '--mission', readOption(args, '--mission-id', positionalMission || missionDefault)));
|
|
30
35
|
const lane = String(readOption(args, '--agent', readOption(args, '--lane', '')));
|
|
31
36
|
const promptPositionals = positionalMission ? positionals.slice(1) : positionals;
|
|
32
37
|
const prompt = promptPositionals.join(' ').trim() || 'Native agent run';
|
|
33
|
-
return { command, action, prompt, route, agents, targetActiveSlots, desiredWorkItemCount, minimumWorkItems, maxQueueExpansion, concurrency, backend, mock, real, readonly, apply, dryRun, drain, staleMs, graceMs, killEscalation, json, missionId, lane, codexApp };
|
|
38
|
+
return { command, action, prompt, route, agents, targetActiveSlots, desiredWorkItemCount, minimumWorkItems, maxQueueExpansion, concurrency, backend, mock, real, readonly, profile, writeMode, applyPatches, dryRunPatches, maxWriteAgents, apply, dryRun, drain, staleMs, graceMs, killEscalation, json, missionId, lane, codexApp };
|
|
34
39
|
}
|
|
35
40
|
function hasFlag(args, flag) {
|
|
36
41
|
return args.includes(flag);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { AgentPatchEnvelope } from './agent-patch-schema.js';
|
|
2
|
+
export declare const AGENT_MERGE_COORDINATOR_SCHEMA = "sks.agent-merge-coordinator.v1";
|
|
3
|
+
export declare function coordinateAgentPatchMerge(envelopes: AgentPatchEnvelope[]): {
|
|
4
|
+
schema: string;
|
|
5
|
+
ok: boolean;
|
|
6
|
+
merge_order: string[];
|
|
7
|
+
touched_files: string[];
|
|
8
|
+
conflicts: {
|
|
9
|
+
file: string;
|
|
10
|
+
agents: string[];
|
|
11
|
+
}[];
|
|
12
|
+
blockers: string[];
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=agent-merge-coordinator.d.ts.map
|