program: X84Program as its first argument and returns an object containing the built TransactionInstruction along with any derived PDAs.
Admin
initialize
Creates the ProtocolConfig PDA and Metaplex Core Collection NFT. This is a one-time setup instruction.updateConfig
Update protocol parameters. Only non-null fields are modified.Identity
registerAgent
Register a new agent. Mints a Metaplex Core NFT — the mint pubkey becomes theagent_id.
updateAgentMetadata
Update the metadata URI and hash for an agent. Supports delegation — pass adelegationPda if the caller is a delegate.
deactivateAgent
Deactivate an agent. The agent will be marked inactive and most operations will fail withAgentInactive.
reactivateAgent
Reactivate a previously deactivated agent.claimAgent
Called by the new NFT holder after transfer. Incrementsowner_version, which invalidates all existing delegations.
setFeedbackAuthority
Change the feedback authority keypair for an agent.Service
addService
Register a service endpoint for an agent. Each agent can have one service perServiceType.
updateService
Update the endpoint or version for an existing service.removeService
Close the service PDA. Rent is refunded to the caller.Reputation
giveFeedback
Submit feedback for an agent. Requires an Ed25519 signature from the agent’s feedback authority to prevent spam.feedbackAuthoritySecretKey (the secret key bytes), the SDK will automatically construct the Ed25519 verification instruction. Otherwise, you must provide the pre-computed signature in feedbackAuth and build the Ed25519 instruction yourself.
revokeFeedback
Revoke a previously submitted feedback entry. Only the original reviewer can revoke.Validation
Validation is a 2-step process: the agent owner requests validation from a specific validator, then the validator submits their assessment.validationRequest
Request a validator to assess the agent.validationResponse
Validator submits their assessment. TherequestHash must match the original request.
Delegation
DelegationBuilder
TheDelegationBuilder provides a fluent API for constructing delegations with granular permissions and constraints.
Constraint methods