displayName
amux-triggers action step 8: Run agent-mux
order
8
stepName
Run agent-mux
shell
bash
stepId
amux
workingDirectory
${{ inputs.working-directory }}
conditional
${{ steps.trigger.outputs.matched == 'true' }}
envVars
- ACTION_ROOT=${{ github.action_path }}
- INPUT_COMMAND=${{ inputs.command }}
- INPUT_ARGS=${{ inputs.args }}
- INPUT_ARGS_JSON=${{ inputs.args-json }}
- INPUT_ADAPTER=${{ inputs.adapter }}
- INPUT_PROMPT=${{ inputs.prompt }}
- AMUX_TRIGGER_EVENT_PATH=${{ steps.trigger.outputs.event }}
runScript
set -euo pipefail
REPO_ROOT=$(cd "$ACTION_ROOT/../.." && pwd)
ARGS=("$INPUT_COMMAND")
if [ -n "$INPUT_ADAPTER" ]; then
ARGS+=(--agent "$INPUT_ADAPTER")
fi
if [ -n "$INPUT_PROMPT" ]; then
ARGS+=(--prompt "$INPUT_PROMPT")
fi
if [ -n "$INPUT_ARGS_JSON" ]; then
mapfile -t EXTRA_ARGS < <(node -e "const value = JSON.parse(process.env.INPUT_ARGS_JSON || '[]'); if (!Array.isArray(value)) throw new Error('args-json must be a JSON array'); for (const item of value) console.log(String(item));")
ARGS+=("${EXTRA_ARGS[@]}")
elif [ -n "$INPUT_ARGS" ]; then
read -r -a EXTRA_ARGS <<< "$INPUT_ARGS"
ARGS+=("${EXTRA_ARGS[@]}")
fi
if node "$REPO_ROOT/packages/agent-mux/sdk/dist/bin/amux.js" "${ARGS[@]}"; then
echo "exit-code=0" >> "$GITHUB_OUTPUT"
else
status=$?
echo "exit-code=$status" >> "$GITHUB_OUTPUT"
exit "$status"
fi
sourceCitation
packages/triggers/action.yml:185-221