// the find
aristanetworks/EosSdk
EOS SDK - write native apps for your Arista switch
EosSdk lets you write native agents that run directly on Arista switches, hooking into EOS's event loop for things like BGP path manipulation, custom routing, MPLS, DirectFlow programming, and interface monitoring. This repo ships the stub/mock layer for off-switch development and testing — the real SDK RPMs come separately from Arista's download portal. It's for network engineers who need behavior that EOS CLI and eAPI can't express.
The event-driven model is the right abstraction for network state changes — you register handlers and react, rather than polling. The stub layer is a genuine win: you can build and test agents on a Linux workstation without touching hardware. Language coverage is solid — C++, Python, and Go bindings via SWIG, with a large example library covering BFD, MPLS, LAG, policy maps, and more. The module decomposition in eos/ is clean; each protocol area is its own header with a companion types file, so you only pull in what you need.
The build system is autotools in 2026, which is a real friction point — no CMake, no pkg-config support that integrates cleanly with modern toolchains. CI is Travis, which has been effectively dead for open source for years; the .travis.yml is not going to run. The stub mocks are partial by design ('to a certain extent'), meaning local tests can pass while on-switch behavior diverges in ways that only show up on real hardware. 166 stars for a vendor SDK that's been around this long signals limited community adoption — this is essentially an Arista-internal tool that happens to be public, so community bug fixes and examples from non-Arista contributors are sparse.