Pact runs your team’s treasury from Telegram. An AI agent does the money work: it pays vendors and contributors, trades for the treasury, and pays for the services it uses. One policy, stored onchain, sets the limits for all of it. Inside the policy, things go through on their own. Outside it, the request is refused and recorded onchain with the reason. The agent can only propose. A smart contract on Solana or Cardano checks every request against your team’s policy and decides.
Pact is in development and not yet open to teams. These pages describe how Pact works in the beta. Pages marked Coming with the beta describe features that are being built. What works today lists exactly what runs now.

How a payment works

1

Someone asks in the chat

A teammate mentions @pact with an invoice: “Week 41, $450.”
2

The agent proposes the payment

The agent matches the address to a payee on your allowlist and proposes the payment.
3

The chain checks your policy

Inside your caps and budget, it pays at once. Over a cap, or to an address that isn’t an active payee, it’s refused and nothing moves.
4

Everyone sees the result

The bot posts the receipt or the refusal in the chat, with a block explorer link anyone can check.
Trades and the agent’s service payments go through the same check.

Start here

Set up Pact

Add Pact to your team chat, connect your treasury, and choose Solana or Cardano.

Set your policy

Decide what the agent can pay, trade, and spend, and how much.

Payees and address checks

How payees join your allowlist, and how Pact catches lookalike addresses.

When Pact says no

What a refusal means, and how to check it onchain yourself.