@agntos/agentos 0.1.0 → 0.2.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/README.md ADDED
@@ -0,0 +1,113 @@
1
+ # @agntos/agentos
2
+
3
+ [![npm](https://img.shields.io/npm/v/@agntos/agentos?style=flat-square&logo=npm&logoColor=white&color=f54900)](https://www.npmjs.com/package/@agntos/agentos)
4
+ [![downloads](https://img.shields.io/npm/dm/@agntos/agentos?style=flat-square&color=333)](https://www.npmjs.com/package/@agntos/agentos)
5
+ [![license](https://img.shields.io/npm/l/@agntos/agentos?style=flat-square&color=333)](https://github.com/0xArtex/AgentOS/blob/main/LICENSE)
6
+ [![node](https://img.shields.io/node/v/@agntos/agentos?style=flat-square&color=333)](https://nodejs.org)
7
+
8
+ Everything your AI agent needs — one CLI.
9
+
10
+ Phone numbers, encrypted email, VPS, domains, crypto wallets. Pay with USDC. Your wallet is your identity.
11
+
12
+ ## Install
13
+
14
+ ```bash
15
+ npm i -g @agntos/agentos
16
+ ```
17
+
18
+ Or run directly:
19
+
20
+ ```bash
21
+ npx @agntos/agentos phone search --country US
22
+ ```
23
+
24
+ ## Commands
25
+
26
+ ### Phone
27
+ ```bash
28
+ agentos phone search --country US # Search available numbers
29
+ agentos phone buy --country US # Buy a number ($3)
30
+ agentos phone sms --id ID --to +1... --body "hi" # Send SMS ($0.05)
31
+ agentos phone call --id ID --to +1... --tts "hello" # Voice call ($0.10)
32
+ ```
33
+
34
+ ### Email (E2E Encrypted)
35
+ ```bash
36
+ agentos email create --name agent --wallet SOL_PUBKEY # Create inbox ($2)
37
+ agentos email read --id INBOX_ID # Read messages ($0.02)
38
+ agentos email send --id ID --to x@y.com --subject "Hi" --body "..." # Send ($0.08)
39
+ agentos email threads --id INBOX_ID # List threads ($0.02)
40
+ ```
41
+
42
+ ### Compute
43
+ ```bash
44
+ agentos compute plans # List VPS plans
45
+ agentos compute deploy --name my-vps --type cx23 # Deploy VPS (from $8/mo)
46
+ agentos compute list # List servers
47
+ agentos compute delete --id SERVER_ID # Delete server
48
+ ```
49
+
50
+ ### Domains
51
+ ```bash
52
+ agentos domain check --name example.dev # Check availability (free)
53
+ agentos domain pricing --name example # Get pricing (free)
54
+ agentos domain buy --name example.dev # Register domain
55
+ agentos domain dns --name example.dev # View DNS records
56
+ ```
57
+
58
+ ### Wallet
59
+ ```bash
60
+ agentos wallet keygen # Generate keypair
61
+ agentos wallet create --agent 0xADDR # Create smart wallet
62
+ agentos wallet status 0xWALLET # Check status & limits
63
+ ```
64
+
65
+ ### Info
66
+ ```bash
67
+ agentos pricing # All service prices
68
+ agentos health # API status
69
+ ```
70
+
71
+ ## Authentication
72
+
73
+ Your wallet is your identity. No API keys, no signup.
74
+
75
+ All paid endpoints use the x402 protocol — call the endpoint, get a 402 response with the price, pay with USDC on Solana or Base. The wallet that pays owns the resource.
76
+
77
+ ## SDK
78
+
79
+ ```typescript
80
+ import { AgentOS } from '@agntos/agentos'
81
+
82
+ const ao = new AgentOS()
83
+
84
+ // Search phone numbers
85
+ const numbers = await ao.phoneSearch('US')
86
+
87
+ // Check domain availability
88
+ const check = await ao.domainCheck('myagent.dev')
89
+
90
+ // Get pricing
91
+ const prices = await ao.pricing()
92
+ ```
93
+
94
+ ## Options
95
+
96
+ | Flag | Description |
97
+ |------|-------------|
98
+ | `--url <url>` | API base URL (default: https://agntos.dev) |
99
+ | `--json` | Output raw JSON |
100
+ | `--version` | Show version |
101
+ | `--help` | Show help |
102
+
103
+ ## Links
104
+
105
+ - **API:** [agntos.dev](https://agntos.dev)
106
+ - **Skill file:** [agntos.dev/skill.md](https://agntos.dev/skill.md)
107
+ - **Dashboard:** [agntos.dev/dashboard.html](https://agntos.dev/dashboard.html)
108
+ - **GitHub:** [github.com/0xArtex/AgentOS](https://github.com/0xArtex/AgentOS)
109
+ - **Wallet CLI:** [@agntos/agentwallet](https://www.npmjs.com/package/@agntos/agentwallet)
110
+
111
+ ## License
112
+
113
+ MIT
package/dist/cli.js CHANGED
@@ -1,5 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { AgentOS } from './sdk.js';
3
+ import { loadConfig, saveConfig, ensureDirs, getKeyfile, log, addPhone, addInbox, addServer, addDomain, addWallet, addNote } from './config.js';
4
+ import { existsSync } from 'fs';
5
+ import { homedir } from 'os';
3
6
  // ─── Colors ───
4
7
  const c = {
5
8
  reset: '\x1b[0m', bold: '\x1b[1m', dim: '\x1b[2m',
@@ -7,7 +10,7 @@ const c = {
7
10
  cyan: '\x1b[36m', white: '\x1b[37m', gray: '\x1b[90m',
8
11
  orange: '\x1b[38;5;208m',
9
12
  };
10
- const VERSION = '0.1.0';
13
+ const VERSION = '0.2.0';
11
14
  // ─── Parse args ───
12
15
  function parse(argv) {
13
16
  const flags = {};
@@ -80,6 +83,9 @@ ${c.bold}Commands${c.reset}
80
83
  ${c.dim}status${c.reset} Check wallet status ${c.dim}WALLET_ADDRESS${c.reset}
81
84
  ${c.dim}keygen${c.reset} Generate keypair ${c.dim}--chain both${c.reset}
82
85
 
86
+ ${c.cyan}setup${c.reset} Configure keyfile + chain ${c.dim}--keyfile PATH --chain solana${c.reset}
87
+ ${c.cyan}status${c.reset} Show config + API status
88
+ ${c.cyan}note${c.reset} Save a note to memory ${c.dim}"your note here"${c.reset}
83
89
  ${c.cyan}pricing${c.reset} Show all service prices
84
90
  ${c.cyan}health${c.reset} Check API status
85
91
 
@@ -111,11 +117,66 @@ async function main() {
111
117
  help();
112
118
  return;
113
119
  }
114
- const url = flags.url;
120
+ const config = loadConfig();
121
+ const url = flags.url || config.api;
115
122
  const ao = new AgentOS(url);
116
123
  const json = !!flags.json;
117
124
  try {
118
125
  switch (command) {
126
+ case 'setup': {
127
+ ensureDirs();
128
+ header('AgentOS Setup');
129
+ const keyfile = flags.keyfile
130
+ || process.env.AGENTOS_KEYFILE
131
+ || (() => {
132
+ const defaultPath = homedir() + '/.config/solana/id.json';
133
+ if (existsSync(defaultPath))
134
+ return defaultPath;
135
+ return '';
136
+ })();
137
+ const chain = flags.chain || 'solana';
138
+ if (!keyfile) {
139
+ console.log(` ${c.yellow}No keyfile found.${c.reset}`);
140
+ console.log(` ${c.dim}Provide one with: agentos setup --keyfile /path/to/keypair.json${c.reset}`);
141
+ console.log(` ${c.dim}Or generate one: agentos wallet keygen${c.reset}`);
142
+ process.exit(1);
143
+ }
144
+ if (!existsSync(keyfile.replace('~', homedir()))) {
145
+ err(`Keyfile not found: ${keyfile}`);
146
+ }
147
+ saveConfig({ api: url, chain: chain, keyfile, setupDone: true });
148
+ ok(`Keyfile: ${keyfile}`);
149
+ ok(`Chain: ${chain}`);
150
+ ok(`API: ${url}`);
151
+ ok(`Config saved to ~/.agentos/config.json`);
152
+ console.log(`\n ${c.dim}You're ready. Run ${c.cyan}agentos phone search --country US${c.dim} to test.${c.reset}\n`);
153
+ log(`setup: keyfile=${keyfile} chain=${chain}`);
154
+ break;
155
+ }
156
+ case 'status': {
157
+ header('AgentOS Status');
158
+ const kf = getKeyfile();
159
+ row('API', config.api);
160
+ row('Chain', config.chain || 'not set');
161
+ row('Keyfile', kf || 'not configured');
162
+ row('Setup', config.setupDone ? 'done' : 'run agentos setup');
163
+ try {
164
+ const h = await ao.health();
165
+ row('API Status', `${h.status} — v${h.version?.version || '?'}`, c.green);
166
+ }
167
+ catch {
168
+ row('API Status', 'unreachable', c.red);
169
+ }
170
+ break;
171
+ }
172
+ case 'note': {
173
+ const text = positional.join(' ') || subcommand || '';
174
+ if (!text)
175
+ err('Usage: agentos note "your note here"');
176
+ addNote(text);
177
+ ok(`Note saved to ~/.agentos/memory/notes.md`);
178
+ break;
179
+ }
119
180
  case 'phone': {
120
181
  switch (subcommand) {
121
182
  case 'search': {
@@ -140,6 +201,8 @@ async function main() {
140
201
  ok(data.phoneNumber || data.phone_number || 'provisioned');
141
202
  row('ID', data.id || '');
142
203
  row('Country', country);
204
+ addPhone({ id: data.id, number: data.phoneNumber || data.phone_number, country, createdAt: new Date().toISOString() });
205
+ log(`phone buy: ${data.phoneNumber || data.phone_number || 'unknown'} (${country})`);
143
206
  break;
144
207
  }
145
208
  case 'sms': {
@@ -184,6 +247,8 @@ async function main() {
184
247
  ok(data.address || `${name}@agntos.dev`);
185
248
  row('ID', data.id || '');
186
249
  row('E2E', data.e2eEnabled ? 'enabled' : 'disabled');
250
+ addInbox({ id: data.id, address: data.address || `${name}@agntos.dev`, createdAt: new Date().toISOString() });
251
+ log(`email create: ${data.address || name}`);
187
252
  break;
188
253
  }
189
254
  case 'read': {
@@ -239,7 +304,7 @@ async function main() {
239
304
  return print(data);
240
305
  header('VPS Plans');
241
306
  for (const p of (data.plans || data || [])) {
242
- console.log(` ${c.cyan}${p.id || p.name}${c.reset} ${c.dim}${p.cpu || p.vcpus} vCPU · ${p.ram || p.memory}GB RAM · $${p.price || p.monthly_cost}/mo${c.reset}`);
307
+ console.log(` ${c.cyan}${p.type || p.id || p.name}${c.reset} ${c.dim}${p.vcpu || p.cpu || p.vcpus} vCPU · ${p.ramGb || p.ram || p.memory}GB RAM · $${p.priceUsdcMonthly || p.priceUsdc || p.price || p.monthly_cost}/mo${c.reset}`);
243
308
  }
244
309
  break;
245
310
  }
@@ -254,6 +319,8 @@ async function main() {
254
319
  row('ID', data.id || '');
255
320
  row('Type', type);
256
321
  row('SSH', `root@${data.ipv4 || data.ip}`);
322
+ addServer({ id: data.id, ip: data.ipv4 || data.ip, type, name, createdAt: new Date().toISOString() });
323
+ log(`compute deploy: ${data.ipv4 || data.ip} (${type})`);
257
324
  break;
258
325
  }
259
326
  case 'list': {
@@ -315,6 +382,8 @@ async function main() {
315
382
  return print(data);
316
383
  header('Domain Registered');
317
384
  ok(data.domain || name);
385
+ addDomain({ domain: data.domain || name, createdAt: new Date().toISOString() });
386
+ log(`domain buy: ${data.domain || name}`);
318
387
  break;
319
388
  }
320
389
  case 'dns': {
@@ -349,6 +418,8 @@ async function main() {
349
418
  row('Chain', chain);
350
419
  if (data.setupUrl)
351
420
  row('Setup', data.setupUrl);
421
+ addWallet({ address: data.wallet?.address, chain, createdAt: new Date().toISOString() });
422
+ log(`wallet create: ${data.wallet?.address || 'unknown'} (${chain})`);
352
423
  break;
353
424
  }
354
425
  case 'status': {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * AgentOS local config + data management
3
+ * Everything lives in ~/.agentos/
4
+ */
5
+ export declare function ensureDirs(): void;
6
+ export interface AgentOSConfig {
7
+ api: string;
8
+ chain: 'solana' | 'base' | 'both';
9
+ keyfile?: string;
10
+ setupDone?: boolean;
11
+ }
12
+ export declare function loadConfig(): AgentOSConfig;
13
+ export declare function saveConfig(config: AgentOSConfig): void;
14
+ export declare function getKeyfile(): string | null;
15
+ export declare function loadKeypair(): Uint8Array | null;
16
+ export declare function getData(file: string): any;
17
+ export declare function setData(file: string, data: any): void;
18
+ export declare function getPhones(): any[];
19
+ export declare function addPhone(phone: any): void;
20
+ export declare function getInboxes(): any[];
21
+ export declare function addInbox(inbox: any): void;
22
+ export declare function getServers(): any[];
23
+ export declare function addServer(server: any): void;
24
+ export declare function getDomains(): any[];
25
+ export declare function addDomain(domain: any): void;
26
+ export declare function getWallets(): any[];
27
+ export declare function addWallet(wallet: any): void;
28
+ export declare function getAccounts(): any[];
29
+ export declare function addAccount(account: any): void;
30
+ export declare function saveDraft(id: string, draft: any): void;
31
+ export declare function getDraft(id: string): any;
32
+ export declare function addNote(note: string): void;
33
+ export declare function log(message: string): void;
package/dist/config.js ADDED
@@ -0,0 +1,133 @@
1
+ /**
2
+ * AgentOS local config + data management
3
+ * Everything lives in ~/.agentos/
4
+ */
5
+ import { readFileSync, writeFileSync, mkdirSync, existsSync } from 'fs';
6
+ import { join } from 'path';
7
+ import { homedir } from 'os';
8
+ const HOME = join(homedir(), '.agentos');
9
+ // Directory structure
10
+ const DIRS = {
11
+ root: HOME,
12
+ credentials: join(HOME, 'credentials'),
13
+ data: join(HOME, 'data'),
14
+ logs: join(HOME, 'logs'),
15
+ drafts: join(HOME, 'drafts'),
16
+ memory: join(HOME, 'memory'),
17
+ };
18
+ export function ensureDirs() {
19
+ for (const dir of Object.values(DIRS)) {
20
+ if (!existsSync(dir))
21
+ mkdirSync(dir, { recursive: true });
22
+ }
23
+ }
24
+ const CONFIG_PATH = join(HOME, 'config.json');
25
+ const DEFAULT_CONFIG = {
26
+ api: 'https://agntos.dev',
27
+ chain: 'solana',
28
+ };
29
+ export function loadConfig() {
30
+ if (!existsSync(CONFIG_PATH))
31
+ return DEFAULT_CONFIG;
32
+ try {
33
+ return { ...DEFAULT_CONFIG, ...JSON.parse(readFileSync(CONFIG_PATH, 'utf8')) };
34
+ }
35
+ catch {
36
+ return DEFAULT_CONFIG;
37
+ }
38
+ }
39
+ export function saveConfig(config) {
40
+ ensureDirs();
41
+ writeFileSync(CONFIG_PATH, JSON.stringify(config, null, 2));
42
+ }
43
+ // ── Credentials ──
44
+ export function getKeyfile() {
45
+ const config = loadConfig();
46
+ // Priority: env var > config keyfile > default locations
47
+ if (process.env.AGENTOS_KEYFILE)
48
+ return process.env.AGENTOS_KEYFILE;
49
+ if (config.keyfile && existsSync(config.keyfile.replace('~', homedir()))) {
50
+ return config.keyfile.replace('~', homedir());
51
+ }
52
+ // Default Solana location
53
+ const defaultSol = join(homedir(), '.config', 'solana', 'id.json');
54
+ if (existsSync(defaultSol))
55
+ return defaultSol;
56
+ return null;
57
+ }
58
+ export function loadKeypair() {
59
+ const path = getKeyfile();
60
+ if (!path)
61
+ return null;
62
+ try {
63
+ const data = JSON.parse(readFileSync(path, 'utf8'));
64
+ return Uint8Array.from(data);
65
+ }
66
+ catch {
67
+ return null;
68
+ }
69
+ }
70
+ // ── Data Store (small JSON files) ──
71
+ function dataPath(file) { return join(DIRS.data, file); }
72
+ export function getData(file) {
73
+ const p = dataPath(file);
74
+ if (!existsSync(p))
75
+ return null;
76
+ try {
77
+ return JSON.parse(readFileSync(p, 'utf8'));
78
+ }
79
+ catch {
80
+ return null;
81
+ }
82
+ }
83
+ export function setData(file, data) {
84
+ ensureDirs();
85
+ writeFileSync(dataPath(file), JSON.stringify(data, null, 2));
86
+ }
87
+ // Helpers for common data
88
+ export function getPhones() { return getData('phones.json') || []; }
89
+ export function addPhone(phone) { const p = getPhones(); p.push(phone); setData('phones.json', p); }
90
+ export function getInboxes() { return getData('inboxes.json') || []; }
91
+ export function addInbox(inbox) { const i = getInboxes(); i.push(inbox); setData('inboxes.json', i); }
92
+ export function getServers() { return getData('servers.json') || []; }
93
+ export function addServer(server) { const s = getServers(); s.push(server); setData('servers.json', s); }
94
+ export function getDomains() { return getData('domains.json') || []; }
95
+ export function addDomain(domain) { const d = getDomains(); d.push(domain); setData('domains.json', d); }
96
+ export function getWallets() { return getData('wallets.json') || []; }
97
+ export function addWallet(wallet) { const w = getWallets(); w.push(wallet); setData('wallets.json', w); }
98
+ export function getAccounts() { return getData('accounts.json') || []; }
99
+ export function addAccount(account) { const a = getAccounts(); a.push(account); setData('accounts.json', a); }
100
+ // ── Drafts ──
101
+ export function saveDraft(id, draft) {
102
+ ensureDirs();
103
+ writeFileSync(join(DIRS.drafts, `${id}.json`), JSON.stringify(draft, null, 2));
104
+ }
105
+ export function getDraft(id) {
106
+ const p = join(DIRS.drafts, `${id}.json`);
107
+ if (!existsSync(p))
108
+ return null;
109
+ try {
110
+ return JSON.parse(readFileSync(p, 'utf8'));
111
+ }
112
+ catch {
113
+ return null;
114
+ }
115
+ }
116
+ // ── Memory ──
117
+ export function addNote(note) {
118
+ ensureDirs();
119
+ const p = join(DIRS.memory, 'notes.md');
120
+ const existing = existsSync(p) ? readFileSync(p, 'utf8') : '';
121
+ const timestamp = new Date().toISOString();
122
+ writeFileSync(p, existing + `\n- [${timestamp}] ${note}`);
123
+ }
124
+ // ── Logging ──
125
+ export function log(message) {
126
+ ensureDirs();
127
+ const date = new Date().toISOString().split('T')[0];
128
+ const p = join(DIRS.logs, `${date}.log`);
129
+ const existing = existsSync(p) ? readFileSync(p, 'utf8') : '';
130
+ const timestamp = new Date().toISOString();
131
+ writeFileSync(p, existing + `[${timestamp}] ${message}\n`);
132
+ }
133
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AACvE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AAE5B,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAA;AAExC,sBAAsB;AACtB,MAAM,IAAI,GAAG;IACX,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC;IACtC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;IAC5B,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC;CAC7B,CAAA;AAED,MAAM,UAAU,UAAU;IACxB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3D,CAAC;AACH,CAAC;AAWD,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,CAAA;AAC7C,MAAM,cAAc,GAAkB;IACpC,GAAG,EAAE,oBAAoB;IACzB,KAAK,EAAE,QAAQ;CAChB,CAAA;AAED,MAAM,UAAU,UAAU;IACxB,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,cAAc,CAAA;IACnD,IAAI,CAAC;QACH,OAAO,EAAE,GAAG,cAAc,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,EAAE,CAAA;IAChF,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,cAAc,CAAA;IAAC,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAqB;IAC9C,UAAU,EAAE,CAAA;IACZ,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAC7D,CAAC;AAED,oBAAoB;AAEpB,MAAM,UAAU,UAAU;IACxB,MAAM,MAAM,GAAG,UAAU,EAAE,CAAA;IAC3B,yDAAyD;IACzD,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,eAAe,CAAA;IACnE,IAAI,MAAM,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC;QACzE,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAA;IAC/C,CAAC;IACD,0BAA0B;IAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAA;IAClE,IAAI,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAA;IAC7C,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,MAAM,IAAI,GAAG,UAAU,EAAE,CAAA;IACzB,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IACtB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA;QACnD,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAA;IAAC,CAAC;AACzB,CAAC;AAED,sCAAsC;AAEtC,SAAS,QAAQ,CAAC,IAAY,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA,CAAC,CAAC;AAEhE,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IACxB,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IAC/B,IAAI,CAAC;QAAC,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAA;IAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,IAAY,EAAE,IAAS;IAC7C,UAAU,EAAE,CAAA;IACZ,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAC9D,CAAC;AAED,0BAA0B;AAC1B,MAAM,UAAU,SAAS,KAAY,OAAO,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,CAAA,CAAC,CAAC;AAC1E,MAAM,UAAU,QAAQ,CAAC,KAAU,IAAI,MAAM,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC,CAAA,CAAC,CAAC;AAExG,MAAM,UAAU,UAAU,KAAY,OAAO,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA,CAAC,CAAC;AAC5E,MAAM,UAAU,QAAQ,CAAC,KAAU,IAAI,MAAM,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA,CAAC,CAAC;AAE1G,MAAM,UAAU,UAAU,KAAY,OAAO,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA,CAAC,CAAC;AAC5E,MAAM,UAAU,SAAS,CAAC,MAAW,IAAI,MAAM,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA,CAAC,CAAC;AAE7G,MAAM,UAAU,UAAU,KAAY,OAAO,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA,CAAC,CAAC;AAC5E,MAAM,UAAU,SAAS,CAAC,MAAW,IAAI,MAAM,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA,CAAC,CAAC;AAE7G,MAAM,UAAU,UAAU,KAAY,OAAO,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAA,CAAC,CAAC;AAC5E,MAAM,UAAU,SAAS,CAAC,MAAW,IAAI,MAAM,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAA,CAAC,CAAC;AAE7G,MAAM,UAAU,WAAW,KAAY,OAAO,OAAO,CAAC,eAAe,CAAC,IAAI,EAAE,CAAA,CAAC,CAAC;AAC9E,MAAM,UAAU,UAAU,CAAC,OAAY,IAAI,MAAM,CAAC,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAA,CAAC,CAAC;AAElH,eAAe;AAEf,MAAM,UAAU,SAAS,CAAC,EAAU,EAAE,KAAU;IAC9C,UAAU,EAAE,CAAA;IACZ,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;AAChF,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,EAAU;IACjC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;IACzC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAA;IAC/B,IAAI,CAAC;QAAC,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAA;IAAC,CAAC;AAC1E,CAAC;AAED,eAAe;AAEf,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,UAAU,EAAE,CAAA;IACZ,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACvC,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC7D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC1C,aAAa,CAAC,CAAC,EAAE,QAAQ,GAAG,QAAQ,SAAS,KAAK,IAAI,EAAE,CAAC,CAAA;AAC3D,CAAC;AAED,gBAAgB;AAEhB,MAAM,UAAU,GAAG,CAAC,OAAe;IACjC,UAAU,EAAE,CAAA;IACZ,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IACnD,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,MAAM,CAAC,CAAA;IACxC,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAC7D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC1C,aAAa,CAAC,CAAC,EAAE,QAAQ,GAAG,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,CAAA;AAC5D,CAAC"}
package/dist/pay.d.ts ADDED
@@ -0,0 +1,29 @@
1
+ /**
2
+ * x402 payment handler for AgentOS CLI
3
+ * Builds, signs, and submits USDC payment transactions on Solana
4
+ */
5
+ /**
6
+ * Parse a 402 response and extract payment requirements
7
+ */
8
+ export declare function parsePaymentRequired(data: any): {
9
+ amount: bigint;
10
+ payTo: string;
11
+ feePayer: string;
12
+ asset: string;
13
+ network: string;
14
+ } | null;
15
+ /**
16
+ * Build and partially sign a USDC transfer transaction for x402 payment
17
+ */
18
+ export declare function buildPaymentTransaction(payTo: string, amount: bigint, feePayer: string): Promise<{
19
+ transaction: string;
20
+ payer: string;
21
+ } | null>;
22
+ /**
23
+ * Make a paid request: call endpoint → if 402 → build payment → retry with payment
24
+ */
25
+ export declare function paidRequest(api: string, method: string, path: string, body?: Record<string, unknown>): Promise<{
26
+ data: any;
27
+ paid: boolean;
28
+ txHash?: string;
29
+ }>;
package/dist/pay.js ADDED
@@ -0,0 +1,137 @@
1
+ /**
2
+ * x402 payment handler for AgentOS CLI
3
+ * Builds, signs, and submits USDC payment transactions on Solana
4
+ */
5
+ import { loadKeypair, log } from './config.js';
6
+ // Solana constants
7
+ const USDC_MINT = 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v';
8
+ const TOKEN_PROGRAM = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
9
+ const ASSOCIATED_TOKEN_PROGRAM = 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
10
+ const COMPUTE_BUDGET = 'ComputeBudget111111111111111111111111111111';
11
+ const MEMO_PROGRAM = 'MemoSq4gqABAXKb96qnH8TysNcWxMyWCqXgDLGmfcHr';
12
+ const SOLANA_RPC = 'https://api.mainnet-beta.solana.com';
13
+ /**
14
+ * Parse a 402 response and extract payment requirements
15
+ */
16
+ export function parsePaymentRequired(data) {
17
+ const accepts = data.accepts || [];
18
+ // Prefer Solana
19
+ const solana = accepts.find((a) => a.network?.startsWith('solana:'));
20
+ if (solana) {
21
+ return {
22
+ amount: BigInt(solana.amount),
23
+ payTo: solana.payTo,
24
+ feePayer: solana.extra?.feePayer || '',
25
+ asset: solana.asset || USDC_MINT,
26
+ network: solana.network,
27
+ };
28
+ }
29
+ return null;
30
+ }
31
+ /**
32
+ * Build and partially sign a USDC transfer transaction for x402 payment
33
+ */
34
+ export async function buildPaymentTransaction(payTo, amount, feePayer) {
35
+ const keypairBytes = loadKeypair();
36
+ if (!keypairBytes)
37
+ return null;
38
+ // Dynamic import to keep CLI fast when payment isn't needed
39
+ const { Connection, PublicKey, TransactionMessage, VersionedTransaction, ComputeBudgetProgram } = await import('@solana/web3.js');
40
+ const { getAssociatedTokenAddress, createTransferCheckedInstruction, getMint } = await import('@solana/spl-token');
41
+ const { Keypair } = await import('@solana/web3.js');
42
+ const connection = new Connection(SOLANA_RPC, 'confirmed');
43
+ const payer = Keypair.fromSecretKey(keypairBytes);
44
+ const payerPub = payer.publicKey;
45
+ const feePayerPub = new PublicKey(feePayer);
46
+ const recipientPub = new PublicKey(payTo);
47
+ const mintPub = new PublicKey(USDC_MINT);
48
+ // Get token accounts
49
+ const sourceAta = await getAssociatedTokenAddress(mintPub, payerPub);
50
+ const destAta = await getAssociatedTokenAddress(mintPub, recipientPub);
51
+ // Get mint info for decimals
52
+ const mintInfo = await getMint(connection, mintPub);
53
+ // Build transfer instruction
54
+ const transferIx = createTransferCheckedInstruction(sourceAta, mintPub, destAta, payerPub, amount, mintInfo.decimals);
55
+ // Compute budget
56
+ const computeLimitIx = ComputeBudgetProgram.setComputeUnitLimit({ units: 20000 });
57
+ const computePriceIx = ComputeBudgetProgram.setComputeUnitPrice({ microLamports: 1 });
58
+ // Memo for uniqueness
59
+ const memoIx = {
60
+ keys: [],
61
+ programId: new PublicKey(MEMO_PROGRAM),
62
+ data: Buffer.from(crypto.getRandomValues(new Uint8Array(16)).reduce((s, b) => s + b.toString(16).padStart(2, '0'), ''))
63
+ };
64
+ // Get blockhash
65
+ const { blockhash } = await connection.getLatestBlockhash();
66
+ // Build message with feePayer paying gas
67
+ const message = new TransactionMessage({
68
+ payerKey: feePayerPub,
69
+ recentBlockhash: blockhash,
70
+ instructions: [computeLimitIx, computePriceIx, transferIx, memoIx],
71
+ }).compileToV0Message();
72
+ const tx = new VersionedTransaction(message);
73
+ // Partially sign with our key (feePayer signs on the server)
74
+ tx.sign([payer]);
75
+ // Serialize to base64
76
+ const serialized = Buffer.from(tx.serialize()).toString('base64');
77
+ return {
78
+ transaction: serialized,
79
+ payer: payerPub.toBase58(),
80
+ };
81
+ }
82
+ /**
83
+ * Make a paid request: call endpoint → if 402 → build payment → retry with payment
84
+ */
85
+ export async function paidRequest(api, method, path, body) {
86
+ const opts = {
87
+ method,
88
+ headers: { 'Content-Type': 'application/json' },
89
+ };
90
+ if (body)
91
+ opts.body = JSON.stringify(body);
92
+ // First attempt
93
+ const res = await fetch(api + path, opts);
94
+ const data = await res.json();
95
+ // Not a 402 — return as-is
96
+ if (res.status !== 402) {
97
+ if (data.error)
98
+ throw new Error(data.error);
99
+ return { data, paid: false };
100
+ }
101
+ // 402 — need to pay
102
+ const payment = parsePaymentRequired(data);
103
+ if (!payment)
104
+ throw new Error('Cannot parse payment requirements from 402 response');
105
+ const keypair = loadKeypair();
106
+ if (!keypair)
107
+ throw new Error('No keyfile configured. Run: agentos setup --keyfile /path/to/keypair.json');
108
+ console.log(` Paying ${Number(payment.amount) / 1e6} USDC on Solana...`);
109
+ const tx = await buildPaymentTransaction(payment.payTo, payment.amount, payment.feePayer);
110
+ if (!tx)
111
+ throw new Error('Failed to build payment transaction');
112
+ // Retry with payment header
113
+ const paymentPayload = {
114
+ x402Version: 2,
115
+ payload: { transaction: tx.transaction },
116
+ accepted: {
117
+ scheme: 'exact',
118
+ network: payment.network,
119
+ }
120
+ };
121
+ const paidOpts = {
122
+ method,
123
+ headers: {
124
+ 'Content-Type': 'application/json',
125
+ 'Payment-Signature': Buffer.from(JSON.stringify(paymentPayload)).toString('base64'),
126
+ },
127
+ };
128
+ if (body)
129
+ paidOpts.body = JSON.stringify(body);
130
+ const paidRes = await fetch(api + path, paidOpts);
131
+ const paidData = await paidRes.json();
132
+ if (paidData.error)
133
+ throw new Error(paidData.error);
134
+ log(`payment: ${Number(payment.amount) / 1e6} USDC → ${path} (payer: ${tx.payer})`);
135
+ return { data: paidData, paid: true, txHash: paidData.txHash };
136
+ }
137
+ //# sourceMappingURL=pay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pay.js","sourceRoot":"","sources":["../pay.ts"],"names":[],"mappings":"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"}
package/dist/sdk.d.ts CHANGED
@@ -2,8 +2,9 @@
2
2
  * AgentOS SDK — programmatic access to all AgentOS services.
3
3
  */
4
4
  export declare class AgentOS {
5
- private api;
6
- constructor(apiUrl?: string);
5
+ api: string;
6
+ private autoPay;
7
+ constructor(apiUrl?: string, autoPay?: boolean);
7
8
  private request;
8
9
  phoneSearch(country: string, limit?: number): Promise<any>;
9
10
  phoneBuy(country: string, areaCode?: string): Promise<any>;
package/dist/sdk.js CHANGED
@@ -4,8 +4,10 @@
4
4
  const DEFAULT_API = 'https://agntos.dev';
5
5
  export class AgentOS {
6
6
  api;
7
- constructor(apiUrl) {
7
+ autoPay;
8
+ constructor(apiUrl, autoPay) {
8
9
  this.api = apiUrl || process.env.AGENTOS_API || DEFAULT_API;
10
+ this.autoPay = autoPay ?? true;
9
11
  }
10
12
  async request(method, path, body) {
11
13
  const opts = {
@@ -16,7 +18,18 @@ export class AgentOS {
16
18
  opts.body = JSON.stringify(body);
17
19
  const res = await fetch(this.api + path, opts);
18
20
  const data = await res.json();
19
- if (data.error && res.status !== 402)
21
+ // If 402 and autoPay enabled, try to pay
22
+ if (res.status === 402 && this.autoPay) {
23
+ try {
24
+ const { paidRequest } = await import('./pay.js');
25
+ const result = await paidRequest(this.api, method, path, body);
26
+ return result.data;
27
+ }
28
+ catch (e) {
29
+ throw new Error(e.message);
30
+ }
31
+ }
32
+ if (data.error)
20
33
  throw new Error(data.error);
21
34
  return data;
22
35
  }
package/dist/sdk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../sdk.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agntos/agentos",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "CLI for AgentOS — everything your AI agent needs. Phone, email, compute, domains, wallets, and more.",
5
5
  "type": "module",
6
6
  "main": "./dist/sdk.js",
@@ -23,8 +23,19 @@
23
23
  "prepublishOnly": "npm run build"
24
24
  },
25
25
  "keywords": [
26
- "ai", "agent", "agentos", "infrastructure", "phone", "email",
27
- "compute", "domain", "wallet", "crypto", "x402", "solana", "base"
26
+ "ai",
27
+ "agent",
28
+ "agentos",
29
+ "infrastructure",
30
+ "phone",
31
+ "email",
32
+ "compute",
33
+ "domain",
34
+ "wallet",
35
+ "crypto",
36
+ "x402",
37
+ "solana",
38
+ "base"
28
39
  ],
29
40
  "author": "AgentOS <hello@agntos.dev>",
30
41
  "license": "MIT",
@@ -42,6 +53,12 @@
42
53
  "typescript": "^5.7"
43
54
  },
44
55
  "dependencies": {
45
- "@noble/hashes": "^2.0.1"
46
- }
56
+ "@noble/hashes": "^2.0.1",
57
+ "@solana/spl-token": "^0.4.14",
58
+ "@solana/web3.js": "^1.98.4"
59
+ },
60
+ "bugs": {
61
+ "url": "https://github.com/0xArtex/AgentOS/issues"
62
+ },
63
+ "funding": "https://agntos.dev"
47
64
  }