Welcome to snmpd-pyagentx project page.
First of all, this is not pure-python implementation of AgentX extensibility protocol, defined by rfc2741. Instead, it uses net-snmp project libraries' AgentX protocol implementation, calling .so wrapper handlers for parsed requests, which just proxies these calls to python code where all the processing happens. Return values are set (proxied) via same wrapper API calls.
Basically, I just took somewhat incomplete and lacking snmp_agent_api(3) implementation ideas from python-agentx project and stripped it of as most C-based logic as possible, since it's the most buggy, hard to debug, inflexible and restricting element from python-based development perspective, then adding basic python implementation of a handler for common SNMP queries.
I'm also quite new to SNMP and it's concepts and due to a limited time mostly build functionality not by implementing standards, but rather on reverse engineering-like basis, implementing correct handling of specific query types, so any corrections are greatly appreciated.
Overall goal is to leave C layer as thin as possible, extending python logic mainly to provide a bit more convenient and uniform interface, documenting it on the way. Complete by-the-book implementation for handling all SNMP calls isn't the primary goal at the moment, so is compatibility with any other AgentX interfaces beyond net-snmp project snmpd.