What happened
SECURITY.md currently says that product compositions do not route command execution through the macOS Seatbelt transformer, so it is not a product boundary:
Maka does not run tools in a separate process or container by default. The runtime exposes a macOS Seatbelt command transformer for restricted profiles, but current product compositions do not yet route command execution through it, so it is not a product boundary today.
That statement is stale at 2b5dd8a8716cc90fcc2ca9bd50837efd21875a94.
Runtime Host now creates a builtin SandboxManager and sandboxed FilesystemWorkerClient, then injects both into the builtin tool composition:
The conflict is limited: it would also be incorrect to claim that every tool or profile is sandboxed.
| Surface |
Current behavior under a restricted managed boundary |
| Foreground and background non-PTY Bash |
Seatbelt on macOS, bubblewrap on Linux; fails closed if required enforcement is unavailable |
| Managed PTY Bash |
Refused because command sandboxing is unavailable |
| Local-path file tools |
Sandboxed filesystem worker; AppContainer covers this purpose-built worker on Windows |
| Windows arbitrary-shell Bash |
Unsupported and fails closed when a command sandbox is required |
Client integrated terminal (runtime.resource.start) |
Host PTY outside the managed agent execution boundary |
Bypass, unrestricted, disabled, and external profiles do not add a Maka-managed local sandbox. workspace-write also permits the configured temporary roots, not only the workspace.
This is a documentation-consistency bug, not a report of a demonstrated sandbox escape.
Expected behavior: the security policy and runtime sandbox README describe the same product boundary and distinguish the OS-user-account trust envelope, per-command OS enforcement, and in-process permission heuristics.
How to reproduce
- Check out
2b5dd8a8716cc90fcc2ca9bd50837efd21875a94.
- Compare
SECURITY.md:83-102 with packages/runtime/src/sandbox/README.md:49-68.
- Follow Bash through
builtin-tools.ts:295-325 and shell-tools.ts:288-326.
- Follow local file tools through
filesystem-executor.ts:178-248.
- Compare those paths with
runtime-resource-coordinator.ts:357-398, which launches the integrated-terminal host PTY.
- Run
git blame -L 97,102 SECURITY.md; the paragraph predates the current Runtime Host wiring.
Environment
- Maka commit:
2b5dd8a8716cc90fcc2ca9bd50837efd21875a94
- OS used for runtime verification: macOS
- Surface: Runtime Host, builtin Bash/file tools, integrated terminal
Logs, screenshots, or additional context
Relevant history:
Acceptance criteria:
What happened
SECURITY.mdcurrently says that product compositions do not route command execution through the macOS Seatbelt transformer, so it is not a product boundary:That statement is stale at
2b5dd8a8716cc90fcc2ca9bd50837efd21875a94.Runtime Host now creates a builtin
SandboxManagerand sandboxedFilesystemWorkerClient, then injects both into the builtin tool composition:packages/runtime-host/src/server/execution-composition.ts:297-320packages/runtime-host/src/server/execution-composition.ts:353-364The conflict is limited: it would also be incorrect to claim that every tool or profile is sandboxed.
runtime.resource.start)Bypass, unrestricted, disabled, and external profiles do not add a Maka-managed local sandbox.
workspace-writealso permits the configured temporary roots, not only the workspace.This is a documentation-consistency bug, not a report of a demonstrated sandbox escape.
Expected behavior: the security policy and runtime sandbox README describe the same product boundary and distinguish the OS-user-account trust envelope, per-command OS enforcement, and in-process permission heuristics.
How to reproduce
2b5dd8a8716cc90fcc2ca9bd50837efd21875a94.SECURITY.md:83-102withpackages/runtime/src/sandbox/README.md:49-68.builtin-tools.ts:295-325andshell-tools.ts:288-326.filesystem-executor.ts:178-248.runtime-resource-coordinator.ts:357-398, which launches the integrated-terminal host PTY.git blame -L 97,102 SECURITY.md; the paragraph predates the current Runtime Host wiring.Environment
2b5dd8a8716cc90fcc2ca9bd50837efd21875a94Logs, screenshots, or additional context
Relevant history:
79e1bdc430: introduced the currentSECURITY.mdparagraph (fix: consolidate runtime documentation facts #852).959057b1e: added Bash sandbox enforcement (feat(runtime): enforce one-shot Bash sandbox permissions #977).91fde26e0: added sandboxed file-tool execution (feat(runtime): apply one-shot permissions to sandboxed file tools #983).0fe34a742: introduced session execution boundaries (feat: replace tool permissions with session sandbox boundaries #1581).aca77afe7: wired the sandbox manager and filesystem worker into Runtime Host (feat(runtime-host): own runtime resources #1722).d3a21f998: added the Windows AppContainer filesystem-worker surface (feat(windows): add brokered AppContainer sandbox support #2961).8e767eb2b: restored live sandbox context and bounded negotiation (fix(runtime): restore sandbox context and bound boundary negotiation #3496).Acceptance criteria: