Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 13 additions & 2 deletions docs/AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ npx skills add base/base-skills
|apps:index
|apps/builder-codes:agent-developers,app-developers,builder-codes,wallet-developers
|apps/growth:rewards
|apps/guides:accept-b20-payments,migrate-to-standard-web-app
|apps/guides:accept-b20-payments,migrate-to-standard-web-app,verify-onchain
|apps/quickstart:build-app,deploy-on-base
|apps/resources:design-resources,templates
|apps/technical-guides:base-notifications
Expand Down Expand Up @@ -93,7 +93,18 @@ npx skills add base/base-skills
|base-chain/specs/protocol/proofs:challenger,contracts,index,proposer,registrar,tee-prover,zk-prover
|base-chain/specs/reference:configurability,glossary
|base-chain/specs/upgrades/azul:exec-engine,node-upgrade,overview,proofs
|base-chain/specs/upgrades/beryl:b20-playground,b20,overview
|base-chain/specs/upgrades/beryl:b20-playground,overview
|base-chain/specs/upgrades/beryl/b20/specification:index,overview
|base-chain/specs/upgrades/beryl/b20/specification/concepts:architecture-and-precompiles,policies-and-scopes,roles-and-access-control,token-lifecycle,variants-asset-vs-stablecoin
|base-chain/specs/upgrades/beryl/b20/specification/implementation:deployment-and-initcalls-encoding,policy-configuration-in-code,testing-against-precompiles,working-with-base-std
|base-chain/specs/upgrades/beryl/b20/specification/reference:constants-and-addresses,errors-and-events-index
|base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces:IActivationRegistry,IB20,IB20Asset,IB20Factory,IB20Stablecoin,IPolicyRegistry
|base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces/IActivationRegistry:activate,admin,checkActivated,deactivate,isActivated
|base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces/IB20:BURN_BLOCKED_ROLE,BURN_ROLE,DEFAULT_ADMIN_ROLE,DOMAIN_SEPARATOR,METADATA_ROLE,MINT_RECEIVER_POLICY,MINT_ROLE,PAUSE_ROLE,SEIZE_HOLDER_POLICY,SEIZE_ROLE,TRANSFER_EXECUTOR_POLICY,TRANSFER_RECEIVER_POLICY,TRANSFER_SENDER_POLICY,UNPAUSE_ROLE,allowance,approve,balanceOf,burn,burnWithMemo,contractURI,decimals,eip712Domain,getRoleAdmin,grantRole,hasRole,isPaused,mint,mintWithMemo,name,nonces,pause,pausedFeatures,permit,policyId,renounceLastAdmin,renounceRole,revokeRole,seizeWithMemo,setRoleAdmin,supplyCap,symbol,totalSupply,transfer,transferFrom,transferFromWithMemo,transferWithMemo,unpause,updateContractURI,updateName,updatePolicy,updateSupplyCap,updateSymbol
|base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces/IB20Asset:OPERATOR_ROLE,WAD_PRECISION,announce,batchMint,cancelScheduledMultiplier,extraMetadata,isAnnouncementIdUsed,multiplier,scaledBalanceOf,setUIMultiplier,toRawBalance,toScaledBalance,updateExtraMetadata,updateMultiplier
|base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces/IB20Factory:createB20,getB20Address,isB20,isB20Initialized
|base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces/IB20Stablecoin:currency
|base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces/IPolicyRegistry:compositePolicyChildIds,createCompositePolicy,createPolicy,createPolicyWithAccounts,finalizeUpdateAdmin,isAuthorized,pendingPolicyAdmin,policyAdmin,policyExists,renounceAdmin,stageUpdateAdmin,updateAllowlist,updateBlocklist,updateComposite
|base-chain/specs/upgrades/canyon:overview
|base-chain/specs/upgrades/cobalt:eip-8130
|base-chain/specs/upgrades/delta:overview,span-batches
Expand Down
2 changes: 1 addition & 1 deletion docs/apps/guides/accept-b20-payments.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,6 @@ Call `publicClient.simulateContract` with the same arguments before sending. It

## Related pages

- [B20 token standard](/base-chain/specs/upgrades/beryl/b20): the full interface, including memos, policies, pausing, and roles.
- [B20 token standard](/base-chain/specs/upgrades/beryl/b20/specification/overview): the full interface, including memos, policies, pausing, and roles.
- [Query B20 events](https://docs.cdp.coinbase.com/data/sql-api/b20-events): index `Transfer` and `Memo` events with the CDP SQL API to reconcile payments against orders at scale.
- [Launch a B20 token](/get-started/launch-b20-token): create your own B20 token.
9 changes: 9 additions & 0 deletions docs/base-chain/llms-full.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,15 @@
### Introduction
- [Chain Overview](https://docs.base.org/base-chain/overview.md) — Entry point for Base Chain docs

### B20 Token Standard
- [B20 token standard](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/overview.md) — Base-native ERC-20 superset implemented as Rust precompiles
- [Architecture & precompiles](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/concepts/architecture-and-precompiles.md) — Fixed precompiles, activation gates, and deterministic token addresses
- [Policies & scopes](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/concepts/policies-and-scopes.md) — Token policy slots, PolicyRegistry pointers, built-ins, and composite policies
- [Roles & access control](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/concepts/roles-and-access-control.md) — Built-in roles, user-defined role limits, and admin renunciation
- [Token lifecycle](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/concepts/token-lifecycle.md) — Creation, initCalls, operation, memos, pausing, seizure, and admin renunciation
- [Variants: Asset vs Stablecoin](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/concepts/variants-asset-vs-stablecoin.md) — Variant choice, Asset extras, and Stablecoin currency
- [B20 reference](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces/IB20.md) — Generated interface reference from base-std NatSpec

### Core Concepts
- [Transaction Ordering](https://docs.base.org/base-chain/network-information/transaction-ordering.md) — How blocks are ordered on Base
- [Transaction Finality](https://docs.base.org/base-chain/network-information/transaction-finality.md) — Detailed information about transaction finality on Base
Expand Down
7 changes: 7 additions & 0 deletions docs/base-chain/llms.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,13 @@
## Introduction
- [Chain Overview](https://docs.base.org/base-chain/overview.md) — Start here for Base Chain docs, including concepts, network reference, node operation, APIs, and protocol specifications.

## B20 Token Standard
- [B20 token standard](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/overview.md) — ERC-20-compatible native token standard with policy scopes, roles, memos, pausing, supply caps, and variants
- [Policies & scopes](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/concepts/policies-and-scopes.md) — How B20 token scopes point to PolicyRegistry policy IDs
- [Policy configuration in code](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/implementation/policy-configuration-in-code.md) — Read, audit, create, and bind policies from Solidity
- [Deployment & initCalls encoding](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/implementation/deployment-and-initcalls-encoding.md) — Use B20FactoryLib to deploy and bootstrap tokens atomically
- [B20 constants & addresses](https://docs.base.org/base-chain/specs/upgrades/beryl/b20/specification/reference/constants-and-addresses.md) — Fixed precompile addresses, roles, scopes, variant bytes, and policy IDs

## Core Concepts
- [Transaction Ordering](https://docs.base.org/base-chain/network-information/transaction-ordering.md) — How blocks are ordered on Base
- [Transaction Finality](https://docs.base.org/base-chain/network-information/transaction-finality.md) — Detailed information about transaction finality on Base
Expand Down
8 changes: 4 additions & 4 deletions docs/base-chain/specs/upgrades/beryl/b20-playground.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ B20 is a superset of ERC-20: every ERC-20 call works unchanged, so there's no co

## A compliance order arrives

A court order targets one account. Freeze it so it can't send, then seize the balance with one call. Seizure only works on an account that is already frozen. Every other holder is untouched and the token keeps trading. See [transfer policies](/base-chain/specs/upgrades/beryl/b20#policy-integration) and [burn](/base-chain/specs/upgrades/beryl/b20#burn) in the spec.
A court order targets one account. Freeze it so it can't send, then seize the balance with one call. Seizure only works on an account that is already frozen. Every other holder is untouched and the token keeps trading. See [transfer policies](/base-chain/specs/upgrades/beryl/b20/specification/concepts/policies-and-scopes) and [freeze-and-seize](/base-chain/specs/upgrades/beryl/b20/specification/concepts/token-lifecycle#freeze-and-seize) in the docs.

<Visibility for="humans">
<B20FlowDemo flow="seize" />
Expand All @@ -32,15 +32,15 @@ Your customer pays to one address. The transfer carries the invoice reference, s

## A new user approves without gas

A new user shouldn't have to buy ETH first. With `permit`, they sign an approval offchain and your platform relays it. They start transacting with zero gas, and nonces stop signature replay. See [permit](/base-chain/specs/upgrades/beryl/b20#erc-2612-permit--eip-712) in the spec.
A new user shouldn't have to buy ETH first. With `permit`, they sign an approval offchain and your platform relays it. They start transacting with zero gas, and nonces stop signature replay. See [permit](/base-chain/specs/upgrades/beryl/b20/specification/reference/interfaces/IB20/permit) in the spec.

<Visibility for="humans">
<B20FlowDemo flow="permit" />
</Visibility>

## The stock splits

A 2-for-1 split is one call. Every balance doubles without a migration or a new contract. Dividends run inside a public announcement window, so the disclosure lives onchain next to the action. The token also stores identifiers like a CUSIP. See the [Asset variant](/base-chain/specs/upgrades/beryl/b20#asset) in the spec.
A 2-for-1 split is one call. Every balance doubles without a migration or a new contract. Dividends run inside a public announcement window, so the disclosure lives onchain next to the action. The token also stores identifiers like a CUSIP. See the [Asset variant](/base-chain/specs/upgrades/beryl/b20/specification/concepts/variants-asset-vs-stablecoin#asset-extras) in the spec.

<Visibility for="humans">
<B20FlowDemo flow="equity" />
Expand All @@ -55,7 +55,7 @@ A 2-for-1 split is one call. Every balance doubles without a migration or a new
<Card title="Accept B20 payments" href="/apps/guides/accept-b20-payments">
Integration code for memo-tagged payments and B20-specific reverts.
</Card>
<Card title="B20 native token standard" href="/base-chain/specs/upgrades/beryl/b20">
<Card title="B20 native token standard" href="/base-chain/specs/upgrades/beryl/b20/specification/overview">
Every method, event, role, and policy in the standard.
</Card>
<Card title="Beryl overview" href="/base-chain/specs/upgrades/beryl/overview">
Expand Down
Loading
Loading