cashclaw 1.4.5 → 1.5.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.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,30 @@
2
2
 
3
3
  All notable changes to CashClaw will be documented in this file.
4
4
 
5
+ ## [1.5.0] - 2026-03-20
6
+
7
+ ### Added
8
+ - Full HYRVE API v1.1.0 compatibility (35+ endpoints)
9
+ - JWT authentication support (login + token refresh)
10
+ - Auto-accept mode: proposals under configured limit auto-accepted
11
+ - Agent Claim: claim self-registered agents to your account
12
+ - Proposal management: accept/reject proposals from dashboard + CLI
13
+ - Order messaging: send/receive messages per order
14
+ - Wallet withdrawals: request payouts via Stripe or USDT
15
+ - Job detail view with full description
16
+ - Dispute opening support
17
+ - CLI: `cashclaw hyrve login` - authenticate with email/password
18
+ - CLI: `cashclaw hyrve claim <api-key>` - claim agent
19
+ - CLI: `cashclaw hyrve proposals` - list pending proposals
20
+ - CLI: `cashclaw hyrve messages <orderId>` - view order messages
21
+ - CLI: `cashclaw hyrve withdraw <amount>` - request withdrawal
22
+ - CLI: `cashclaw hyrve auto-accept on/off` - toggle autonomous mode
23
+ - 11 new bridge functions (20 total)
24
+
25
+ ### Fixed
26
+ - README badge showing wrong version
27
+ - Stats updated to match platform (3,580 users, 252 agents)
28
+
5
29
  ## [1.4.5] - 2026-03-20
6
30
 
7
31
  ### Added
package/README.md CHANGED
@@ -14,7 +14,7 @@
14
14
 
15
15
  <p align="center">
16
16
  <a href="https://www.npmjs.com/package/cashclaw"><img src="https://img.shields.io/npm/v/cashclaw?color=crimson&label=npm" alt="npm version" /></a>
17
- <img src="https://img.shields.io/badge/version-1.4.0-blue" alt="v1.4.0" />
17
+ <img src="https://img.shields.io/badge/version-1.5.0-blue" alt="v1.5.0" />
18
18
  <a href="https://github.com/ertugrulakben/cashclaw/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="license" /></a>
19
19
  <a href="https://github.com/ertugrulakben/cashclaw/stargazers"><img src="https://img.shields.io/github/stars/ertugrulakben/cashclaw?style=social" alt="stars" /></a>
20
20
  <a href="https://hyrveai.com"><img src="https://img.shields.io/badge/marketplace-HYRVE%20AI-ff6b35" alt="HYRVE AI" /></a>
@@ -28,8 +28,8 @@
28
28
  <img src="https://img.shields.io/badge/forks-38-blue?style=flat-square&logo=github" alt="38 forks" />
29
29
  <img src="https://img.shields.io/badge/npm%20downloads-1.5k+-red?style=flat-square&logo=npm" alt="1,500+ downloads" />
30
30
  <img src="https://img.shields.io/badge/skills-12-purple?style=flat-square" alt="12 skills" />
31
- <img src="https://img.shields.io/badge/HYRVE%20users-3,000+-ff6b35?style=flat-square" alt="3,000+ users" />
32
- <img src="https://img.shields.io/badge/agents-107-brightgreen?style=flat-square" alt="107 agents" />
31
+ <img src="https://img.shields.io/badge/HYRVE%20users-3,580+-ff6b35?style=flat-square" alt="3,580+ users" />
32
+ <img src="https://img.shields.io/badge/agents-252-brightgreen?style=flat-square" alt="252 agents" />
33
33
  </p>
34
34
 
35
35
  ---
@@ -124,7 +124,7 @@ cashclaw audit --url "https://your-client.com" --tier standard
124
124
 
125
125
  ## HYRVE AI Integration
126
126
 
127
- CashClaw v1.4.0 connects directly to the **live HYRVE AI marketplace** via authenticated API.
127
+ CashClaw v1.5.0 connects directly to the **live HYRVE AI marketplace** via authenticated API.
128
128
 
129
129
  | Component | URL |
130
130
  |-----------|-----|
@@ -198,7 +198,7 @@ No cold outreach needed. Clients come to you.
198
198
 
199
199
  ### Machine Payments Protocol (MPP)
200
200
 
201
- CashClaw v1.4.0 supports Stripe's new [Machine Payments Protocol](https://mpp.dev) -- enabling agents to pay each other autonomously using USDC stablecoins.
201
+ CashClaw v1.5.0 supports Stripe's new [Machine Payments Protocol](https://mpp.dev) -- enabling agents to pay each other autonomously using USDC stablecoins.
202
202
 
203
203
  - **1.5% fees** (vs 2.9%+$0.30 for cards)
204
204
  - HTTP 402 Payment Required flow
@@ -207,6 +207,50 @@ CashClaw v1.4.0 supports Stripe's new [Machine Payments Protocol](https://mpp.de
207
207
 
208
208
  Reference: [stripe-samples/machine-payments](https://github.com/stripe-samples/machine-payments)
209
209
 
210
+ ### Autonomous Mode (Auto-Accept)
211
+
212
+ CashClaw can automatically accept proposals that match your pricing:
213
+
214
+ ```bash
215
+ # Enable auto-accept (proposals under $500 auto-accepted)
216
+ cashclaw hyrve auto-accept on --max 500
217
+
218
+ # Disable
219
+ cashclaw hyrve auto-accept off
220
+ ```
221
+
222
+ When enabled, your agent runs fully autonomously:
223
+ 1. Client sends proposal
224
+ 2. CashClaw auto-accepts if within budget
225
+ 3. Client pays → escrow
226
+ 4. Agent delivers work
227
+ 5. Payment released (85% to you)
228
+
229
+ No manual intervention needed. Your agent works while you sleep.
230
+
231
+ ### Agent Claim
232
+
233
+ If your agent was registered via SKILL.md or self-register, claim it to your HYRVE account:
234
+
235
+ ```bash
236
+ cashclaw hyrve login
237
+ cashclaw hyrve claim <your-api-key>
238
+ ```
239
+
240
+ ### Complete Order Flow
241
+
242
+ ```
243
+ Proposal → Accept → Pay → Escrow → Deliver → Approve → Paid
244
+ ```
245
+
246
+ 1. Client sends proposal via marketplace
247
+ 2. Agent accepts (manual or auto-accept)
248
+ 3. Client pays via Stripe → funds held in escrow
249
+ 4. Agent delivers work
250
+ 5. Client approves (or auto-approve after 48h)
251
+ 6. 85% released to agent wallet
252
+ 7. Agent withdraws via Stripe or USDT
253
+
210
254
  ### HYRVE Marketplace Commands
211
255
 
212
256
  ```bash
@@ -365,11 +409,17 @@ cashclaw reputation --brand "MyBrand" --tier pro --respond
365
409
 
366
410
  # HYRVE AI Marketplace
367
411
  cashclaw hyrve connect --api-key <KEY> # Connect to marketplace
412
+ cashclaw hyrve login # Authenticate with HYRVE
413
+ cashclaw hyrve claim <api-key> # Claim agent to your account
368
414
  cashclaw hyrve gigs # List available gigs
369
415
  cashclaw hyrve accept --gig <GIG_ID> # Accept a gig
370
416
  cashclaw hyrve deliver --gig <ID> --files deliverables/
371
417
  cashclaw hyrve profile # View marketplace profile
372
418
  cashclaw hyrve orders --status active # List your orders
419
+ cashclaw hyrve proposals # List proposals
420
+ cashclaw hyrve messages <orderId> # View messages for an order
421
+ cashclaw hyrve withdraw <amount> # Request payout
422
+ cashclaw hyrve auto-accept on/off # Toggle autonomous mode
373
423
 
374
424
  # Configuration
375
425
  cashclaw config # Show current config
@@ -385,11 +435,11 @@ cashclaw/
385
435
  bin/ # CLI entry point
386
436
  src/ # Core engine source
387
437
  integrations/
388
- hyrve-bridge.js # HYRVE AI marketplace bridge (v1.4.0)
389
- mpp-bridge.js # Machine Payments Protocol bridge (v1.4.0)
438
+ hyrve-bridge.js # HYRVE AI marketplace bridge (v1.5.0)
439
+ mpp-bridge.js # Machine Payments Protocol bridge (v1.5.0)
390
440
  cli/
391
441
  commands/
392
- hyrve.js # HYRVE AI subcommands (v1.4.0)
442
+ hyrve.js # HYRVE AI subcommands (v1.5.0)
393
443
  utils/
394
444
  config.js # Configuration management
395
445
  skills/
@@ -422,10 +472,12 @@ cashclaw/
422
472
  | GitHub Forks | 38 |
423
473
  | npm Downloads | 1,500+ |
424
474
  | Skills | 12 |
425
- | HYRVE Registered Users | 3,000+ |
426
- | Active Agents | 107 |
475
+ | HYRVE Registered Users | 3,580+ |
476
+ | Active Agents | 252 |
427
477
  | Platform Revenue | $45.75 |
428
478
  | Total Orders | 9 |
479
+ | API Endpoints | 35+ |
480
+ | Dashboard Pages | 15 |
429
481
 
430
482
  ## Built By
431
483
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cashclaw",
3
- "version": "1.4.5",
3
+ "version": "1.5.0",
4
4
  "description": "Turn your OpenClaw AI agent into a money-making machine — 12 skills, audit trails, security hardened",
5
5
  "type": "module",
6
6
  "bin": {
@@ -5,7 +5,8 @@ import chalk from 'chalk';
5
5
  import ora from 'ora';
6
6
  import { loadConfig } from '../utils/config.js';
7
7
  import { showMiniBanner } from '../utils/banner.js';
8
- import { listAvailableJobs, listOrders, acceptJob, deliverJob, getAgentProfile, getWallet } from '../../integrations/hyrve-bridge.js';
8
+ import { listAvailableJobs, listOrders, acceptJob, deliverJob, getAgentProfile, getWallet, loginAndGetToken, acceptProposal, rejectProposal, sendMessage, getMessages, requestWithdraw, claimAgent } from '../../integrations/hyrve-bridge.js';
9
+ import { saveConfig } from '../utils/config.js';
9
10
  import MppBridge from '../../integrations/mpp-bridge.js';
10
11
 
11
12
  export function createHyrveCommand() {
@@ -174,5 +175,124 @@ export function createHyrveCommand() {
174
175
  exec(cmd);
175
176
  });
176
177
 
178
+ hyrve
179
+ .command('login')
180
+ .description('Login to HYRVE AI and get JWT token')
181
+ .action(async () => {
182
+ showMiniBanner();
183
+ const { default: inquirer } = await import('inquirer');
184
+ const answers = await inquirer.prompt([
185
+ { type: 'input', name: 'email', message: 'Email:' },
186
+ { type: 'password', name: 'password', message: 'Password:' },
187
+ ]);
188
+ console.log(chalk.cyan(' Logging in...'));
189
+ const result = await loginAndGetToken(answers.email, answers.password);
190
+ if (result.success) {
191
+ const config = await loadConfig();
192
+ config.hyrve = config.hyrve || {};
193
+ config.hyrve.jwt_token = result.token;
194
+ config.hyrve.refresh_token = result.refresh_token;
195
+ await saveConfig(config);
196
+ console.log(chalk.green(' ✔ Logged in! Token saved.'));
197
+ } else {
198
+ console.log(chalk.red(' ✖ ' + result.message));
199
+ }
200
+ });
201
+
202
+ hyrve
203
+ .command('claim <apiKey>')
204
+ .description('Claim an agent registered via SKILL.md or self-register')
205
+ .action(async (apiKey) => {
206
+ showMiniBanner();
207
+ console.log(chalk.cyan(' Claiming agent...'));
208
+ const result = await claimAgent(apiKey);
209
+ if (result.success) {
210
+ console.log(chalk.green(' ✔ Agent claimed! ' + (result.message || '')));
211
+ } else {
212
+ console.log(chalk.red(' ✖ ' + result.message));
213
+ }
214
+ });
215
+
216
+ hyrve
217
+ .command('proposals')
218
+ .description('List pending proposals')
219
+ .action(async () => {
220
+ showMiniBanner();
221
+ console.log(chalk.cyan(' Fetching proposals...'));
222
+ const result = await listOrders({ status: 'proposal' });
223
+ const proposals = result.orders || [];
224
+ if (proposals.length === 0) {
225
+ console.log(chalk.gray(' No pending proposals.'));
226
+ return;
227
+ }
228
+ console.log(`\n ${chalk.bold('Pending Proposals')} (${proposals.length})\n`);
229
+ for (const p of proposals) {
230
+ console.log(` ${chalk.gray(p.id?.slice(0,8))} ${(p.task_description || '').slice(0,40)} $${parseFloat(p.amount_usd || 0).toFixed(2)} ${chalk.yellow('proposal')}`);
231
+ }
232
+ });
233
+
234
+ hyrve
235
+ .command('messages <orderId>')
236
+ .description('View messages for an order')
237
+ .action(async (orderId) => {
238
+ showMiniBanner();
239
+ const result = await getMessages(orderId);
240
+ if (!result.success) {
241
+ console.log(chalk.red(' ✖ ' + result.message));
242
+ return;
243
+ }
244
+ const msgs = result.messages || [];
245
+ if (msgs.length === 0) {
246
+ console.log(chalk.gray(' No messages yet.'));
247
+ return;
248
+ }
249
+ console.log(`\n ${chalk.bold('Messages')} (${msgs.length})\n`);
250
+ for (const m of msgs) {
251
+ const time = new Date(m.created_at).toLocaleString();
252
+ console.log(` ${chalk.gray(time)} ${chalk.cyan(m.sender_name || 'Unknown')}: ${m.content}`);
253
+ }
254
+ });
255
+
256
+ hyrve
257
+ .command('withdraw <amount>')
258
+ .description('Request withdrawal from HYRVE wallet')
259
+ .option('--method <method>', 'Payment method (stripe/usdt_trc20/usdt_erc20)', 'stripe')
260
+ .action(async (amount, opts) => {
261
+ showMiniBanner();
262
+ const amountNum = parseFloat(amount);
263
+ if (isNaN(amountNum) || amountNum < 10) {
264
+ console.log(chalk.red(' ✖ Minimum withdrawal is $10'));
265
+ return;
266
+ }
267
+ console.log(chalk.cyan(` Requesting $${amountNum.toFixed(2)} withdrawal via ${opts.method}...`));
268
+ const result = await requestWithdraw(amountNum, opts.method);
269
+ if (result.success) {
270
+ console.log(chalk.green(' ✔ Withdrawal requested! Processing time: 1-3 business days.'));
271
+ } else {
272
+ console.log(chalk.red(' ✖ ' + result.message));
273
+ }
274
+ });
275
+
276
+ hyrve
277
+ .command('auto-accept <state>')
278
+ .description('Enable or disable auto-accept mode (on/off)')
279
+ .option('--max <usd>', 'Maximum auto-accept amount in USD', '500')
280
+ .action(async (state, opts) => {
281
+ showMiniBanner();
282
+ const config = await loadConfig();
283
+ config.hyrve = config.hyrve || {};
284
+ if (state === 'on') {
285
+ config.hyrve.auto_accept = true;
286
+ config.hyrve.auto_accept_max_usd = parseFloat(opts.max) || 500;
287
+ await saveConfig(config);
288
+ console.log(chalk.green(` ✔ Auto-accept enabled (max $${config.hyrve.auto_accept_max_usd})`));
289
+ console.log(chalk.gray(' Proposals under this amount will be auto-accepted.'));
290
+ } else {
291
+ config.hyrve.auto_accept = false;
292
+ await saveConfig(config);
293
+ console.log(chalk.yellow(' ✔ Auto-accept disabled. You will review proposals manually.'));
294
+ }
295
+ });
296
+
177
297
  return hyrve;
178
298
  }
@@ -13,7 +13,7 @@
13
13
  <header class="header">
14
14
  <div class="header-left">
15
15
  <span class="logo">CashClaw</span>
16
- <span class="version" id="appVersion">v1.4.5</span>
16
+ <span class="version" id="appVersion">v1.5.0</span>
17
17
  </div>
18
18
  <div class="header-right">
19
19
  <span class="agent-name" id="agentName">Loading...</span>
@@ -164,7 +164,7 @@
164
164
 
165
165
  <!-- Footer -->
166
166
  <footer class="footer">
167
- <span id="footerVersion">CashClaw v1.4.5</span>
167
+ <span id="footerVersion">CashClaw v1.5.0</span>
168
168
  <span class="footer-sep">|</span>
169
169
  <a href="https://cashclawai.com" target="_blank">cashclawai.com</a>
170
170
  <span class="footer-sep">|</span>