This guide outlines the prerequisites, installation steps, and basic usage instructions for setting up and running the Teeception platform, including its agents and Chrome extension.
- Go ≥ 1.23.0
- Starknet Foundry (snforge) for smart contract development
GitHub: starknet-foundry - Node.js & npm for contract deployment and extension development
- Twitter/X account, ProtonMail account, and OpenAI API key
- Chrome or Brave browser for loading and testing the extension
-
Clone the repository:
git clone https://github.com/NethermindEth/teeception.git cd teeception -
Install Go dependencies:
go mod download
-
Install Starknet Foundry:
curl -L https://raw.githubusercontent.com/foundry-rs/starknet-foundry/master/scripts/install.sh | sh snfoundryup -
Install contract dependencies:
cd contracts scarb install -
Install and build the extension:
cd ../extension npm install npm run build -
Set up environment variables:
cp .env.example .env
Required environment variables:
Starknet Configuration:
STARKNET_ACCOUNT: Your Starknet account addressSTARKNET_PRIVATE_KEY: Your Starknet private keySTARKNET_RPC: RPC endpoint URL
Twitter/X Configuration:
X_USERNAME: Your Twitter/X usernameX_PASSWORD: Your Twitter/X passwordX_CONSUMER_KEY: Twitter API consumer keyX_CONSUMER_SECRET: Twitter API consumer secretX_LOGIN_SERVER: Login server details
ProtonMail Configuration:
PROTONMAIL_EMAIL: Your ProtonMail email addressPROTONMAIL_PASSWORD: Your ProtonMail password
AI Configuration:
OPENAI_API_KEY: Your OpenAI API key
Phala Configuration:
PHALA_API_URL: Phala API endpointPHALA_WORKER_ID: Phala worker identifier
The agent:
- Secures and updates credentials (Twitter, ProtonMail, Starknet)
- Monitors Twitter feed and executes relevant Starknet transactions
- Utilizes OpenAI's API for being sentient
- Manages state and error handling gracefully
Start the agent locally:
go run cmd/agent/main.goThe extension is built with Vite and TypeScript.
Development server:
cd extension
npm run devLoad the extension in Chrome:
- Open
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked"
- Select
extension/dist
Production build:
npm run buildThe extension auto-reloads during development as changes are made.