arc-devkit 0.4.3__tar.gz → 0.4.4__tar.gz

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 (62) hide show
  1. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/PKG-INFO +73 -47
  2. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/README.md +72 -46
  3. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/cli/commands/debug.py +21 -0
  4. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/cli/main.py +27 -0
  5. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit.egg-info/PKG-INFO +73 -47
  6. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/pyproject.toml +1 -1
  7. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/__init__.py +0 -0
  8. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/agents/__init__.py +0 -0
  9. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/agents/async_base.py +0 -0
  10. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/agents/async_monitor.py +0 -0
  11. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/agents/base_agent.py +0 -0
  12. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/agents/monitor_agent.py +0 -0
  13. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/agents/payment_agent.py +0 -0
  14. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/analytics/__init__.py +0 -0
  15. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/analytics/portfolio.py +0 -0
  16. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/api/__init__.py +0 -0
  17. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/api/main.py +0 -0
  18. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/api/routes/__init__.py +0 -0
  19. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/api/routes/agents.py +0 -0
  20. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/api/routes/copilot.py +0 -0
  21. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/api/routes/debugger.py +0 -0
  22. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/cli/__init__.py +0 -0
  23. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/cli/commands/__init__.py +0 -0
  24. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/cli/commands/agent.py +0 -0
  25. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/cli/commands/copilot.py +0 -0
  26. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/cli/flat.py +0 -0
  27. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/config.py +0 -0
  28. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/contracts/__init__.py +0 -0
  29. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/contracts/loader.py +0 -0
  30. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/copilot/__init__.py +0 -0
  31. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/copilot/agent.py +0 -0
  32. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/core/__init__.py +0 -0
  33. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/core/connection.py +0 -0
  34. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/core/gas.py +0 -0
  35. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/core/wallet.py +0 -0
  36. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/debugger/__init__.py +0 -0
  37. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/debugger/tx_analyzer.py +0 -0
  38. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/deploy/__init__.py +0 -0
  39. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/deploy/deployer.py +0 -0
  40. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/events/__init__.py +0 -0
  41. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/events/listener.py +0 -0
  42. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/usdc/__init__.py +0 -0
  43. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit/usdc/token.py +0 -0
  44. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit.egg-info/SOURCES.txt +0 -0
  45. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit.egg-info/dependency_links.txt +0 -0
  46. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit.egg-info/entry_points.txt +0 -0
  47. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit.egg-info/requires.txt +0 -0
  48. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/arc_devkit.egg-info/top_level.txt +0 -0
  49. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/setup.cfg +0 -0
  50. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_agents.py +0 -0
  51. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_analytics.py +0 -0
  52. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_api.py +0 -0
  53. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_async_agents.py +0 -0
  54. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_cli.py +0 -0
  55. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_connection.py +0 -0
  56. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_contracts.py +0 -0
  57. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_copilot.py +0 -0
  58. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_debugger.py +0 -0
  59. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_deploy.py +0 -0
  60. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_events.py +0 -0
  61. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_integration.py +0 -0
  62. {arc_devkit-0.4.3 → arc_devkit-0.4.4}/tests/test_usdc.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: arc-devkit
3
- Version: 0.4.3
3
+ Version: 0.4.4
4
4
  Summary: Plataforma open source de ferramentas para desenvolvedores da Arc blockchain (Circle)
5
5
  Author-email: Jeielsantosdev <jeielsantos.ti@gmail.com>
6
6
  License-Expression: MIT
@@ -88,10 +88,10 @@ cp .env.example .env
88
88
  # ARC_PRIVATE_KEY — optional; needed to send transactions
89
89
 
90
90
  # 3. Guided interactive setup (creates .env from scratch)
91
- arc init
91
+ arcdevkit init
92
92
 
93
93
  # 4. Verify connection
94
- arc status
94
+ arcdevkit status
95
95
  ```
96
96
 
97
97
  ```
@@ -130,10 +130,10 @@ AI assistant powered by Claude Sonnet, with Arc blockchain context embedded in t
130
130
 
131
131
  ```bash
132
132
  # Ask a question
133
- arc ask "How do I deploy an ERC-20 contract on Arc testnet?"
133
+ arcdevkit copilot ask "How do I deploy an ERC-20 contract on Arc testnet?"
134
134
 
135
135
  # Streaming output (token by token)
136
- arc ask --stream "Write a USDC payment contract in Solidity"
136
+ arcdevkit copilot ask "Write a USDC payment contract in Solidity" --stream
137
137
  ```
138
138
 
139
139
  ### Python
@@ -349,16 +349,16 @@ Fetches transaction data via RPC, decodes the error/result, and uses the Dev Cop
349
349
 
350
350
  ```bash
351
351
  # Analyze a transaction
352
- arc debug tx 0xYourTxHashHere
352
+ arcdevkit debug tx 0xYourTxHashHere
353
353
 
354
354
  # Load an ABI to decode input data
355
- arc debug tx 0xYourTxHash --abi ./MyContract.abi.json
355
+ arcdevkit debug tx 0xYourTxHash --abi ./MyContract.abi.json
356
356
 
357
357
  # Batch — analyze a file of hashes (one per line)
358
- arc debug batch hashes.txt
358
+ arcdevkit debug batch hashes.txt
359
359
 
360
- # View recent analysis history
361
- arc history
360
+ # View recent operation history
361
+ arcdevkit history
362
362
  ```
363
363
 
364
364
  ```python
@@ -395,10 +395,13 @@ Snapshot a wallet's complete state and activity on Arc, with AI commentary.
395
395
 
396
396
  ```bash
397
397
  # Analyze a single wallet
398
- arc portfolio analyze 0xYourWalletAddress
398
+ arcdevkit portfolio analyze 0xYourWalletAddress
399
+
400
+ # Show saved balance history
401
+ arcdevkit portfolio history 0xYourWalletAddress
399
402
 
400
403
  # Generate a consolidated report for multiple wallets
401
- arc portfolio report wallets.json
404
+ arcdevkit portfolio report wallets.json
402
405
  ```
403
406
 
404
407
  ```python
@@ -593,54 +596,77 @@ The `docker-compose.yml` mounts your `.env` and runs the API on port 8000 with a
593
596
 
594
597
  ## CLI Reference
595
598
 
596
- Arc DevKit provides two CLI entry points:
599
+ The primary entry point is `arcdevkit`, with commands grouped by domain.
597
600
 
598
- | Command | Entry Point |
599
- |---|---|
600
- | `arc` | Flat, friendly commands for day-to-day use |
601
- | `arcdevkit` | Grouped subcommand style |
601
+ ### Setup
602
+
603
+ ```bash
604
+ arcdevkit init # interactive .env wizard
605
+ arcdevkit status # check testnet connection + block info
606
+ ```
607
+
608
+ ### Config — manage `.env`
609
+
610
+ ```bash
611
+ arcdevkit config list # show all variables
612
+ arcdevkit config get ANTHROPIC_API_KEY # read a specific variable
613
+ arcdevkit config set ARC_RPC_URL https://...# write a variable
614
+ ```
615
+
616
+ ### Copilot — AI assistant
602
617
 
603
- ### `arc` — quick commands
618
+ ```bash
619
+ arcdevkit copilot ask "What is Malachite consensus?"
620
+ arcdevkit copilot ask "Write a USDC vault" --stream # token-by-token streaming
621
+ arcdevkit copilot ask "..." --json # output as JSON
622
+ ```
623
+
624
+ ### Agent — wallet & payments
604
625
 
605
626
  ```bash
606
- # Setup
607
- arc init # guided .env wizard
608
- arc status # testnet connection + block info
609
- arc config list # show all env vars
610
- arc config get ANTHROPIC_API_KEY # read a specific var
611
- arc config set ARC_RPC_URL https://... # write a var
627
+ arcdevkit agent create-wallet # generate new EVM wallet
628
+ arcdevkit agent balance 0xAddress... # check wallet balance
629
+ arcdevkit agent status # network info (block, chain ID, gas)
630
+ arcdevkit agent pay 0xDest... 5.0 # sign-only (safe default)
631
+ arcdevkit agent pay 0xDest... 5.0 --send # sign and broadcast
632
+ arcdevkit agent pay 0xDest... 5.0 --send --key 0xPrivKey...
633
+ arcdevkit agent monitor 0xWallet... # watch balance changes
634
+ arcdevkit agent monitor 0xWallet... --interval 5 --max 50
635
+ ```
612
636
 
613
- # Wallet
614
- arc wallet create # generate new wallet
615
- arc wallet balance --address 0x... # check balance
637
+ ### Debug — transaction analysis
616
638
 
617
- # AI Copilot
618
- arc ask "What is Malachite consensus?"
619
- arc ask --stream "Write a USDC vault"
620
- arc ask --json "..." # output as JSON
639
+ ```bash
640
+ arcdevkit debug tx 0xHash... # analyze a transaction with AI
641
+ arcdevkit debug tx 0xHash... --json
642
+ arcdevkit debug estimate 0xDest... 10.0 # estimate gas cost
643
+ arcdevkit debug estimate 0xDest... 10.0 --from 0xSender...
644
+ arcdevkit debug batch hashes.txt # analyze multiple txs from a file
645
+ arcdevkit debug batch hashes.txt --abi MyContract.json
646
+ ```
621
647
 
622
- # Transaction debugging
623
- arc debug tx 0xHash
624
- arc debug tx 0xHash --abi Contract.json
625
- arc history # list recent debug sessions
648
+ ### Portfolio — wallet analytics
626
649
 
627
- # Portfolio
628
- arc portfolio analyze 0xWallet
629
- arc portfolio report wallets.json
650
+ ```bash
651
+ arcdevkit portfolio analyze 0xWallet... # balances, txs, AI insights
652
+ arcdevkit portfolio analyze 0xWallet... --no-ai --blocks 500
653
+ arcdevkit portfolio history 0xWallet... # saved balance snapshots
654
+ arcdevkit portfolio report wallets.json # consolidated multi-wallet report
655
+ ```
656
+
657
+ ### Codegen — script generation
630
658
 
631
- # Flags (work on every command)
632
- arc --json <cmd> # machine-readable JSON output
633
- arc -v <cmd> # verbose (DEBUG logging)
659
+ ```bash
660
+ arcdevkit codegen "monitor a wallet and alert when balance drops"
661
+ arcdevkit codegen "deploy an ERC-20 with a mint function" --out ./scripts
662
+ arcdevkit codegen "..." --no-save # print only, don't save to disk
634
663
  ```
635
664
 
636
- ### `arcdevkit`grouped style
665
+ ### Historyoperation log
637
666
 
638
667
  ```bash
639
- arcdevkit status
640
- arcdevkit copilot ask "..."
641
- arcdevkit agent wallet create
642
- arcdevkit agent pay --to 0x... --amount 10
643
- arcdevkit debug tx 0xHash
668
+ arcdevkit history # last 10 CLI operations
669
+ arcdevkit history --limit 25 --json
644
670
  ```
645
671
 
646
672
  ---
@@ -49,10 +49,10 @@ cp .env.example .env
49
49
  # ARC_PRIVATE_KEY — optional; needed to send transactions
50
50
 
51
51
  # 3. Guided interactive setup (creates .env from scratch)
52
- arc init
52
+ arcdevkit init
53
53
 
54
54
  # 4. Verify connection
55
- arc status
55
+ arcdevkit status
56
56
  ```
57
57
 
58
58
  ```
@@ -91,10 +91,10 @@ AI assistant powered by Claude Sonnet, with Arc blockchain context embedded in t
91
91
 
92
92
  ```bash
93
93
  # Ask a question
94
- arc ask "How do I deploy an ERC-20 contract on Arc testnet?"
94
+ arcdevkit copilot ask "How do I deploy an ERC-20 contract on Arc testnet?"
95
95
 
96
96
  # Streaming output (token by token)
97
- arc ask --stream "Write a USDC payment contract in Solidity"
97
+ arcdevkit copilot ask "Write a USDC payment contract in Solidity" --stream
98
98
  ```
99
99
 
100
100
  ### Python
@@ -310,16 +310,16 @@ Fetches transaction data via RPC, decodes the error/result, and uses the Dev Cop
310
310
 
311
311
  ```bash
312
312
  # Analyze a transaction
313
- arc debug tx 0xYourTxHashHere
313
+ arcdevkit debug tx 0xYourTxHashHere
314
314
 
315
315
  # Load an ABI to decode input data
316
- arc debug tx 0xYourTxHash --abi ./MyContract.abi.json
316
+ arcdevkit debug tx 0xYourTxHash --abi ./MyContract.abi.json
317
317
 
318
318
  # Batch — analyze a file of hashes (one per line)
319
- arc debug batch hashes.txt
319
+ arcdevkit debug batch hashes.txt
320
320
 
321
- # View recent analysis history
322
- arc history
321
+ # View recent operation history
322
+ arcdevkit history
323
323
  ```
324
324
 
325
325
  ```python
@@ -356,10 +356,13 @@ Snapshot a wallet's complete state and activity on Arc, with AI commentary.
356
356
 
357
357
  ```bash
358
358
  # Analyze a single wallet
359
- arc portfolio analyze 0xYourWalletAddress
359
+ arcdevkit portfolio analyze 0xYourWalletAddress
360
+
361
+ # Show saved balance history
362
+ arcdevkit portfolio history 0xYourWalletAddress
360
363
 
361
364
  # Generate a consolidated report for multiple wallets
362
- arc portfolio report wallets.json
365
+ arcdevkit portfolio report wallets.json
363
366
  ```
364
367
 
365
368
  ```python
@@ -554,54 +557,77 @@ The `docker-compose.yml` mounts your `.env` and runs the API on port 8000 with a
554
557
 
555
558
  ## CLI Reference
556
559
 
557
- Arc DevKit provides two CLI entry points:
560
+ The primary entry point is `arcdevkit`, with commands grouped by domain.
558
561
 
559
- | Command | Entry Point |
560
- |---|---|
561
- | `arc` | Flat, friendly commands for day-to-day use |
562
- | `arcdevkit` | Grouped subcommand style |
562
+ ### Setup
563
+
564
+ ```bash
565
+ arcdevkit init # interactive .env wizard
566
+ arcdevkit status # check testnet connection + block info
567
+ ```
568
+
569
+ ### Config — manage `.env`
570
+
571
+ ```bash
572
+ arcdevkit config list # show all variables
573
+ arcdevkit config get ANTHROPIC_API_KEY # read a specific variable
574
+ arcdevkit config set ARC_RPC_URL https://...# write a variable
575
+ ```
576
+
577
+ ### Copilot — AI assistant
563
578
 
564
- ### `arc` — quick commands
579
+ ```bash
580
+ arcdevkit copilot ask "What is Malachite consensus?"
581
+ arcdevkit copilot ask "Write a USDC vault" --stream # token-by-token streaming
582
+ arcdevkit copilot ask "..." --json # output as JSON
583
+ ```
584
+
585
+ ### Agent — wallet & payments
565
586
 
566
587
  ```bash
567
- # Setup
568
- arc init # guided .env wizard
569
- arc status # testnet connection + block info
570
- arc config list # show all env vars
571
- arc config get ANTHROPIC_API_KEY # read a specific var
572
- arc config set ARC_RPC_URL https://... # write a var
588
+ arcdevkit agent create-wallet # generate new EVM wallet
589
+ arcdevkit agent balance 0xAddress... # check wallet balance
590
+ arcdevkit agent status # network info (block, chain ID, gas)
591
+ arcdevkit agent pay 0xDest... 5.0 # sign-only (safe default)
592
+ arcdevkit agent pay 0xDest... 5.0 --send # sign and broadcast
593
+ arcdevkit agent pay 0xDest... 5.0 --send --key 0xPrivKey...
594
+ arcdevkit agent monitor 0xWallet... # watch balance changes
595
+ arcdevkit agent monitor 0xWallet... --interval 5 --max 50
596
+ ```
573
597
 
574
- # Wallet
575
- arc wallet create # generate new wallet
576
- arc wallet balance --address 0x... # check balance
598
+ ### Debug — transaction analysis
577
599
 
578
- # AI Copilot
579
- arc ask "What is Malachite consensus?"
580
- arc ask --stream "Write a USDC vault"
581
- arc ask --json "..." # output as JSON
600
+ ```bash
601
+ arcdevkit debug tx 0xHash... # analyze a transaction with AI
602
+ arcdevkit debug tx 0xHash... --json
603
+ arcdevkit debug estimate 0xDest... 10.0 # estimate gas cost
604
+ arcdevkit debug estimate 0xDest... 10.0 --from 0xSender...
605
+ arcdevkit debug batch hashes.txt # analyze multiple txs from a file
606
+ arcdevkit debug batch hashes.txt --abi MyContract.json
607
+ ```
582
608
 
583
- # Transaction debugging
584
- arc debug tx 0xHash
585
- arc debug tx 0xHash --abi Contract.json
586
- arc history # list recent debug sessions
609
+ ### Portfolio — wallet analytics
587
610
 
588
- # Portfolio
589
- arc portfolio analyze 0xWallet
590
- arc portfolio report wallets.json
611
+ ```bash
612
+ arcdevkit portfolio analyze 0xWallet... # balances, txs, AI insights
613
+ arcdevkit portfolio analyze 0xWallet... --no-ai --blocks 500
614
+ arcdevkit portfolio history 0xWallet... # saved balance snapshots
615
+ arcdevkit portfolio report wallets.json # consolidated multi-wallet report
616
+ ```
617
+
618
+ ### Codegen — script generation
591
619
 
592
- # Flags (work on every command)
593
- arc --json <cmd> # machine-readable JSON output
594
- arc -v <cmd> # verbose (DEBUG logging)
620
+ ```bash
621
+ arcdevkit codegen "monitor a wallet and alert when balance drops"
622
+ arcdevkit codegen "deploy an ERC-20 with a mint function" --out ./scripts
623
+ arcdevkit codegen "..." --no-save # print only, don't save to disk
595
624
  ```
596
625
 
597
- ### `arcdevkit`grouped style
626
+ ### Historyoperation log
598
627
 
599
628
  ```bash
600
- arcdevkit status
601
- arcdevkit copilot ask "..."
602
- arcdevkit agent wallet create
603
- arcdevkit agent pay --to 0x... --amount 10
604
- arcdevkit debug tx 0xHash
629
+ arcdevkit history # last 10 CLI operations
630
+ arcdevkit history --limit 25 --json
605
631
  ```
606
632
 
607
633
  ---
@@ -74,6 +74,27 @@ def tx(
74
74
  )
75
75
 
76
76
 
77
+ @app.command()
78
+ def batch(
79
+ hashes_file: str = typer.Argument(
80
+ ..., help="Text file with one tx hash per line (or JSON array)."
81
+ ),
82
+ abi_path: str = typer.Option(
83
+ "", "--abi", "-a", help="Path to ABI JSON file applied to all transactions."
84
+ ),
85
+ json_output: bool = typer.Option(False, "--json", help="Output as JSON."),
86
+ ) -> None:
87
+ """Analyze multiple transactions from a file (one hash per line or JSON array).
88
+
89
+ Examples:
90
+ arcdevkit debug batch hashes.txt
91
+ arcdevkit debug batch hashes.txt --abi MyContract.json --json
92
+ """
93
+ from arc_devkit.cli.flat import debug_batch as _run_batch
94
+
95
+ _run_batch(hashes_file=hashes_file, abi_path=abi_path, json_output=json_output, verbose=False)
96
+
97
+
77
98
  @app.command()
78
99
  def estimate(
79
100
  to: str = typer.Argument(..., help="Recipient EVM address."),
@@ -6,6 +6,7 @@ from rich.panel import Panel
6
6
 
7
7
  from arc_devkit import __version__
8
8
  from arc_devkit.cli.commands import agent, copilot, debug
9
+ from arc_devkit.cli.flat import config_app, portfolio_app
9
10
 
10
11
  # Main Typer application
11
12
  app = typer.Typer(
@@ -20,6 +21,8 @@ app = typer.Typer(
20
21
  app.add_typer(copilot.app, name="copilot", help="AI assistant for Arc development.")
21
22
  app.add_typer(agent.app, name="agent", help="Wallet and agent management.")
22
23
  app.add_typer(debug.app, name="debug", help="Transaction analysis and debugging.")
24
+ app.add_typer(config_app, name="config", help="Manage Arc DevKit settings via .env.")
25
+ app.add_typer(portfolio_app, name="portfolio", help="Wallet portfolio analysis on Arc.")
23
26
 
24
27
  console = Console()
25
28
 
@@ -56,6 +59,30 @@ def init() -> None:
56
59
  _run_init()
57
60
 
58
61
 
62
+ @app.command()
63
+ def history(
64
+ limit: int = typer.Option(10, "--limit", "-n", help="Number of records to display."),
65
+ json_output: bool = typer.Option(False, "--json", help="Output as JSON."),
66
+ ) -> None:
67
+ """List recent CLI operations saved in ~/.arc_devkit/history.json."""
68
+ from arc_devkit.cli.flat import history as _run_history
69
+
70
+ _run_history(limit=limit, json_output=json_output)
71
+
72
+
73
+ @app.command()
74
+ def codegen(
75
+ topic: str = typer.Argument(..., help="Describe what the script should do."),
76
+ save: bool = typer.Option(True, "--save/--no-save", help="Save to generated/<timestamp>.py"),
77
+ output_dir: str = typer.Option(".", "--out", "-o", help="Output directory (default: current)."),
78
+ verbose: bool = typer.Option(False, "-v", "--verbose", help="Enable debug logs."),
79
+ ) -> None:
80
+ """Generate a Python script for Arc from a natural language description."""
81
+ from arc_devkit.cli.flat import codegen as _run_codegen
82
+
83
+ _run_codegen(topic=topic, save=save, output_dir=output_dir, verbose=verbose)
84
+
85
+
59
86
  @app.command()
60
87
  def status() -> None:
61
88
  """Check the connection to Arc testnet and display network information."""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: arc-devkit
3
- Version: 0.4.3
3
+ Version: 0.4.4
4
4
  Summary: Plataforma open source de ferramentas para desenvolvedores da Arc blockchain (Circle)
5
5
  Author-email: Jeielsantosdev <jeielsantos.ti@gmail.com>
6
6
  License-Expression: MIT
@@ -88,10 +88,10 @@ cp .env.example .env
88
88
  # ARC_PRIVATE_KEY — optional; needed to send transactions
89
89
 
90
90
  # 3. Guided interactive setup (creates .env from scratch)
91
- arc init
91
+ arcdevkit init
92
92
 
93
93
  # 4. Verify connection
94
- arc status
94
+ arcdevkit status
95
95
  ```
96
96
 
97
97
  ```
@@ -130,10 +130,10 @@ AI assistant powered by Claude Sonnet, with Arc blockchain context embedded in t
130
130
 
131
131
  ```bash
132
132
  # Ask a question
133
- arc ask "How do I deploy an ERC-20 contract on Arc testnet?"
133
+ arcdevkit copilot ask "How do I deploy an ERC-20 contract on Arc testnet?"
134
134
 
135
135
  # Streaming output (token by token)
136
- arc ask --stream "Write a USDC payment contract in Solidity"
136
+ arcdevkit copilot ask "Write a USDC payment contract in Solidity" --stream
137
137
  ```
138
138
 
139
139
  ### Python
@@ -349,16 +349,16 @@ Fetches transaction data via RPC, decodes the error/result, and uses the Dev Cop
349
349
 
350
350
  ```bash
351
351
  # Analyze a transaction
352
- arc debug tx 0xYourTxHashHere
352
+ arcdevkit debug tx 0xYourTxHashHere
353
353
 
354
354
  # Load an ABI to decode input data
355
- arc debug tx 0xYourTxHash --abi ./MyContract.abi.json
355
+ arcdevkit debug tx 0xYourTxHash --abi ./MyContract.abi.json
356
356
 
357
357
  # Batch — analyze a file of hashes (one per line)
358
- arc debug batch hashes.txt
358
+ arcdevkit debug batch hashes.txt
359
359
 
360
- # View recent analysis history
361
- arc history
360
+ # View recent operation history
361
+ arcdevkit history
362
362
  ```
363
363
 
364
364
  ```python
@@ -395,10 +395,13 @@ Snapshot a wallet's complete state and activity on Arc, with AI commentary.
395
395
 
396
396
  ```bash
397
397
  # Analyze a single wallet
398
- arc portfolio analyze 0xYourWalletAddress
398
+ arcdevkit portfolio analyze 0xYourWalletAddress
399
+
400
+ # Show saved balance history
401
+ arcdevkit portfolio history 0xYourWalletAddress
399
402
 
400
403
  # Generate a consolidated report for multiple wallets
401
- arc portfolio report wallets.json
404
+ arcdevkit portfolio report wallets.json
402
405
  ```
403
406
 
404
407
  ```python
@@ -593,54 +596,77 @@ The `docker-compose.yml` mounts your `.env` and runs the API on port 8000 with a
593
596
 
594
597
  ## CLI Reference
595
598
 
596
- Arc DevKit provides two CLI entry points:
599
+ The primary entry point is `arcdevkit`, with commands grouped by domain.
597
600
 
598
- | Command | Entry Point |
599
- |---|---|
600
- | `arc` | Flat, friendly commands for day-to-day use |
601
- | `arcdevkit` | Grouped subcommand style |
601
+ ### Setup
602
+
603
+ ```bash
604
+ arcdevkit init # interactive .env wizard
605
+ arcdevkit status # check testnet connection + block info
606
+ ```
607
+
608
+ ### Config — manage `.env`
609
+
610
+ ```bash
611
+ arcdevkit config list # show all variables
612
+ arcdevkit config get ANTHROPIC_API_KEY # read a specific variable
613
+ arcdevkit config set ARC_RPC_URL https://...# write a variable
614
+ ```
615
+
616
+ ### Copilot — AI assistant
602
617
 
603
- ### `arc` — quick commands
618
+ ```bash
619
+ arcdevkit copilot ask "What is Malachite consensus?"
620
+ arcdevkit copilot ask "Write a USDC vault" --stream # token-by-token streaming
621
+ arcdevkit copilot ask "..." --json # output as JSON
622
+ ```
623
+
624
+ ### Agent — wallet & payments
604
625
 
605
626
  ```bash
606
- # Setup
607
- arc init # guided .env wizard
608
- arc status # testnet connection + block info
609
- arc config list # show all env vars
610
- arc config get ANTHROPIC_API_KEY # read a specific var
611
- arc config set ARC_RPC_URL https://... # write a var
627
+ arcdevkit agent create-wallet # generate new EVM wallet
628
+ arcdevkit agent balance 0xAddress... # check wallet balance
629
+ arcdevkit agent status # network info (block, chain ID, gas)
630
+ arcdevkit agent pay 0xDest... 5.0 # sign-only (safe default)
631
+ arcdevkit agent pay 0xDest... 5.0 --send # sign and broadcast
632
+ arcdevkit agent pay 0xDest... 5.0 --send --key 0xPrivKey...
633
+ arcdevkit agent monitor 0xWallet... # watch balance changes
634
+ arcdevkit agent monitor 0xWallet... --interval 5 --max 50
635
+ ```
612
636
 
613
- # Wallet
614
- arc wallet create # generate new wallet
615
- arc wallet balance --address 0x... # check balance
637
+ ### Debug — transaction analysis
616
638
 
617
- # AI Copilot
618
- arc ask "What is Malachite consensus?"
619
- arc ask --stream "Write a USDC vault"
620
- arc ask --json "..." # output as JSON
639
+ ```bash
640
+ arcdevkit debug tx 0xHash... # analyze a transaction with AI
641
+ arcdevkit debug tx 0xHash... --json
642
+ arcdevkit debug estimate 0xDest... 10.0 # estimate gas cost
643
+ arcdevkit debug estimate 0xDest... 10.0 --from 0xSender...
644
+ arcdevkit debug batch hashes.txt # analyze multiple txs from a file
645
+ arcdevkit debug batch hashes.txt --abi MyContract.json
646
+ ```
621
647
 
622
- # Transaction debugging
623
- arc debug tx 0xHash
624
- arc debug tx 0xHash --abi Contract.json
625
- arc history # list recent debug sessions
648
+ ### Portfolio — wallet analytics
626
649
 
627
- # Portfolio
628
- arc portfolio analyze 0xWallet
629
- arc portfolio report wallets.json
650
+ ```bash
651
+ arcdevkit portfolio analyze 0xWallet... # balances, txs, AI insights
652
+ arcdevkit portfolio analyze 0xWallet... --no-ai --blocks 500
653
+ arcdevkit portfolio history 0xWallet... # saved balance snapshots
654
+ arcdevkit portfolio report wallets.json # consolidated multi-wallet report
655
+ ```
656
+
657
+ ### Codegen — script generation
630
658
 
631
- # Flags (work on every command)
632
- arc --json <cmd> # machine-readable JSON output
633
- arc -v <cmd> # verbose (DEBUG logging)
659
+ ```bash
660
+ arcdevkit codegen "monitor a wallet and alert when balance drops"
661
+ arcdevkit codegen "deploy an ERC-20 with a mint function" --out ./scripts
662
+ arcdevkit codegen "..." --no-save # print only, don't save to disk
634
663
  ```
635
664
 
636
- ### `arcdevkit`grouped style
665
+ ### Historyoperation log
637
666
 
638
667
  ```bash
639
- arcdevkit status
640
- arcdevkit copilot ask "..."
641
- arcdevkit agent wallet create
642
- arcdevkit agent pay --to 0x... --amount 10
643
- arcdevkit debug tx 0xHash
668
+ arcdevkit history # last 10 CLI operations
669
+ arcdevkit history --limit 25 --json
644
670
  ```
645
671
 
646
672
  ---
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "arc-devkit"
7
- version = "0.4.3"
7
+ version = "0.4.4"
8
8
  description = "Plataforma open source de ferramentas para desenvolvedores da Arc blockchain (Circle)"
9
9
  readme = "README.md"
10
10
  license = "MIT"
File without changes
File without changes
File without changes