X:https://x.com/metalstrategyy
function withdraw(address metal, uint256 amount) external {
require(metalBalances[metal] >= amount, "Insufficient balance");
metalBalances[metal] -= amount;
emit Withdraw(metal, amount);
}
Metals Strategy ($MSTR) is a treasury-backed memecoin built for the current macro cycle in metals. As global interest in gold, silver, platinum, and strategic metals accelerates, $MSTR provides an on-chain vehicle to build a diversified metals reserve using creator fees from trading activity.
Precious and strategic metals are increasingly important in today’s macro environment. Metals Strategy leverages blockchain transparency and automation to create a long-term, diversified reserve, rather than short-term speculation.
- $MSTR collects creator fees from trading activity.
- Fees are routed into a strategic metals reserve.
- The reserve allocates across multiple metals (gold, silver, platinum, and configurable strategic metals).
- Allocation logic is automated and rule-based.
- No discretionary human control.
Clawd is an autonomous AI agent that monitors on-chain data, fee inflows, and allocation thresholds. It deploys capital, manages diversification and rebalancing, and operates deterministically within predefined constraints.
- Treasury-backed memecoin
- Autonomous execution
- Transparent on-chain accounting
- No holder tax beyond creator-fee mechanics
- Long-term reserve strategy, not short-term trading
This project is not financial advice and is not affiliated with any commodities provider. No price or return is guaranteed.
On-chain Smart Contracts:
- TreasuryVault: Stores funds and tokenized metals
- Config & Timelock: Manages allocation parameters and security delays
- PauseGuardian: Allows pausing operations in case of risk
- Event Logs: Transparent record of all actions
Off-chain Clawd Keeper:
- Reads treasury balances
- Applies allocation logic
- Executes swaps or asset exposure via approved routes
- Writes receipts and logs back on-chain
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract TreasuryVault {
mapping(address => uint256) public metalBalances;
address public owner;
event Deposit(address indexed metal, uint256 amount);
event Withdraw(address indexed metal, uint256 amount);
constructor() {
owner = msg.sender;
}
function deposit(address metal, uint256 amount) external {
// Only Clawd keeper can deposit
require(msg.sender == owner, "Not authorized");
metalBalances[metal] += amount;
emit Deposit(metal, amount);
}
function withdraw(address metal, uint256 amount) external {
require(msg.sender == owner, "Not authorized");
require(metalBalances[metal] >= amount, "Insufficient balance");
metalBalances[metal] -= amount;
emit Withdraw(metal, amount);
}
}# keeper/clawd_keeper.py
class ClawdKeeper:
def __init__(self, treasury):
self.treasury = treasury
def monitor_treasury(self):
# Read on-chain balances
pass
def apply_allocation_logic(self):
# Determine allocation across metals
pass
def execute_swaps(self):
# Interact with DEX or asset protocols
pass
def log_receipts(self):
# Write logs on-chain
passSee scripts/deploy.md for deployment steps.
See CONTRIBUTING.md for guidelines.
See SECURITY.md for vulnerability reporting.
See .env.example for configuration.
See [scripts/deploy.md](scripts/deploy.md) for deployment steps.
## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
## Security
See [SECURITY.md](SECURITY.md) for vulnerability reporting.
## Environment Example
See [.env.example](.env.example) for configuration.