botcage, trading permissions for Solana LOCAL EXECUTION
Permission Circuit
A bot can trade.
It should not own the wallet.
Run a trade request through seven policy checks in your browser. An allowed request updates the session budget. A rejection stops at its first failed check.
REQ 010.030 SOLPumpSwap
EXECUTION RESULT0 / 7 CHECKS
QUEUED
Local transaction requestSESSION BUDGET USED60%
authorize.ts L27Source
Request entry0.030 SOL · PumpSwap
export function authorize(session: Session, vault: Vault, req: Request): Decision {- VAULT BALANCE SOL
- 0.500
- PER-TRADE CAP SOL
- 0.050
- SESSION BUDGET SOL
- 0.200
- SPENT SOL
- 0.120
- REMAINING SOL
- 0.080
- 01Request created
- 02Checking
- 03Allow / deny
- 04Result recorded
test a request
ALLOWLIST PumpSwap / SESSION ActiveAuto starts each case from the baseline. Manual requests share one balance. Replay uses the original request without recording it twice.
policy trace
0 / 7 CHECKS| # | RULE | RESULT | OBSERVED |
|---|---|---|---|
| 01 | Revocation | WAIT | — |
| 02 | Session clock | WAIT | — |
| 03 | Program scope | WAIT | — |
| 04 | Positive amount | WAIT | — |
| 05 | Per-trade cap | WAIT | — |
| 06 | Session budget | WAIT | — |
| 07 | Vault balance | WAIT | — |
