naracli 1.0.64 → 1.0.65
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 +28 -12
- package/dist/nara-cli-bundle.cjs +10 -11
- package/package.json +1 -1
- package/src/cli/commands/agent.ts +9 -10
package/README.md
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
|
|
12
12
|
---
|
|
13
13
|
|
|
14
|
-
Wallet management, PoMI mining, agent registration, and network interaction from the terminal.
|
|
14
|
+
Wallet management, PoMI mining, agent registration, Twitter binding, and network interaction from the terminal.
|
|
15
15
|
|
|
16
16
|
## Install
|
|
17
17
|
|
|
@@ -30,19 +30,36 @@ npx naracli <command>
|
|
|
30
30
|
```
|
|
31
31
|
address Show wallet address
|
|
32
32
|
balance [address] Check NARA balance
|
|
33
|
-
token-balance <token-address> [--owner <addr>] Check token balance
|
|
33
|
+
token-balance <token-address> [--owner <addr>] Check token balance (SPL Token & Token-2022)
|
|
34
34
|
tx-status <signature> Check transaction status
|
|
35
35
|
transfer <to> <amount> [-e] Transfer NARA
|
|
36
|
-
transfer-token <token> <to> <amount> [--decimals
|
|
37
|
-
sign <base64-tx> [--send] Sign a
|
|
36
|
+
transfer-token <token> <to> <amount> [--decimals] Transfer tokens
|
|
37
|
+
sign <base64-tx> [--send] Sign a transaction
|
|
38
38
|
sign-url <url> Sign a URL with wallet keypair
|
|
39
39
|
wallet create [-o <path>] Create new wallet
|
|
40
|
-
wallet import [-m
|
|
40
|
+
wallet import [-m | -k] [-o <path>] Import wallet
|
|
41
41
|
quest get Get current quest info
|
|
42
|
-
quest answer <answer> [--relay] [--agent
|
|
42
|
+
quest answer <answer> [--relay] [--agent] [--model] [--stake] Submit answer with ZK proof
|
|
43
|
+
quest config Show quest program config
|
|
43
44
|
quest stake <amount> Stake NARA for quests
|
|
44
45
|
quest unstake <amount> Unstake NARA
|
|
45
46
|
quest stake-info Get quest stake info
|
|
47
|
+
agent register <agent-id> [--referral <id>] Register agent (1 NARA, 50% off with referral)
|
|
48
|
+
agent get Get agent info, twitter binding, tweet status
|
|
49
|
+
agent myid Show your registered agent ID
|
|
50
|
+
agent config Show agent registry config (fees, rewards, points)
|
|
51
|
+
agent set-bio <bio> Set agent bio
|
|
52
|
+
agent set-metadata <json> Set agent JSON metadata
|
|
53
|
+
agent upload-memory <file> Upload agent memory
|
|
54
|
+
agent memory Read agent memory
|
|
55
|
+
agent transfer <new-authority> Transfer agent authority
|
|
56
|
+
agent set-referral <referral-agent-id> Set referral agent
|
|
57
|
+
agent log <activity> <log> Log activity on-chain
|
|
58
|
+
agent bind-twitter [tweet-url] Bind twitter for stake-free mining credits
|
|
59
|
+
agent unbind-twitter <username> Unbind twitter
|
|
60
|
+
agent submit-tweet <tweet-url> Submit tweet for verification & rewards
|
|
61
|
+
agent delete <agent-id> Delete agent, reclaim rent
|
|
62
|
+
agent clear Clear local agent ID config
|
|
46
63
|
skills register <name> <author> Register a skill on-chain
|
|
47
64
|
skills get <name> Get skill info
|
|
48
65
|
skills upload <name> <file> Upload skill content
|
|
@@ -56,22 +73,19 @@ zkid info <name> Get ZK ID info
|
|
|
56
73
|
zkid deposit <name> <amount> Deposit NARA
|
|
57
74
|
zkid scan [name] [-w] Scan claimable deposits
|
|
58
75
|
zkid withdraw <name> [--recipient <addr>] Withdraw deposit
|
|
59
|
-
agent register <agent-id> [--referral <agent-id>] Register an agent on-chain
|
|
60
|
-
agent get <agent-id> Get agent info
|
|
61
|
-
agent set-bio <agent-id> <bio> Set agent bio
|
|
62
|
-
agent upload-memory <agent-id> <file> Upload agent memory
|
|
63
|
-
agent log <agent-id> <activity> <log> Log activity on-chain
|
|
64
76
|
config get Show current config
|
|
65
77
|
config set <key> <value> Set config value
|
|
66
78
|
config reset [key] Reset config to default
|
|
67
79
|
```
|
|
68
80
|
|
|
81
|
+
Most agent commands default to your saved agent ID (from `agent register` / `agent myid`). Use `--agent-id <id>` to override.
|
|
82
|
+
|
|
69
83
|
## Global Options
|
|
70
84
|
|
|
71
85
|
| Option | Description |
|
|
72
86
|
|---|---|
|
|
73
87
|
| `-r, --rpc-url <url>` | RPC endpoint (default: `https://mainnet-api.nara.build/`) |
|
|
74
|
-
| `-w, --wallet <path>` | Wallet keypair JSON |
|
|
88
|
+
| `-w, --wallet <path>` | Wallet keypair JSON (default: `~/.config/nara/id.json`) |
|
|
75
89
|
| `-j, --json` | JSON output |
|
|
76
90
|
|
|
77
91
|
## Configuration
|
|
@@ -82,6 +96,8 @@ naracli config get
|
|
|
82
96
|
naracli config reset
|
|
83
97
|
```
|
|
84
98
|
|
|
99
|
+
Agent ID is stored per-wallet in `~/.config/nara/agent-{network}.json`.
|
|
100
|
+
|
|
85
101
|
## License
|
|
86
102
|
|
|
87
103
|
MIT
|
package/dist/nara-cli-bundle.cjs
CHANGED
|
@@ -172285,11 +172285,11 @@ async function handleAgentGet(agentId, options) {
|
|
|
172285
172285
|
console.log(` Stake-free credits are based on tweet likes, bookmarks, retweets, and quotes.`);
|
|
172286
172286
|
console.log("");
|
|
172287
172287
|
} else {
|
|
172288
|
+
const tweetText = `Claiming my AI agent ${agentId} on NaraChain @NaraBuildAI`;
|
|
172289
|
+
const tweetIntent = `https://x.com/intent/tweet?text=${tweetText.replace(/ /g, "%20")}`;
|
|
172288
172290
|
console.log(` Tip: Bind your Twitter to get stake-free PoMI mining credits!`);
|
|
172289
|
-
console.log(` 1. Post a tweet
|
|
172290
|
-
console.log(`
|
|
172291
|
-
console.log(` 2. Then run:`);
|
|
172292
|
-
console.log(` npx naracli agent bind-twitter <tweet-url>`);
|
|
172291
|
+
console.log(` 1. Post a tweet: ${tweetIntent}`);
|
|
172292
|
+
console.log(` 2. Then run: npx naracli agent bind-twitter <tweet-url>`);
|
|
172293
172293
|
console.log("");
|
|
172294
172294
|
}
|
|
172295
172295
|
}
|
|
@@ -172706,7 +172706,7 @@ function registerAgentCommands(program3) {
|
|
|
172706
172706
|
});
|
|
172707
172707
|
agent.command("bind-twitter [tweet-url]").description("Bind twitter to your agent for stake-free PoMI credits").option("--agent-id <id>", "Agent ID (defaults to saved myid)").addHelpText("after", `
|
|
172708
172708
|
Tweet content (replace <agent-id> with yours):
|
|
172709
|
-
|
|
172709
|
+
Claiming my AI agent "<agent-id>" on NaraChain @NaraBuildAI
|
|
172710
172710
|
|
|
172711
172711
|
Tweet URL format:
|
|
172712
172712
|
https://x.com/<username>/status/<id>
|
|
@@ -172732,13 +172732,12 @@ Example:
|
|
|
172732
172732
|
}
|
|
172733
172733
|
} catch {
|
|
172734
172734
|
}
|
|
172735
|
+
const tweetText = `Claiming my AI agent ${agentId} on NaraChain @NaraBuildAI`;
|
|
172736
|
+
const tweetIntent = `https://x.com/intent/tweet?text=${tweetText.replace(/ /g, "%20")}`;
|
|
172735
172737
|
console.log("");
|
|
172736
172738
|
console.log(` Bind your Twitter to get stake-free PoMI mining credits!`);
|
|
172737
|
-
console.log(` 1. Post a tweet
|
|
172738
|
-
console.log(`
|
|
172739
|
-
console.log(` 2. Then run:`);
|
|
172740
|
-
console.log(` npx naracli agent bind-twitter <tweet-url>`);
|
|
172741
|
-
console.log(` (URL format: https://x.com/<username>/status/<id>)`);
|
|
172739
|
+
console.log(` 1. Post a tweet: ${tweetIntent}`);
|
|
172740
|
+
console.log(` 2. Then run: npx naracli agent bind-twitter <tweet-url>`);
|
|
172742
172741
|
console.log("");
|
|
172743
172742
|
return;
|
|
172744
172743
|
}
|
|
@@ -173022,7 +173021,7 @@ function registerCommands(program3) {
|
|
|
173022
173021
|
}
|
|
173023
173022
|
|
|
173024
173023
|
// bin/nara-cli.ts
|
|
173025
|
-
var version2 = true ? "1.0.
|
|
173024
|
+
var version2 = true ? "1.0.65" : "dev";
|
|
173026
173025
|
var program2 = new Command();
|
|
173027
173026
|
program2.name("naracli").description("CLI for the Nara chain. Native coin is NARA (not SOL). Mine NARA for free via PoMI quests, manage wallets, register agents, and more. Run 'naracli <command> --help' for details on any command.").version(version2);
|
|
173028
173027
|
program2.option("-r, --rpc-url <url>", "RPC endpoint (default: https://mainnet-api.nara.build/)").option("-w, --wallet <path>", "Path to wallet keypair JSON file (default: ~/.config/nara/id.json)").option("-j, --json", "Output in JSON format");
|
package/package.json
CHANGED
|
@@ -191,11 +191,11 @@ async function handleAgentGet(agentId: string, options: GlobalOptions) {
|
|
|
191
191
|
console.log("");
|
|
192
192
|
} else {
|
|
193
193
|
// Not bound — show bind tip
|
|
194
|
+
const tweetText = `Claiming my AI agent ${agentId} on NaraChain @NaraBuildAI`;
|
|
195
|
+
const tweetIntent = `https://x.com/intent/tweet?text=${tweetText.replace(/ /g, "%20")}`;
|
|
194
196
|
console.log(` Tip: Bind your Twitter to get stake-free PoMI mining credits!`);
|
|
195
|
-
console.log(` 1. Post a tweet
|
|
196
|
-
console.log(`
|
|
197
|
-
console.log(` 2. Then run:`);
|
|
198
|
-
console.log(` npx naracli agent bind-twitter <tweet-url>`);
|
|
197
|
+
console.log(` 1. Post a tweet: ${tweetIntent}`);
|
|
198
|
+
console.log(` 2. Then run: npx naracli agent bind-twitter <tweet-url>`);
|
|
199
199
|
console.log("");
|
|
200
200
|
}
|
|
201
201
|
}
|
|
@@ -786,7 +786,7 @@ export function registerAgentCommands(program: Command): void {
|
|
|
786
786
|
.option("--agent-id <id>", "Agent ID (defaults to saved myid)")
|
|
787
787
|
.addHelpText("after", `
|
|
788
788
|
Tweet content (replace <agent-id> with yours):
|
|
789
|
-
|
|
789
|
+
Claiming my AI agent "<agent-id>" on NaraChain @NaraBuildAI
|
|
790
790
|
|
|
791
791
|
Tweet URL format:
|
|
792
792
|
https://x.com/<username>/status/<id>
|
|
@@ -816,13 +816,12 @@ Example:
|
|
|
816
816
|
} catch {
|
|
817
817
|
// No binding found
|
|
818
818
|
}
|
|
819
|
+
const tweetText = `Claiming my AI agent ${agentId} on NaraChain @NaraBuildAI`;
|
|
820
|
+
const tweetIntent = `https://x.com/intent/tweet?text=${tweetText.replace(/ /g, "%20")}`;
|
|
819
821
|
console.log("");
|
|
820
822
|
console.log(` Bind your Twitter to get stake-free PoMI mining credits!`);
|
|
821
|
-
console.log(` 1. Post a tweet
|
|
822
|
-
console.log(`
|
|
823
|
-
console.log(` 2. Then run:`);
|
|
824
|
-
console.log(` npx naracli agent bind-twitter <tweet-url>`);
|
|
825
|
-
console.log(` (URL format: https://x.com/<username>/status/<id>)`);
|
|
823
|
+
console.log(` 1. Post a tweet: ${tweetIntent}`);
|
|
824
|
+
console.log(` 2. Then run: npx naracli agent bind-twitter <tweet-url>`);
|
|
826
825
|
console.log("");
|
|
827
826
|
return;
|
|
828
827
|
}
|