|
|
3 mesi fa | |
|---|---|---|
| .. | ||
| config | 0bb45b51c5 feat(pyth-lazer-agent) Allow conditionally disabling success responses (#2896) | 3 mesi fa |
| src | 0bb45b51c5 feat(pyth-lazer-agent) Allow conditionally disabling success responses (#2896) | 3 mesi fa |
| .dockerignore | 6fd4328f82 pyth-lazer-agent fixes, tests, ci | 5 mesi fa |
| .gitignore | 6fd4328f82 pyth-lazer-agent fixes, tests, ci | 5 mesi fa |
| Cargo.toml | 0bb45b51c5 feat(pyth-lazer-agent) Allow conditionally disabling success responses (#2896) | 3 mesi fa |
| Dockerfile | e27eb2b284 fix(pyth-lazer-agent): logging tweaks, cargo update, Dockerfile fix | 5 mesi fa |
| README.md | 0bb45b51c5 feat(pyth-lazer-agent) Allow conditionally disabling success responses (#2896) | 3 mesi fa |
pyth-lazer-agent is intended to be run by Lazer publishers analogous to pyth-agent for pythnet publishers. Currently, it retains the existing Lazer publishing interface, but will batch and sign transactions before publishing them to Lazer.
You will need to generate an ed25519 keypair and provide the pubkey to the Lazer team. solana-keygen is the recommended utility.
solana-keygen new -o /path/to/keypair.json
solana-keygen pubkey /path/to/keypair.json
pyth-lazer-agent will need to configure access to this keypair file to sign transactions.
# Download the cargo package
cargo install pyth-lazer-agent
# Add .cargo/bin to PATH
export PATH="$PATH:~/.cargo/bin"
# Run the agent
pyth-lazer-agent --help
Please check rust-toolchain to see the version of Rust needed to build (currently 1.88).
You will also need SSL and CA certificates. cargo build should then work as usual.
See the included Dockerfile to build an image yourself.
We also publish images to the GitHub Container Registry.
The latest will be available at ghcr.io/pyth-network/pyth-lazer-agent:latest.
The agent takes a single --config CLI option, pointing at
config/config.toml by default. Configuration is currently minimal:
relayer_urls = ["wss://relayer.pyth-lazer-staging.dourolabs.app/v1/transaction", "wss://relayer-1.pyth-lazer-staging.dourolabs.app/v1/transaction"]
publish_keypair_path = "/path/to/keypair.json"
authorization_token = "your_token"
listen_address = "0.0.0.0:8910"
publish_interval_duration = "25ms"
relayers_urls: The Lazer team will provide these.publish_keypair_path: The keypair file generated with solana-keygen or similar.authorization_token: The Lazer team will provide this or instruct that it can be omitted.listen_address: The local port the agent will be listening on; can be anything you want.publisher_interval: The agent will batch and send transaction bundles at this interval. The Lazer team will provide guidance here.