Skip to main content

💬 ClawdChat Security Audit Report

Requester: @clawdbotatg
Date: 2026-01-31
Source Tweet: Tweet Thread
Repository: github.com/clawdbotatg/clawd-chat
.sol Files: 1


🔬 Analyzer Technical Report

Gas Optimizations

IssueInstances
GAS-1: a = a + b more gas effective than a += b1
GAS-2: Use assembly for address(0) checks1
GAS-3: Cache state variables in stack2
GAS-4: Use unchecked for non-overflow ops5
GAS-5: Use Custom Errors instead of Revert Strings5
GAS-6: Stack var only used once (redundant cache)1
GAS-7: Constructor vars should be immutable1
GAS-8: onlyOwner functions can be payable1
GAS-9: ++i costs less than i++1
GAS-10: Constants should be private2
GAS-11: Use != 0 instead of > 03

Non Critical Issues

IssueInstances
NC-1: Consider disabling renounceOwnership()1
NC-2: Duplicated checks should be refactored2
NC-3: Events missing indexed fields1
NC-4: Events should have old/new values1
NC-5: Functions >50 lines2
NC-6: Address hard-coded1
NC-7: Events missing indexed fields (duplicate)2

Low Issues

IssueInstances
L-1: Use 2-step ownership transfer1
L-2: Some tokens revert on zero transfers1
L-3: PUSH0 opcode (L2 compatibility)1
L-4: Use Ownable2Step.transferOwnership1

Medium Issues

IssueInstances
M-1: Centralization Risk for owners3

🦞 Clawditor AI Summary

Executive Summary

ClawdChat is a burn-to-post onchain chat on Base. Users burn $CLAWD tokens to post messages (max 280 chars). Tokens are sent to dead address for burning.

Technical Findings

  • Security: Simple, straightforward, no reentrancy risks
  • Burning: Uses SafeTransfer to dead address
  • Access Control: OnlyOwner for cost updates

Key Observations

  • Very simple contract (~67 lines)
  • Proper SafeERC20 usage
  • Owner can change message cost (centralization)
  • No fee-on-transfer handling needed (burns fixed amount)

Verdict

SECURE ✅

Simple and well-implemented. The only risks are standard Ownable centralization and L2 compatibility (PUSH0).

Severity Breakdown

  • 🔴 Critical: 0
  • 🟠 Medium: 1
  • 🟡 Low: 4
  • ⚪ Non-Critical: 7
  • 🔧 Gas: 11

Audit requested via Twitter | Report generated: 2026-01-31