Overview
Built an AI-driven automation system that allows users to interact with real-world tools (like Google Calendar) directly through messaging (Signal), using natural language.
Instead of navigating apps or forms, users simply send a message like:
“Add to my calendar Saturday 2:30–5pm Tapster Seattle”
…and the system interprets, executes, and confirms the action in real time.
How It Works
1. Signal → Webhook (Input Layer)
- Signal CLI receives incoming messages
- Messages are forwarded into an n8n webhook
- Payload includes raw user intent (unstructured text)

2. AI Agent (Decision Layer)
- OpenAI model parses intent
- Determines:
- Action type (create, update, fetch, delete)
- Required parameters (time, location, title)
- Uses structured tool-calling to route decisions

3. Tool Execution (Action Layer)
- AI dynamically invokes connected tools:
- Google Calendar (create/update/delete events)
- Gmail (optional extensions)
- Task/document systems (expandable)
- Modular tool architecture allows easy scaling

4. Memory (Context Layer)
- Lightweight memory layer tracks prior interactions
- Enables follow-ups like:
- “Move that to 3pm”
- “Delete that event”
5. Response (Output Layer)
- Result is returned through n8n
- Sent back to Signal as confirmation message
- User receives clear, human-readable feedback
Example Interaction
User (Signal):
add to my calendar Saturday, May 2 2:30pm–5:00pm Tapster – South Lake Union
System Response:
The event “Tapster – South Lake Union” has been successfully added to your calendar for Saturday from 2:30pm to 5:00pm.
Key Features
- Natural Language → Structured Actions
No forms, no UI friction — just intent → execution - Multi-Tool Orchestration
AI agent dynamically selects the correct tool (calendar, tasks, etc.) - Extensible Architecture
Easily plug in new tools (CRM, docs, APIs) - Real-Time Feedback Loop
Immediate confirmation improves trust and usability - Agent-Based Design
Central AI agent orchestrates decision-making instead of rigid workflows
Why This Matters
This system demonstrates a shift from:
“User learns the software” → “Software understands the user”
It’s a practical implementation of:
- AI agents in production workflows
- Tool-calling orchestration
- Messaging as a universal interface
Tech Stack
- n8n – Workflow orchestration
- Signal CLI – Messaging interface
- OpenAI (Chat Model) – Intent parsing + tool selection
- Google Calendar API – Action execution
- Custom AI Agent Design – Decision + routing logic