Skip to content

Configuration

sarr-io edited this page Jun 19, 2026 · 20 revisions

Configuration

Zinc reads config from the first file it finds:

.zinc/config.yaml
~/.zinc/config.yaml

Workspace config wins over global config. Zinc does not merge the two.

Current config

runtime:
  parallel: 4

packages:
  openai-responses:
    packet_limit: 1048576
  unix-bash:
    packet_limit: 262144
  powershell:
    packet_limit: 262144

Runtime

runtime:
  parallel: 4

runtime.parallel limits concurrent surface invocations in one ready wave.

It is not a total run limit. It is not a worker pool setting. It is the maximum number of ready package calls Zinc may start together before waiting for that wave to finish.

If runtime.parallel is absent, Zinc runs ready entries serially.

Package packet limits

packages:
  openai-responses:
    packet_limit: 1048576
  unix-bash:
    packet_limit: 262144

packages.<name>.packet_limit controls how many trailing bytes Zinc stores for YAML packets from that package.

Zinc chooses the package from the executed surface:

openai-responses.responses -> openai-responses
unix-bash.bash             -> unix-bash

If a package has no packet limit configured, Zinc uses its internal default.

Shape execution

Executable entries still name their surface directly:

shell:
  status:
    surface: unix-bash.bash
    in:
      command: $command
    out:
      output: $output
      exit: $exit

Config does not choose the surface. The shape entry chooses the surface.

Clone this wiki locally