wispy-ai 0.7.0 → 1.0.0

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.
Files changed (130) hide show
  1. package/README.md +284 -269
  2. package/bin/chatterbox-tts.py +75 -0
  3. package/bin/run-chatterbox.py +71 -0
  4. package/dist/agents/tool-executor.d.ts +43 -0
  5. package/dist/agents/tool-executor.d.ts.map +1 -1
  6. package/dist/agents/tool-executor.js +1489 -18
  7. package/dist/agents/tool-executor.js.map +1 -1
  8. package/dist/ai/gemini.d.ts +8 -0
  9. package/dist/ai/gemini.d.ts.map +1 -1
  10. package/dist/ai/gemini.js +38 -2
  11. package/dist/ai/gemini.js.map +1 -1
  12. package/dist/ai/grounding.d.ts +63 -0
  13. package/dist/ai/grounding.d.ts.map +1 -0
  14. package/dist/ai/grounding.js +176 -0
  15. package/dist/ai/grounding.js.map +1 -0
  16. package/dist/ai/prompts.d.ts.map +1 -1
  17. package/dist/ai/prompts.js +254 -1
  18. package/dist/ai/prompts.js.map +1 -1
  19. package/dist/ai/tools.d.ts.map +1 -1
  20. package/dist/ai/tools.js +374 -7
  21. package/dist/ai/tools.js.map +1 -1
  22. package/dist/api/keys.d.ts +74 -0
  23. package/dist/api/keys.d.ts.map +1 -0
  24. package/dist/api/keys.js +173 -0
  25. package/dist/api/keys.js.map +1 -0
  26. package/dist/api/router.d.ts +34 -0
  27. package/dist/api/router.d.ts.map +1 -0
  28. package/dist/api/router.js +574 -0
  29. package/dist/api/router.js.map +1 -0
  30. package/dist/channels/telegram/adapter.d.ts.map +1 -1
  31. package/dist/channels/telegram/adapter.js +963 -53
  32. package/dist/channels/telegram/adapter.js.map +1 -1
  33. package/dist/cli/integration-wizard.d.ts +63 -0
  34. package/dist/cli/integration-wizard.d.ts.map +1 -0
  35. package/dist/cli/integration-wizard.js +558 -0
  36. package/dist/cli/integration-wizard.js.map +1 -0
  37. package/dist/cli/postinstall.js +1 -1
  38. package/dist/cli/postinstall.js.map +1 -1
  39. package/dist/cli/program.js +179 -28
  40. package/dist/cli/program.js.map +1 -1
  41. package/dist/cli/repl.d.ts +1 -1
  42. package/dist/cli/repl.js +1 -1
  43. package/dist/cli/setup/wizard.d.ts.map +1 -1
  44. package/dist/cli/setup/wizard.js +111 -0
  45. package/dist/cli/setup/wizard.js.map +1 -1
  46. package/dist/cli/skill-manager.d.ts +70 -0
  47. package/dist/cli/skill-manager.d.ts.map +1 -0
  48. package/dist/cli/skill-manager.js +375 -0
  49. package/dist/cli/skill-manager.js.map +1 -0
  50. package/dist/cli/ui/banner.js +1 -1
  51. package/dist/cli/voice/tts.d.ts.map +1 -1
  52. package/dist/cli/voice/tts.js +15 -1
  53. package/dist/cli/voice/tts.js.map +1 -1
  54. package/dist/config/config.js +3 -3
  55. package/dist/config/config.js.map +1 -1
  56. package/dist/config/schema.d.ts +8 -0
  57. package/dist/config/schema.d.ts.map +1 -1
  58. package/dist/config/schema.js.map +1 -1
  59. package/dist/core/agent.d.ts.map +1 -1
  60. package/dist/core/agent.js +27 -2
  61. package/dist/core/agent.js.map +1 -1
  62. package/dist/core/context-isolator.d.ts +91 -0
  63. package/dist/core/context-isolator.d.ts.map +1 -0
  64. package/dist/core/context-isolator.js +295 -0
  65. package/dist/core/context-isolator.js.map +1 -0
  66. package/dist/core/multimodal-engine.d.ts +74 -0
  67. package/dist/core/multimodal-engine.d.ts.map +1 -0
  68. package/dist/core/multimodal-engine.js +289 -0
  69. package/dist/core/multimodal-engine.js.map +1 -0
  70. package/dist/core/thinking.d.ts +4 -0
  71. package/dist/core/thinking.d.ts.map +1 -1
  72. package/dist/core/thinking.js +63 -11
  73. package/dist/core/thinking.js.map +1 -1
  74. package/dist/documents/latex.d.ts +210 -0
  75. package/dist/documents/latex.d.ts.map +1 -0
  76. package/dist/documents/latex.js +585 -0
  77. package/dist/documents/latex.js.map +1 -0
  78. package/dist/documents/telegram-delivery.d.ts +60 -0
  79. package/dist/documents/telegram-delivery.d.ts.map +1 -0
  80. package/dist/documents/telegram-delivery.js +183 -0
  81. package/dist/documents/telegram-delivery.js.map +1 -0
  82. package/dist/gateway/server.d.ts.map +1 -1
  83. package/dist/gateway/server.js +17 -6
  84. package/dist/gateway/server.js.map +1 -1
  85. package/dist/marathon/durable-executor.d.ts +16 -0
  86. package/dist/marathon/durable-executor.d.ts.map +1 -1
  87. package/dist/marathon/durable-executor.js +201 -15
  88. package/dist/marathon/durable-executor.js.map +1 -1
  89. package/dist/marathon/executor.d.ts +7 -1
  90. package/dist/marathon/executor.d.ts.map +1 -1
  91. package/dist/marathon/executor.js +50 -3
  92. package/dist/marathon/executor.js.map +1 -1
  93. package/dist/marathon/service.d.ts +4 -0
  94. package/dist/marathon/service.d.ts.map +1 -1
  95. package/dist/marathon/service.js +14 -2
  96. package/dist/marathon/service.js.map +1 -1
  97. package/dist/marathon/telegram-visuals.d.ts +127 -0
  98. package/dist/marathon/telegram-visuals.d.ts.map +1 -0
  99. package/dist/marathon/telegram-visuals.js +671 -0
  100. package/dist/marathon/telegram-visuals.js.map +1 -0
  101. package/dist/marathon/types.d.ts +1 -1
  102. package/dist/marathon/types.d.ts.map +1 -1
  103. package/dist/trust/progress-notifier.d.ts +103 -0
  104. package/dist/trust/progress-notifier.d.ts.map +1 -0
  105. package/dist/trust/progress-notifier.js +322 -0
  106. package/dist/trust/progress-notifier.js.map +1 -0
  107. package/dist/voice/realistic-tts.d.ts +88 -0
  108. package/dist/voice/realistic-tts.d.ts.map +1 -0
  109. package/dist/voice/realistic-tts.js +445 -0
  110. package/dist/voice/realistic-tts.js.map +1 -0
  111. package/package.json +8 -2
  112. package/wispy/memory/2026-02-04.md +28 -0
  113. package/wispy/memory/2026-02-05.md +48 -0
  114. package/wispy/memory/2026-02-06.md +16 -0
  115. package/wispy/memory/heartbeat-state.json +1 -1
  116. package/wispy/skills/a2a/SKILL.md +20 -0
  117. package/wispy/skills/autonomous-webapp/PROMPTS.md +296 -0
  118. package/wispy/skills/autonomous-webapp/SKILL.md +221 -0
  119. package/wispy/skills/browser/SKILL.md +32 -0
  120. package/wispy/skills/chainlink/SKILL.md +18 -0
  121. package/wispy/skills/codegen/SKILL.md +28 -0
  122. package/wispy/skills/content/SKILL.md +20 -0
  123. package/wispy/skills/cron/SKILL.md +22 -0
  124. package/wispy/skills/documents/SKILL.md +29 -0
  125. package/wispy/skills/images/SKILL.md +22 -0
  126. package/wispy/skills/latex-documents.md +127 -0
  127. package/wispy/skills/research/SKILL.md +26 -0
  128. package/wispy/skills/twitter/SKILL.md +22 -0
  129. package/wispy/skills/voice/SKILL.md +21 -0
  130. package/wispy/skills/web3/SKILL.md +30 -0
package/README.md CHANGED
@@ -1,193 +1,226 @@
1
- # Wispy
2
-
3
- **The World's First Autonomous AI Agent with Payments, Identity, and Multi-Day Reasoning**
4
-
5
- [![npm](https://img.shields.io/npm/v/wispy-ai)](https://www.npmjs.com/package/wispy-ai)
6
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
7
- [![Base Sepolia](https://img.shields.io/badge/Base-Sepolia-blue)](https://sepolia.basescan.org/address/0x158B236CC840FD3039a3Cf5D72AEfBF2550045C7)
8
-
9
- > **Built for:** [Google Gemini Hackathon](https://gemini3.devpost.com/) | [Chainlink Convergence](https://chain.link/hackathon) | [ETHGlobal HackMoney](https://ethglobal.com/events/hackmoney2026)
1
+ <p align="center">
2
+ <img src="assets/banner.png" alt="Wispy Banner" width="100%" />
3
+ </p>
4
+
5
+ <h1 align="center">Wispy</h1>
6
+
7
+ <p align="center">
8
+ <strong>Autonomous AI Agent Infrastructure — Think for Days, Pay for Services, Prove Identity On-Chain</strong>
9
+ </p>
10
+
11
+ <p align="center">
12
+ <a href="https://www.npmjs.com/package/wispy-ai"><img src="https://img.shields.io/npm/v/wispy-ai?style=flat-square&color=31ccff" alt="npm version" /></a>
13
+ <a href="https://www.npmjs.com/package/wispy-ai"><img src="https://img.shields.io/npm/dm/wispy-ai?style=flat-square&color=31ccff" alt="npm downloads" /></a>
14
+ <a href="https://opensource.org/licenses/MIT"><img src="https://img.shields.io/badge/license-MIT-blue?style=flat-square" alt="License" /></a>
15
+ <a href="https://nodejs.org"><img src="https://img.shields.io/badge/node-%3E%3D20-brightgreen?style=flat-square" alt="Node.js" /></a>
16
+ <a href="https://www.typescriptlang.org"><img src="https://img.shields.io/badge/TypeScript-5.7-blue?style=flat-square&logo=typescript&logoColor=white" alt="TypeScript" /></a>
17
+ <a href="https://github.com/brn-mwai/wispy"><img src="https://img.shields.io/github/stars/brn-mwai/wispy?style=flat-square&color=yellow" alt="GitHub Stars" /></a>
18
+ <a href="https://github.com/brn-mwai/wispy/issues"><img src="https://img.shields.io/github/issues/brn-mwai/wispy?style=flat-square" alt="Issues" /></a>
19
+ <a href="https://github.com/brn-mwai/wispy/actions"><img src="https://img.shields.io/github/actions/workflow/status/brn-mwai/wispy/ci.yml?style=flat-square&label=build" alt="Build" /></a>
20
+ <a href="https://wispy.cc"><img src="https://img.shields.io/badge/docs-wispy.cc-31ccff?style=flat-square" alt="Docs" /></a>
21
+ <a href="https://sepolia.basescan.org/address/0x158B236CC840FD3039a3Cf5D72AEfBF2550045C7"><img src="https://img.shields.io/badge/Base-Sepolia-blue?style=flat-square&logo=ethereum" alt="Base Sepolia" /></a>
22
+ </p>
23
+
24
+ <p align="center">
25
+ <a href="https://wispy.cc">Website</a> &middot;
26
+ <a href="https://wispy.cc/developers">API Docs</a> &middot;
27
+ <a href="https://www.npmjs.com/package/wispy-ai">npm</a> &middot;
28
+ <a href="https://github.com/brn-mwai/wispy/issues">Issues</a> &middot;
29
+ <a href="#quickstart">Quickstart</a>
30
+ </p>
10
31
 
11
32
  ---
12
33
 
13
- ## What Makes Wispy Different
34
+ ## What is Wispy?
14
35
 
15
- **Wispy isn't just another AI chatbot.** It's the first autonomous agent infrastructure that combines:
36
+ **Wispy is an autonomous AI agent platform** that goes beyond simple chatbots. It can run multi-day tasks independently, make payments for premium APIs, prove its identity on-chain, and communicate with other AI agents — all from a single CLI or API.
16
37
 
17
- | Protocol | What It Enables |
18
- |----------|-----------------|
19
- | **Gemini 2.5 Pro** | Multi-day reasoning with 24K token thinking budget |
20
- | **x402 Payments** | Automatic USDC payments for premium APIs |
21
- | **ERC-8004 Identity** | On-chain verifiable agent registration |
22
- | **A2A Protocol** | Agent-to-agent discovery and communication |
38
+ Think of it as an AI engineer that can:
23
39
 
24
- > *"Wispy is the first AI agent that can think for days, pay for its own services, and prove its identity on-chain."*
40
+ - **Plan and execute complex projects** over hours or days (Marathon Mode)
41
+ - **Pay for services** automatically using USDC via the x402 protocol
42
+ - **Verify its identity** on-chain with ERC-8004 registrations
43
+ - **Talk to other agents** using Google's A2A protocol
44
+ - **Operate across channels** — CLI, Telegram, WhatsApp, REST API, WebSocket
45
+
46
+ Wispy is powered by **Google Gemini 2.5 Pro** with configurable thinking budgets up to 24K tokens, giving it deep reasoning capabilities for complex multi-step tasks.
25
47
 
26
48
  ---
27
49
 
28
- ## Live Demo
50
+ ## Quickstart
29
51
 
30
- **Deployed Contracts (Base Sepolia):**
31
- - Agent Registry: [`0x158B236CC840FD3039a3Cf5D72AEfBF2550045C7`](https://sepolia.basescan.org/address/0x158B236CC840FD3039a3Cf5D72AEfBF2550045C7)
52
+ ### Install
32
53
 
33
- **Try It:**
34
54
  ```bash
35
- npm i -g wispy-ai
36
- wispy setup
37
- wispy agent "Research the DePIN market and produce a report"
55
+ npm install -g wispy-ai
38
56
  ```
39
57
 
40
- ---
58
+ <details>
59
+ <summary><strong>Other installation methods</strong></summary>
41
60
 
42
- ## Architecture
61
+ **pnpm:**
62
+ ```bash
63
+ pnpm add -g wispy-ai
64
+ ```
65
+
66
+ **Homebrew (macOS/Linux):**
67
+ ```bash
68
+ brew tap brn-mwai/wispy && brew install wispy
69
+ ```
43
70
 
71
+ **Shell script (macOS/Linux):**
72
+ ```bash
73
+ curl -fsSL https://wispy.cc/install.sh | bash
44
74
  ```
45
- ┌─────────────────────────────────────────────────────────────────────────────┐
46
- │ WISPY PLATFORM │
47
- ├─────────────────────────────────────────────────────────────────────────────┤
48
- │ │
49
- │ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │
50
- │ │ Gemini │ │ x402 │ │ ERC-8004 │ │
51
- │ │ 2.5 Pro │ │ Payments │ │ Identity │ │
52
- │ │ + Thinking │ │ (USDC/Base) │ │ (On-Chain) │ │
53
- │ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ │
54
- │ │ │ │ │
55
- │ └───────────────────┼───────────────────┘ │
56
- │ │ │
57
- │ ┌────────▼────────┐ │
58
- │ │ MARATHON AGENT │ │
59
- │ │ Multi-Day │ │
60
- │ │ Autonomous │ │
61
- │ │ Execution │ │
62
- │ └────────┬────────┘ │
63
- │ │ │
64
- │ ┌───────────────────┼───────────────────┐ │
65
- │ │ │ │ │
66
- │ ┌──────▼──────┐ ┌──────▼──────┐ ┌──────▼──────┐ │
67
- │ │ A2A │ │ Trust │ │ Tools │ │
68
- │ │ Protocol │ │ Controller │ │ (27+) │ │
69
- │ │ (Google) │ │ (Approvals) │ │ │ │
70
- │ └─────────────┘ └─────────────┘ └─────────────┘ │
71
- │ │
72
- │ Channels: Telegram | WhatsApp | Discord | Slack | REST | WebSocket │
73
- │ │
74
- └─────────────────────────────────────────────────────────────────────────────┘
75
+
76
+ **PowerShell (Windows):**
77
+ ```powershell
78
+ irm https://wispy.cc/install.ps1 | iex
75
79
  ```
76
80
 
77
- ---
81
+ **CMD (Windows):**
82
+ ```cmd
83
+ curl -o install.bat https://wispy.cc/install.bat && install.bat
84
+ ```
78
85
 
79
- ## Key Features
86
+ </details>
80
87
 
81
- ### 1. Marathon Mode — Multi-Day Autonomous Execution
88
+ ### Setup
82
89
 
83
90
  ```bash
84
- wispy marathon "Build a full-stack e-commerce app with Next.js and Stripe"
91
+ wispy setup
85
92
  ```
86
93
 
87
- - **Deep Planning**: Gemini 2.5 Pro with 24K token thinking budget
88
- - **Milestone Execution**: Autonomous step-by-step completion
89
- - **Self-Recovery**: Fails? It analyzes and tries a different approach
90
- - **Checkpointing**: Pause anytime, resume where you left off
91
- - **Real-time Updates**: Telegram/WhatsApp notifications on progress
94
+ This interactive wizard will configure your AI credentials (Gemini API key or Vertex AI), channels, and optional blockchain integrations.
92
95
 
93
- ### 2. x402 Payments — Agents That Pay
96
+ ### Run
94
97
 
95
- ```typescript
96
- // Agent encounters a premium API
97
- // HTTP 402 Payment Required
98
+ ```bash
99
+ # Interactive chat
100
+ wispy chat
101
+
102
+ # Start the full gateway (API + channels + A2A)
103
+ wispy gateway
98
104
 
99
- // Wispy automatically:
100
- // 1. Checks spending budget
101
- // 2. Requests Trust Controller approval
102
- // 3. Pays with USDC on Base
103
- // 4. Continues execution
105
+ # Run a marathon (multi-day autonomous task)
106
+ wispy marathon "Build a full-stack SaaS dashboard with Next.js"
104
107
 
105
- await agent.fetch("https://api.premium.com/data"); // Just works
108
+ # Execute a single agent task
109
+ wispy agent "Research the DePIN market and produce a detailed report"
106
110
  ```
107
111
 
108
- - Automatic HTTP 402 handling
109
- - USDC payments on Base network
110
- - Configurable spending limits
111
- - Full transaction logging
112
-
113
- ### 3. ERC-8004 Identity — Verifiable Agents
114
-
115
- ```json
116
- // /.well-known/agent.json
117
- {
118
- "type": "https://eips.ethereum.org/EIPS/eip-8004#registration-v1",
119
- "name": "Wispy Agent",
120
- "x402Support": true,
121
- "registrations": [{
122
- "agentId": "1",
123
- "agentRegistry": "0x158B236CC840FD3039a3Cf5D72AEfBF2550045C7"
124
- }],
125
- "supportedTrust": ["reputation"]
126
- }
112
+ ---
113
+
114
+ ## Features
115
+
116
+ ### Marathon Mode — Multi-Day Autonomous Execution
117
+
118
+ Wispy's Marathon Mode plans complex tasks into milestones, then executes them autonomously over hours or days. It checkpoints progress, self-recovers from failures, and sends real-time updates via Telegram or WhatsApp.
119
+
120
+ ```bash
121
+ wispy marathon "Build and deploy a REST API with auth, tests, and docs"
127
122
  ```
128
123
 
129
- - On-chain agent registration
130
- - Reputation system
131
- - Validation framework
132
- - Trust verification
124
+ - Deep planning with Gemini 2.5 Pro (up to 24K token thinking budget)
125
+ - Autonomous milestone-by-milestone execution
126
+ - Self-recovery — analyzes failures and retries with different approaches
127
+ - Checkpointing — pause anytime, resume exactly where you left off
128
+ - Real-time notifications on progress via Telegram/WhatsApp
133
129
 
134
- ### 4. A2A Protocol — Agents Talking to Agents
130
+ ### x402 Payments — Agents That Pay for Services
135
131
 
136
- ```typescript
137
- // Discover another agent
138
- const card = await a2a.discover("https://other-agent.com");
132
+ Wispy handles HTTP 402 Payment Required responses automatically. When it encounters a premium API, it checks spending limits, requests approval through the Trust Controller, and pays with USDC on Base.
139
133
 
140
- // Send a task
141
- const task = await a2a.sendTask(card, {
142
- message: "Analyze this dataset",
143
- data: { ... }
144
- });
134
+ - Automatic HTTP 402 handling with USDC on Base network
135
+ - Configurable spending limits per task
136
+ - Trust Controller approval workflows
137
+ - Full transaction logging and audit trail
145
138
 
146
- // Get result
147
- const result = await task.waitForCompletion();
148
- ```
139
+ ### ERC-8004 Identity — Verifiable Agent Registration
149
140
 
150
- - Google's Agent-to-Agent protocol
151
- - Agent card discovery
152
- - Task delegation
153
- - Secure message signing
141
+ Register your agent on-chain using the ERC-8004 standard. This gives Wispy a verifiable, decentralized identity that other agents and services can trust.
154
142
 
155
- ---
143
+ - On-chain registration on Base Sepolia
144
+ - Reputation tracking system
145
+ - Serves `/.well-known/agent.json` for discovery
146
+ - Validation framework for trust verification
156
147
 
157
- ## Quick Start
148
+ ### A2A Protocol — Agent-to-Agent Communication
158
149
 
159
- ### Installation
150
+ Wispy implements Google's Agent-to-Agent protocol for discovering, delegating tasks to, and receiving results from other AI agents.
160
151
 
161
- ```bash
162
- npm i -g wispy-ai
163
- ```
152
+ - Agent card publishing and discovery
153
+ - Task delegation with structured messaging
154
+ - Secure Ed25519 message signing
155
+ - Compatible with the broader A2A ecosystem
164
156
 
165
- ### Setup
157
+ ### 27+ Built-in Tools
166
158
 
167
- ```bash
168
- wispy setup
169
- ```
159
+ | Category | Tools |
160
+ |----------|-------|
161
+ | **Code** | File operations, shell execution, project scaffolding |
162
+ | **Web** | HTTP requests, web scraping, browser automation (Playwright) |
163
+ | **Data** | PDF/DOCX/Excel generation, CSV parsing, chart creation |
164
+ | **Media** | Image generation (Imagen 3), image editing, voice TTS |
165
+ | **Blockchain** | Wallet management, contract interaction, ENS resolution |
166
+ | **Memory** | Vector embeddings, semantic search, conversation history |
167
+ | **System** | Cron scheduling, reminders, MCP server integration |
170
168
 
171
- This will:
172
- 1. Create Vertex AI configuration
173
- 2. Generate blockchain wallet
174
- 3. Configure x402 payments
175
- 4. Set up A2A protocol
169
+ ### Multi-Channel Support
176
170
 
177
- ### Run
171
+ | Channel | Description |
172
+ |---------|-------------|
173
+ | **CLI** | Interactive REPL with rich formatting and voice mode |
174
+ | **Telegram** | Full bot with inline responses and thinking indicators |
175
+ | **WhatsApp** | Business API integration with media support |
176
+ | **REST API** | Public API with key management for third-party integrations |
177
+ | **WebSocket** | Real-time streaming for web applications |
178
+ | **A2A** | Agent-to-agent protocol server on port 4002 |
179
+
180
+ ### Public REST API
181
+
182
+ Wispy exposes a full REST API so you can integrate it into your own products. Manage API keys, set scopes and rate limits, and interact with all Wispy features programmatically.
178
183
 
179
184
  ```bash
180
- # Interactive chat
181
- wispy chat
185
+ # Create an API key
186
+ wispy api create "My App" --scopes chat,marathon
182
187
 
183
- # Marathon mode
184
- wispy marathon "Build a React dashboard"
188
+ # Use it
189
+ curl -H "Authorization: Bearer wsk_..." https://your-wispy-instance/api/v1/chat \
190
+ -d '{"message": "Hello"}'
191
+ ```
185
192
 
186
- # Full gateway (A2A server + all channels)
187
- wispy gateway
193
+ See the full API documentation at [wispy.cc/developers](https://wispy.cc/developers).
188
194
 
189
- # Agent with specific task
190
- wispy agent "Research and summarize the latest AI papers"
195
+ ---
196
+
197
+ ## Architecture
198
+
199
+ ```
200
+ ┌────────────────────────────────────────────────────────────────────┐
201
+ │ WISPY PLATFORM │
202
+ ├────────────────────────────────────────────────────────────────────┤
203
+ │ │
204
+ │ Channels Core Engine Protocols │
205
+ │ ┌──────────┐ ┌──────────────┐ ┌──────────────┐ │
206
+ │ │ CLI │ │ Gemini 2.5 │ │ x402 │ │
207
+ │ │ Telegram │────▶│ Pro Agent │────▶│ Payments │ │
208
+ │ │ WhatsApp │ │ + Marathon │ │ (USDC/Base) │ │
209
+ │ │ REST API │ │ Mode │ ├──────────────┤ │
210
+ │ │ WebSocket│ └──────┬───────┘ │ ERC-8004 │ │
211
+ │ └──────────┘ │ │ Identity │ │
212
+ │ │ ├──────────────┤ │
213
+ │ Services │ │ A2A Protocol │ │
214
+ │ ┌──────────┐ ┌──────▼───────┐ │ (Google) │ │
215
+ │ │ Memory │ │ 27+ Tools │ └──────────────┘ │
216
+ │ │ Cron │ │ + MCP │ │
217
+ │ │ Skills │ │ Servers │ Security │
218
+ │ │ Browser │ └──────────────┘ ┌──────────────┐ │
219
+ │ │ Voice │ │ Trust Ctrl │ │
220
+ │ └──────────┘ │ Device Auth │ │
221
+ │ │ Rate Limits │ │
222
+ │ └──────────────┘ │
223
+ └────────────────────────────────────────────────────────────────────┘
191
224
  ```
192
225
 
193
226
  ---
@@ -197,50 +230,27 @@ wispy agent "Research and summarize the latest AI papers"
197
230
  ### Option 1: Gemini API Key (Simplest)
198
231
 
199
232
  ```env
200
- # .env or .env.local
201
233
  GEMINI_API_KEY=your-api-key
202
234
  ```
203
235
 
204
- Get your API key at [Google AI Studio](https://aistudio.google.com/apikey).
236
+ Get your key at [Google AI Studio](https://aistudio.google.com/apikey).
205
237
 
206
- ### Option 2: Vertex AI (Enterprise)
238
+ ### Option 2: Vertex AI (Production)
207
239
 
208
240
  ```env
209
- # .env.local
210
241
  GOOGLE_CLOUD_PROJECT=your-project-id
211
- GOOGLE_CLOUD_LOCATION=us-central1 # Optional
242
+ GOOGLE_CLOUD_LOCATION=us-central1
212
243
  ```
213
244
 
214
245
  Then authenticate:
215
- ```bash
216
- gcloud auth application-default login
217
- ```
218
-
219
- Or use a service account:
220
- ```env
221
- GOOGLE_APPLICATION_CREDENTIALS=/path/to/service-account.json
222
- ```
223
246
 
224
- Enable Vertex AI in the CLI:
225
247
  ```bash
226
- wispy
227
- /vertex enable your-project-id
228
- ```
229
-
230
- ### Payments & Channels
231
-
232
- ```env
233
- # x402 Payments (Coinbase CDP)
234
- CDP_API_KEY_ID=your-key-id
235
- CDP_API_KEY_SECRET=your-key-secret
236
-
237
- # Optional: Channels
238
- TELEGRAM_BOT_TOKEN=your-token
248
+ gcloud auth application-default login
239
249
  ```
240
250
 
241
251
  ### Full Configuration
242
252
 
243
- Use `~/.wispy/config.yaml`:
253
+ Wispy uses `~/.wispy/config.yaml`:
244
254
 
245
255
  ```yaml
246
256
  agent:
@@ -248,8 +258,6 @@ agent:
248
258
  id: wispy-agent-001
249
259
 
250
260
  gemini:
251
- # Option 1: API Key (set GEMINI_API_KEY env var)
252
- # Option 2: Vertex AI
253
261
  vertexai:
254
262
  enabled: true
255
263
  project: your-gcp-project
@@ -261,160 +269,167 @@ gemini:
261
269
  embedding: text-embedding-004
262
270
 
263
271
  marathon:
264
- thinkingLevel: ultra # 24K token budget
265
- checkpointInterval: 5 # Save every 5 milestones
266
-
267
- x402:
268
- enabled: true
269
- maxSpendPerTask: 10.00 # USDC
270
- requireApproval: true
271
-
272
- erc8004:
273
- network: base-sepolia
274
- autoRegister: true
272
+ thinkingLevel: ultra # Thinking budget: low | medium | high | ultra
273
+ checkpointInterval: 5
275
274
 
276
- a2a:
275
+ wallet:
277
276
  enabled: true
278
- port: 3000
277
+ chain: base-sepolia
279
278
 
280
279
  channels:
281
280
  telegram:
282
281
  enabled: true
282
+ whatsapp:
283
+ enabled: true
283
284
  rest:
284
285
  enabled: true
285
- port: 8080
286
- ```
287
-
288
- ---
286
+ port: 4001
287
+ web:
288
+ port: 4000
289
289
 
290
- ## Hackathon Tracks
291
-
292
- ### Google Gemini Hackathon — Marathon Agent
290
+ security:
291
+ autonomousMode: false # Auto-approve file/code operations
292
+ actionGuard:
293
+ enabled: true
293
294
 
294
- **Focus:** Multi-day autonomous execution with Gemini 2.5 Pro
295
+ memory:
296
+ heartbeatIntervalMinutes: 30
297
+ ```
295
298
 
296
- - 24K token thinking budget for complex planning
297
- - Thought continuity across sessions
298
- - Self-verification and recovery
299
- - Real-time monitoring dashboard
299
+ ---
300
300
 
301
- ### Chainlink Convergence — Trustless AI Agents
301
+ ## Security
302
302
 
303
- **Focus:** x402 payments + ERC-8004 identity on Base
303
+ Wispy is built with security as a first-class concern:
304
304
 
305
- - Automatic crypto payments for AI services
306
- - On-chain agent registration
307
- - Verifiable reputation system
308
- - Trust Controller for approvals
305
+ - **Device Identity** Ed25519 keypair generated per device for authentication
306
+ - **Encrypted Storage** — AES-256-GCM encryption for credentials and sensitive data
307
+ - **Trust Controller** — Approval workflows for sensitive operations (file writes, payments, shell commands)
308
+ - **Action Guard** — Configurable rules for what the agent can and cannot do autonomously
309
+ - **API Key System** — Scoped keys with rate limiting, expiry, and usage tracking
310
+ - **Secret Scanner** — Automatic detection and redaction of API keys in outputs
311
+ - **Loop Detection** — Prevents infinite tool execution loops
312
+ - **Session Isolation** — Separate contexts for different users and channels
309
313
 
310
- ### ETHGlobal HackMoney — Agent Economy
314
+ ---
311
315
 
312
- **Focus:** Full-stack autonomous agent infrastructure
316
+ ## CLI Reference
313
317
 
314
- - Agents that can earn and spend
315
- - Agent-to-agent marketplace
316
- - Decentralized identity
317
- - Production-ready SDK
318
+ ```
319
+ wispy chat Interactive chat session
320
+ wispy gateway Start full gateway (API + channels + A2A)
321
+ wispy marathon <goal> Start autonomous multi-day task execution
322
+ wispy agent <task> Execute a single agent task
323
+ wispy setup Interactive configuration wizard
324
+ wispy doctor Diagnose configuration issues
325
+ wispy skill <name> Run a specific skill
326
+ wispy api create Create an API key
327
+ wispy api list List API keys
328
+ wispy api revoke <id> Revoke an API key
329
+ wispy voice Enter voice mode
330
+ wispy history View conversation history
331
+ ```
318
332
 
319
333
  ---
320
334
 
321
335
  ## Technical Specs
322
336
 
323
- | Component | Technology |
324
- |-----------|------------|
325
- | AI Model | Gemini 2.5 Pro via Vertex AI |
326
- | Thinking Budget | 128 - 24,576 tokens |
327
- | Blockchain | Base Sepolia (chainId: 84532) |
328
- | Payments | USDC via x402 protocol |
329
- | Identity | ERC-8004 standard |
330
- | Agent Comms | A2A Protocol (Google) |
331
- | Runtime | Node.js 20+, TypeScript |
337
+ | Component | Details |
338
+ |-----------|---------|
339
+ | **AI Engine** | Google Gemini 2.5 Pro / Flash via Vertex AI or API key |
340
+ | **Thinking Budget** | 128 24,576 tokens (configurable) |
341
+ | **Runtime** | Node.js 20+, TypeScript 5.7, ESM |
342
+ | **Blockchain** | Base Sepolia (chainId: 84532) |
343
+ | **Payments** | USDC via x402 protocol (Coinbase CDP) |
344
+ | **Identity** | ERC-8004 on-chain agent registration |
345
+ | **Agent Comms** | A2A Protocol (Google) |
346
+ | **Tools** | 27+ built-in + MCP server support |
347
+ | **Channels** | CLI, Telegram, WhatsApp, REST API, WebSocket, A2A |
348
+ | **Memory** | SQLite + vector embeddings (text-embedding-004) |
349
+ | **Browser** | Playwright-based headless automation |
332
350
 
333
351
  ---
334
352
 
335
- ## API Reference
353
+ ## API Usage
336
354
 
337
- ### Marathon API
355
+ ### Chat
338
356
 
339
357
  ```typescript
340
- import { startMarathon } from 'wispy-ai';
358
+ import { Agent } from 'wispy-ai';
341
359
 
342
- const marathon = await startMarathon({
343
- goal: "Build a SaaS landing page",
344
- thinkingLevel: "ultra",
345
- checkpointDir: "./.wispy/checkpoints"
346
- });
360
+ const agent = new Agent({ config, runtimeDir, soulDir });
347
361
 
348
- marathon.on('milestone', (m) => console.log(`Completed: ${m.name}`));
349
- marathon.on('complete', (result) => console.log('Done!', result));
362
+ for await (const chunk of agent.chatStream("Build a landing page", "user-1", "api")) {
363
+ process.stdout.write(chunk.content);
364
+ }
350
365
  ```
351
366
 
352
- ### x402 Fetch
367
+ ### Marathon
353
368
 
354
369
  ```typescript
355
- import { x402Fetch } from 'wispy-ai';
370
+ const marathon = agent.startMarathon("Build a full-stack app with auth and tests");
356
371
 
357
- // Automatically handles HTTP 402 with crypto payment
358
- const response = await x402Fetch("https://api.premium.com/data", {
359
- maxPayment: "1.00", // USDC
360
- trustController: myController
361
- });
372
+ marathon.on('milestone', (m) => console.log(`Completed: ${m.name}`));
373
+ marathon.on('complete', (result) => console.log('Done!', result));
362
374
  ```
363
375
 
364
- ### ERC-8004 Client
365
-
366
- ```typescript
367
- import { ERC8004Client } from 'wispy-ai';
376
+ ### REST API
368
377
 
369
- const client = new ERC8004Client(signer, "./.wispy");
370
- const agentId = await client.registerAgent("https://my-agent.com/agent.json");
371
- const reputation = await client.getReputation(agentId);
378
+ ```bash
379
+ # Create API key
380
+ wispy api create "My Integration" --scopes chat,chat:stream,marathon
381
+
382
+ # Chat
383
+ curl -X POST https://localhost:4001/api/v1/chat \
384
+ -H "Authorization: Bearer wsk_..." \
385
+ -H "Content-Type: application/json" \
386
+ -d '{"message": "Hello, Wispy"}'
387
+
388
+ # Stream (SSE)
389
+ curl -N https://localhost:4001/api/v1/chat/stream \
390
+ -H "Authorization: Bearer wsk_..." \
391
+ -H "Content-Type: application/json" \
392
+ -d '{"message": "Explain quantum computing"}'
372
393
  ```
373
394
 
374
- ### A2A Client
375
-
376
- ```typescript
377
- import { A2AClient, createAgentCard } from 'wispy-ai';
378
-
379
- // Create your agent card
380
- const myCard = createAgentCard({
381
- name: "My Agent",
382
- skills: [{ id: "research", name: "Research" }]
383
- });
384
-
385
- // Discover and interact with other agents
386
- const client = new A2AClient("https://other-agent.com");
387
- const theirCard = await client.discover();
388
- const result = await client.sendTask({ message: "Help me research..." });
389
- ```
395
+ Full API docs: [wispy.cc/developers](https://wispy.cc/developers)
390
396
 
391
397
  ---
392
398
 
393
- ## Security
399
+ ## Deployed Contracts
394
400
 
395
- - **Device Identity**: Ed25519 keys for authentication
396
- - **Encrypted Storage**: AES-256-GCM for credentials
397
- - **API Key Scanner**: Automatic detection and redaction
398
- - **Trust Controller**: Approval workflows for sensitive actions
399
- - **Rate Limiting**: Prevent abuse
400
- - **Loop Detection**: Prevents infinite action loops
401
+ | Contract | Address | Network |
402
+ |----------|---------|---------|
403
+ | Agent Registry | [`0x158B236CC840FD3039a3Cf5D72AEfBF2550045C7`](https://sepolia.basescan.org/address/0x158B236CC840FD3039a3Cf5D72AEfBF2550045C7) | Base Sepolia |
401
404
 
402
405
  ---
403
406
 
404
- ## Links
407
+ ## Contributing
408
+
409
+ Contributions are welcome! Please open an issue or pull request on [GitHub](https://github.com/brn-mwai/wispy).
405
410
 
406
- - **npm**: https://www.npmjs.com/package/wispy-ai
407
- - **GitHub**: https://github.com/brn-mwai/wispy
408
- - **Contract**: https://sepolia.basescan.org/address/0x158B236CC840FD3039a3Cf5D72AEfBF2550045C7
411
+ ```bash
412
+ git clone https://github.com/brn-mwai/wispy.git
413
+ cd wispy
414
+ npm install
415
+ npm run build
416
+ npm run dev
417
+ ```
409
418
 
410
419
  ---
411
420
 
412
421
  ## License
413
422
 
414
- MIT
423
+ [MIT](LICENSE)
415
424
 
416
425
  ---
417
426
 
418
- **The first AI agent that thinks for days, pays for services, and proves its identity on-chain.**
427
+ <p align="center">
428
+ <strong>Wispy</strong> is built by <a href="https://hausorlabs.com">Hausor Labs Team (HL Team)</a>
429
+ </p>
419
430
 
420
- *Built by Brian Mwai for Google Gemini Hackathon, Chainlink Convergence, and ETHGlobal HackMoney 2026*
431
+ <p align="center">
432
+ <a href="https://wispy.cc">wispy.cc</a> &middot;
433
+ <a href="https://www.npmjs.com/package/wispy-ai">npm</a> &middot;
434
+ <a href="https://github.com/brn-mwai/wispy">GitHub</a>
435
+ </p>