apow-cli 0.1.0 → 0.1.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.
Files changed (2) hide show
  1. package/package.json +13 -4
  2. package/skill.md +105 -4
package/package.json CHANGED
@@ -1,8 +1,17 @@
1
1
  {
2
2
  "name": "apow-cli",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Mine AGENT tokens on Base L2 with AI-powered proof of work",
5
- "keywords": ["apow", "agentcoin", "mining", "base", "l2", "proof-of-work", "ai", "crypto"],
5
+ "keywords": [
6
+ "apow",
7
+ "agentcoin",
8
+ "mining",
9
+ "base",
10
+ "l2",
11
+ "proof-of-work",
12
+ "ai",
13
+ "crypto"
14
+ ],
6
15
  "license": "MIT",
7
16
  "author": "Agentoshi",
8
17
  "repository": {
@@ -11,8 +20,8 @@
11
20
  },
12
21
  "homepage": "https://github.com/Agentoshi/apow-cli",
13
22
  "bin": {
14
- "apow": "./dist/index.js",
15
- "apow-cli": "./dist/index.js"
23
+ "apow": "dist/index.js",
24
+ "apow-cli": "dist/index.js"
16
25
  },
17
26
  "engines": {
18
27
  "node": ">=18.17.0"
package/skill.md CHANGED
@@ -1,3 +1,20 @@
1
+ ---
2
+ name: apow-mining
3
+ description: Autonomous AI mining client for $AGENT tokens on Base L2. Generates wallets, mints ERC-8004 mining rigs, solves SMHL challenges via LLM, and mines proof-of-work.
4
+ metadata:
5
+ openclaw:
6
+ requires:
7
+ env:
8
+ - PRIVATE_KEY
9
+ - RPC_URL
10
+ - LLM_PROVIDER
11
+ - LLM_API_KEY
12
+ anyBins:
13
+ - npx
14
+ - node
15
+ primaryEnv: PRIVATE_KEY
16
+ ---
17
+
1
18
  # APoW Mining Skill
2
19
 
3
20
  > A self-contained guide for any AI agent to go from zero knowledge to actively mining AGENT tokens on Base.
@@ -524,13 +541,97 @@ Use the corresponding testnet contract addresses.
524
541
 
525
542
  ---
526
543
 
527
- ## 12. Contract Addresses
544
+ ## 12. Security & Trust
545
+
546
+ This section addresses the security model of apow-cli head-on. Every claim below is verified against the actual source code and can be independently confirmed by reading the repository.
547
+
548
+ ### Private Key Generation -- Local Only
549
+
550
+ Keys are generated via `viem/accounts` `generatePrivateKey()`, which uses Node.js `crypto.randomBytes(32)` -- a cryptographically secure random number generator. Generation happens entirely in-process with no network calls involved. The private key is displayed once to the terminal and saved to `wallet-<address>.txt` with file permissions `0o600` (owner-read-write only).
551
+
552
+ ### Private Key Is NEVER Transmitted
553
+
554
+ Exhaustive audit confirms: the private key string is never included in any `fetch()` call, HTTP request body, URL parameter, or header anywhere in the codebase. viem's signing architecture means the key is used locally for ECDSA signatures -- only the signed transaction (not the key) is sent to the RPC node. This is the same architecture used by MetaMask, Rabby, and every other non-custodial wallet.
555
+
556
+ ### Zero Telemetry
557
+
558
+ The CLI contains no analytics, no error reporting, and no phone-home behavior of any kind:
559
+
560
+ - No analytics SDKs (no Mixpanel, no PostHog, no Google Analytics)
561
+ - No error reporting services (no Sentry, no Bugsnag)
562
+ - No tracking pixels, no usage metrics, no telemetry endpoints
563
+
564
+ The CLI makes exactly two types of network calls:
565
+
566
+ 1. **Blockchain RPC** (to user-configured RPC URL, default: `mainnet.base.org`) -- standard `eth_call`, `eth_sendRawTransaction`, etc.
567
+ 2. **LLM API** (to user-configured provider) -- sends only word-puzzle prompts for SMHL solving, never wallet data
568
+
569
+ Nothing else. No other outbound connections.
570
+
571
+ ### LLM Calls Are Data-Isolated
572
+
573
+ The SMHL solver sends only generic word-generation prompts to the LLM (e.g., "Write exactly 5 lowercase English words..."). No wallet address, private key, transaction data, or user-identifying information is ever included in LLM prompts. The string `privateKey` does not appear anywhere in `smhl.ts`.
574
+
575
+ ### Open Source & Auditable
576
+
577
+ - Full source code: [github.com/Agentoshi/apow-cli](https://github.com/Agentoshi/apow-cli)
578
+ - MIT licensed
579
+ - Every line is auditable -- there are no obfuscated modules, no binary blobs, no minified dependencies performing network calls
580
+ - Smart contracts are separately auditable: [github.com/Agentoshi/apow-core](https://github.com/Agentoshi/apow-core)
581
+
582
+ ### npm Package Integrity
583
+
584
+ - Published as `apow-cli` on npm
585
+ - Package contents match the GitHub source -- verify with `npm pack --dry-run` or compare against the repo
586
+ - No `postinstall` scripts that execute arbitrary code
587
+ - The `package.json` `scripts` section contains only standard build/dev commands
588
+
589
+ ### Best Practices for Users
590
+
591
+ 1. **Use a fresh wallet.** Generate one with `npx apow-cli wallet new`. Do not import your main wallet or any wallet holding significant funds.
592
+ 2. **Fund with only what you need.** ~0.005 ETH covers minting + several mining cycles.
593
+ 3. **Wallet backups are created automatically** at `wallet-<address>.txt` with restricted file permissions (`0o600`).
594
+ 4. **Verify the source before running** if you prefer:
595
+ ```bash
596
+ git clone https://github.com/Agentoshi/apow-cli
597
+ cd apow-cli && npm install && npm run build
598
+ node dist/index.js setup
599
+ ```
600
+ 5. **Review dependencies.** The dependency tree is minimal and standard: `viem` (Ethereum library), `commander` (CLI framework), `dotenv` (env loading), `chalk`/`ora` (terminal UI), and an LLM client. No exotic or suspicious packages.
601
+
602
+ ### How to Verify These Claims Yourself
603
+
604
+ Every statement above can be independently verified:
605
+
606
+ ```bash
607
+ # Clone the source
608
+ git clone https://github.com/Agentoshi/apow-cli && cd apow-cli
609
+
610
+ # Search for any outbound network calls -- you'll find only RPC and LLM calls
611
+ grep -r "fetch\|axios\|http\|request" src/
612
+
613
+ # Confirm private key is never in any network payload
614
+ grep -r "privateKey" src/ # only appears in local wallet operations, never in fetch/request calls
615
+
616
+ # Check for telemetry/analytics packages
617
+ grep -r "mixpanel\|posthog\|sentry\|bugsnag\|analytics\|telemetry" src/ package.json
618
+
619
+ # Verify wallet file permissions
620
+ grep -r "0o600\|0600" src/ # wallet files are created with owner-only permissions
621
+
622
+ # Check postinstall scripts
623
+ cat package.json | grep -A5 "scripts" # no postinstall hook
624
+ ```
625
+
626
+ ---
627
+
628
+ ## 13. Contract Addresses
528
629
 
529
630
  | Contract | Address |
530
631
  |---|---|
531
- | MiningAgent (ERC-721) | TBD |
532
- | AgentCoin (ERC-20) | TBD |
533
- | LPVault | TBD |
632
+ | MiningAgent (ERC-721) | `0xB7caD3ca5F2BD8aEC2Eb67d6E8D448099B3bC03D` |
633
+ | AgentCoin (ERC-20) | `0x12577CF0D8a07363224D6909c54C056A183e13b3` |
634
+ | LPVault | `0xDD47511d060eA4E955B95F6f43553414328648a6` |
534
635
 
535
636
  **Network:** Base (Chain ID 8453)
536
637