Skip to content

Commit 3d4aa87

Browse files
authored
Merge pull request #15093 from ethereum/staging
Deploy v9.7.0
2 parents 1e5dbe5 + 2acc7f9 commit 3d4aa87

File tree

296 files changed

+10048
-1830
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

296 files changed

+10048
-1830
lines changed

.env.example

+2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
# NEXT_PUBLIC_ALGOLIA_APP_ID=insertValue
88
# NEXT_PUBLIC_ALGOLIA_SEARCH_KEY=insertValue
99
# NEXT_PUBLIC_ALGOLIA_BASE_SEARCH_INDEX_NAME=insertValue
10+
11+
# Github token for read-only use with api functions
1012
# NEXT_PUBLIC_GITHUB_TOKEN_READ_ONLY=insertValue
1113

1214
# Etherscan API key (required for Etherscan API fetches)

.eslintrc.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,8 @@
3333
["^@/data"],
3434
// From the `constants` directory.
3535
["^@/lib/constants"],
36-
// From the `.storybook/utils` file
37-
["^@/storybook-utils"],
36+
// `.storybook` directory and utils files`
37+
["^@/storybook","^@/storybook-utils"],
3838
// Parent imports. Put `..` last.
3939
["^\\.\\.(?!/?$)", "^\\.\\./?$"],
4040
// Other relative imports. Put same-folder imports and `.` last.

.storybook/main.ts

+7
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import path from "path"
2+
13
import TsconfigPathsPlugin from "tsconfig-paths-webpack-plugin"
24
import type { StorybookConfig } from "@storybook/nextjs"
35

@@ -51,6 +53,11 @@ const config: StorybookConfig = {
5153
extensions: config.resolve.extensions,
5254
}),
5355
]
56+
57+
config.resolve.alias = {
58+
...config.resolve.alias,
59+
"@/storybook/*": path.resolve(__dirname, "./.storybook/"),
60+
}
5461
}
5562

5663
// This modifies the existing image rule to exclude .svg files

docs/review-process.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ Typographical and grammatical errors are medium-priority as small errors of this
4242

4343
### Adding products
4444

45-
Adding new products is currently a low-to-medium priority (depending on the type of product). These pull requests often take a long time to review as we must extensively research products to ensure we not sending our users to any dubious or unsafe products.
45+
Adding new products is currently a low-to-medium priority (depending on the type of product). These pull requests often take a long time to review as we must extensively research products to ensure we are not sending our users to any dubious or unsafe products.
4646

4747
**Timeline:** PRs should be closed or merged within 30 days of opening.
4848

next.config.js

+8
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,14 @@ module.exports = (phase, { defaultConfig }) => {
5959
// Modify the file loader rule to ignore *.svg, since we have it handled now.
6060
fileLoaderRule.exclude = /\.svg$/i
6161

62+
config.module.rules.push({
63+
test: /\.(mp3)$/,
64+
type: "asset/resource",
65+
generator: {
66+
filename: "static/media/[name][ext]",
67+
},
68+
})
69+
6270
return config
6371
},
6472
trailingSlash: true,

package.json

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "ethereum-org-website",
3-
"version": "9.6.0",
3+
"version": "9.7.0",
44
"license": "MIT",
55
"private": true,
66
"scripts": {
@@ -57,6 +57,7 @@
5757
"ethereum-blockies-base64": "^1.0.2",
5858
"framer-motion": "^10.13.0",
5959
"gray-matter": "^4.0.3",
60+
"howler": "^2.2.4",
6061
"htmr": "^1.0.2",
6162
"lodash.merge": "^4.6.2",
6263
"lodash.shuffle": "^4.2.0",
@@ -67,7 +68,7 @@
6768
"next-sitemap": "^4.2.3",
6869
"next-themes": "^0.3.0",
6970
"prism-react-renderer": "1.1.0",
70-
"prismjs": "^1.27.0",
71+
"prismjs": "^1.30.0",
7172
"react": "^18.2.0",
7273
"react-chartjs-2": "^5.2.0",
7374
"react-dom": "^18.2.0",

public/content/ai-agents/index.md

+96
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
---
2+
title: AI agents
3+
metaTitle: AI agents | AI agents on ethereum
4+
description: An overview of AI agents on ethereum
5+
lang: en
6+
template: use-cases
7+
emoji: ":robot:"
8+
sidebarDepth: 2
9+
image: /images/ai-agents/hero-image.png
10+
alt: People gathered at terminal table
11+
summaryPoint1: AI that interacts with blockchain and trades independently
12+
summaryPoint2: Controls onchain wallets and funds
13+
summaryPoint3: Hires humans or other agents for work
14+
buttons:
15+
- content: What are AI agents?
16+
toId: what-are-ai-agents
17+
- content: Explore agents
18+
toId: ai-agents-on-ethereum
19+
isSecondary: false
20+
---
21+
22+
Imagine navigating Ethereum with an AI assistant that studies on-chain market trends 24/7, answers questions, and even executes transactions on your behalf. Welcome to the world of AI Agents—intelligent systems designed to simplify your digital life.
23+
24+
On Ethereum, we’re seeing innovations of AI agents ranging from virtual influencers and autonomous content creators to real-time market analysis platforms, empowering users by delivering insights, entertainment, and operational efficiency.
25+
26+
## What are AI agents? {#what-are-ai-agents}
27+
28+
AI agents are software programs that use artificial intelligence to perform tasks or make own decisions. They learn from data, adapt to changes, and handle complex tasks. They operate non-stop and can instantly detect opportunities.
29+
30+
### How AI agents work with blockchains {#how-ai-agents-work-with-blockchains}
31+
32+
In traditional finance, AI agents often operate in centralized environments with limited data inputs. This hinders their ability to learn or manage assets autonomously.
33+
34+
In contrast, Ethereum's decentralized ecosystem offers several key advantages:
35+
36+
- <strong>Transparent data:</strong> Access to real-time blockchain information.
37+
- <strong>True asset ownership:</strong> Digital assets are fully owned by AI agents.
38+
- <strong>Robust onchain functionality:</strong> Enables AI Agents to execute transactions, interact with smart contracts, provide liquidity, and collaborate across protocols.
39+
40+
These factors transform AI agents from simple bots into dynamic, self-improving systems that offer significant value across multiple sectors:
41+
42+
<CardGrid className="grid grid-cols-[repeat(auto-fill,_minmax(min(100%,_280px),_1fr))] gap-8">
43+
<Card title="Automated DeFi" emoji=":money_with_wings:" description="AI agents keep a close eye on market trends, execute trades, and manage portfolios — making the complex world of DeFi a lot more approachable."/>
44+
<Card title="New AI agent economy" emoji="🌎" description="AI agents can hire other agents (or humans) with different skills to perform specialized tasks for them." />
45+
<Card title="Risk management" emoji="🛠️" description="By monitoring transactional activities, AI agents can help spot scams and safeguard your digital assets better and faster." />
46+
</CardGrid>
47+
48+
## AI agents on Ethereum {#ai-agents-on-ethereum}
49+
50+
We're beginning to explore the full potential of AI agents, and projects are already leveraging the synergy between AI and blockchain—particularly in transparency and monetization.
51+
52+
<AiAgentProductLists list="ai-agents" />
53+
54+
<strong>Luna's first appearance as a podcast guest</strong>
55+
56+
<YouTube id="ZCsOMxnIruA" />
57+
58+
## Agent-controlled wallets {#agent-controlled-wallets}
59+
60+
Agents like Luna or AIXBT control their own onchain wallet ([AIXBT's wallet](https://clusters.xyz/aixbt), [Luna's wallet](https://zapper.xyz/account/0x0d177181e3763b20d47dc3a72dd584368bd8bf43)) enabling them to tip fans and participate in economic activities.
61+
62+
During Luna's X social campaign #LunaMuralChallenge, Luna selected and rewarded the winners via her Base wallet — marking <strong>the first instance of an AI hiring humans for crypto reward</strong>.
63+
64+
<InfoBanner isWarning emoji="💡">
65+
<p className="mt-0"><strong>Good to know</strong></p>
66+
<p className="mt-2">AI agents and related tools are still in early development and very experimental—use with caution.</p>
67+
</InfoBanner>
68+
69+
## Control your wallet using chat commands {#control-your-wallet-using-chat-commands}
70+
71+
You can skip the complicated interfaces of DeFi and manage your crypto with simple chat commands.
72+
73+
This intuitive approach makes transactions faster, easier, and less prone to errors like sending funds to the wrong address or overpaying for fees.
74+
75+
<AiAgentProductLists list="chat" />
76+
77+
## AI agents vs AI bots {#ai-agents-vs-ai-bots}
78+
79+
The distinction between AI agents and AI bots can sometimes be confusing, as both perform automated actions based on input.
80+
81+
- AI bots are like automated assistants — They follow specific, pre-programmed instructions to perform routine tasks.
82+
- AI agents are more like intelligent companions — They learn from experience, adapt to new information, and make decisions on their own.
83+
84+
| | AI agents | AI bots |
85+
| ------------------------- | ------------------------- | ------------------------- |
86+
| **Interactions** | Complex, adaptable, autonomous | Simple, pre-defined scope, hardcoded |
87+
| **Learning** | Learns continuously, can experiment and adapt to new data in real-time | Operates on pre-trained data or fixed rules |
88+
| **Task completion** | Aims to achieve broader objectives | Focuses on specific tasks only |
89+
90+
## Dive deeper {#dive-deeper}
91+
92+
<AiAgentProductLists list="dive-deeper" />
93+
94+
## You can build your own AI agent {#you-can-build-your-own-ai-agent}
95+
96+
<BuildYourOwnAIAgent />

public/content/community/online/index.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,11 @@ If you believe a community should be added or removed based on these guidelines,
5757
<SocialListItem socialIcon="webpage"><Link href="https://ethereum.stackexchange.com/">Ethereum Stack Exchange</Link> <i>- question and answer forum</i></SocialListItem>
5858
<SocialListItem socialIcon="webpage"><Link href="https://app.peera.ai/">Peera Community Forum</Link> <i>- decentralized question and answer forum</i></SocialListItem>
5959

60-
## YouTube and X formerly (Twitter) {#youtube-and-twitter}
60+
## YouTube and X (formerly Twitter) {#youtube-and-twitter}
6161

6262
<SocialListItem socialIcon="youtube"><Link href="https://www.youtube.com/c/EthereumFoundation">Ethereum Foundation</Link> - Keep up to date with the latest from the Ethereum Foundation</SocialListItem>
63-
<SocialListItem socialIcon="twitter"><Link href="https://x.com/ethereum">@ethereum</Link> - Official account of the Ethereum Foundation</SocialListItem>
63+
<SocialListItem socialIcon="twitter"><Link href="https://x.com/ethereum">@ethereum</Link> - Main Ethereum account for the community</SocialListItem>
64+
<SocialListItem socialIcon="twitter"><Link href="https://x.com/ethereumfndn">@ethereumfndn</Link> - Official account of the Ethereum Foundation</SocialListItem>
6465
<SocialListItem socialIcon="twitter"><Link href="https://x.com/ethdotorg">@ethdotorg</Link> - The portal to Ethereum, built for our growing global community</SocialListItem>
6566
<SocialListItem socialIcon="webpage"><Link href="https://hive.one/c/ethereum?page=1">List of influential Ethereum twitter accounts</Link></SocialListItem>
6667

public/content/decentralized-identity/index.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ These traditional examples of identifiers are issued, held and controlled by cen
3939

4040
1. Decentralized identity increases individual control of identifying information. Decentralized identifiers and attestations can be verified without relying on centralized authorities and third-party services.
4141

42-
2. Decentralized identity solutions facilitates a trustless, seamless, and privacy-protecting method for verifying and managing user identity.
42+
2. Decentralized identity solutions facilitate a trustless, seamless, and privacy-protecting method for verifying and managing user identity.
4343

4444
3. Decentralized identity harnesses blockchain technology, which creates trust between different parties and provides cryptographic guarantees to prove the validity of attestations.
4545

public/content/defi/index.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ One of the best ways to see the potential of DeFi is to understand the problems
3232
- Financial services can block you from getting paid.
3333
- A hidden charge of financial services is your personal data.
3434
- Governments and centralized institutions can close down markets at will.
35-
- Trading hours are often limited to business hours of specific time zone.
35+
- Trading hours are often limited to business hours of a specific time zone.
3636
- Money transfers can take days due to internal human processes.
3737
- There's a premium to financial services because intermediary institutions need their cut.
3838

public/content/developers/docs/data-availability/blockchain-data-storage-strategies/index.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ Calldata refers to the bytes sent as part of the transaction. It is stored as pa
6363

6464
This is the cheapest method to permanently put data in the blockchain. The cost per byte is either 4 execution gas (if the byte is zero) or 16 gas (any other value). If the data is compressed, which is standard practice, then every byte value is equally likely, so the average cost is approximately 15.95 gas per byte.
6565

66-
At writing the prices are 12 gwei/gas and 2300 $/ETH, which means the cost is approximately 45 cents per kilobyte. Because this was the cheapest method prior to EIP-4844, this is the method rollups used to store transaction information, which need to be available for [fault challenges](https://docs.optimism.io/stack/protocol/overview#fault-proofs), but do not need to be accessible directly onchain.
66+
At the time of writing, the prices are 12 gwei/gas and 2300 $/ETH, which means the cost is approximately 45 cents per kilobyte. Because this was the cheapest method prior to EIP-4844, this is the method rollups used to store transaction information, which need to be available for [fault challenges](https://docs.optimism.io/stack/protocol/overview#fault-proofs), but do not need to be accessible directly onchain.
6767

6868
Here are the addresses to see the transactions posted by some famous rollups.
6969

public/content/developers/docs/nodes-and-clients/node-architecture/index.md

+8-6
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,21 @@ description: Introduction to how Ethereum nodes are organized.
44
lang: en
55
---
66

7-
An Ethereum node is composed of two clients: an [execution client](/developers/docs/nodes-and-clients/#execution-clients) and a [consensus client](/developers/docs/nodes-and-clients/#consensus-clients).
7+
An Ethereum node is composed of two clients: an [execution client](/developers/docs/nodes-and-clients/#execution-clients) and a [consensus client](/developers/docs/nodes-and-clients/#consensus-clients). For a node to propose a new block, it must also run a [validator client](#validators).
88

9-
When Ethereum was using [proof-of-work](/developers/docs/consensus-mechanisms/pow/), an execution client was enough to run a full Ethereum node. However, since implementing [proof-of-stake](/developers/docs/consensus-mechanisms/pow/), the execution client needs to be used alongside another piece of software called a [consensus client](/developers/docs/nodes-and-clients/#consensus-clients).
9+
When Ethereum was using [proof-of-work](/developers/docs/consensus-mechanisms/pow/), an execution client was enough to run a full Ethereum node. However, since implementing [proof-of-stake](/developers/docs/consensus-mechanisms/pow/), the execution client must be used alongside another piece of software called a [consensus client](/developers/docs/nodes-and-clients/#consensus-clients).
1010

1111
The diagram below shows the relationship between the two Ethereum clients. The two clients connect to their own respective peer-to-peer (P2P) networks. Separate P2P networks are needed as the execution clients gossip transactions over their P2P network, enabling them to manage their local transaction pool, whilst the consensus clients gossip blocks over their P2P network, enabling consensus and chain growth.
1212

1313
![](node-architecture-text-background.png)
1414

15-
For this two-client structure to work, consensus clients must be able to pass bundles of transactions to the execution client. Executing the transactions locally is how the client validates that the transactions do not violate any Ethereum rules and that the proposed update to Ethereum’s state is correct. Likewise, when the node is selected to be a block producer the consensus client must be able to request bundles of transactions from Geth to include in the new block and execute them to update the global state. This inter-client communication is handled by a local RPC connection using the [engine API](https://github.com/ethereum/execution-apis/blob/main/src/engine/common.md).
15+
_There are several options for the execution client including Erigon, Nethermind, and Besu_.
16+
17+
For this two-client structure to work, consensus clients must pass bundles of transactions to the execution client. The execution client executes the transactions locally to validate that the transactions do not violate any Ethereum rules and that the proposed update to Ethereum’s state is correct. When a node is selected to be a block producer its consensus client instance requests bundles of transactions from the execution client to include in the new block and execute them to update the global state. The consensus client drives the execution client via a local RPC connection using the [Engine API](https://github.com/ethereum/execution-apis/blob/main/src/engine/common.md).
1618

1719
## What does the execution client do? {#execution-client}
1820

19-
The execution client is responsible for transaction handling, transaction gossip, state management and supporting the Ethereum Virtual Machine ([EVM](/developers/docs/evm/)). However, it is **not** responsible for block building, block gossiping or handling consensus logic. These are in the remit of the consensus client.
21+
The execution client is responsible for transaction validation, handling, and gossip, along with state management and supporting the Ethereum Virtual Machine ([EVM](/developers/docs/evm/)). It is **not** responsible for block building, block gossiping or handling consensus logic. These are in the remit of the consensus client.
2022

2123
The execution client creates execution payloads - the list of transactions, updated state trie, and other execution-related data. Consensus clients include the execution payload in every block. The execution client is also responsible for re-executing transactions in new blocks to ensure they are valid. Executing transactions is done on the execution client's embedded computer, known as the [Ethereum Virtual Machine (EVM)](/developers/docs/evm).
2224

@@ -35,15 +37,15 @@ The consensus client does not participate in attesting to or proposing blocks -
3537

3638
## Validators {#validators}
3739

38-
Node operators can add a validator to their consensus clients by depositing 32 ETH in the deposit contract. The validator client comes bundled with the consensus client and can be added to a node at any time. The validator handles attestations and block proposals. They enable a node to accrue rewards or lose ETH via penalties or slashing. Running the validator software also makes a node eligible to be selected to propose a new block.
40+
Staking and running the validator software makes a node eligible to be selected to propose a new block. Node operators can add a validator to their consensus clients by depositing 32 ETH in the deposit contract. The validator client comes bundled with the consensus client and can be added to a node at any time. The validator handles attestations and block proposals. It also enables a node to accrue rewards or lose ETH via penalties or slashing.
3941

4042
[More on staking](/staking/).
4143

4244
## Components of a node comparison {#node-comparison}
4345

4446
| Execution Client | Consensus Client | Validator |
4547
| -------------------------------------------------- | ---------------------------------------------------------------- | ---------------------------- |
46-
| Gossips transactions over its p2p network | Gossips blocks and attestations over its p2p network | Proposes blocks |
48+
| Gossips transactions over its P2P network | Gossips blocks and attestations over its P2P network | Proposes blocks |
4749
| Executes/re-executes transactions | Runs the fork choice algorithm | Accrues rewards/penalties |
4850
| Verifies incoming state changes | Keeps track of the head of the chain | Makes attestations |
4951
| Manages state and receipts tries | Manages the Beacon state (contains consensus and execution info) | Requires 32 ETH to be staked |

0 commit comments

Comments
 (0)