@gencode/uni
v0.3.0
Published
Independent unified agent runtime for AIMax.
Readme
@gencode/uni
Independent unified agent runtime for AIMax.
@gencode/uni does not reuse the existing @gencode/cli or @gencode/agents
run pipeline. It provides:
runUni()for one-shot execution- pluggable runtime agents (
claude-code,codex,opencode,pi,acp) - callback and websocket transports
- a normalization layer that maps provider-native output to
@gencode/sharedrun events
This package is intentionally standalone. Existing CLI integration remains a separate concern.
CLI
@gencode/uni also exposes a standalone binary:
gencode-uni run \
--runtime-agent codex \
--data-dir /data/user1 \
--message "Review this repository" \
--output jsonl \
--runtime-cli-path "codex --proxy" \
--runtime-mode full-auto \
--runtime-provider-base-url https://relay.example.com/v1The command keeps the current aimax run parameter surface for core fields and
adds runtime-specific flags inspired by reference/cc-connect, such as:
--runtime-cli-path--runtime-cli-args-flag--runtime-mode--runtime-reasoning-effort--runtime-router-url--runtime-router-api-key--runtime-codex-home--runtime-provider-env--runtime-provider-header
Smoke Tests
Provider-specific helper scripts live in scripts/:
scripts/test-claude-run.shscripts/test-codex-run.shscripts/test-opencode-run.sh
To run the OpenCode provider through @gencode/uni:
cd source/packages/uni
./scripts/run-opencode-with-uni.sh "Summarize this repository"The helper defaults to UNI_OUTPUT=jsonl, so callback-compatible events are
written to stdout one JSON object per line as the provider emits them. Use
UNI_OUTPUT=json when you need the final aggregated result object instead.
Useful overrides:
OPENCODE_BIN=/path/to/opencode \
UNI_DATA_DIR=/tmp/aimax-uni \
UNI_PROJECT_DIR=/path/to/repo \
UNI_RUNTIME_PROVIDER_API_KEY="$OPENAI_API_KEY" \
UNI_RUNTIME_PROVIDER_BASE_URL="https://api.example.com/v1" \
UNI_RUNTIME_PROVIDER_MODEL="gpt-4.1" \
./scripts/run-opencode-with-uni.sh "Review the current project"