Configures the iii engine via iii-config.yaml — workers, adapters, queue configs, ports, and environment variables. Use when deploying, tuning, or customizing the engine.
66
78%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/iii-engine-config/SKILL.mdComparable to: infrastructure as code, worker manifests, runtime policy config
Use the concepts below when they fit the task. Not every deployment needs all workers or adapters.
${VAR:default} syntax (default is optional)iii worker CLIThe engine loads YAML config at startup, expands environment variables, initializes modules and built-in daemons, opens configured ports, starts the worker manager, then installs or starts managed workers. SDK workers connect over WebSocket; registry-managed binary and OCI workers can be reproduced from iii.lock.
| Worker / Config | Purpose |
|---|---|
iii-http | HTTP API server (port 3111) |
iii-stream | WebSocket streams (port 3112) |
iii-state | Persistent key-value state storage |
iii-queue | Background job processing with retries |
iii-pubsub | In-process event fanout |
iii-cron | Time-based scheduling |
iii-sandbox | MicroVM command/filesystem isolation |
shell | Controlled host/sandbox command and file tools |
iii-directory | Engine/registry/skills discovery |
iii-observability | OpenTelemetry traces, metrics, logs |
iii-http-functions | Outbound HTTP call security |
iii-exec | Spawn external processes |
iii-bridge | Distributed cross-engine invocation |
iii-telemetry | Anonymous product analytics |
iii-worker-manager | Worker connection lifecycle and RBAC listeners |
iii-worker-ops | Worker lifecycle operations |
iii-engine-functions | Built-in engine functions |
iii.lock | Reproducible managed-worker lockfile |
iii worker sync --frozen | Verify lockfile without mutation |
See ../references/iii-config.yaml for the full working example — a complete engine configuration with all workers, adapters, queue configs, and environment variable patterns.
Code using this pattern commonly includes, when relevant:
iii --config ./config.yaml — start the engine with a config filedocker pull iiidev/iii:latest — pull the Docker imagestore_method: file_based with file_path: ./data/...redis_url: ${REDIS_URL}amqp_url: ${AMQP_URL} and queue_mode: quorumqueue_configs with max_retries, concurrency, type, backoff_ms per queue nameport: ${III_PORT:49134}curl http://127.0.0.1:3111/healthiii-worker-manager with listener host, port, middleware_function_id, and rbaciii-observabilityWorkers use name: and optional config::
workers:
- name: iii-http
config:
port: 3111
host: 127.0.0.1
- name: iii-state
config:
adapter:
name: kv
config:
store_method: file_based
file_path: ./data/state_store.db
- name: iii-queue
config:
adapter:
name: builtin
config:
store_method: file_based
file_path: ./data/queue_store
- name: iii-stream
config:
port: 3112
host: 127.0.0.1
adapter:
name: kv
config:
store_method: file_based
file_path: ./data/stream_store
- name: iii-cron
config:
adapter:
name: kv
- name: iii-pubsub
config:
adapter:
name: local
- name: iii-observability
config:
enabled: true
service_name: my-service
exporter: memory
sampling_ratio: 1.0
metrics_enabled: true
logs_enabled: true
- name: iii-sandbox
config:
auto_install: true
image_allowlist:
- python
- nodeiii worker add NAME[@VERSION].ghcr.io/org/worker:tag.iii.lock records resolved binary artifacts or OCI image digests for reproducible installs.iii.lock with config. Use iii worker verify in CI and iii worker sync after cloning.iii-worker-lifecycle and iii-worker-lockfile for command-level guidance.iii-worker-manager listener.auth_function_id returns allowed and forbidden functions, trigger type permissions, registration permission, registration prefix, and context.forbidden_functions override exposure filters.iii-worker-rbac for policy examples and agent behavior.Use the adaptations below when they apply to the task.
iii worker add to add registry-managed workers, then commit both config and iii.lockmax_retries and backoff_ms based on your failure tolerance and SLA requirementsiii-observability with your collector endpoint and sampling ratiohost: 127.0.0.1 instead of host: localhost to avoid IPv4/IPv6 mismatches on macOSiii-http-endpoints.iii-queue-processing.iii-cron-scheduling.iii-observability.iii-realtime-streams.iii-worker-lifecycle.iii-worker-catalog.iii-worker-lockfile.iii-worker-rbac.iii-engine-config when the primary problem is configuring or deploying the engine itself.iii-engine-config in the iii engine.a7ebbbb
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.