This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
python app.pyServer runs at http://0.0.0.0:5050.
Install with:
pip install -r requirements.txtSingle-file Flask app (app.py) acting as a proxy API for Free Fire's friend management endpoints.
- Client sends
uid,password,friend_uid→ this API - This API calls a local token service (
localhost:5000/token) to get a JWT - This API crafts an encrypted payload and proxies it to Free Fire's backend (
clientbp.ggpolarbear.com)
GET /add— Send friend request. Uses a customEncrypt_ID()encoding on the friend UID + hardcoded hex payload structure, then AES-CBC encrypts the whole thing.GET /remove— Remove friend. Serializes a Protobuf message (RemoveFriendwithAuthorUid/TargetUid), then AES-CBC encrypts it.
Both endpoints share the same auth flow (get_token) and request headers.
- AES key/IV are hardcoded byte arrays in
app.py - JWT is decoded without signature verification (
options={"verify_signature": false}) ReleaseVersionheader isOB54(Free Fire OB build version)- Protobuf descriptor for
RemoveFriendis embedded as a serialized binary string in the source (line 21) Encrypt_ID()is a custom encoding that repeatedly divides by 128, not a standard algorithm- No tests, no lint config, no CI
flask, requests, pyjwt, pycryptodome, protobuf