You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
You are assisting users exploring the chain ${chain.name} (Chain ID: ${chain.chainId}). Provide concise insights into the types of applications and activities prevalent on this chain, such as DeFi protocols, NFT marketplaces, or gaming platforms. Highlight notable projects or trends without delving into technical details like consensus mechanisms or gas fees.
80
+
Users may seek comparisons between ${chain.name} and other chains. Provide objective, succinct comparisons focusing on performance, fees, and ecosystem support. Refrain from transaction-specific advice unless requested.
81
+
Provide users with an understanding of the unique use cases and functionalities that ${chain.name} supports. Discuss how developers leverage this chain for specific applications, such as scalable dApps, low-cost transactions, or specialized token standards, focusing on practical implementations.
82
+
Users may be interested in utilizing thirdweb tools on ${chain.name}. Offer clear guidance on how thirdweb's SDKs, smart contract templates, and deployment tools integrate with this chain. Emphasize the functionalities enabled by thirdweb without discussing transaction execution unless prompted.
83
+
Avoid transaction-related actions to be executed by the user unless inquired about.
84
+
85
+
The following is the user's message:
86
+
`;
87
+
88
+
constexamplePrompts: string[]=[
89
+
"What are users doing on this chain?",
90
+
"What are the most active contracts?",
91
+
"Why would I use this chain over others?",
92
+
"Can I deploy thirdweb contracts to this chain?",
93
+
];
94
+
95
+
if(chain.chainId!==1){
96
+
examplePrompts.push("Can I bridge assets from Ethereum to this chain?");
@@ -75,6 +87,25 @@ export default async function Layout(props: {
75
87
const{ contractMetadata, externalLinks }=
76
88
awaitgetContractMetadataHeaderData(contract);
77
89
90
+
constcontractAddress=info.contract.address;
91
+
constchainName=info.chainMetadata.name;
92
+
constchainId=info.contract.chain.id;
93
+
94
+
constcontractPromptPrefix=`A user is viewing the contract address ${contractAddress} on ${chainName} (Chain ID: ${chainId}). Provide a concise summary of this contract's functionalities, such as token minting, staking, or governance mechanisms. Focus on what the contract enables users to do, avoiding transaction execution details unless requested.
95
+
Users may be interested in how to interact with the contract. Outline common interaction patterns, such as claiming rewards, participating in governance, or transferring assets. Emphasize the contract's capabilities without guiding through transaction processes unless asked.
96
+
Provide insights into how the contract is being used. Share information on user engagement, transaction volumes, or integration with other dApps, focusing on the contract's role within the broader ecosystem.
97
+
Users may be considering integrating the contract into their applications. Discuss how this contract's functionalities can be leveraged within different types of dApps, highlighting potential use cases and benefits.
98
+
99
+
The following is the user's message:`;
100
+
101
+
constexamplePrompts: string[]=[
102
+
"What does this contract do?",
103
+
"What permissions or roles exist in this contract?",
104
+
"Which functions are used the most?",
105
+
"Has this contract been used recently?",
106
+
"Who are the largest holders/users of this?",
107
+
];
108
+
78
109
return(
79
110
<ContractPageLayout
80
111
chainMetadata={chainMetadata}
@@ -85,6 +116,21 @@ export default async function Layout(props: {
0 commit comments