mezoAgent 0.6.3__py3-none-any.whl → 0.6.5__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mezoAgent
3
- Version: 0.6.3
3
+ Version: 0.6.5
4
4
  Summary: A Python package for Mezo Agent transactions with LangChain tools
5
5
  Author: Dreadwulf, Duck, Digi
6
6
  Requires-Dist: python-dotenv
@@ -0,0 +1,16 @@
1
+ mezo_agent/__init__.py,sha256=8QYgneMYLO5-VzBT-4YiIJ_o1rgGq1EJDVrwvLi9hsQ,707
2
+ mezo_agent/characters.py,sha256=wub7y9BrAAdAKWwcNAdgrvhRi2zHMaZNzTr2y3qtbsw,515
3
+ mezo_agent/chat.py,sha256=ZtNurUDV7UzJjbFyU96DNGy37hO3gl0osn19mRu7ER8,859
4
+ mezo_agent/config.py,sha256=6xFgk80eiBLTasKGW73Ne8hNhMtx8BbQ_Ef79YOyDlc,3233
5
+ mezo_agent/parsing.py,sha256=dnS5Qw9V8qvSA_IPgn6nCUnyEfZP9TphO8DnH8oUuiM,5080
6
+ mezo_agent/swap_musd_btc.py,sha256=Co-XcfK73spm94VC6qzGY0VYoGwsMDKKHM8ToGh2JxU,4289
7
+ mezo_agent/token_balance_tool.py,sha256=n5xkHWGhkJdQZILN0fDe-n4NHgXSHTSloEHJfkLMsWE,1442
8
+ mezo_agent/token_price_tool.py,sha256=vD-ukq0D_4zmjIy9bZ9qL44nGctf-hWzkQuTd-0wy2U,930
9
+ mezo_agent/token_utils.py,sha256=3NH_Z_vbZ0uupuuGjEbmwsbUkubluQbL-0xR9kia7nU,1118
10
+ mezo_agent/transaction.py,sha256=YpfWrkEaf0YGM_Kc4cFwlT9GmBGZkeJHWm0VGHs9Gks,4199
11
+ mezo_agent/utils.py,sha256=hsGtL_iXvUVGnY5aHPQ0v6Jejxd4P4qw0yOtS1omToU,1397
12
+ mezo_agent/data/new_router.json,sha256=A8U-NVfe1F-hDyR90_SuH8jDAxmzyyHWdJW62j9TZsc,26756
13
+ mezoAgent-0.6.5.dist-info/METADATA,sha256=aww4rbst9dQN-a_KYXzyKDoWTeJunsS26IagAdIs1mM,273
14
+ mezoAgent-0.6.5.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
15
+ mezoAgent-0.6.5.dist-info/top_level.txt,sha256=rrAci_NyTR9z6w_BrQhQrAhzMW_A0NYhVa0x2USl0nQ,11
16
+ mezoAgent-0.6.5.dist-info/RECORD,,
mezo_agent/__init__.py CHANGED
@@ -4,6 +4,7 @@ from .chat import mezo_character_chat
4
4
  from .characters import get_character_prompt
5
5
  from .token_balance_tool import mezo_agent_token_balance_tool
6
6
  from .token_price_tool import mezo_agent_token_price_tool
7
+ from .token_utils import get_token_address_by_symbol # ✅ Expose new module
7
8
 
8
9
  __all__ = [
9
10
  "mezo_agent_transaction_btc",
@@ -11,5 +12,7 @@ __all__ = [
11
12
  "mezo_agent_swap_musd_btc",
12
13
  "mezo_character_chat",
13
14
  "mezo_agent_token_balance_tool",
15
+ "mezo_agent_token_price_tool",
16
+ "get_token_address_by_symbol",
14
17
  "get_character_prompt"
15
18
  ]
@@ -1,6 +1,7 @@
1
1
  from langchain.tools import tool
2
2
  from mezo_agent.config import web3_instance, sender_address, ERC20_ABI
3
3
  from mezo_agent.parsing import extract_balance_details
4
+ from mezo_agent.token_utils import get_token_address_by_symbol # ✅ Correct import
4
5
 
5
6
  @tool
6
7
  def mezo_agent_token_balance_tool(balance_prompt: str) -> str:
@@ -10,8 +11,6 @@ def mezo_agent_token_balance_tool(balance_prompt: str) -> str:
10
11
  :param balance_prompt: User query containing the token symbol.
11
12
  :return: Token balance for the sender's address.
12
13
  """
13
- from mezo_agent.utils import get_token_address_by_symbol # ✅ Import moved inside function
14
-
15
14
  details = extract_balance_details(balance_prompt)
16
15
 
17
16
  if isinstance(details, str): # Handle extraction errors
@@ -25,7 +24,6 @@ def mezo_agent_token_balance_tool(balance_prompt: str) -> str:
25
24
  # Get the contract address dynamically
26
25
  token_address = get_token_address_by_symbol(token_symbol)
27
26
  print(f"✅ Using token address: {token_address}") # Debugging
28
- print(f"✅ Using ABI: {ERC20_ABI}")
29
27
 
30
28
  token_contract = web3_instance.eth.contract(address=token_address, abi=ERC20_ABI)
31
29
 
@@ -34,4 +32,5 @@ def mezo_agent_token_balance_tool(balance_prompt: str) -> str:
34
32
  balance = web3_instance.from_wei(balance_wei, "ether")
35
33
  return f"✅ {token_symbol.upper()} Balance: {balance}"
36
34
  except Exception as e:
37
- return f"❌ Failed to fetch balance: {str(e)}"
35
+ return f"❌ Failed to fetch balance: {str(e)}"
36
+
@@ -1,6 +1,7 @@
1
1
  from langchain.tools import tool
2
2
  from mezo_agent.config import query_graph
3
3
  from mezo_agent.parsing import extract_price_details
4
+ from mezo_agent.utils import get_token_price # ✅ Correct import
4
5
 
5
6
  @tool
6
7
  def mezo_agent_token_price_tool(price_prompt: str) -> str:
@@ -10,8 +11,6 @@ def mezo_agent_token_price_tool(price_prompt: str) -> str:
10
11
  :param price_prompt: User query containing the token symbol.
11
12
  :return: Token price details.
12
13
  """
13
- from mezo_agent.utils import get_token_price # ✅ Import moved inside function
14
-
15
14
  details = extract_price_details(price_prompt)
16
15
 
17
16
  if isinstance(details, str): # Handle extraction errors
@@ -26,3 +25,4 @@ def mezo_agent_token_price_tool(price_prompt: str) -> str:
26
25
  return get_token_price(token_symbol)
27
26
  except Exception as e:
28
27
  return f"❌ Failed to fetch token price: {str(e)}"
28
+
@@ -0,0 +1,32 @@
1
+ from mezo_agent.config import query_graph, web3_instance
2
+
3
+ def get_token_address_by_symbol(symbol: str) -> str:
4
+ """
5
+ Fetches the token contract address dynamically from the Goldsky subgraph.
6
+ :param symbol: Token symbol (e.g., 'MUSD', 'WBTC').
7
+ :return: Ethereum checksum address of the token.
8
+ """
9
+ if symbol.lower() == "btc":
10
+ symbol = "wtbtc"
11
+
12
+ query_all = '''
13
+ {
14
+ tokens(first: 100) {
15
+ id
16
+ symbol
17
+ }
18
+ }
19
+ '''
20
+ data = query_graph(query_all)
21
+ tokens = data.get("data", {}).get("tokens", [])
22
+
23
+ matching_tokens = [t for t in tokens if t["symbol"].lower() == symbol.lower()]
24
+
25
+ if matching_tokens:
26
+ token_address = matching_tokens[0]["id"]
27
+ checksum_address = web3_instance.to_checksum_address(token_address)
28
+ print(f"✅ Token {symbol} found at address: {checksum_address}") # Debugging
29
+ return checksum_address
30
+ else:
31
+ available_symbols = [t["symbol"] for t in tokens]
32
+ raise Exception(f"❌ Token '{symbol}' not found. Available: {', '.join(available_symbols)}")
mezo_agent/utils.py CHANGED
@@ -1,36 +1,5 @@
1
1
  from mezo_agent.config import web3_instance, query_graph
2
- from mezo_agent.utils import get_token_address_by_symbol
3
-
4
- def get_token_address_by_symbol(symbol: str) -> str:
5
- """
6
- Fetches the token contract address dynamically from the Goldsky subgraph.
7
- :param symbol: Token symbol (e.g., 'MUSD', 'WBTC').
8
- :return: Ethereum checksum address of the token.
9
- """
10
- if symbol.lower() == "btc":
11
- symbol = "wtbtc"
12
-
13
- query_all = '''
14
- {
15
- tokens(first: 100) {
16
- id
17
- symbol
18
- }
19
- }
20
- '''
21
- data = query_graph(query_all)
22
- tokens = data.get("data", {}).get("tokens", [])
23
- matching_tokens = [t for t in tokens if t["symbol"].lower() == symbol.lower()]
24
-
25
- if matching_tokens:
26
- token_address = matching_tokens[0]["id"]
27
- checksum_address = web3_instance.to_checksum_address(token_address)
28
- print(f"✅ Token {symbol} found at address: {checksum_address}") # Debugging
29
- return checksum_address
30
- else:
31
- available_symbols = [t["symbol"] for t in tokens]
32
- raise Exception(f"Token '{symbol}' not found. Available: {', '.join(available_symbols)}")
33
-
2
+ from mezo_agent.token_utils import get_token_address_by_symbol # ✅ Import from token_utils.py
34
3
 
35
4
  def get_token_price(token_symbol: str) -> str:
36
5
  """
@@ -43,7 +12,7 @@ def get_token_price(token_symbol: str) -> str:
43
12
  token_symbol = "wtbtc"
44
13
 
45
14
  try:
46
- token_address = get_token_address_by_symbol(token_symbol)
15
+ token_address = get_token_address_by_symbol(token_symbol) # ✅ Now correctly imported
47
16
  except Exception as e:
48
17
  return f"❌ Token lookup error: {e}"
49
18
 
@@ -67,4 +36,4 @@ def get_token_price(token_symbol: str) -> str:
67
36
  derivedETH = token_data.get("derivedETH", "N/A")
68
37
  return f"✅ Price of {token_symbol.upper()}: {derivedUSD} USD, {derivedETH} ETH."
69
38
  except Exception as e:
70
- return f"❌ Failed to get price data: {e}"
39
+ return f"❌ Failed to get price data: {e}"
@@ -1,15 +0,0 @@
1
- mezo_agent/__init__.py,sha256=2nx5nbz9KwNy-jdKrQ3lA8A0tMuQcKzYKdHTxKzszpk,556
2
- mezo_agent/characters.py,sha256=wub7y9BrAAdAKWwcNAdgrvhRi2zHMaZNzTr2y3qtbsw,515
3
- mezo_agent/chat.py,sha256=ZtNurUDV7UzJjbFyU96DNGy37hO3gl0osn19mRu7ER8,859
4
- mezo_agent/config.py,sha256=6xFgk80eiBLTasKGW73Ne8hNhMtx8BbQ_Ef79YOyDlc,3233
5
- mezo_agent/parsing.py,sha256=dnS5Qw9V8qvSA_IPgn6nCUnyEfZP9TphO8DnH8oUuiM,5080
6
- mezo_agent/swap_musd_btc.py,sha256=Co-XcfK73spm94VC6qzGY0VYoGwsMDKKHM8ToGh2JxU,4289
7
- mezo_agent/token_balance_tool.py,sha256=fv5Kf22K0HQR7maJnS5SZRTnoY7-3JxKyQDRyDbYXew,1498
8
- mezo_agent/token_price_tool.py,sha256=4LmQ_WdYifbIGVL9ExT0dt_U_MtHXYJ7Irj7YoCIexw,948
9
- mezo_agent/transaction.py,sha256=YpfWrkEaf0YGM_Kc4cFwlT9GmBGZkeJHWm0VGHs9Gks,4199
10
- mezo_agent/utils.py,sha256=XRq--PRJbWlG9kpz99QHWu7mLpYY4MYblm38U1xK4YE,2381
11
- mezo_agent/data/new_router.json,sha256=A8U-NVfe1F-hDyR90_SuH8jDAxmzyyHWdJW62j9TZsc,26756
12
- mezoAgent-0.6.3.dist-info/METADATA,sha256=ziZOSpZgDi0m2U3R5j1io5V_keYRt_6D4UWGZHTycOc,273
13
- mezoAgent-0.6.3.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
14
- mezoAgent-0.6.3.dist-info/top_level.txt,sha256=rrAci_NyTR9z6w_BrQhQrAhzMW_A0NYhVa0x2USl0nQ,11
15
- mezoAgent-0.6.3.dist-info/RECORD,,