moflo 4.8.65 → 4.8.67

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "moflo",
3
- "version": "4.8.65",
3
+ "version": "4.8.67",
4
4
  "description": "MoFlo — AI agent orchestration for Claude Code. Forked from ruflo/claude-flow with patches applied to source, plus feature-level orchestration.",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -112,7 +112,7 @@
112
112
  "@types/js-yaml": "^4.0.9",
113
113
  "@types/node": "^20.19.37",
114
114
  "eslint": "^8.0.0",
115
- "moflo": "^4.8.64",
115
+ "moflo": "^4.8.66",
116
116
  "tsx": "^4.21.0",
117
117
  "typescript": "^5.9.3",
118
118
  "vitest": "^4.0.0"
@@ -60,7 +60,8 @@ async function executeAndTrack(engine, definition, args) {
60
60
  const spellId = `sp-${Date.now()}`;
61
61
  const tracked = trackStart(spellId, definition.name, definition.description);
62
62
  try {
63
- const result = await engine.bridgeExecuteSpell(definition, args, { spellId });
63
+ const sandboxConfig = await engine.loadSandboxConfigFromProject(findProjectRoot());
64
+ const result = await engine.bridgeExecuteSpell(definition, args, { spellId, sandboxConfig });
64
65
  trackResult(tracked, result);
65
66
  return serializeResult(result);
66
67
  }
@@ -202,7 +203,8 @@ export const spellTools = [
202
203
  }
203
204
  // Run from raw content via bridge
204
205
  const engine = await loadSpellEngine();
205
- const result = await engine.bridgeRunSpell(content, sourceFile, args, { dryRun });
206
+ const sandboxConfig = await engine.loadSandboxConfigFromProject(findProjectRoot());
207
+ const result = await engine.bridgeRunSpell(content, sourceFile, args, { dryRun, sandboxConfig });
206
208
  const tracked = trackStart(result.spellId, spellName);
207
209
  trackResult(tracked, result);
208
210
  return serializeResult(result);
@@ -2,5 +2,5 @@
2
2
  * Auto-generated by build. Do not edit manually.
3
3
  * Source of truth: root package.json → scripts/sync-version.mjs
4
4
  */
5
- export const VERSION = '4.8.65';
5
+ export const VERSION = '4.8.67';
6
6
  //# sourceMappingURL=version.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moflo/cli",
3
- "version": "4.8.65",
3
+ "version": "4.8.67",
4
4
  "type": "module",
5
5
  "main": "dist/src/index.js",
6
6
  "types": "dist/src/index.d.ts",
@@ -12,6 +12,7 @@ import { builtinConnectors } from '../connectors/index.js';
12
12
  import { parseSpell } from '../schema/parser.js';
13
13
  import { validateSpellDefinition } from '../schema/validator.js';
14
14
  import { SpellConnectorRegistry } from '../registry/connector-registry.js';
15
+ import { loadSandboxConfigFromProject } from '../core/platform-sandbox.js';
15
16
  // ============================================================================
16
17
  // Factory
17
18
  // ============================================================================
@@ -78,6 +79,13 @@ export async function runSpellFromContent(content, sourceFile, options = {}) {
78
79
  const runner = createRunner(options);
79
80
  // Strip factory-only fields; keep RunSpellOptions (extends RunnerOptions) for runner.run()
80
81
  const { args = {}, stepDirs: _s, credentials: _c, memory: _m, connectorRegistry: _cr, ...runnerOptions } = options;
82
+ // Auto-load sandbox config from moflo.yaml when caller supplied projectRoot
83
+ // but not an explicit sandboxConfig. Keeps CLI/epic callers from having to
84
+ // thread config themselves; MCP tools still pass explicitly.
85
+ if (!runnerOptions.sandboxConfig && runnerOptions.projectRoot) {
86
+ const autoCfg = await loadSandboxConfigFromProject(runnerOptions.projectRoot);
87
+ runnerOptions.sandboxConfig = autoCfg;
88
+ }
81
89
  return runner.run(definition, args, runnerOptions);
82
90
  }
83
91
  // ============================================================================