naracli 1.0.17 → 1.0.18

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 CHANGED
@@ -7,8 +7,7 @@ CLI and SDK for the Nara chain (Solana-compatible).
7
7
  ```text
8
8
  NaraSDK
9
9
  ├── Solana web3.js ── RPC communication, transaction signing
10
- ├── Meteora DBC SDK ── Dynamic Bonding Curve pools & swaps
11
- ├── Meteora CP-AMM SDK ── Post-graduation concentrated liquidity
10
+ ├── Anchor ── On-chain program interaction
12
11
  ├── snarkjs (Groth16) ── Zero-knowledge proof generation
13
12
  └── BIP39 + ed25519-hd-key ── Wallet derivation (m/44'/501'/0'/0')
14
13
  ```
@@ -17,9 +16,9 @@ NaraSDK
17
16
 
18
17
  Standard Solana-compatible wallet using BIP39 mnemonics and ed25519 key derivation. Supports NSO transfers, SPL token transfers, and balance queries.
19
18
 
20
- ### Quest (Answer-to-Earn with ZK Proofs)
19
+ ### Quest Proof of Machine Intelligence (PoMI)
21
20
 
22
- On-chain quiz system where correct answers earn NSO rewards:
21
+ On-chain quiz system where AI agents prove intelligence to earn NSO rewards:
23
22
 
24
23
  1. Fetch the current question from the Anchor program
25
24
  2. Compute the answer locally and generate a **Groth16 ZK proof** proving `Poseidon(answer) == answer_hash` without revealing the answer
@@ -28,13 +27,6 @@ On-chain quiz system where correct answers earn NSO rewards:
28
27
 
29
28
  Circuit files: `answer_proof.wasm` + `answer_proof_final.zkey` (BN254 curve).
30
29
 
31
- ### Token Lifecycle (DBC)
32
-
33
- 1. **Config** - Create bonding curve parameters (supply, initial/migration market cap, fees) via Meteora's `DynamicBondingCurveClient`
34
- 2. **Pool** - Launch a token pool with the bonding curve config, optionally with an initial buy
35
- 3. **Swap** - Buy/sell tokens on the bonding curve. Supports three modes: exact-in, partial-fill, exact-out
36
- 4. **Migrate** - When curve reaches 100%, graduate the pool to Meteora DAMM V2 (Concentrated Position AMM). Requires two Position NFT keypairs for liquidity positions
37
-
38
30
  ## Installation
39
31
 
40
32
  ```bash
@@ -98,8 +90,6 @@ if (reward.rewarded) {
98
90
  }
99
91
  ```
100
92
 
101
- See [examples/](examples/) for complete SDK usage examples.
102
-
103
93
  ## CLI
104
94
 
105
95
  ### Setup
@@ -118,15 +108,20 @@ Wallet is saved to `~/.config/nara/id.json` by default.
118
108
  ### Commands
119
109
 
120
110
  ```text
121
- wallet Wallet management (create, import, balance, transfer)
122
- config Create bonding curve configurations
123
- pool Create and query token pools
124
- swap Buy / sell tokens, get quotes
125
- migrate Check migration eligibility and launch to DAMM V2
126
- quest On-chain quiz with ZK proof verification
111
+ address Show wallet address
112
+ balance [address] Check NSO balance
113
+ token-balance <token-address> Check token balance
114
+ tx-status <signature> Check transaction status
115
+ transfer <to> <amount> Transfer NSO
116
+ transfer-token <token> <to> <amount> Transfer tokens
117
+ sign <base64-tx> [--send] Sign (and optionally send) a transaction
118
+ wallet create Create a new wallet
119
+ wallet import Import wallet from mnemonic or private key
120
+ quest get Get current quest info
121
+ quest answer <answer> Submit answer with ZK proof
127
122
  ```
128
123
 
129
- Run `npx naracli <command> --help` for details on each command.
124
+ Run `npx naracli <command> --help` for details.
130
125
 
131
126
  ### Global Options
132
127
 
@@ -140,10 +135,7 @@ Run `npx naracli <command> --help` for details on each command.
140
135
 
141
136
  ```bash
142
137
  # Check balance
143
- npx naracli wallet balance
144
-
145
- # Buy tokens
146
- npx naracli swap buy <TOKEN_ADDRESS> 0.1
138
+ npx naracli balance
147
139
 
148
140
  # Answer a quest
149
141
  npx naracli quest get
package/bin/nara-cli.ts CHANGED
@@ -4,7 +4,6 @@
4
4
 
5
5
  import { Command } from "commander";
6
6
  import { registerCommands } from "../src/cli/index";
7
- import { loadWallet } from "../src/cli/utils/wallet";
8
7
  import { createRequire } from "node:module";
9
8
 
10
9
  const require = createRequire(import.meta.url);
@@ -25,25 +24,6 @@ program
25
24
  .option("-w, --wallet <path>", "Path to wallet keypair JSON file")
26
25
  .option("-j, --json", "Output in JSON format");
27
26
 
28
- // Top-level address shortcut
29
- program
30
- .command("address")
31
- .description("Show wallet address")
32
- .action(async () => {
33
- const opts = program.opts();
34
- try {
35
- const wallet = await loadWallet(opts.wallet);
36
- if (opts.json) {
37
- console.log(JSON.stringify({ address: wallet.publicKey.toBase58() }, null, 2));
38
- } else {
39
- console.log(wallet.publicKey.toBase58());
40
- }
41
- } catch (error: any) {
42
- console.error(`Error: ${error.message}`);
43
- process.exit(1);
44
- }
45
- });
46
-
47
27
  // Register all command modules
48
28
  registerCommands(program);
49
29