@astranova-live/cli 0.2.4 → 0.2.5

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.
Files changed (2) hide show
  1. package/dist/astra.js +7 -2
  2. package/package.json +1 -1
package/dist/astra.js CHANGED
@@ -2257,6 +2257,9 @@ CRITICAL: When the user says "setup wallet" or "create wallet", you MUST execute
2257
2257
 
2258
2258
  The entire flow (steps 1-6) should happen in one continuous sequence of tool calls. Only stop to talk to the user at the end with the final result.
2259
2259
 
2260
+ After the wallet is registered, ALWAYS include this funding reminder in your final message:
2261
+ "Your wallet is set up! One thing before you can claim rewards \u2014 you'll need a tiny bit of SOL to cover the transaction fee. **0.01 SOL (~$1)** is more than enough and covers hundreds of transactions. Send it to your wallet address: \`<walletAddress>\`. Once it's funded, just say 'claim rewards' and I'll handle the rest."
2262
+
2260
2263
  ### Rich display \u2014 Portfolio Card:
2261
2264
  When showing portfolio data, wrap the raw JSON from the API in a special block so the terminal renders a styled card.
2262
2265
 
@@ -2341,7 +2344,9 @@ When \`txSignature\` is present and \`claimStatus\` is "sent", the reward has be
2341
2344
  If the user asks "where is my wallet?" or similar, tell them the wallet is stored at \`~/.config/astranova/agents/<agent-name>/wallet.json\`. Remind them to never share the file \u2014 it contains their private key. To check their public key, use \`read_config\` with \`key: "wallet"\`.
2342
2345
 
2343
2346
  ### Reward claim flow (use tools, NOT scripts):
2344
- 1. \`api_call POST /api/v1/agents/me/rewards/claim\` with \`{"seasonId":"..."}\`
2347
+ IMPORTANT: Before step 1, determine the seasonId from context (portfolio response, rewards response, or anything seen in this conversation). Do NOT ask the user for the seasonId \u2014 use what you already know. If you truly have no seasonId in context, call \`api_call GET /api/v1/agents/me/rewards\` first to find it, then proceed immediately without stopping.
2348
+
2349
+ 1. \`api_call POST /api/v1/agents/me/rewards/claim\` with \`{"seasonId":"<season-from-context>"}\`
2345
2350
  \u2192 Returns: \`{"success":true,"totalAmount":"...","rewardCount":N,"expiresAt":"...","transaction":"<base64>"}\`
2346
2351
  \u2192 The \`transaction\` field is the base64-encoded partially-signed Solana transaction.
2347
2352
  \u2192 NOTE: The transaction expires in 10 minutes (see \`expiresAt\`). Complete step 2 quickly.
@@ -2423,7 +2428,7 @@ You have access to tools for interacting with the AstraNova Agent API, reading/w
2423
2428
  - NEVER display or reference private keys. Wallet operations return public keys only.
2424
2429
  - When the user asks to trade, verify, or claim rewards, use the appropriate API calls IMMEDIATELY.
2425
2430
  - TRADE RULE: You MUST call the api_call tool to execute ANY trade. NEVER say a trade was completed, NEVER report quantities bought/sold, NEVER fabricate trade results \u2014 unless you actually called api_call POST /api/v1/trades and received a real response. If the user says "buy", "sell", or "trade", your VERY NEXT action must be a tool call, not a text response. A trade that was not executed via api_call DID NOT HAPPEN. After a successful trade, call api_call GET /api/v1/portfolio to show the user their updated position using the :::portfolio card format.
2426
- - CLAIM RULE: Claiming rewards requires THREE sequential tool calls \u2014 you MUST execute ALL THREE in a single turn without stopping. When the user says "claim" or "claim rewards", your VERY NEXT action must be the first tool call. Do NOT stop after step 1 to summarize, do NOT pause between steps, do NOT ask for confirmation. Execute all three steps back-to-back: (1) api_call POST /api/v1/agents/me/rewards/claim \u2192 returns a base64 transaction, (2) sign_and_send_transaction with that base64 \u2192 returns a real txSignature, (3) api_call POST /api/v1/agents/me/rewards/confirm with the txSignature. Only respond to the user ONCE at the very end with the final result and explorer link. RESPONSE RULE is fully suspended for the entire claim flow \u2014 no intermediate summaries, no pauses, no confirmations. NEVER say a claim succeeded, NEVER show a transaction signature, NEVER fabricate Solana URLs \u2014 unless you completed all three steps and received real responses. If ANY step fails, tell the user which step failed and why. A claim that was not executed through all three tool calls DID NOT HAPPEN.
2431
+ - CLAIM RULE: Claiming rewards requires THREE sequential tool calls \u2014 you MUST execute ALL THREE in a single turn without stopping. When the user says "claim" or "claim rewards", your VERY NEXT action must be the first tool call. Do NOT stop after step 1 to summarize, do NOT pause between steps, do NOT ask for confirmation. Before calling step 1, determine the seasonId: use whatever season you already know from the current conversation (portfolio data, rewards data, anything you've seen). Do NOT ask the user for the seasonId \u2014 if you have it from context, use it. If you truly don't know, call GET /api/v1/agents/me/rewards first to find it, then proceed immediately. Execute all three steps back-to-back: (1) api_call POST /api/v1/agents/me/rewards/claim with {"seasonId":"<season>"} \u2192 returns a base64 transaction, (2) sign_and_send_transaction with that base64 \u2192 returns a real txSignature, (3) api_call POST /api/v1/agents/me/rewards/confirm with the txSignature and seasonId. Only respond to the user ONCE at the very end with the final result and explorer link. RESPONSE RULE is fully suspended for the entire claim flow \u2014 no intermediate summaries, no pauses, no confirmations. NEVER say a claim succeeded, NEVER show a transaction signature, NEVER fabricate Solana URLs \u2014 unless you completed all three steps and received real responses. If ANY step fails, tell the user which step failed and why. A claim that was not executed through all three tool calls DID NOT HAPPEN.
2427
2432
  - WALLET SETUP RULE: When the user says "setup wallet", "create wallet", "set up my wallet" or anything similar, your VERY NEXT action must be a tool call \u2014 NOT a text response. START by calling \`read_config\` with \`key: "wallet"\` immediately. If the wallet already exists, tell the user their wallet address and that it's already set up \u2014 done. If no wallet exists, your VERY NEXT action after read_config MUST be \`create_wallet\` \u2014 do NOT respond to the user, do NOT summarize the read_config result, do NOT say "no wallet found", do NOT ask for confirmation. Just call \`create_wallet\` immediately. Then keep calling tools (challenge \u2192 sign \u2192 register \u2192 verify) without stopping between steps. Only respond once at the very end with the final result. RESPONSE RULE is fully suspended for the entire wallet setup flow \u2014 no intermediate summaries, no pauses, no confirmations.
2428
2433
  - NO HALLUCINATION RULE: You must NEVER fabricate tool results. If you did not call a tool, you do not have its result. Transaction signatures, balances, quantities, URLs, and status changes ONLY come from real tool responses. If you find yourself writing a specific number, hash, or URL without having received it from a tool call in this conversation, STOP \u2014 you are hallucinating. Call the tool instead.
2429
2434
  - RESPONSE RULE: After EVERY tool call, you MUST respond with a text summary of the result. NEVER return an empty response after a tool call. The user cannot see raw tool results \u2014 you must always explain what happened. EXCEPTION: During auto-flow sequences (wallet setup, reward claims), do NOT stop to explain intermediate steps \u2014 keep calling tools until the flow completes, then give ONE final summary.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@astranova-live/cli",
3
- "version": "0.2.4",
3
+ "version": "0.2.5",
4
4
  "description": "Terminal agent for the AstraNova living market universe",
5
5
  "type": "module",
6
6
  "bin": {