Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Relates to:
Risks
Low as this is an optional plugin to include for TEE based agents.
Background
Create a boilerplate plugin for deploying agents in TEE and provide 2 key functions for agents:
Optimize Docker Container to reduce size from 11.1GB to <6GB based on comment from [tebayoso] (#293 (comment)) in original docker PR #293
What does this PR do?
What kind of change is this?
Features
Why are we doing this? Any context or related work?
Autonomous Agents that trade onchain have a root of trust problem that requires a human to generate a wallet and provide a private key as part of the environment variables. This is a problem since humans can easily inject themselves into the process and make it easy for them to build ruggable agents. This solution aims to give users some verifiability with remote attestation and allow agents to autonomously generate their wallet within the TEE based on a secret salt instead of a private key. Now agents have a the autonomy to perform actions onchain without the possibility of a human manipulating the wallet since the human can no longer know what the private key since it is generated within the TEE.
Documentation changes needed?
Testing
Where should a reviewer start?
First a developer should use a Ubuntu 24.04 linux machine for best simulation. Character file must include teePlugin.
Detailed testing steps
Run TEE Simultator with docker (make sure docker is started)
Edit Character File to use teePlugin and install
Build your project
(Optional) For users running on Mac or Windows update .env file
Launch your agent
If you want to run on Intel TDX Server
Reach out to Phala Network team or me @HashWarlock to help get you deployed on a real TEE server through our TaaS Force team.