@monoes/monomindcli 2.15.7 → 2.16.1
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/.claude/helpers/build-skill-registry.cjs +23 -2
- package/.claude/helpers/handlers/route-handler.cjs +102 -3
- package/.claude/helpers/handlers/session-restore-handler.cjs +1 -1
- package/.claude/helpers/hook-handler.cjs +17 -2
- package/.claude/helpers/jev-picker.cjs +499 -0
- package/.claude/helpers/redact-secrets.cjs +69 -0
- package/.claude/skills/mastermind-agent-select/SKILL.md +28 -0
- package/.claude/skills/monodesign/SKILL.md +257 -0
- package/.claude/skills/monodesign/adapt.md +53 -0
- package/.claude/skills/monodesign/agents/monodesign-asset-producer.md +100 -0
- package/.claude/skills/monodesign/agents/monodesign-manual-edit-applier.md +103 -0
- package/.claude/skills/monodesign/animate.md +65 -0
- package/.claude/skills/monodesign/audit.md +89 -0
- package/.claude/skills/monodesign/bolder.md +50 -0
- package/.claude/skills/monodesign/clarify.md +64 -0
- package/.claude/skills/monodesign/colorize.md +68 -0
- package/.claude/skills/monodesign/craft.md +51 -0
- package/.claude/skills/monodesign/critique.md +66 -0
- package/.claude/skills/monodesign/delight.md +47 -0
- package/.claude/skills/monodesign/distill.md +56 -0
- package/.claude/skills/monodesign/document.md +83 -0
- package/.claude/skills/monodesign/extract.md +74 -0
- package/.claude/skills/monodesign/harden.md +65 -0
- package/.claude/skills/monodesign/init.md +30 -0
- package/.claude/skills/monodesign/layout.md +36 -0
- package/.claude/skills/monodesign/live.md +34 -0
- package/.claude/skills/monodesign/onboard.md +50 -0
- package/.claude/skills/monodesign/optimize.md +64 -0
- package/.claude/skills/monodesign/overdrive.md +56 -0
- package/.claude/skills/monodesign/polish.md +68 -0
- package/.claude/skills/monodesign/quieter.md +57 -0
- package/.claude/skills/monodesign/reference/adapt.md +312 -0
- package/.claude/skills/monodesign/reference/adapt.native.md +58 -0
- package/.claude/skills/monodesign/reference/android.md +40 -0
- package/.claude/skills/monodesign/reference/animate.md +203 -0
- package/.claude/skills/monodesign/reference/antipatterns-catalog.md +410 -0
- package/.claude/skills/monodesign/reference/audit.md +135 -0
- package/.claude/skills/monodesign/reference/audit.native.md +139 -0
- package/.claude/skills/monodesign/reference/bolder.md +120 -0
- package/.claude/skills/monodesign/reference/brand-workflow.md +180 -0
- package/.claude/skills/monodesign/reference/brand.md +108 -0
- package/.claude/skills/monodesign/reference/clarify.md +288 -0
- package/.claude/skills/monodesign/reference/codex.md +105 -0
- package/.claude/skills/monodesign/reference/cognitive-load.md +106 -0
- package/.claude/skills/monodesign/reference/color-and-contrast.md +105 -0
- package/.claude/skills/monodesign/reference/colorize.md +257 -0
- package/.claude/skills/monodesign/reference/component-specs.md +260 -0
- package/.claude/skills/monodesign/reference/component-states.md +274 -0
- package/.claude/skills/monodesign/reference/component-system.md +358 -0
- package/.claude/skills/monodesign/reference/copy-formulas.md +160 -0
- package/.claude/skills/monodesign/reference/craft.md +123 -0
- package/.claude/skills/monodesign/reference/critique.md +780 -0
- package/.claude/skills/monodesign/reference/delight.md +302 -0
- package/.claude/skills/monodesign/reference/design-principles.md +246 -0
- package/.claude/skills/monodesign/reference/distill.md +111 -0
- package/.claude/skills/monodesign/reference/document.md +429 -0
- package/.claude/skills/monodesign/reference/extract.md +69 -0
- package/.claude/skills/monodesign/reference/harden.md +347 -0
- package/.claude/skills/monodesign/reference/heuristics-scoring.md +234 -0
- package/.claude/skills/monodesign/reference/hooks.md +92 -0
- package/.claude/skills/monodesign/reference/image-prompts.md +130 -0
- package/.claude/skills/monodesign/reference/init.md +221 -0
- package/.claude/skills/monodesign/reference/interaction-design.md +189 -0
- package/.claude/skills/monodesign/reference/ios.md +45 -0
- package/.claude/skills/monodesign/reference/layout.md +185 -0
- package/.claude/skills/monodesign/reference/live.md +710 -0
- package/.claude/skills/monodesign/reference/motion-design.md +109 -0
- package/.claude/skills/monodesign/reference/onboard.md +234 -0
- package/.claude/skills/monodesign/reference/optimize.md +258 -0
- package/.claude/skills/monodesign/reference/overdrive.md +130 -0
- package/.claude/skills/monodesign/reference/personas.md +179 -0
- package/.claude/skills/monodesign/reference/polish.md +241 -0
- package/.claude/skills/monodesign/reference/pre-delivery-checklist.md +108 -0
- package/.claude/skills/monodesign/reference/product.md +60 -0
- package/.claude/skills/monodesign/reference/quieter.md +99 -0
- package/.claude/skills/monodesign/reference/responsive-design.md +114 -0
- package/.claude/skills/monodesign/reference/shape.md +165 -0
- package/.claude/skills/monodesign/reference/spatial-design.md +100 -0
- package/.claude/skills/monodesign/reference/teach.md +10 -0
- package/.claude/skills/monodesign/reference/token-architecture.md +222 -0
- package/.claude/skills/monodesign/reference/typeset.md +301 -0
- package/.claude/skills/monodesign/reference/typography.md +159 -0
- package/.claude/skills/monodesign/reference/ux-research.md +143 -0
- package/.claude/skills/monodesign/reference/ux-rules.md +211 -0
- package/.claude/skills/monodesign/reference/ux-writing.md +107 -0
- package/.claude/skills/monodesign/scripts/command-metadata.json +94 -0
- package/.claude/skills/monodesign/scripts/context-signals.mjs +260 -0
- package/.claude/skills/monodesign/scripts/context.mjs +1065 -0
- package/.claude/skills/monodesign/scripts/critique-storage.mjs +416 -0
- package/.claude/skills/monodesign/scripts/detect-csp.mjs +193 -0
- package/.claude/skills/monodesign/scripts/detect.mjs +33 -0
- package/.claude/skills/monodesign/scripts/detector/browser/injected/index.mjs +1960 -0
- package/.claude/skills/monodesign/scripts/detector/cli/main.mjs +321 -0
- package/.claude/skills/monodesign/scripts/detector/design-system.mjs +814 -0
- package/.claude/skills/monodesign/scripts/detector/detect-antipatterns-browser.js +5628 -0
- package/.claude/skills/monodesign/scripts/detector/detect-antipatterns.mjs +50 -0
- package/.claude/skills/monodesign/scripts/detector/engines/browser/detect-url.mjs +259 -0
- package/.claude/skills/monodesign/scripts/detector/engines/browser/drivers.mjs +339 -0
- package/.claude/skills/monodesign/scripts/detector/engines/regex/detect-text.mjs +636 -0
- package/.claude/skills/monodesign/scripts/detector/engines/static-html/css-cascade.mjs +1016 -0
- package/.claude/skills/monodesign/scripts/detector/engines/static-html/detect-html.mjs +253 -0
- package/.claude/skills/monodesign/scripts/detector/engines/visual/screenshot-contrast.mjs +198 -0
- package/.claude/skills/monodesign/scripts/detector/findings.mjs +12 -0
- package/.claude/skills/monodesign/scripts/detector/fix/css-regions.mjs +181 -0
- package/.claude/skills/monodesign/scripts/detector/fix/fixers.mjs +373 -0
- package/.claude/skills/monodesign/scripts/detector/fix/index.mjs +426 -0
- package/.claude/skills/monodesign/scripts/detector/node/file-system.mjs +198 -0
- package/.claude/skills/monodesign/scripts/detector/profile/profiler.mjs +166 -0
- package/.claude/skills/monodesign/scripts/detector/registry/antipatterns.mjs +563 -0
- package/.claude/skills/monodesign/scripts/detector/rules/checks.mjs +3024 -0
- package/.claude/skills/monodesign/scripts/detector/shared/color.mjs +124 -0
- package/.claude/skills/monodesign/scripts/detector/shared/constants.mjs +101 -0
- package/.claude/skills/monodesign/scripts/detector/shared/fonts.mjs +30 -0
- package/.claude/skills/monodesign/scripts/detector/shared/inline-ignores.mjs +148 -0
- package/.claude/skills/monodesign/scripts/detector/shared/page.mjs +7 -0
- package/.claude/skills/monodesign/scripts/hook-admin.mjs +694 -0
- package/.claude/skills/monodesign/scripts/hook-before-edit.mjs +516 -0
- package/.claude/skills/monodesign/scripts/hook-lib.mjs +1785 -0
- package/.claude/skills/monodesign/scripts/hook.mjs +61 -0
- package/.claude/skills/monodesign/scripts/lib/design-parser.mjs +809 -0
- package/.claude/skills/monodesign/scripts/lib/is-generated.mjs +69 -0
- package/.claude/skills/monodesign/scripts/lib/monodesign-config.mjs +640 -0
- package/.claude/skills/monodesign/scripts/lib/monodesign-paths.mjs +129 -0
- package/.claude/skills/monodesign/scripts/lib/provider.mjs +4 -0
- package/.claude/skills/monodesign/scripts/lib/target-args.mjs +42 -0
- package/.claude/skills/monodesign/scripts/live/browser-script-parts.mjs +50 -0
- package/.claude/skills/monodesign/scripts/live/completion.mjs +19 -0
- package/.claude/skills/monodesign/scripts/live/event-validation.mjs +137 -0
- package/.claude/skills/monodesign/scripts/live/insert-ui.mjs +458 -0
- package/.claude/skills/monodesign/scripts/live/manual-apply.mjs +939 -0
- package/.claude/skills/monodesign/scripts/live/manual-edit-routes.mjs +357 -0
- package/.claude/skills/monodesign/scripts/live/manual-edits-buffer.mjs +152 -0
- package/.claude/skills/monodesign/scripts/live/session-store.mjs +293 -0
- package/.claude/skills/monodesign/scripts/live/svelte-component.mjs +826 -0
- package/.claude/skills/monodesign/scripts/live/sveltekit-adapter.mjs +279 -0
- package/.claude/skills/monodesign/scripts/live/ui-core.mjs +180 -0
- package/.claude/skills/monodesign/scripts/live/vocabulary.mjs +36 -0
- package/.claude/skills/monodesign/scripts/live-accept.mjs +812 -0
- package/.claude/skills/monodesign/scripts/live-browser-dom.js +147 -0
- package/.claude/skills/monodesign/scripts/live-browser-session.js +124 -0
- package/.claude/skills/monodesign/scripts/live-browser.js +11213 -0
- package/.claude/skills/monodesign/scripts/live-commit-manual-edits.mjs +1241 -0
- package/.claude/skills/monodesign/scripts/live-complete.mjs +75 -0
- package/.claude/skills/monodesign/scripts/live-copy-edit-agent.mjs +683 -0
- package/.claude/skills/monodesign/scripts/live-discard-manual-edits.mjs +51 -0
- package/.claude/skills/monodesign/scripts/live-inject.mjs +596 -0
- package/.claude/skills/monodesign/scripts/live-insert.mjs +272 -0
- package/.claude/skills/monodesign/scripts/live-manual-edit-evidence.mjs +363 -0
- package/.claude/skills/monodesign/scripts/live-poll.mjs +384 -0
- package/.claude/skills/monodesign/scripts/live-resume.mjs +94 -0
- package/.claude/skills/monodesign/scripts/live-server.mjs +1210 -0
- package/.claude/skills/monodesign/scripts/live-status.mjs +61 -0
- package/.claude/skills/monodesign/scripts/live-target.mjs +30 -0
- package/.claude/skills/monodesign/scripts/live-wrap.mjs +884 -0
- package/.claude/skills/monodesign/scripts/live.mjs +297 -0
- package/.claude/skills/monodesign/scripts/modern-screenshot.umd.js +14 -0
- package/.claude/skills/monodesign/scripts/palette.mjs +635 -0
- package/.claude/skills/monodesign/scripts/pin.mjs +221 -0
- package/.claude/skills/monodesign/shape.md +71 -0
- package/.claude/skills/monodesign/teach.md +18 -0
- package/.claude/skills/monodesign/typeset.md +59 -0
- package/README.md +1 -1
- package/dist/src/capabilities/cap-code.d.ts.map +1 -1
- package/dist/src/capabilities/cap-code.js +10 -5
- package/dist/src/capabilities/cap-code.js.map +1 -1
- package/dist/src/capabilities/manager.d.ts +2 -1
- package/dist/src/capabilities/manager.d.ts.map +1 -1
- package/dist/src/capabilities/manager.js +4 -1
- package/dist/src/capabilities/manager.js.map +1 -1
- package/dist/src/catalog/blueprints.d.ts +39 -0
- package/dist/src/catalog/blueprints.d.ts.map +1 -0
- package/dist/src/catalog/blueprints.js +78 -0
- package/dist/src/catalog/blueprints.js.map +1 -0
- package/dist/src/catalog/digest.d.ts +16 -0
- package/dist/src/catalog/digest.d.ts.map +1 -0
- package/dist/src/catalog/digest.js +62 -0
- package/dist/src/catalog/digest.js.map +1 -0
- package/dist/src/catalog/frontmatter.d.ts +23 -0
- package/dist/src/catalog/frontmatter.d.ts.map +1 -0
- package/dist/src/catalog/frontmatter.js +80 -0
- package/dist/src/catalog/frontmatter.js.map +1 -0
- package/dist/src/catalog/lifecycle.d.ts +31 -0
- package/dist/src/catalog/lifecycle.d.ts.map +1 -0
- package/dist/src/catalog/lifecycle.js +78 -0
- package/dist/src/catalog/lifecycle.js.map +1 -0
- package/dist/src/catalog/projection.d.ts +57 -0
- package/dist/src/catalog/projection.d.ts.map +1 -0
- package/dist/src/catalog/projection.js +272 -0
- package/dist/src/catalog/projection.js.map +1 -0
- package/dist/src/catalog/scan.d.ts +37 -0
- package/dist/src/catalog/scan.d.ts.map +1 -0
- package/dist/src/catalog/scan.js +214 -0
- package/dist/src/catalog/scan.js.map +1 -0
- package/dist/src/catalog/snapshot.d.ts +62 -0
- package/dist/src/catalog/snapshot.d.ts.map +1 -0
- package/dist/src/catalog/snapshot.js +183 -0
- package/dist/src/catalog/snapshot.js.map +1 -0
- package/dist/src/catalog/stage.d.ts +26 -0
- package/dist/src/catalog/stage.d.ts.map +1 -0
- package/dist/src/catalog/stage.js +316 -0
- package/dist/src/catalog/stage.js.map +1 -0
- package/dist/src/catalog/state.d.ts +23 -0
- package/dist/src/catalog/state.d.ts.map +1 -0
- package/dist/src/catalog/state.js +102 -0
- package/dist/src/catalog/state.js.map +1 -0
- package/dist/src/catalog/types.d.ts +289 -0
- package/dist/src/catalog/types.d.ts.map +1 -0
- package/dist/src/catalog/types.js +118 -0
- package/dist/src/catalog/types.js.map +1 -0
- package/dist/src/commands/catalog.d.ts +14 -0
- package/dist/src/commands/catalog.d.ts.map +1 -0
- package/dist/src/commands/catalog.js +392 -0
- package/dist/src/commands/catalog.js.map +1 -0
- package/dist/src/commands/doctor-catalog-checks.d.ts +3 -0
- package/dist/src/commands/doctor-catalog-checks.d.ts.map +1 -0
- package/dist/src/commands/doctor-catalog-checks.js +69 -0
- package/dist/src/commands/doctor-catalog-checks.js.map +1 -0
- package/dist/src/commands/doctor-decision-checks.d.ts +10 -0
- package/dist/src/commands/doctor-decision-checks.d.ts.map +1 -0
- package/dist/src/commands/doctor-decision-checks.js +82 -0
- package/dist/src/commands/doctor-decision-checks.js.map +1 -0
- package/dist/src/commands/doctor-project-checks.js +1 -1
- package/dist/src/commands/doctor-project-checks.js.map +1 -1
- package/dist/src/commands/doctor.d.ts.map +1 -1
- package/dist/src/commands/doctor.js +9 -1
- package/dist/src/commands/doctor.js.map +1 -1
- package/dist/src/commands/index.d.ts +2 -2
- package/dist/src/commands/index.d.ts.map +1 -1
- package/dist/src/commands/index.js +4 -1
- package/dist/src/commands/index.js.map +1 -1
- package/dist/src/commands/init-wizard.d.ts.map +1 -1
- package/dist/src/commands/init-wizard.js +2 -0
- package/dist/src/commands/init-wizard.js.map +1 -1
- package/dist/src/commands/init.d.ts.map +1 -1
- package/dist/src/commands/init.js +25 -26
- package/dist/src/commands/init.js.map +1 -1
- package/dist/src/commands/org-observe.d.ts.map +1 -1
- package/dist/src/commands/org-observe.js +12 -10
- package/dist/src/commands/org-observe.js.map +1 -1
- package/dist/src/commands/org-run-end.d.ts +26 -0
- package/dist/src/commands/org-run-end.d.ts.map +1 -0
- package/dist/src/commands/org-run-end.js +40 -0
- package/dist/src/commands/org-run-end.js.map +1 -0
- package/dist/src/commands/org-skills.d.ts.map +1 -1
- package/dist/src/commands/org-skills.js +14 -4
- package/dist/src/commands/org-skills.js.map +1 -1
- package/dist/src/commands/org.d.ts +2 -1
- package/dist/src/commands/org.d.ts.map +1 -1
- package/dist/src/commands/org.js +44 -16
- package/dist/src/commands/org.js.map +1 -1
- package/dist/src/commands/pick.d.ts +4 -0
- package/dist/src/commands/pick.d.ts.map +1 -0
- package/dist/src/commands/pick.js +77 -0
- package/dist/src/commands/pick.js.map +1 -0
- package/dist/src/commands/route.js +1 -1
- package/dist/src/commands/route.js.map +1 -1
- package/dist/src/commands/search-universal.d.ts.map +1 -1
- package/dist/src/commands/search-universal.js +1 -2
- package/dist/src/commands/search-universal.js.map +1 -1
- package/dist/src/decision/catalogs.d.ts +20 -0
- package/dist/src/decision/catalogs.d.ts.map +1 -0
- package/dist/src/decision/catalogs.js +64 -0
- package/dist/src/decision/catalogs.js.map +1 -0
- package/dist/src/decision/jev.d.ts +85 -0
- package/dist/src/decision/jev.d.ts.map +1 -0
- package/dist/src/decision/jev.js +72 -0
- package/dist/src/decision/jev.js.map +1 -0
- package/dist/src/decision/picks.d.ts +50 -0
- package/dist/src/decision/picks.d.ts.map +1 -0
- package/dist/src/decision/picks.js +100 -0
- package/dist/src/decision/picks.js.map +1 -0
- package/dist/src/init/executor.d.ts.map +1 -1
- package/dist/src/init/executor.js +7 -0
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/helpers-generator.d.ts.map +1 -1
- package/dist/src/init/helpers-generator.js +7 -0
- package/dist/src/init/helpers-generator.js.map +1 -1
- package/dist/src/init/init-memory.d.ts +14 -0
- package/dist/src/init/init-memory.d.ts.map +1 -0
- package/dist/src/init/init-memory.js +44 -0
- package/dist/src/init/init-memory.js.map +1 -0
- package/dist/src/init/types.d.ts +13 -0
- package/dist/src/init/types.d.ts.map +1 -1
- package/dist/src/init/types.js.map +1 -1
- package/dist/src/init/upgrade.d.ts.map +1 -1
- package/dist/src/init/upgrade.js +9 -0
- package/dist/src/init/upgrade.js.map +1 -1
- package/dist/src/orgrt/agent-runner.d.ts +7 -0
- package/dist/src/orgrt/agent-runner.d.ts.map +1 -1
- package/dist/src/orgrt/agent-runner.js +5 -1
- package/dist/src/orgrt/agent-runner.js.map +1 -1
- package/dist/src/orgrt/antigravity-runner.d.ts.map +1 -1
- package/dist/src/orgrt/antigravity-runner.js +8 -14
- package/dist/src/orgrt/antigravity-runner.js.map +1 -1
- package/dist/src/orgrt/checkpoint-ops.d.ts.map +1 -1
- package/dist/src/orgrt/checkpoint-ops.js +7 -1
- package/dist/src/orgrt/checkpoint-ops.js.map +1 -1
- package/dist/src/orgrt/checkpoint.d.ts +10 -2
- package/dist/src/orgrt/checkpoint.d.ts.map +1 -1
- package/dist/src/orgrt/checkpoint.js +8 -2
- package/dist/src/orgrt/checkpoint.js.map +1 -1
- package/dist/src/orgrt/codex-runner.d.ts.map +1 -1
- package/dist/src/orgrt/codex-runner.js +8 -14
- package/dist/src/orgrt/codex-runner.js.map +1 -1
- package/dist/src/orgrt/completion-gate.d.ts +6 -0
- package/dist/src/orgrt/completion-gate.d.ts.map +1 -1
- package/dist/src/orgrt/completion-gate.js +18 -0
- package/dist/src/orgrt/completion-gate.js.map +1 -1
- package/dist/src/orgrt/copilot-runner.d.ts.map +1 -1
- package/dist/src/orgrt/copilot-runner.js +7 -10
- package/dist/src/orgrt/copilot-runner.js.map +1 -1
- package/dist/src/orgrt/crush-runner.d.ts.map +1 -1
- package/dist/src/orgrt/crush-runner.js +7 -10
- package/dist/src/orgrt/crush-runner.js.map +1 -1
- package/dist/src/orgrt/cumulative-meter.d.ts +26 -0
- package/dist/src/orgrt/cumulative-meter.d.ts.map +1 -0
- package/dist/src/orgrt/cumulative-meter.js +46 -0
- package/dist/src/orgrt/cumulative-meter.js.map +1 -0
- package/dist/src/orgrt/daemon.d.ts +20 -3
- package/dist/src/orgrt/daemon.d.ts.map +1 -1
- package/dist/src/orgrt/daemon.js +55 -28
- package/dist/src/orgrt/daemon.js.map +1 -1
- package/dist/src/orgrt/dashboard-health.d.ts +54 -0
- package/dist/src/orgrt/dashboard-health.d.ts.map +1 -0
- package/dist/src/orgrt/dashboard-health.js +143 -0
- package/dist/src/orgrt/dashboard-health.js.map +1 -0
- package/dist/src/orgrt/decisions.d.ts +13 -1
- package/dist/src/orgrt/decisions.d.ts.map +1 -1
- package/dist/src/orgrt/decisions.js +92 -18
- package/dist/src/orgrt/decisions.js.map +1 -1
- package/dist/src/orgrt/forwarder.d.ts +2 -1
- package/dist/src/orgrt/forwarder.d.ts.map +1 -1
- package/dist/src/orgrt/forwarder.js +87 -27
- package/dist/src/orgrt/forwarder.js.map +1 -1
- package/dist/src/orgrt/grok-runner.d.ts.map +1 -1
- package/dist/src/orgrt/grok-runner.js +7 -12
- package/dist/src/orgrt/grok-runner.js.map +1 -1
- package/dist/src/orgrt/hermes-runner.d.ts.map +1 -1
- package/dist/src/orgrt/hermes-runner.js +9 -15
- package/dist/src/orgrt/hermes-runner.js.map +1 -1
- package/dist/src/orgrt/kimicode-runner.d.ts +1 -1
- package/dist/src/orgrt/kimicode-runner.d.ts.map +1 -1
- package/dist/src/orgrt/kimicode-runner.js +9 -15
- package/dist/src/orgrt/kimicode-runner.js.map +1 -1
- package/dist/src/orgrt/opencode-runner.d.ts.map +1 -1
- package/dist/src/orgrt/opencode-runner.js +7 -13
- package/dist/src/orgrt/opencode-runner.js.map +1 -1
- package/dist/src/orgrt/org-harness-tools.d.ts +8 -0
- package/dist/src/orgrt/org-harness-tools.d.ts.map +1 -0
- package/dist/src/orgrt/org-harness-tools.js +21 -0
- package/dist/src/orgrt/org-harness-tools.js.map +1 -0
- package/dist/src/orgrt/pi-rpc-runner.d.ts.map +1 -1
- package/dist/src/orgrt/pi-rpc-runner.js +9 -13
- package/dist/src/orgrt/pi-rpc-runner.js.map +1 -1
- package/dist/src/orgrt/pi-runner.d.ts.map +1 -1
- package/dist/src/orgrt/pi-runner.js +7 -11
- package/dist/src/orgrt/pi-runner.js.map +1 -1
- package/dist/src/orgrt/policy-git.d.ts +5 -1
- package/dist/src/orgrt/policy-git.d.ts.map +1 -1
- package/dist/src/orgrt/policy-git.js +56 -29
- package/dist/src/orgrt/policy-git.js.map +1 -1
- package/dist/src/orgrt/policy.d.ts +7 -0
- package/dist/src/orgrt/policy.d.ts.map +1 -1
- package/dist/src/orgrt/policy.js +10 -1
- package/dist/src/orgrt/policy.js.map +1 -1
- package/dist/src/orgrt/prompt-vars.d.ts +8 -1
- package/dist/src/orgrt/prompt-vars.d.ts.map +1 -1
- package/dist/src/orgrt/prompt-vars.js +60 -11
- package/dist/src/orgrt/prompt-vars.js.map +1 -1
- package/dist/src/orgrt/qwen-rpc-runner.d.ts.map +1 -1
- package/dist/src/orgrt/qwen-rpc-runner.js +9 -14
- package/dist/src/orgrt/qwen-rpc-runner.js.map +1 -1
- package/dist/src/orgrt/qwen-runner.d.ts.map +1 -1
- package/dist/src/orgrt/qwen-runner.js +7 -12
- package/dist/src/orgrt/qwen-runner.js.map +1 -1
- package/dist/src/orgrt/report-budget.d.ts +4 -0
- package/dist/src/orgrt/report-budget.d.ts.map +1 -0
- package/dist/src/orgrt/report-budget.js +12 -0
- package/dist/src/orgrt/report-budget.js.map +1 -0
- package/dist/src/orgrt/reporting.d.ts +4 -0
- package/dist/src/orgrt/reporting.d.ts.map +1 -1
- package/dist/src/orgrt/reporting.js +8 -2
- package/dist/src/orgrt/reporting.js.map +1 -1
- package/dist/src/orgrt/role-sandbox.d.ts +4 -1
- package/dist/src/orgrt/role-sandbox.d.ts.map +1 -1
- package/dist/src/orgrt/role-sandbox.js +24 -10
- package/dist/src/orgrt/role-sandbox.js.map +1 -1
- package/dist/src/orgrt/role-trace.d.ts +27 -0
- package/dist/src/orgrt/role-trace.d.ts.map +1 -0
- package/dist/src/orgrt/role-trace.js +28 -0
- package/dist/src/orgrt/role-trace.js.map +1 -0
- package/dist/src/orgrt/sandbox-deny-write.d.ts +52 -0
- package/dist/src/orgrt/sandbox-deny-write.d.ts.map +1 -0
- package/dist/src/orgrt/sandbox-deny-write.js +89 -0
- package/dist/src/orgrt/sandbox-deny-write.js.map +1 -0
- package/dist/src/orgrt/sandbox-fault.d.ts +40 -0
- package/dist/src/orgrt/sandbox-fault.d.ts.map +1 -0
- package/dist/src/orgrt/sandbox-fault.js +94 -0
- package/dist/src/orgrt/sandbox-fault.js.map +1 -0
- package/dist/src/orgrt/session.d.ts +10 -3
- package/dist/src/orgrt/session.d.ts.map +1 -1
- package/dist/src/orgrt/session.js +124 -64
- package/dist/src/orgrt/session.js.map +1 -1
- package/dist/src/orgrt/skill-library.d.ts +10 -1
- package/dist/src/orgrt/skill-library.d.ts.map +1 -1
- package/dist/src/orgrt/skill-library.js +53 -4
- package/dist/src/orgrt/skill-library.js.map +1 -1
- package/dist/src/orgrt/task-dag.d.ts +9 -1
- package/dist/src/orgrt/task-dag.d.ts.map +1 -1
- package/dist/src/orgrt/task-dag.js +6 -1
- package/dist/src/orgrt/task-dag.js.map +1 -1
- package/dist/src/orgrt/tool-fence.d.ts +21 -3
- package/dist/src/orgrt/tool-fence.d.ts.map +1 -1
- package/dist/src/orgrt/tool-fence.js +45 -7
- package/dist/src/orgrt/tool-fence.js.map +1 -1
- package/dist/src/orgrt/tool-providers.d.ts +4 -0
- package/dist/src/orgrt/tool-providers.d.ts.map +1 -1
- package/dist/src/orgrt/tool-providers.js +10 -0
- package/dist/src/orgrt/tool-providers.js.map +1 -1
- package/dist/src/orgrt/types.d.ts +10 -0
- package/dist/src/orgrt/types.d.ts.map +1 -1
- package/dist/src/orgrt/types.js +15 -0
- package/dist/src/orgrt/types.js.map +1 -1
- package/dist/src/orgrt/vercel-runner.d.ts +23 -0
- package/dist/src/orgrt/vercel-runner.d.ts.map +1 -1
- package/dist/src/orgrt/vercel-runner.js +2 -26
- package/dist/src/orgrt/vercel-runner.js.map +1 -1
- package/dist/src/platform-adapters/merge.d.ts +11 -0
- package/dist/src/platform-adapters/merge.d.ts.map +1 -1
- package/dist/src/platform-adapters/merge.js +28 -0
- package/dist/src/platform-adapters/merge.js.map +1 -1
- package/dist/src/platform-adapters/mutation.d.ts +37 -0
- package/dist/src/platform-adapters/mutation.d.ts.map +1 -0
- package/dist/src/platform-adapters/mutation.js +231 -0
- package/dist/src/platform-adapters/mutation.js.map +1 -0
- package/dist/src/platform-adapters/operations.d.ts +8 -1
- package/dist/src/platform-adapters/operations.d.ts.map +1 -1
- package/dist/src/platform-adapters/operations.js +41 -83
- package/dist/src/platform-adapters/operations.js.map +1 -1
- package/dist/src/platform-adapters/renderers/skills.d.ts.map +1 -1
- package/dist/src/platform-adapters/renderers/skills.js +11 -2
- package/dist/src/platform-adapters/renderers/skills.js.map +1 -1
- package/dist/src/platform-adapters/shared-surface.d.ts +34 -0
- package/dist/src/platform-adapters/shared-surface.d.ts.map +1 -0
- package/dist/src/platform-adapters/shared-surface.js +89 -0
- package/dist/src/platform-adapters/shared-surface.js.map +1 -0
- package/dist/src/platform-adapters/types.d.ts +7 -0
- package/dist/src/platform-adapters/types.d.ts.map +1 -1
- package/dist/src/routing/jev-step.d.ts +17 -0
- package/dist/src/routing/jev-step.d.ts.map +1 -0
- package/dist/src/routing/jev-step.js +27 -0
- package/dist/src/routing/jev-step.js.map +1 -0
- package/dist/src/routing/route-layer-factory.d.ts.map +1 -1
- package/dist/src/routing/route-layer-factory.js +16 -1
- package/dist/src/routing/route-layer-factory.js.map +1 -1
- package/dist/src/utils/redaction.d.ts.map +1 -1
- package/dist/src/utils/redaction.js +19 -4
- package/dist/src/utils/redaction.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -7
|
@@ -8,7 +8,9 @@
|
|
|
8
8
|
* - writes: the role's cwd, the org root, $HOME and the temp dir stay
|
|
9
9
|
* writable (installs, caches, test fixtures), minus the protected git dir
|
|
10
10
|
* ('read'/'none') or its config + hooks ('commit'), the guard's hooks,
|
|
11
|
-
* local-path remotes, and git/shell/Claude config that would undo the guard
|
|
11
|
+
* local-path remotes, and git/shell/Claude config that would undo the guard
|
|
12
|
+
* (a denied directory holding the cwd or ~/.claude goes in as its existing
|
|
13
|
+
* children, #323 — sandbox-deny-write.ts);
|
|
12
14
|
* - network: every host allowed (`policy.sandbox.allowedDomains`, default
|
|
13
15
|
* ['*']) minus the opt-in `policy.sandbox.deniedDomains`, deterministically,
|
|
14
16
|
* with local binding kept for dev servers and tests. Git remote hosts are
|
|
@@ -57,6 +59,7 @@ export declare function buildClaudeRestrictions(guard: GitGuard, cfg: RoleSandbo
|
|
|
57
59
|
home?: string;
|
|
58
60
|
tmp?: string;
|
|
59
61
|
env?: NodeJS.ProcessEnv;
|
|
62
|
+
platform?: NodeJS.Platform;
|
|
60
63
|
}, sandboxEnabled: boolean): ClaudeRestrictions;
|
|
61
64
|
/**
|
|
62
65
|
* The authority mask (authority-mask.ts) for a role the SDK sandbox does not
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role-sandbox.d.ts","sourceRoot":"","sources":["../../../src/orgrt/role-sandbox.ts"],"names":[],"mappings":"AACA
|
|
1
|
+
{"version":3,"file":"role-sandbox.d.ts","sourceRoot":"","sources":["../../../src/orgrt/role-sandbox.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,9 @@
|
|
|
9
9
|
* - writes: the role's cwd, the org root, $HOME and the temp dir stay
|
|
10
10
|
* writable (installs, caches, test fixtures), minus the protected git dir
|
|
11
11
|
* ('read'/'none') or its config + hooks ('commit'), the guard's hooks,
|
|
12
|
-
* local-path remotes, and git/shell/Claude config that would undo the guard
|
|
12
|
+
* local-path remotes, and git/shell/Claude config that would undo the guard
|
|
13
|
+
* (a denied directory holding the cwd or ~/.claude goes in as its existing
|
|
14
|
+
* children, #323 — sandbox-deny-write.ts);
|
|
13
15
|
* - network: every host allowed (`policy.sandbox.allowedDomains`, default
|
|
14
16
|
* ['*']) minus the opt-in `policy.sandbox.deniedDomains`, deterministically,
|
|
15
17
|
* with local binding kept for dev servers and tests. Git remote hosts are
|
|
@@ -36,6 +38,8 @@ import { authorityDirs, authorityMaskArgs, authorityMaskAvailability, DECISION_F
|
|
|
36
38
|
import { CLI_SANDBOX_MODES } from './cli-sandbox.js';
|
|
37
39
|
import { DAEMON_SOCKETS, dashboardCredentialPaths, HOME_DENY_READ, HOME_DENY_WRITE, runtimeDir, } from './file-roots.js';
|
|
38
40
|
import { gitCommonDir, gitLocalRemotePaths, prepareGitGuard, } from './git-guard.js';
|
|
41
|
+
import { ORG_DISALLOWED_HARNESS_TOOLS } from './org-harness-tools.js';
|
|
42
|
+
import { expandDenyWrite, underAnyRoot } from './sandbox-deny-write.js';
|
|
39
43
|
function onPath(bin, env) {
|
|
40
44
|
for (const dir of (env.PATH ?? '').split(delimiter)) {
|
|
41
45
|
if (!dir)
|
|
@@ -134,6 +138,7 @@ export function buildClaudeRestrictions(guard, cfg, ctx, sandboxEnabled) {
|
|
|
134
138
|
// the checkout it tests from). Relative paths resolve against the org root.
|
|
135
139
|
const roleDenyWrite = (cfg?.denyWrite ?? []).map((p) => resolve(ctx.orgRoot ?? ctx.cwd, p));
|
|
136
140
|
const disallowedTools = [
|
|
141
|
+
...ORG_DISALLOWED_HARNESS_TOOLS,
|
|
137
142
|
rule('Edit', `${guard.dir}/**`),
|
|
138
143
|
...gitDirs.flatMap((d) => lockedRepo
|
|
139
144
|
? [rule('Edit', `${d}/**`)]
|
|
@@ -154,6 +159,17 @@ export function buildClaudeRestrictions(guard, cfg, ctx, sandboxEnabled) {
|
|
|
154
159
|
];
|
|
155
160
|
if (!sandboxEnabled)
|
|
156
161
|
return { disallowedTools };
|
|
162
|
+
const allowWrite = uniq([ctx.cwd, ctx.orgRoot, home, tmp, ...(cfg?.allowWrite ?? [])]);
|
|
163
|
+
// #323: a read-only directory holding the cwd or ~/.claude breaks the SDK's
|
|
164
|
+
// own stub mounts — pass its children instead (sandbox-deny-write.ts).
|
|
165
|
+
const expanded = expandDenyWrite(uniq([
|
|
166
|
+
guard.dir,
|
|
167
|
+
...(lockedRepo ? gitDirs : gitDirs.flatMap((d) => [join(d, 'config'), join(d, 'hooks')])),
|
|
168
|
+
...gitDirs.flatMap(gitLocalRemotePaths),
|
|
169
|
+
...HOME_DENY_WRITE.map((p) => join(home, p)),
|
|
170
|
+
...decisionFilePaths(ctx.orgRoot),
|
|
171
|
+
...roleDenyWrite,
|
|
172
|
+
]), [ctx.cwd, join(home, '.claude')], ctx.platform);
|
|
157
173
|
const sandbox = {
|
|
158
174
|
enabled: true,
|
|
159
175
|
failIfUnavailable: true,
|
|
@@ -167,15 +183,11 @@ export function buildClaudeRestrictions(guard, cfg, ctx, sandboxEnabled) {
|
|
|
167
183
|
allowAllUnixSockets: unixSockets,
|
|
168
184
|
},
|
|
169
185
|
filesystem: {
|
|
170
|
-
allowWrite: uniq([
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
...(lockedRepo ? gitDirs : gitDirs.flatMap((d) => [join(d, 'config'), join(d, 'hooks')])),
|
|
174
|
-
...gitDirs.flatMap(gitLocalRemotePaths),
|
|
175
|
-
...HOME_DENY_WRITE.map((p) => join(home, p)),
|
|
176
|
-
...decisionFilePaths(ctx.orgRoot),
|
|
177
|
-
...roleDenyWrite,
|
|
186
|
+
allowWrite: uniq([
|
|
187
|
+
...allowWrite,
|
|
188
|
+
...expanded.mountPoints.filter((d) => underAnyRoot(d, allowWrite)),
|
|
178
189
|
]),
|
|
190
|
+
denyWrite: existing(expanded.denyWrite),
|
|
179
191
|
denyRead: existing([
|
|
180
192
|
...(guard.level === 'none' ? gitDirs : []),
|
|
181
193
|
runtimeDir(env),
|
|
@@ -247,7 +259,9 @@ export function resolveRoleGitEnforcement(args) {
|
|
|
247
259
|
});
|
|
248
260
|
let guard = build(false);
|
|
249
261
|
if (!guard)
|
|
250
|
-
return
|
|
262
|
+
return args.claudeRuntime
|
|
263
|
+
? { env: {}, claudeRestrictions: { disallowedTools: [...ORG_DISALLOWED_HARNESS_TOOLS] } }
|
|
264
|
+
: { env: {} };
|
|
251
265
|
const data = { level, protectedGitDirs: guard.protectedGitDirs };
|
|
252
266
|
if (!args.claudeRuntime) {
|
|
253
267
|
const runtime = args.runtime ?? 'non-claude';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"role-sandbox.js","sourceRoot":"","sources":["../../../src/orgrt/role-sandbox.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"role-sandbox.js","sourceRoot":"","sources":["../../../src/orgrt/role-sandbox.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* #327: a role's position in a chain, as its tool calls and its org_send mail
|
|
3
|
+
* carry it.
|
|
4
|
+
*
|
|
5
|
+
* - The chain (`chain_id`, `hop`) comes from the latest message delivered to
|
|
6
|
+
* the role with a `[trace chn_… hop=N]` line (cross-org.ts's recordTrace),
|
|
7
|
+
* else a fresh chain at hop 0 minted once for the role.
|
|
8
|
+
* - `turn` numbers the role's turns: 1 for its first, +1 each time a turn ends
|
|
9
|
+
* (the runner's `result`). Every call inside one turn carries the same
|
|
10
|
+
* value; the count is checkpointed, so a stop/resume continues it.
|
|
11
|
+
* - A role's org_send is stamped with its chain at hop + 1 (withTrace), the
|
|
12
|
+
* way mono-agent's WithTrace stamps the mail it sends, so A → B → A climbs
|
|
13
|
+
* one chain instead of each hop starting over.
|
|
14
|
+
*/
|
|
15
|
+
import type { RunningOrg } from './daemon.js';
|
|
16
|
+
import { type ChainTrace } from './tool-providers.js';
|
|
17
|
+
export interface RoleTrace extends ChainTrace {
|
|
18
|
+
turn: number;
|
|
19
|
+
}
|
|
20
|
+
/** The role's current chain and turn; mints the chain on first use. */
|
|
21
|
+
export declare function currentRoleTrace(running: RunningOrg | undefined, role: string): RoleTrace;
|
|
22
|
+
/** A role's turn ended: its next tool call belongs to the next turn. */
|
|
23
|
+
export declare function endTurn(running: RunningOrg, role: string): void;
|
|
24
|
+
/** `body` with the next hop of `t` as its first line, replacing any trace line
|
|
25
|
+
* already in it — a message sits at one position in one chain. */
|
|
26
|
+
export declare function withTrace(body: string, t: ChainTrace): string;
|
|
27
|
+
//# sourceMappingURL=role-trace.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"role-trace.d.ts","sourceRoot":"","sources":["../../../src/orgrt/role-trace.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;GAaG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,KAAK,UAAU,EAAgB,MAAM,qBAAqB,CAAC;AAEpE,MAAM,WAAW,SAAU,SAAQ,UAAU;IAC3C,IAAI,EAAE,MAAM,CAAC;CACd;AAED,uEAAuE;AACvE,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,UAAU,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CASzF;AAED,wEAAwE;AACxE,wBAAgB,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAG/D;AAID;mEACmE;AACnE,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,GAAG,MAAM,CAG7D"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { freshChainId } from './tool-providers.js';
|
|
2
|
+
/** The role's current chain and turn; mints the chain on first use. */
|
|
3
|
+
export function currentRoleTrace(running, role) {
|
|
4
|
+
if (!running)
|
|
5
|
+
return { chain_id: freshChainId(), hop: 0, turn: 1 };
|
|
6
|
+
if (!running.traces)
|
|
7
|
+
running.traces = new Map();
|
|
8
|
+
let t = running.traces.get(role);
|
|
9
|
+
if (!t) {
|
|
10
|
+
t = { chain_id: freshChainId(), hop: 0 };
|
|
11
|
+
running.traces.set(role, t);
|
|
12
|
+
}
|
|
13
|
+
return { chain_id: t.chain_id, hop: t.hop, turn: (running.turns?.get(role) ?? 0) + 1 };
|
|
14
|
+
}
|
|
15
|
+
/** A role's turn ended: its next tool call belongs to the next turn. */
|
|
16
|
+
export function endTurn(running, role) {
|
|
17
|
+
if (!running.turns)
|
|
18
|
+
running.turns = new Map();
|
|
19
|
+
running.turns.set(role, (running.turns.get(role) ?? 0) + 1);
|
|
20
|
+
}
|
|
21
|
+
const TRACE_LINES = /^\[trace chn_[A-Za-z0-9_-]+ hop=\d+\][^\S\n]*(?:\n|$)/gm;
|
|
22
|
+
/** `body` with the next hop of `t` as its first line, replacing any trace line
|
|
23
|
+
* already in it — a message sits at one position in one chain. */
|
|
24
|
+
export function withTrace(body, t) {
|
|
25
|
+
const rest = body.replace(TRACE_LINES, '').replace(/^\n+/, '');
|
|
26
|
+
return `[trace ${t.chain_id} hop=${t.hop + 1}]\n${rest}`;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=role-trace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"role-trace.js","sourceRoot":"","sources":["../../../src/orgrt/role-trace.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAmB,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAMpE,uEAAuE;AACvE,MAAM,UAAU,gBAAgB,CAAC,OAA+B,EAAE,IAAY;IAC5E,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACnE,IAAI,CAAC,OAAO,CAAC,MAAM;QAAE,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;IAChD,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,CAAC,CAAC,EAAE,CAAC;QACP,CAAC,GAAG,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QACzC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;AACzF,CAAC;AAED,wEAAwE;AACxE,MAAM,UAAU,OAAO,CAAC,OAAmB,EAAE,IAAY;IACvD,IAAI,CAAC,OAAO,CAAC,KAAK;QAAE,OAAO,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;IAC9C,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,WAAW,GAAG,yDAAyD,CAAC;AAE9E;mEACmE;AACnE,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,CAAa;IACnD,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/D,OAAO,UAAU,CAAC,CAAC,QAAQ,QAAQ,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;AAC3D,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* #323: deny-write directories the SDK sandbox (bubblewrap) can live with.
|
|
3
|
+
*
|
|
4
|
+
* The Claude Agent SDK adds its own write-denies for "dangerous files"
|
|
5
|
+
* relative to the role's cwd (.gitconfig, .bashrc, .mcp.json, .claude/…) and
|
|
6
|
+
* under ~/.claude (settings, hooks, skills, commands, ide, local, …). For one
|
|
7
|
+
* that does not exist it binds /dev/null onto the path, so bwrap must create
|
|
8
|
+
* a 0-byte mount-point file first. When monomind hands the SDK a read-only
|
|
9
|
+
* directory that contains such a path — `policy.sandbox.denyWrite: ["."]`
|
|
10
|
+
* resolves to the org root, which is (or contains) every role's cwd, and
|
|
11
|
+
* HOME_DENY_WRITE has ".claude" — bwrap dies with "Can't create file …:
|
|
12
|
+
* Read-only file system" and the role's Bash call fails. It only worked while
|
|
13
|
+
* another sandboxed process happened to hold the stub.
|
|
14
|
+
*
|
|
15
|
+
* So such a directory is never passed as a deny. It is replaced by its
|
|
16
|
+
* existing children, each read-only (a child that itself contains the cwd or
|
|
17
|
+
* ~/.claude is expanded the same way), and the directory itself is returned
|
|
18
|
+
* as a mount point for `filesystem.allowWrite`: bind-mounted, it cannot be
|
|
19
|
+
* renamed or removed (EBUSY), while bwrap can create the SDK's stubs in it.
|
|
20
|
+
*
|
|
21
|
+
* What becomes writable at the OS layer: NEW entries directly inside such a
|
|
22
|
+
* directory (a new top-level file in the org root or ~/.claude), and the
|
|
23
|
+
* directory's own mode bits. Everything that existed at session start stays
|
|
24
|
+
* read-only — an existing entry is a mount point, so it cannot be rewritten,
|
|
25
|
+
* unlinked, renamed or replaced. The Claude-Code-critical new names (settings,
|
|
26
|
+
* hooks, skills, commands, agents, .mcp.json, .gitconfig, …) are the SDK's own
|
|
27
|
+
* denies, now enforceable because their stubs can be created. The file tools
|
|
28
|
+
* never relied on this layer: their permission rules (`Edit(//dir/**)`) and
|
|
29
|
+
* the PolicyEngine deny lists keep the unexpanded directory.
|
|
30
|
+
*
|
|
31
|
+
* Linux only: seatbelt (macOS) denies by path rule, needs no mount points,
|
|
32
|
+
* and keeps the whole directory read-only.
|
|
33
|
+
*/
|
|
34
|
+
export interface ExpandedDenyWrite {
|
|
35
|
+
/** What to pass as `filesystem.denyWrite` (still unfiltered for existence). */
|
|
36
|
+
denyWrite: string[];
|
|
37
|
+
/** Directories that were expanded; the caller makes each one a writable
|
|
38
|
+
* bind mount when it already lies under a writable root. */
|
|
39
|
+
mountPoints: string[];
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Replaces every deny-write path that equals or contains one of `keepWritable`
|
|
43
|
+
* (the role's cwd, ~/.claude) with its existing children, recursively. A path
|
|
44
|
+
* that cannot be listed (missing, unreadable, not a directory) is kept as-is,
|
|
45
|
+
* so the old — stricter — behaviour is the fallback.
|
|
46
|
+
*/
|
|
47
|
+
export declare function expandDenyWrite(paths: string[], keepWritable: string[], platform?: NodeJS.Platform): ExpandedDenyWrite;
|
|
48
|
+
/** `within()` over real paths, for picking the mount points that lie under a
|
|
49
|
+
* root that is writable anyway (anything else was never writable and must not
|
|
50
|
+
* become so). */
|
|
51
|
+
export declare function underAnyRoot(p: string, roots: string[]): boolean;
|
|
52
|
+
//# sourceMappingURL=sandbox-deny-write.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-deny-write.d.ts","sourceRoot":"","sources":["../../../src/orgrt/sandbox-deny-write.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAiBH,MAAM,WAAW,iBAAiB;IAChC,+EAA+E;IAC/E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB;iEAC6D;IAC7D,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,MAAM,EAAE,EACf,YAAY,EAAE,MAAM,EAAE,EACtB,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,iBAAiB,CAuBnB;AAED;;kBAEkB;AAClB,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAGhE"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
// packages/@monomind/cli/src/orgrt/sandbox-deny-write.ts
|
|
2
|
+
/**
|
|
3
|
+
* #323: deny-write directories the SDK sandbox (bubblewrap) can live with.
|
|
4
|
+
*
|
|
5
|
+
* The Claude Agent SDK adds its own write-denies for "dangerous files"
|
|
6
|
+
* relative to the role's cwd (.gitconfig, .bashrc, .mcp.json, .claude/…) and
|
|
7
|
+
* under ~/.claude (settings, hooks, skills, commands, ide, local, …). For one
|
|
8
|
+
* that does not exist it binds /dev/null onto the path, so bwrap must create
|
|
9
|
+
* a 0-byte mount-point file first. When monomind hands the SDK a read-only
|
|
10
|
+
* directory that contains such a path — `policy.sandbox.denyWrite: ["."]`
|
|
11
|
+
* resolves to the org root, which is (or contains) every role's cwd, and
|
|
12
|
+
* HOME_DENY_WRITE has ".claude" — bwrap dies with "Can't create file …:
|
|
13
|
+
* Read-only file system" and the role's Bash call fails. It only worked while
|
|
14
|
+
* another sandboxed process happened to hold the stub.
|
|
15
|
+
*
|
|
16
|
+
* So such a directory is never passed as a deny. It is replaced by its
|
|
17
|
+
* existing children, each read-only (a child that itself contains the cwd or
|
|
18
|
+
* ~/.claude is expanded the same way), and the directory itself is returned
|
|
19
|
+
* as a mount point for `filesystem.allowWrite`: bind-mounted, it cannot be
|
|
20
|
+
* renamed or removed (EBUSY), while bwrap can create the SDK's stubs in it.
|
|
21
|
+
*
|
|
22
|
+
* What becomes writable at the OS layer: NEW entries directly inside such a
|
|
23
|
+
* directory (a new top-level file in the org root or ~/.claude), and the
|
|
24
|
+
* directory's own mode bits. Everything that existed at session start stays
|
|
25
|
+
* read-only — an existing entry is a mount point, so it cannot be rewritten,
|
|
26
|
+
* unlinked, renamed or replaced. The Claude-Code-critical new names (settings,
|
|
27
|
+
* hooks, skills, commands, agents, .mcp.json, .gitconfig, …) are the SDK's own
|
|
28
|
+
* denies, now enforceable because their stubs can be created. The file tools
|
|
29
|
+
* never relied on this layer: their permission rules (`Edit(//dir/**)`) and
|
|
30
|
+
* the PolicyEngine deny lists keep the unexpanded directory.
|
|
31
|
+
*
|
|
32
|
+
* Linux only: seatbelt (macOS) denies by path rule, needs no mount points,
|
|
33
|
+
* and keeps the whole directory read-only.
|
|
34
|
+
*/
|
|
35
|
+
import { lstatSync, readdirSync, realpathSync } from 'node:fs';
|
|
36
|
+
import { join, sep } from 'node:path';
|
|
37
|
+
const real = (p) => {
|
|
38
|
+
try {
|
|
39
|
+
return realpathSync(p);
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
return p;
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
/** Is `target` equal to, or nested under, `container`? */
|
|
46
|
+
const within = (container, target) => target === container || target.startsWith(container.endsWith(sep) ? container : container + sep);
|
|
47
|
+
/**
|
|
48
|
+
* Replaces every deny-write path that equals or contains one of `keepWritable`
|
|
49
|
+
* (the role's cwd, ~/.claude) with its existing children, recursively. A path
|
|
50
|
+
* that cannot be listed (missing, unreadable, not a directory) is kept as-is,
|
|
51
|
+
* so the old — stricter — behaviour is the fallback.
|
|
52
|
+
*/
|
|
53
|
+
export function expandDenyWrite(paths, keepWritable, platform = process.platform) {
|
|
54
|
+
if (platform !== 'linux')
|
|
55
|
+
return { denyWrite: paths, mountPoints: [] };
|
|
56
|
+
const keep = keepWritable.map(real);
|
|
57
|
+
const denyWrite = [];
|
|
58
|
+
const mountPoints = [];
|
|
59
|
+
const visit = (p) => {
|
|
60
|
+
if (!keep.some((k) => within(real(p), k))) {
|
|
61
|
+
denyWrite.push(p);
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
let entries;
|
|
65
|
+
try {
|
|
66
|
+
if (!lstatSync(p).isDirectory())
|
|
67
|
+
throw new Error('not a directory');
|
|
68
|
+
entries = readdirSync(p);
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
denyWrite.push(p);
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
mountPoints.push(p);
|
|
75
|
+
for (const e of entries)
|
|
76
|
+
visit(join(p, e));
|
|
77
|
+
};
|
|
78
|
+
for (const p of paths)
|
|
79
|
+
visit(p);
|
|
80
|
+
return { denyWrite, mountPoints };
|
|
81
|
+
}
|
|
82
|
+
/** `within()` over real paths, for picking the mount points that lie under a
|
|
83
|
+
* root that is writable anyway (anything else was never writable and must not
|
|
84
|
+
* become so). */
|
|
85
|
+
export function underAnyRoot(p, roots) {
|
|
86
|
+
const rp = real(p);
|
|
87
|
+
return roots.some((r) => within(real(r), rp));
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=sandbox-deny-write.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-deny-write.js","sourceRoot":"","sources":["../../../src/orgrt/sandbox-deny-write.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAEtC,MAAM,IAAI,GAAG,CAAC,CAAS,EAAU,EAAE;IACjC,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC,CAAC;AAEF,0DAA0D;AAC1D,MAAM,MAAM,GAAG,CAAC,SAAiB,EAAE,MAAc,EAAW,EAAE,CAC5D,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC,CAAC;AAUnG;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAC7B,KAAe,EACf,YAAsB,EACtB,QAAQ,GAAoB,OAAO,CAAC,QAAQ;IAE5C,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;IACvE,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,MAAM,KAAK,GAAG,CAAC,CAAS,EAAQ,EAAE;QAChC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1C,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QACD,IAAI,OAAiB,CAAC;QACtB,IAAI,CAAC;YACH,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;gBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACpE,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QACD,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,KAAK,MAAM,CAAC,IAAI,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC;IACF,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAChC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;AACpC,CAAC;AAED;;kBAEkB;AAClB,MAAM,UAAU,YAAY,CAAC,CAAS,EAAE,KAAe;IACrD,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACnB,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { AgentMessage } from './agent-runner.js';
|
|
2
|
+
import type { OrgBus } from './bus.js';
|
|
3
|
+
/** A Bash result that is bubblewrap's own error, not the command's: the OS
|
|
4
|
+
* sandbox failed to start (2.16.0 release run: 31 of these, and a QA role
|
|
5
|
+
* that silently lost Bash for ~7 minutes). A new runner process builds a new
|
|
6
|
+
* sandbox, so ending the process is the recovery. */
|
|
7
|
+
export declare function isSandboxFault(m: Pick<AgentMessage, 'tool' | 'text'>): boolean;
|
|
8
|
+
/** Consecutive faulted Bash results in one process before it is ended. */
|
|
9
|
+
export declare const SANDBOX_FAULTS_BEFORE_RESTART = 2;
|
|
10
|
+
/** Process restarts per task session before the coordinator is told instead. */
|
|
11
|
+
export declare const MAX_SANDBOX_RESTARTS = 2;
|
|
12
|
+
/** Thrown out of the session's message loop to end the runner process. */
|
|
13
|
+
export declare class SandboxFaultError extends Error {
|
|
14
|
+
readonly sessionId: string | undefined;
|
|
15
|
+
constructor(sessionId: string | undefined);
|
|
16
|
+
}
|
|
17
|
+
interface Surface {
|
|
18
|
+
bus: OrgBus;
|
|
19
|
+
roleId: string;
|
|
20
|
+
/** Who hears about it once restarts are spent (the role's reports_to). */
|
|
21
|
+
coordinator?: string;
|
|
22
|
+
deliver: (from: string, to: string, subject: string, body: string) => Promise<string>;
|
|
23
|
+
}
|
|
24
|
+
/** Per role session loop: counts restarts per session key (task). */
|
|
25
|
+
export declare class SandboxRestarts {
|
|
26
|
+
private readonly s;
|
|
27
|
+
private used;
|
|
28
|
+
private surfaced;
|
|
29
|
+
constructor(s: Surface);
|
|
30
|
+
/** One runner process's watcher for `key`. */
|
|
31
|
+
watch(key: string): {
|
|
32
|
+
observe(m: AgentMessage, sessionId: string | undefined): void;
|
|
33
|
+
};
|
|
34
|
+
/** Called once the process is gone: records the restart and returns the
|
|
35
|
+
* message the restarted session opens with. */
|
|
36
|
+
restarted(key: string): string;
|
|
37
|
+
private surface;
|
|
38
|
+
}
|
|
39
|
+
export {};
|
|
40
|
+
//# sourceMappingURL=sandbox-fault.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-fault.d.ts","sourceRoot":"","sources":["../../../src/orgrt/sandbox-fault.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGvC;;;sDAGsD;AACtD,wBAAgB,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAE9E;AAED,0EAA0E;AAC1E,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAC/C,gFAAgF;AAChF,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAEtC,0EAA0E;AAC1E,qBAAa,iBAAkB,SAAQ,KAAK;IAC9B,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS;IAAlD,YAAqB,SAAS,EAAE,MAAM,GAAG,SAAS,EAGjD;CACF;AAED,UAAU,OAAO;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACvF;AAED,qEAAqE;AACrE,qBAAa,eAAe;IAId,OAAO,CAAC,QAAQ,CAAC,CAAC;IAH9B,OAAO,CAAC,IAAI,CAA6B;IACzC,OAAO,CAAC,QAAQ,CAAqB;IAErC,YAA6B,CAAC,EAAE,OAAO,EAAI;IAE3C,8CAA8C;IAC9C,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG;QAAE,OAAO,CAAC,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAAA;KAAE,CAwBpF;IAED;oDACgD;IAChD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAW7B;IAED,OAAO,CAAC,OAAO;CAuBhB"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
// packages/@monomind/cli/src/orgrt/sandbox-fault.ts
|
|
2
|
+
import { Mailbox } from './mailbox.js';
|
|
3
|
+
/** A Bash result that is bubblewrap's own error, not the command's: the OS
|
|
4
|
+
* sandbox failed to start (2.16.0 release run: 31 of these, and a QA role
|
|
5
|
+
* that silently lost Bash for ~7 minutes). A new runner process builds a new
|
|
6
|
+
* sandbox, so ending the process is the recovery. */
|
|
7
|
+
export function isSandboxFault(m) {
|
|
8
|
+
return m.tool === 'Bash' && (m.text ?? '').startsWith('bwrap: ');
|
|
9
|
+
}
|
|
10
|
+
/** Consecutive faulted Bash results in one process before it is ended. */
|
|
11
|
+
export const SANDBOX_FAULTS_BEFORE_RESTART = 2;
|
|
12
|
+
/** Process restarts per task session before the coordinator is told instead. */
|
|
13
|
+
export const MAX_SANDBOX_RESTARTS = 2;
|
|
14
|
+
/** Thrown out of the session's message loop to end the runner process. */
|
|
15
|
+
export class SandboxFaultError extends Error {
|
|
16
|
+
sessionId;
|
|
17
|
+
constructor(sessionId) {
|
|
18
|
+
super(`sandbox failed to start on ${SANDBOX_FAULTS_BEFORE_RESTART} consecutive Bash calls`);
|
|
19
|
+
this.sessionId = sessionId;
|
|
20
|
+
this.name = 'SandboxFaultError';
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
/** Per role session loop: counts restarts per session key (task). */
|
|
24
|
+
export class SandboxRestarts {
|
|
25
|
+
s;
|
|
26
|
+
used = new Map();
|
|
27
|
+
surfaced = new Set();
|
|
28
|
+
constructor(s) {
|
|
29
|
+
this.s = s;
|
|
30
|
+
}
|
|
31
|
+
/** One runner process's watcher for `key`. */
|
|
32
|
+
watch(key) {
|
|
33
|
+
let consecutive = 0;
|
|
34
|
+
return {
|
|
35
|
+
observe: (m, sessionId) => {
|
|
36
|
+
if (m.type !== 'tool_result' || m.tool !== 'Bash')
|
|
37
|
+
return;
|
|
38
|
+
if (!isSandboxFault(m)) {
|
|
39
|
+
consecutive = 0;
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
consecutive++;
|
|
43
|
+
this.s.bus.emit({
|
|
44
|
+
type: 'audit',
|
|
45
|
+
from: this.s.roleId,
|
|
46
|
+
reason: 'sandbox-fault',
|
|
47
|
+
msg: `Bash sandbox failed to start: ${(m.text ?? '').split('\n')[0].slice(0, 300)}`,
|
|
48
|
+
data: { taskKey: key, consecutive, ...(m.tool_use_id ? { call_id: m.tool_use_id } : {}) },
|
|
49
|
+
});
|
|
50
|
+
if (consecutive < SANDBOX_FAULTS_BEFORE_RESTART)
|
|
51
|
+
return;
|
|
52
|
+
consecutive = 0;
|
|
53
|
+
if ((this.used.get(key) ?? 0) < MAX_SANDBOX_RESTARTS)
|
|
54
|
+
throw new SandboxFaultError(sessionId);
|
|
55
|
+
this.surface(key);
|
|
56
|
+
},
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
/** Called once the process is gone: records the restart and returns the
|
|
60
|
+
* message the restarted session opens with. */
|
|
61
|
+
restarted(key) {
|
|
62
|
+
const n = (this.used.get(key) ?? 0) + 1;
|
|
63
|
+
this.used.set(key, n);
|
|
64
|
+
this.s.bus.emit({
|
|
65
|
+
type: 'status',
|
|
66
|
+
from: this.s.roleId,
|
|
67
|
+
reason: 'sandbox-restart',
|
|
68
|
+
msg: `Bash sandbox kept failing — process restarted for ${key} (${n}/${MAX_SANDBOX_RESTARTS})`,
|
|
69
|
+
data: { taskKey: key, restarts: n, max: MAX_SANDBOX_RESTARTS },
|
|
70
|
+
});
|
|
71
|
+
return `${Mailbox.CONTINUE_PREFIX} Your shell's sandbox failed to start ("bwrap: …") on consecutive Bash calls, so your process was restarted with a fresh one. Continue your in-progress task from where you left off, re-running the command that failed.`;
|
|
72
|
+
}
|
|
73
|
+
surface(key) {
|
|
74
|
+
if (this.surfaced.has(key))
|
|
75
|
+
return;
|
|
76
|
+
this.surfaced.add(key);
|
|
77
|
+
const { bus, roleId, coordinator, deliver } = this.s;
|
|
78
|
+
bus.emit({
|
|
79
|
+
type: 'audit',
|
|
80
|
+
from: roleId,
|
|
81
|
+
reason: 'sandbox-fault-exhausted',
|
|
82
|
+
msg: `Bash sandbox still failing for ${key} after ${MAX_SANDBOX_RESTARTS} restarts${coordinator ? ` — told "${coordinator}"` : ''}`,
|
|
83
|
+
data: {
|
|
84
|
+
taskKey: key,
|
|
85
|
+
restarts: MAX_SANDBOX_RESTARTS,
|
|
86
|
+
...(coordinator ? { coordinator } : {}),
|
|
87
|
+
},
|
|
88
|
+
});
|
|
89
|
+
if (!coordinator)
|
|
90
|
+
return;
|
|
91
|
+
deliver(roleId, coordinator, 'Bash sandbox keeps failing', `The OS sandbox for "${roleId}"'s Bash tool failed to start on consecutive calls (${key}) and ${MAX_SANDBOX_RESTARTS} process restarts did not fix it, so its shell commands are not running. Reassign the work, or have an operator check the role's sandbox (policy.sandbox) before relying on its results.`).catch(() => { });
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=sandbox-fault.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sandbox-fault.js","sourceRoot":"","sources":["../../../src/orgrt/sandbox-fault.ts"],"names":[],"mappings":"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"}
|
|
@@ -193,7 +193,11 @@ export interface SessionOpts {
|
|
|
193
193
|
/** Task DAG: create a task with dependencies. `loadout` (ADR-O001 D7) is
|
|
194
194
|
* the catalog entry the caller selected; only offered when the org has a
|
|
195
195
|
* catalog (`loadoutCatalog`). */
|
|
196
|
-
createTask?: (role: string, title: string, assignee: string, deps: string[], loadout?: string) => string;
|
|
196
|
+
createTask?: (role: string, title: string, assignee: string, deps: string[], loadout?: string, brief?: string) => string;
|
|
197
|
+
/** Resolves `assignee: "auto"` on org_task: the decision model (or, without
|
|
198
|
+
* one, a keyword match over role titles/responsibilities) picks the role.
|
|
199
|
+
* null = no role fits; the caller must name one. */
|
|
200
|
+
pickAssignee?: (title: string) => Promise<string | null>;
|
|
197
201
|
/** ADR-O001 D7: the org's loadout catalog. Set only when the org declares
|
|
198
202
|
* one; it adds the optional `loadout` argument to org_task/org_plan_graph.
|
|
199
203
|
* Unset, those tools are byte-identical to before (same gating idea as
|
|
@@ -226,8 +230,8 @@ export interface SessionOpts {
|
|
|
226
230
|
* a role with review_input: 'artifact-only'; otherwise org_review is not
|
|
227
231
|
* registered and the tool list is unchanged. */
|
|
228
232
|
requestReview?: (role: string, taskId: string, reviewer: string, base?: string) => string;
|
|
229
|
-
/** Task DAG: list all tasks
|
|
230
|
-
listTasks?: () => string;
|
|
233
|
+
/** Task DAG: list all tasks, or just `taskId`. */
|
|
234
|
+
listTasks?: (taskId?: string) => string;
|
|
231
235
|
splitTask?: (role: string, parentId: string, children: {
|
|
232
236
|
title: string;
|
|
233
237
|
assignee: string;
|
|
@@ -245,6 +249,7 @@ export interface SessionOpts {
|
|
|
245
249
|
assignee: string;
|
|
246
250
|
after?: string[];
|
|
247
251
|
loadout?: string;
|
|
252
|
+
brief?: string;
|
|
248
253
|
}[]) => string;
|
|
249
254
|
}
|
|
250
255
|
/** Role briefing given to each agent session (SDK systemPrompt option).
|
|
@@ -273,5 +278,7 @@ export declare function runAgentSession(opts: SessionOpts): Promise<void>;
|
|
|
273
278
|
*
|
|
274
279
|
* Behaviour is identical to the old inline definitions: conditional tools are
|
|
275
280
|
* gated on their callback being present, org_send/ask_human are always added. */
|
|
281
|
+
/** org_task's assignee value that asks for automatic role selection. */
|
|
282
|
+
export declare const AUTO_ASSIGNEE = "auto";
|
|
276
283
|
export declare function buildOrgTools(opts: SessionOpts): OrgToolDef[];
|
|
277
284
|
//# sourceMappingURL=session.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/orgrt/session.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAE5D,OAAO,KAAK,EAAgB,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAc,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/orgrt/session.ts"],"names":[],"mappings":"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"}
|