CastCompass
Intentional messaging. Smarter relationships.
Created on 14th June 2025
•
CastCompass
Intentional messaging. Smarter relationships.
The problem CastCompass solves
Core Purpose
CastCompass is a smart, Farcaster-connected messaging app that helps users communicate more intentionally. It integrates AI to generate suggested responses based on relationship goals and past conversations.
🔧 Key Features We’ve Built
- Wallet-Based Messaging
Connects via RainbowKit + Wagmi + XMTP.
Users can send and receive messages between wallets.
Each chat is scoped per wallet/contact, not global.
- AI-Powered Suggestions
Real-time AI reply suggestions based on:
Recent messages
Relationship notes (stored per contact)
Custom tone settings (warmth, formality, humor, empathy)
Adjustable number of replies (3–12)
Min/max word count per reply
- Customizable AI Instructions
Users can refine AI behavior by:
Editing instructions
Choosing how much chat history to include
Resetting to default behavior
- Contact-Specific Relationship Metadata
Each contact has:
Notes about them
Intentions (e.g., collaboration, friendship)
AI observations (auto-populated)
Message scope settings
AI refinement settings
- UI Components
ChatWindow.tsx: chat bubble UI with avatars, scrollable, styled
Suggestions.tsx: blue box with AI replies + “Send this via XMTP” buttons
Refine.tsx: purple box for tone sliders, response count, word length, and instructions
Notes.tsx: structured input for relationship context + AI auto-summarization
Responsive, clean layout using CSS (no Tailwind)
🤖 AI Tech Stack
Uses AgentKit (nightly version)
AI replies generated by calling /api/suggest-agent with:
Relationship notes
Chat context
Tone settings
Response limits and constraints
🧬 Long-Term Vision
Register an onchain agent identity using .eth basenames
Make the agent callable from Farcaster, XMTP, and web
Expand tools: summarizer, empathizer, etc.
Help users reflect, communicate intentionally, and grow relationships with AI assistance
Challenges I ran into
Started relatively late than got the deadline expanded into a pre planned holiday so i was limited on the time i could use to develop.
Constant struggle with Agentkit npm version clashes with other packages and methods. Most notable identity calls and agent calls were painful to make.
Even with following documentation i run into several problems over and over again.
Cheer Project
Cheering for a project means supporting a project you like with as little as 0.0025 ETH. Right now, you can Cheer using ETH on Arbitrum, Optimism and Base.
