paytaca-cli 0.3.0 → 0.3.2
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/README.md +23 -5
- package/dist/commands/pay.d.ts.map +1 -1
- package/dist/commands/pay.js +16 -13
- package/dist/commands/pay.js.map +1 -1
- package/dist/index.js +0 -4
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/skills/README.md +68 -0
- package/skills/paytaca-send/SKILL.md +159 -0
- package/skills/paytaca-wallet/SKILL.md +155 -0
- package/skills/{paytaca → paytaca-x402}/SKILL.md +12 -5
- package/dist/commands/claude.d.ts +0 -9
- package/dist/commands/claude.d.ts.map +0 -1
- package/dist/commands/claude.js +0 -20
- package/dist/commands/claude.js.map +0 -1
- package/dist/commands/opencode.d.ts +0 -9
- package/dist/commands/opencode.d.ts.map +0 -1
- package/dist/commands/opencode.js +0 -20
- package/dist/commands/opencode.js.map +0 -1
- package/dist/utils/skill.d.ts +0 -17
- package/dist/utils/skill.d.ts.map +0 -1
- package/dist/utils/skill.js +0 -100
- package/dist/utils/skill.js.map +0 -1
package/README.md
CHANGED
|
@@ -122,12 +122,32 @@ paytaca pay https://api.nanogpt.com/v1/complete --method POST --body '{"prompt":
|
|
|
122
122
|
|
|
123
123
|
### AI Agent Integration
|
|
124
124
|
|
|
125
|
+
Paytaca CLI provides AI agent skills for wallet operations. Install from GitHub (supports 45+ AI frameworks):
|
|
126
|
+
|
|
125
127
|
```bash
|
|
126
|
-
|
|
127
|
-
|
|
128
|
+
# Install specific skill
|
|
129
|
+
npx skills add paytaca/paytaca-cli --skill <skill-name> -a <agent> -g
|
|
130
|
+
|
|
131
|
+
# Install all skills
|
|
132
|
+
npx skills add paytaca/paytaca-cli --all
|
|
133
|
+
|
|
134
|
+
# Examples
|
|
135
|
+
npx skills add paytaca/paytaca-cli --skill paytaca-x402 -a opencode -g
|
|
136
|
+
npx skills add paytaca/paytaca-cli --skill paytaca-wallet -a claude-code -g
|
|
137
|
+
npx skills add paytaca/paytaca-cli --skill paytaca-send -a openclaw -g
|
|
128
138
|
```
|
|
129
139
|
|
|
130
|
-
|
|
140
|
+
**Available Skills:**
|
|
141
|
+
|
|
142
|
+
| Skill | Purpose | Approval Needed |
|
|
143
|
+
|-------|---------|------------------|
|
|
144
|
+
| `paytaca-x402` | HTTP 402 payment handling | Yes (before payment) |
|
|
145
|
+
| `paytaca-wallet` | Balance, addresses, history, token info | No (read-only) |
|
|
146
|
+
| `paytaca-send` | Send BCH and CashTokens | Yes (before sending) |
|
|
147
|
+
|
|
148
|
+
**Supported frameworks:** OpenCode, Claude Code, OpenClaw, Cursor, Cline, Windsurf, Roo, Gemini CLI, Codex, GitHub Copilot, Goose, Trae, Kiro CLI, and 30+ more.
|
|
149
|
+
|
|
150
|
+
See [skills/README.md](skills/README.md) for detailed skill documentation.
|
|
131
151
|
|
|
132
152
|
## Network
|
|
133
153
|
|
|
@@ -163,8 +183,6 @@ src/
|
|
|
163
183
|
token.ts CashToken commands (list, info, send, send-nft)
|
|
164
184
|
pay.ts x402 BCH payment handler for HTTP requests
|
|
165
185
|
check.ts Check if URL requires x402 payment
|
|
166
|
-
opencode.ts Install x402 skill for OpenCode AI agents
|
|
167
|
-
claude.ts Install x402 skill for Claude Code AI agents
|
|
168
186
|
wallet/
|
|
169
187
|
index.ts Wallet class, mnemonic gen/import/load
|
|
170
188
|
bch.ts BchWallet (balance, send, history, CashTokens)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pay.d.ts","sourceRoot":"","sources":["../../src/commands/pay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"pay.d.ts","sourceRoot":"","sources":["../../src/commands/pay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AA4DnC,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAwEzD"}
|
package/dist/commands/pay.js
CHANGED
|
@@ -33,6 +33,7 @@ export function registerPayCommand(program) {
|
|
|
33
33
|
.option('--payer <value>', 'Payer identifier (defaults to wallet address index 0, or pass custom value like user ID for server-side lookups)')
|
|
34
34
|
.option('--dry-run', 'Show what would happen without making payment')
|
|
35
35
|
.option('--json', 'Output results as JSON')
|
|
36
|
+
.option('--confirmed', 'Skip confirmation prompt (prior approval already obtained via paytaca check)')
|
|
36
37
|
.action(async (url, opts) => {
|
|
37
38
|
const isChipnet = Boolean(opts.chipnet);
|
|
38
39
|
const network = isChipnet ? 'chipnet' : 'mainnet';
|
|
@@ -75,17 +76,17 @@ export function registerPayCommand(program) {
|
|
|
75
76
|
const method = opts.method?.toUpperCase() || 'GET';
|
|
76
77
|
const body = opts.body;
|
|
77
78
|
if (isJson) {
|
|
78
|
-
await runPayJson(url, method, headers, body, opts, x402Payer, bchWallet, isChipnet);
|
|
79
|
+
await runPayJson(url, method, headers, body, opts, x402Payer, bchWallet, isChipnet, opts.confirmed);
|
|
79
80
|
}
|
|
80
81
|
else if (isDryRun) {
|
|
81
82
|
await runPayDryRun(url, method, headers, body, opts, x402Payer, bchWallet, isChipnet);
|
|
82
83
|
}
|
|
83
84
|
else {
|
|
84
|
-
await runPayHuman(url, method, headers, body, opts, x402Payer, bchWallet, isChipnet);
|
|
85
|
+
await runPayHuman(url, method, headers, body, opts, x402Payer, bchWallet, isChipnet, opts.confirmed);
|
|
85
86
|
}
|
|
86
87
|
});
|
|
87
88
|
}
|
|
88
|
-
async function runPayHuman(url, method, headers, body, opts, x402Payer, bchWallet, isChipnet) {
|
|
89
|
+
async function runPayHuman(url, method, headers, body, opts, x402Payer, bchWallet, isChipnet, confirmed = false) {
|
|
89
90
|
const network = isChipnet ? 'chipnet' : 'mainnet';
|
|
90
91
|
console.log(`\n ${chalk.bold(method)} ${url}`);
|
|
91
92
|
console.log(chalk.dim(` Network: ${chalk.cyan(network)}`));
|
|
@@ -95,7 +96,7 @@ async function runPayHuman(url, method, headers, body, opts, x402Payer, bchWalle
|
|
|
95
96
|
}
|
|
96
97
|
console.log();
|
|
97
98
|
try {
|
|
98
|
-
const result = await executePay(url, method, headers, body, opts, x402Payer, bchWallet, false);
|
|
99
|
+
const result = await executePay(url, method, headers, body, opts, x402Payer, bchWallet, false, confirmed);
|
|
99
100
|
if (result.payment?.required && result.payment.txid) {
|
|
100
101
|
const explorer = isChipnet
|
|
101
102
|
? 'https://chipnet.chaingraph.cash/tx/'
|
|
@@ -202,9 +203,9 @@ async function runPayDryRun(url, method, headers, body, opts, x402Payer, bchWall
|
|
|
202
203
|
process.exit(1);
|
|
203
204
|
}
|
|
204
205
|
}
|
|
205
|
-
async function runPayJson(url, method, headers, body, opts, x402Payer, bchWallet, isChipnet) {
|
|
206
|
+
async function runPayJson(url, method, headers, body, opts, x402Payer, bchWallet, isChipnet, confirmed = false) {
|
|
206
207
|
try {
|
|
207
|
-
const result = await executePay(url, method, headers, body, opts, x402Payer, bchWallet, false);
|
|
208
|
+
const result = await executePay(url, method, headers, body, opts, x402Payer, bchWallet, false, confirmed);
|
|
208
209
|
console.log(JSON.stringify(result, null, 2));
|
|
209
210
|
}
|
|
210
211
|
catch (err) {
|
|
@@ -213,7 +214,7 @@ async function runPayJson(url, method, headers, body, opts, x402Payer, bchWallet
|
|
|
213
214
|
process.exit(1);
|
|
214
215
|
}
|
|
215
216
|
}
|
|
216
|
-
async function executePay(url, method, headers, body, opts, x402Payer, bchWallet, skipPayment) {
|
|
217
|
+
async function executePay(url, method, headers, body, opts, x402Payer, bchWallet, skipPayment, confirmed = false) {
|
|
217
218
|
const response = await fetch(url, {
|
|
218
219
|
method,
|
|
219
220
|
headers,
|
|
@@ -257,13 +258,15 @@ async function executePay(url, method, headers, body, opts, x402Payer, bchWallet
|
|
|
257
258
|
const amountBch = Number(requirements.amount) / 1e8;
|
|
258
259
|
const changeAddressSet = bchWallet.getAddressSetAt(0);
|
|
259
260
|
const changeAddress = opts.changeAddress || changeAddressSet.change;
|
|
260
|
-
console.log(chalk.yellow('\n ⚠ Payment Required'));
|
|
261
|
-
console.log(chalk.dim(` Amount: ${amountBch} BCH (${requirements.amount} sats)`));
|
|
262
|
-
console.log(chalk.dim(` To: ${address}`));
|
|
263
|
-
console.log(chalk.dim(` Change: ${changeAddress}`));
|
|
264
|
-
console.log(chalk.dim(` Payer: ${payerAddress}`));
|
|
265
|
-
const confirmed = await promptConfirmation('Confirm payment?');
|
|
266
261
|
if (!confirmed) {
|
|
262
|
+
console.log(chalk.yellow('\n ⚠ Payment Required'));
|
|
263
|
+
console.log(chalk.dim(` Amount: ${amountBch} BCH (${requirements.amount} sats)`));
|
|
264
|
+
console.log(chalk.dim(` To: ${address}`));
|
|
265
|
+
console.log(chalk.dim(` Change: ${changeAddress}`));
|
|
266
|
+
console.log(chalk.dim(` Payer: ${payerAddress}`));
|
|
267
|
+
}
|
|
268
|
+
const userConfirmed = confirmed || await promptConfirmation('Confirm payment?');
|
|
269
|
+
if (!userConfirmed) {
|
|
267
270
|
return {
|
|
268
271
|
success: false,
|
|
269
272
|
status: 402,
|
package/dist/commands/pay.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pay.js","sourceRoot":"","sources":["../../src/commands/pay.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pay.js","sourceRoot":"","sources":["../../src/commands/pay.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -15,8 +15,6 @@ import { registerHistoryCommand } from './commands/history.js';
|
|
|
15
15
|
import { registerTokenCommands } from './commands/token.js';
|
|
16
16
|
import { registerPayCommand } from './commands/pay.js';
|
|
17
17
|
import { registerCheckCommand } from './commands/check.js';
|
|
18
|
-
import { registerOpencodeCommand } from './commands/opencode.js';
|
|
19
|
-
import { registerClaudeCommand } from './commands/claude.js';
|
|
20
18
|
const program = new Command();
|
|
21
19
|
program
|
|
22
20
|
.name('paytaca')
|
|
@@ -31,7 +29,5 @@ registerHistoryCommand(program);
|
|
|
31
29
|
registerTokenCommands(program);
|
|
32
30
|
registerPayCommand(program);
|
|
33
31
|
registerCheckCommand(program);
|
|
34
|
-
registerOpencodeCommand(program);
|
|
35
|
-
registerClaudeCommand(program);
|
|
36
32
|
program.parse();
|
|
37
33
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAA;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE1D,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,mCAAmC,CAAC;KAChD,OAAO,CAAC,OAAO,CAAC,CAAA;AAEnB,sBAAsB,CAAC,OAAO,CAAC,CAAA;AAC/B,uBAAuB,CAAC,OAAO,CAAC,CAAA;AAChC,mBAAmB,CAAC,OAAO,CAAC,CAAA;AAC5B,sBAAsB,CAAC,OAAO,CAAC,CAAA;AAC/B,sBAAsB,CAAC,OAAO,CAAC,CAAA;AAC/B,sBAAsB,CAAC,OAAO,CAAC,CAAA;AAC/B,qBAAqB,CAAC,OAAO,CAAC,CAAA;AAC9B,kBAAkB,CAAC,OAAO,CAAC,CAAA;AAC3B,oBAAoB,CAAC,OAAO,CAAC,CAAA;AAE7B,OAAO,CAAC,KAAK,EAAE,CAAA"}
|
package/package.json
CHANGED
package/skills/README.md
ADDED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Paytaca CLI Skills
|
|
2
|
+
|
|
3
|
+
This directory contains AI agent skills for the Paytaca CLI.
|
|
4
|
+
|
|
5
|
+
## Available Skills
|
|
6
|
+
|
|
7
|
+
### paytaca-x402
|
|
8
|
+
|
|
9
|
+
Handles x402 HTTP payment requests using Paytaca BCH wallet. Use when encountering HTTP 402 responses or when calling APIs that may require payment via the x402 protocol.
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx skills add paytaca/paytaca-cli --skill paytaca-x402 -a <agent> -g
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
### paytaca-wallet
|
|
16
|
+
|
|
17
|
+
Query wallet information including BCH balance, CashToken holdings, addresses, and transaction history. Use for read-only wallet operations.
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npx skills add paytaca/paytaca-cli --skill paytaca-wallet -a <agent> -g
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### paytaca-send
|
|
24
|
+
|
|
25
|
+
Send BCH and CashTokens from the wallet. **Requires user approval** before any sending operation.
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
npx skills add paytaca/paytaca-cli --skill paytaca-send -a <agent> -g
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Installation
|
|
32
|
+
|
|
33
|
+
Install specific skill:
|
|
34
|
+
```bash
|
|
35
|
+
npx skills add paytaca/paytaca-cli --skill <skill-name> -a <agent> -g
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Install all skills:
|
|
39
|
+
```bash
|
|
40
|
+
npx skills add paytaca/paytaca-cli --all
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
List available skills:
|
|
44
|
+
```bash
|
|
45
|
+
npx skills add paytaca/paytaca-cli --list
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Skill Overview
|
|
49
|
+
|
|
50
|
+
| Skill | Purpose | Approval Needed |
|
|
51
|
+
|-------|---------|-----------------|
|
|
52
|
+
| paytaca-x402 | HTTP 402 payment handling | Yes (before payment) |
|
|
53
|
+
| paytaca-wallet | Balance, addresses, history, token info | No (read-only) |
|
|
54
|
+
| paytaca-send | Send BCH and tokens | Yes (before sending) |
|
|
55
|
+
|
|
56
|
+
## Adding New Skills
|
|
57
|
+
|
|
58
|
+
To add a new skill:
|
|
59
|
+
|
|
60
|
+
1. Create a new directory: `skills/<skill-name>/`
|
|
61
|
+
2. Add a `SKILL.md` file with YAML frontmatter:
|
|
62
|
+
```yaml
|
|
63
|
+
---
|
|
64
|
+
name: <skill-name>
|
|
65
|
+
description: What this skill does and when to use it
|
|
66
|
+
---
|
|
67
|
+
```
|
|
68
|
+
3. Write the skill instructions below the frontmatter
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: paytaca-send
|
|
3
|
+
description: Send BCH and CashTokens from the wallet. REQUIRES USER APPROVAL before any sending operation.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Paytaca Send
|
|
7
|
+
|
|
8
|
+
This skill handles sending BCH and CashTokens. **All sending operations require explicit user approval before execution.**
|
|
9
|
+
|
|
10
|
+
## ⚠️ User Approval Required
|
|
11
|
+
|
|
12
|
+
**CRITICAL**: The agent MUST NOT execute any `paytaca send` or `paytaca token send` command without first:
|
|
13
|
+
1. Informing the user of the exact amount and recipient
|
|
14
|
+
2. Waiting for explicit user confirmation (e.g., "yes", "send it", "confirm")
|
|
15
|
+
3. Only then executing the send command
|
|
16
|
+
|
|
17
|
+
These commands spend real funds from the user's wallet.
|
|
18
|
+
|
|
19
|
+
---
|
|
20
|
+
|
|
21
|
+
## Send BCH
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
# Basic send (BCH amount)
|
|
25
|
+
paytaca send <address> <amount>
|
|
26
|
+
|
|
27
|
+
# Send in satoshis
|
|
28
|
+
paytaca send <address> 50000 --unit sats
|
|
29
|
+
|
|
30
|
+
# Testnet (chipnet)
|
|
31
|
+
paytaca send <address> 0.001 --chipnet
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### Example Workflow
|
|
35
|
+
```
|
|
36
|
+
Agent: I'll send 0.001 BCH to bitcoincash:qpm5...
|
|
37
|
+
Confirm? (This will spend real funds)
|
|
38
|
+
|
|
39
|
+
User: yes
|
|
40
|
+
|
|
41
|
+
Agent: paytaca send bitcoincash:qpm5... 0.001
|
|
42
|
+
→ Transaction sent: txid...
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Send Fungible Tokens
|
|
48
|
+
|
|
49
|
+
```bash
|
|
50
|
+
# Send tokens (amount in base units)
|
|
51
|
+
paytaca token send <address> <amount> --token <category>
|
|
52
|
+
|
|
53
|
+
# Example: Send 1000 units of a token
|
|
54
|
+
paytaca token send bitcoincash:zpm5... 1000 --token abc123...
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
**Note**: Token amounts are in base units. If a token has 8 decimals, sending `1` token requires `100000000` base units.
|
|
58
|
+
|
|
59
|
+
### Token Address Warning
|
|
60
|
+
Tokens should be sent to token-aware (z-prefix) addresses. The CLI will warn if the recipient address is not token-aware.
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Send NFTs
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
# Send NFT (auto-detect UTXO)
|
|
68
|
+
paytaca token send-nft <address> --token <category> --commitment <hex>
|
|
69
|
+
|
|
70
|
+
# Example: Send NFT with empty commitment
|
|
71
|
+
paytaca token send-nft bitcoincash:zpm5... --token abc123... --commitment ""
|
|
72
|
+
|
|
73
|
+
# With capability (minting or mutable)
|
|
74
|
+
paytaca token send-nft <address> --token <category> --commitment <hex> --capability minting
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### Find NFT details
|
|
78
|
+
```bash
|
|
79
|
+
# List NFTs for a token category
|
|
80
|
+
paytaca token info <category>
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## Network
|
|
86
|
+
|
|
87
|
+
All commands default to **mainnet**. Use `--chipnet` for testnet:
|
|
88
|
+
|
|
89
|
+
```bash
|
|
90
|
+
paytaca send <address> 0.01 --chipnet
|
|
91
|
+
paytaca token send <address> 100 --token <cat> --chipnet
|
|
92
|
+
paytaca token send-nft <address> --token <cat> --commitment "" --chipnet
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Decision Flow
|
|
98
|
+
|
|
99
|
+
When user requests to send funds:
|
|
100
|
+
|
|
101
|
+
1. **Validate inputs**: Check address format and amount
|
|
102
|
+
2. **Inform user**: State the exact amount, recipient, and network
|
|
103
|
+
3. **Wait for approval**: Ask "Send X [BCH/tokens] to <address>? Confirm?"
|
|
104
|
+
4. **Execute**: Only after explicit approval
|
|
105
|
+
|
|
106
|
+
### Example: Sending BCH
|
|
107
|
+
```
|
|
108
|
+
User: Send 0.01 BCH to bitcoincash:qpm5qz6j5p5s5s5s5s5s5s5s5s5s5s5s5s5
|
|
109
|
+
|
|
110
|
+
Agent: Checking wallet balance...
|
|
111
|
+
paytaca balance
|
|
112
|
+
|
|
113
|
+
Agent: Balance: 0.5 BCH
|
|
114
|
+
Sending 0.01 BCH to bitcoincash:qpm5qz6j5p5s5s5s5s5s5s5s5s5s5s5s5s
|
|
115
|
+
Confirm? (yes/no)
|
|
116
|
+
|
|
117
|
+
User: yes
|
|
118
|
+
|
|
119
|
+
Agent: paytaca send bitcoincash:qpm5qz6j5p5s5s5s5s5s5s5s5s5s5s5s5s 0.01
|
|
120
|
+
→ Transaction sent!
|
|
121
|
+
txid: abc123...
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### Example: Sending Tokens
|
|
125
|
+
```
|
|
126
|
+
User: Send 1000 tokens to bitcoincash:zpm5...
|
|
127
|
+
|
|
128
|
+
Agent: Let me check your token balance first...
|
|
129
|
+
paytaca token info <category>
|
|
130
|
+
|
|
131
|
+
Agent: You have 5000 tokens.
|
|
132
|
+
Sending 1000 base units to bitcoincash:zpm5...
|
|
133
|
+
Confirm? (yes/no)
|
|
134
|
+
|
|
135
|
+
User: yes
|
|
136
|
+
|
|
137
|
+
Agent: paytaca token send bitcoincash:zpm5... 1000 --token <category>
|
|
138
|
+
→ Transaction sent!
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
---
|
|
142
|
+
|
|
143
|
+
## Error Handling
|
|
144
|
+
|
|
145
|
+
| Error | Cause | Solution |
|
|
146
|
+
|-------|-------|----------|
|
|
147
|
+
| `Insufficient balance` | Not enough BCH | Check `paytaca balance` first |
|
|
148
|
+
| `Insufficient BCH for fees` | Can't afford tx fee | Need more BCH for miner fee |
|
|
149
|
+
| `Invalid address` | Bad address format | Use CashAddr format |
|
|
150
|
+
| `Token not found` | Unknown category | Check token category ID |
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## Security Notes
|
|
155
|
+
|
|
156
|
+
- Seed phrase is stored in OS keychain (never transmitted)
|
|
157
|
+
- Transactions are signed locally
|
|
158
|
+
- Always verify recipient address before confirming
|
|
159
|
+
- Test with small amounts on mainnet, or use `--chipnet` for testing
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: paytaca-wallet
|
|
3
|
+
description: Query wallet information including BCH balance, CashToken holdings, addresses, and transaction history. Use for read-only wallet operations.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Paytaca Wallet Info
|
|
7
|
+
|
|
8
|
+
This skill provides read-only access to wallet information via the Paytaca CLI.
|
|
9
|
+
|
|
10
|
+
## Commands
|
|
11
|
+
|
|
12
|
+
### Check Balance
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
# BCH balance
|
|
16
|
+
paytaca balance
|
|
17
|
+
|
|
18
|
+
# Balance in satoshis
|
|
19
|
+
paytaca balance --sats
|
|
20
|
+
|
|
21
|
+
# Token balance
|
|
22
|
+
paytaca balance --token <category>
|
|
23
|
+
|
|
24
|
+
# Testnet (chipnet)
|
|
25
|
+
paytaca balance --chipnet
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
### View Transaction History
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
# Recent transactions
|
|
32
|
+
paytaca history
|
|
33
|
+
|
|
34
|
+
# Filter by type
|
|
35
|
+
paytaca history --type incoming
|
|
36
|
+
paytaca history --type outgoing
|
|
37
|
+
|
|
38
|
+
# Filter by token
|
|
39
|
+
paytaca history --token <category>
|
|
40
|
+
|
|
41
|
+
# Pagination
|
|
42
|
+
paytaca history --page 2
|
|
43
|
+
|
|
44
|
+
# Satoshis display
|
|
45
|
+
paytaca history --sats
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### Get Receiving Address
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
# BCH address with QR code
|
|
52
|
+
paytaca receive
|
|
53
|
+
|
|
54
|
+
# Address at specific index
|
|
55
|
+
paytaca receive --index 5
|
|
56
|
+
|
|
57
|
+
# Address only (no QR)
|
|
58
|
+
paytaca receive --no-qr
|
|
59
|
+
|
|
60
|
+
# Token-aware address (z-prefix)
|
|
61
|
+
paytaca receive --token
|
|
62
|
+
|
|
63
|
+
# With payment amount (BIP21 URI)
|
|
64
|
+
paytaca receive --amount 0.5
|
|
65
|
+
|
|
66
|
+
# Token payment URI
|
|
67
|
+
paytaca receive --token <category> --amount 100
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Derive Addresses
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
# Address at index 0
|
|
74
|
+
paytaca address derive
|
|
75
|
+
|
|
76
|
+
# Address at index 5
|
|
77
|
+
paytaca address derive 5
|
|
78
|
+
|
|
79
|
+
# Token address
|
|
80
|
+
paytaca address derive --token
|
|
81
|
+
|
|
82
|
+
# List first 5 addresses
|
|
83
|
+
paytaca address list
|
|
84
|
+
|
|
85
|
+
# List 20 addresses
|
|
86
|
+
paytaca address list -n 20
|
|
87
|
+
|
|
88
|
+
# Token addresses
|
|
89
|
+
paytaca address list --token
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### Wallet Info
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
# Wallet hash, address, balance
|
|
96
|
+
paytaca wallet info
|
|
97
|
+
|
|
98
|
+
# Testnet
|
|
99
|
+
paytaca wallet info --chipnet
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Token Information
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
# List all fungible tokens
|
|
106
|
+
paytaca token list
|
|
107
|
+
|
|
108
|
+
# Token details (name, symbol, decimals, balance, NFTs)
|
|
109
|
+
paytaca token info <category>
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
## JSON Output
|
|
113
|
+
|
|
114
|
+
For programmatic parsing, use `--json` where available:
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
paytaca balance --json # Not yet supported
|
|
118
|
+
paytaca history --json # Not yet supported
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
## Network
|
|
122
|
+
|
|
123
|
+
All commands default to **mainnet**. Use `--chipnet` for testnet:
|
|
124
|
+
|
|
125
|
+
```bash
|
|
126
|
+
paytaca balance --chipnet
|
|
127
|
+
paytaca history --chipnet
|
|
128
|
+
paytaca receive --chipnet
|
|
129
|
+
paytaca token list --chipnet
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
## Common Workflows
|
|
133
|
+
|
|
134
|
+
### Check wallet status
|
|
135
|
+
```bash
|
|
136
|
+
paytaca wallet info
|
|
137
|
+
paytaca balance
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### Get deposit address
|
|
141
|
+
```bash
|
|
142
|
+
paytaca receive
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
### Check token holdings
|
|
146
|
+
```bash
|
|
147
|
+
paytaca token list
|
|
148
|
+
paytaca token info <category>
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
### View recent activity
|
|
152
|
+
```bash
|
|
153
|
+
paytaca history
|
|
154
|
+
paytaca history --type incoming
|
|
155
|
+
```
|
|
@@ -45,12 +45,15 @@ paytaca pay <url> --dry-run --json
|
|
|
45
45
|
### Make a paid request
|
|
46
46
|
|
|
47
47
|
```bash
|
|
48
|
-
# Basic
|
|
48
|
+
# Basic (will prompt for confirmation)
|
|
49
49
|
paytaca pay <url>
|
|
50
50
|
|
|
51
51
|
# With JSON output (preferred for AI agents)
|
|
52
52
|
paytaca pay <url> --json
|
|
53
53
|
|
|
54
|
+
# Skip confirmation prompt (only use after user has already approved via paytaca check)
|
|
55
|
+
paytaca pay <url> --confirmed
|
|
56
|
+
|
|
54
57
|
# POST request
|
|
55
58
|
paytaca pay <url> --method POST --body '{"prompt":"hello"}'
|
|
56
59
|
|
|
@@ -86,9 +89,12 @@ When preparing to call an unfamiliar API that might require payment:
|
|
|
86
89
|
|
|
87
90
|
**CRITICAL**: The agent MUST NOT execute `paytaca pay` without explicit user approval. Since `paytaca pay` spends real BCH from the user's wallet, always:
|
|
88
91
|
|
|
89
|
-
1.
|
|
90
|
-
2.
|
|
91
|
-
3.
|
|
92
|
+
1. Run `paytaca check <url> --json` first to determine the cost
|
|
93
|
+
2. Inform the user of the cost (e.g., "This API costs ~1000 sats")
|
|
94
|
+
3. Wait for explicit user confirmation (e.g., "yes", "go ahead", "pay")
|
|
95
|
+
4. Only then execute the payment using `paytaca pay <url> --confirmed --json`
|
|
96
|
+
|
|
97
|
+
The `--confirmed` flag skips the interactive confirmation prompt since the user has already approved the transaction. Do NOT use `--confirmed` without first obtaining explicit user approval.
|
|
92
98
|
|
|
93
99
|
Do NOT assume the user wants to pay - even if the cost seems small.
|
|
94
100
|
|
|
@@ -102,7 +108,7 @@ Agent: paytaca check https://api.nanogpt.com/v1/complete --json
|
|
|
102
108
|
Agent: Informs user "This API costs 100 sats (0.00000100 BCH). Approve to proceed?"
|
|
103
109
|
User: "yes"
|
|
104
110
|
|
|
105
|
-
Agent: paytaca pay https://api.nanogpt.com/v1/complete --method POST --body '{"prompt":"hello"}' --json
|
|
111
|
+
Agent: paytaca pay https://api.nanogpt.com/v1/complete --method POST --body '{"prompt":"hello"}' --confirmed --json
|
|
106
112
|
→ Handles 402 → pays 100 sats → returns response with txid
|
|
107
113
|
```
|
|
108
114
|
|
|
@@ -112,6 +118,7 @@ Agent: paytaca pay https://api.nanogpt.com/v1/complete --method POST --body '{"p
|
|
|
112
118
|
|--------|-------------|
|
|
113
119
|
| `--json` | Machine-readable output (recommended for AI) |
|
|
114
120
|
| `--dry-run` | Preview payment without executing |
|
|
121
|
+
| `--confirmed` | Skip confirmation prompt (prior approval obtained) |
|
|
115
122
|
| `--chipnet` | Use chipnet (testnet) instead of mainnet |
|
|
116
123
|
| `--max-amount` | Override max payment amount in sats |
|
|
117
124
|
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI command: claude
|
|
3
|
-
*
|
|
4
|
-
* Set up paytaca x402 payment handling for Claude Code AI assistant.
|
|
5
|
-
* Installs the paytaca skill so Claude Code knows how to handle 402 responses.
|
|
6
|
-
*/
|
|
7
|
-
import { Command } from 'commander';
|
|
8
|
-
export declare function registerClaudeCommand(program: Command): void;
|
|
9
|
-
//# sourceMappingURL=claude.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/commands/claude.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKnC,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAW5D"}
|
package/dist/commands/claude.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI command: claude
|
|
3
|
-
*
|
|
4
|
-
* Set up paytaca x402 payment handling for Claude Code AI assistant.
|
|
5
|
-
* Installs the paytaca skill so Claude Code knows how to handle 402 responses.
|
|
6
|
-
*/
|
|
7
|
-
import { SUPPORTED_ASSISTANTS, handleSkillAction } from '../utils/skill.js';
|
|
8
|
-
export function registerClaudeCommand(program) {
|
|
9
|
-
const assistant = SUPPORTED_ASSISTANTS.find(a => a.name === 'Claude Code');
|
|
10
|
-
if (!assistant)
|
|
11
|
-
return;
|
|
12
|
-
program
|
|
13
|
-
.command('claude')
|
|
14
|
-
.description('Set up paytaca x402 payments for Claude Code AI assistant')
|
|
15
|
-
.argument('[action]', 'Action: install, uninstall, status', 'status')
|
|
16
|
-
.action(async (action) => {
|
|
17
|
-
handleSkillAction(assistant, action);
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=claude.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/commands/claude.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE3E,MAAM,UAAU,qBAAqB,CAAC,OAAgB;IACpD,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAA;IAC1E,IAAI,CAAC,SAAS;QAAE,OAAM;IAEtB,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,2DAA2D,CAAC;SACxE,QAAQ,CAAC,UAAU,EAAE,oCAAoC,EAAE,QAAQ,CAAC;SACpE,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE;QAC/B,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACtC,CAAC,CAAC,CAAA;AACN,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI command: opencode
|
|
3
|
-
*
|
|
4
|
-
* Set up paytaca x402 payment handling for opencode AI assistant.
|
|
5
|
-
* Installs the paytaca skill so opencode knows how to handle 402 responses.
|
|
6
|
-
*/
|
|
7
|
-
import { Command } from 'commander';
|
|
8
|
-
export declare function registerOpencodeCommand(program: Command): void;
|
|
9
|
-
//# sourceMappingURL=opencode.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../src/commands/opencode.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAGnC,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAW9D"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CLI command: opencode
|
|
3
|
-
*
|
|
4
|
-
* Set up paytaca x402 payment handling for opencode AI assistant.
|
|
5
|
-
* Installs the paytaca skill so opencode knows how to handle 402 responses.
|
|
6
|
-
*/
|
|
7
|
-
import { SUPPORTED_ASSISTANTS, handleSkillAction } from '../utils/skill.js';
|
|
8
|
-
export function registerOpencodeCommand(program) {
|
|
9
|
-
const assistant = SUPPORTED_ASSISTANTS.find(a => a.name === 'opencode');
|
|
10
|
-
if (!assistant)
|
|
11
|
-
return;
|
|
12
|
-
program
|
|
13
|
-
.command('opencode')
|
|
14
|
-
.description('Set up paytaca x402 payments for opencode AI assistant')
|
|
15
|
-
.argument('[action]', 'Action: install, uninstall, status', 'status')
|
|
16
|
-
.action(async (action) => {
|
|
17
|
-
handleSkillAction(assistant, action);
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=opencode.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../src/commands/opencode.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AAE3E,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACtD,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAA;IACvE,IAAI,CAAC,SAAS;QAAE,OAAM;IAEtB,OAAO;SACJ,OAAO,CAAC,UAAU,CAAC;SACnB,WAAW,CAAC,wDAAwD,CAAC;SACrE,QAAQ,CAAC,UAAU,EAAE,oCAAoC,EAAE,QAAQ,CAAC;SACpE,MAAM,CAAC,KAAK,EAAE,MAAc,EAAE,EAAE;QAC/B,iBAAiB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACtC,CAAC,CAAC,CAAA;AACN,CAAC"}
|
package/dist/utils/skill.d.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Skill management utilities for AI assistant integration.
|
|
3
|
-
* Provides generic functions for installing/uninstalling/checking status
|
|
4
|
-
* of paytaca skill for various AI assistants.
|
|
5
|
-
*/
|
|
6
|
-
export interface AssistantConfig {
|
|
7
|
-
name: string;
|
|
8
|
-
skillsDir: string;
|
|
9
|
-
}
|
|
10
|
-
export declare const SUPPORTED_ASSISTANTS: AssistantConfig[];
|
|
11
|
-
export declare function getSkillSourcePath(): string;
|
|
12
|
-
export declare function getSkillDestPath(skillsDir: string): string;
|
|
13
|
-
export declare function installSkill(skillsDir: string, assistantName: string): void;
|
|
14
|
-
export declare function uninstallSkill(skillsDir: string, assistantName: string): void;
|
|
15
|
-
export declare function checkStatus(skillsDir: string, assistantName: string): void;
|
|
16
|
-
export declare function handleSkillAction(assistant: AssistantConfig, action: string): void;
|
|
17
|
-
//# sourceMappingURL=skill.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../../src/utils/skill.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,eAAO,MAAM,oBAAoB,EAAE,eAAe,EAGjD,CAAA;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAU3C;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CA4B3E;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAgB7E;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAW1E;AAED,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,eAAe,EAC1B,MAAM,EAAE,MAAM,GACb,IAAI,CAeN"}
|
package/dist/utils/skill.js
DELETED
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Skill management utilities for AI assistant integration.
|
|
3
|
-
* Provides generic functions for installing/uninstalling/checking status
|
|
4
|
-
* of paytaca skill for various AI assistants.
|
|
5
|
-
*/
|
|
6
|
-
import chalk from 'chalk';
|
|
7
|
-
import fs from 'fs';
|
|
8
|
-
import path from 'path';
|
|
9
|
-
import os from 'os';
|
|
10
|
-
import { fileURLToPath } from 'url';
|
|
11
|
-
export const SUPPORTED_ASSISTANTS = [
|
|
12
|
-
{ name: 'opencode', skillsDir: path.join(os.homedir(), '.config', 'opencode', 'skills') },
|
|
13
|
-
{ name: 'Claude Code', skillsDir: path.join(os.homedir(), '.claude', 'skills') },
|
|
14
|
-
];
|
|
15
|
-
export function getSkillSourcePath() {
|
|
16
|
-
try {
|
|
17
|
-
const modulePath = require.resolve('paytaca-cli');
|
|
18
|
-
const packageDir = path.dirname(modulePath);
|
|
19
|
-
return path.join(packageDir, 'skills', 'paytaca', 'SKILL.md');
|
|
20
|
-
}
|
|
21
|
-
catch {
|
|
22
|
-
const currentFilePath = fileURLToPath(import.meta.url);
|
|
23
|
-
const srcPath = path.dirname(currentFilePath);
|
|
24
|
-
return path.join(srcPath, '..', '..', 'skills', 'paytaca', 'SKILL.md');
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
export function getSkillDestPath(skillsDir) {
|
|
28
|
-
return path.join(skillsDir, 'paytaca', 'SKILL.md');
|
|
29
|
-
}
|
|
30
|
-
export function installSkill(skillsDir, assistantName) {
|
|
31
|
-
try {
|
|
32
|
-
const sourcePath = getSkillSourcePath();
|
|
33
|
-
const destDir = path.join(skillsDir, 'paytaca');
|
|
34
|
-
const destPath = getSkillDestPath(skillsDir);
|
|
35
|
-
if (!fs.existsSync(sourcePath)) {
|
|
36
|
-
console.log(chalk.red('Skill source file not found. Is paytaca-cli properly installed?'));
|
|
37
|
-
process.exit(1);
|
|
38
|
-
}
|
|
39
|
-
fs.mkdirSync(destDir, { recursive: true });
|
|
40
|
-
const content = fs.readFileSync(sourcePath, 'utf8');
|
|
41
|
-
fs.writeFileSync(destPath, content);
|
|
42
|
-
console.log(chalk.green(`\n✓ Skill installed successfully for ${assistantName}!\n`));
|
|
43
|
-
console.log(chalk.bold('What this does:'));
|
|
44
|
-
console.log(' When the AI assistant encounters HTTP 402 or calls x402-enabled APIs,');
|
|
45
|
-
console.log(' it will automatically use paytaca to handle payments.\n');
|
|
46
|
-
console.log(chalk.dim('Location: ') + destPath);
|
|
47
|
-
console.log(chalk.dim('Source: ') + sourcePath);
|
|
48
|
-
console.log();
|
|
49
|
-
console.log(`Restart ${assistantName} to load the new skill.\n`);
|
|
50
|
-
}
|
|
51
|
-
catch (err) {
|
|
52
|
-
console.log(chalk.red(`\nFailed to install skill: ${err.message}\n`));
|
|
53
|
-
process.exit(1);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
export function uninstallSkill(skillsDir, assistantName) {
|
|
57
|
-
try {
|
|
58
|
-
const destDir = path.join(skillsDir, 'paytaca');
|
|
59
|
-
const destPath = getSkillDestPath(skillsDir);
|
|
60
|
-
if (!fs.existsSync(destPath)) {
|
|
61
|
-
console.log(chalk.yellow('\nSkill is not installed.\n'));
|
|
62
|
-
process.exit(0);
|
|
63
|
-
}
|
|
64
|
-
fs.rmSync(destDir, { recursive: true });
|
|
65
|
-
console.log(chalk.green(`\n✓ Skill uninstalled for ${assistantName}!\n`));
|
|
66
|
-
}
|
|
67
|
-
catch (err) {
|
|
68
|
-
console.log(chalk.red(`\nFailed to uninstall skill: ${err.message}\n`));
|
|
69
|
-
process.exit(1);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
export function checkStatus(skillsDir, assistantName) {
|
|
73
|
-
const destPath = getSkillDestPath(skillsDir);
|
|
74
|
-
if (fs.existsSync(destPath)) {
|
|
75
|
-
console.log(chalk.green('\n✓ Paytaca skill is installed\n'));
|
|
76
|
-
console.log(chalk.dim('Location: ') + destPath);
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
console.log(chalk.yellow(`\n○ Paytaca skill is not installed for ${assistantName}\n`));
|
|
80
|
-
console.log(`Run: paytaca ${assistantName.toLowerCase()} install`);
|
|
81
|
-
console.log();
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
export function handleSkillAction(assistant, action) {
|
|
85
|
-
switch (action) {
|
|
86
|
-
case 'install':
|
|
87
|
-
installSkill(assistant.skillsDir, assistant.name);
|
|
88
|
-
break;
|
|
89
|
-
case 'uninstall':
|
|
90
|
-
uninstallSkill(assistant.skillsDir, assistant.name);
|
|
91
|
-
break;
|
|
92
|
-
case 'status':
|
|
93
|
-
checkStatus(assistant.skillsDir, assistant.name);
|
|
94
|
-
break;
|
|
95
|
-
default:
|
|
96
|
-
console.log(chalk.yellow(`Unknown action: ${action}`));
|
|
97
|
-
console.log('Use: install, uninstall, or status');
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
//# sourceMappingURL=skill.js.map
|
package/dist/utils/skill.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/utils/skill.ts"],"names":[],"mappings":"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"}
|