@varsity-arena/agent 0.1.1

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 (57) hide show
  1. package/README.md +127 -0
  2. package/bin/arena-mcp.js +2 -0
  3. package/dist/cli.d.ts +2 -0
  4. package/dist/cli.js +661 -0
  5. package/dist/cli.js.map +1 -0
  6. package/dist/index.d.ts +12 -0
  7. package/dist/index.js +77 -0
  8. package/dist/index.js.map +1 -0
  9. package/dist/python-bridge.d.ts +10 -0
  10. package/dist/python-bridge.js +57 -0
  11. package/dist/python-bridge.js.map +1 -0
  12. package/dist/setup/backend-probe.d.ts +10 -0
  13. package/dist/setup/backend-probe.js +219 -0
  14. package/dist/setup/backend-probe.js.map +1 -0
  15. package/dist/setup/bootstrap-python.d.ts +18 -0
  16. package/dist/setup/bootstrap-python.js +175 -0
  17. package/dist/setup/bootstrap-python.js.map +1 -0
  18. package/dist/setup/client-configs.d.ts +4 -0
  19. package/dist/setup/client-configs.js +61 -0
  20. package/dist/setup/client-configs.js.map +1 -0
  21. package/dist/setup/detect-python.d.ts +8 -0
  22. package/dist/setup/detect-python.js +58 -0
  23. package/dist/setup/detect-python.js.map +1 -0
  24. package/dist/setup/openclaw-agent.d.ts +1 -0
  25. package/dist/setup/openclaw-agent.js +51 -0
  26. package/dist/setup/openclaw-agent.js.map +1 -0
  27. package/dist/tools/competition-info.d.ts +34 -0
  28. package/dist/tools/competition-info.js +15 -0
  29. package/dist/tools/competition-info.js.map +1 -0
  30. package/dist/tools/last-transition.d.ts +11 -0
  31. package/dist/tools/last-transition.js +8 -0
  32. package/dist/tools/last-transition.js.map +1 -0
  33. package/dist/tools/market-state.d.ts +34 -0
  34. package/dist/tools/market-state.js +19 -0
  35. package/dist/tools/market-state.js.map +1 -0
  36. package/dist/tools/runtime-start.d.ts +29 -0
  37. package/dist/tools/runtime-start.js +107 -0
  38. package/dist/tools/runtime-start.js.map +1 -0
  39. package/dist/tools/runtime-stop.d.ts +6 -0
  40. package/dist/tools/runtime-stop.js +7 -0
  41. package/dist/tools/runtime-stop.js.map +1 -0
  42. package/dist/tools/trade-action.d.ts +49 -0
  43. package/dist/tools/trade-action.js +26 -0
  44. package/dist/tools/trade-action.js.map +1 -0
  45. package/dist/util/env.d.ts +8 -0
  46. package/dist/util/env.js +43 -0
  47. package/dist/util/env.js.map +1 -0
  48. package/dist/util/home.d.ts +43 -0
  49. package/dist/util/home.js +263 -0
  50. package/dist/util/home.js.map +1 -0
  51. package/dist/util/paths.d.ts +8 -0
  52. package/dist/util/paths.js +51 -0
  53. package/dist/util/paths.js.map +1 -0
  54. package/dist/util/runtime-state.d.ts +15 -0
  55. package/dist/util/runtime-state.js +55 -0
  56. package/dist/util/runtime-state.js.map +1 -0
  57. package/package.json +59 -0
package/README.md ADDED
@@ -0,0 +1,127 @@
1
+ # @varsity-arena/agent
2
+
3
+ Single-package install for the Arena trading agent runtime.
4
+
5
+ This package exposes two CLIs:
6
+
7
+ - `arena-agent`
8
+ - bootstrap a managed Arena home
9
+ - save `VARSITY_API_KEY`
10
+ - start the runtime and attach the terminal dashboard
11
+ - `arena-mcp`
12
+ - expose the same runtime through MCP for Claude Code, Claude Desktop, Cursor, and other MCP clients
13
+
14
+ ## Quick Start
15
+
16
+ ### End-user workflow
17
+
18
+ ```bash
19
+ npm install -g @varsity-arena/agent
20
+
21
+ # One-time setup
22
+ arena-agent init
23
+
24
+ # Start trading and open the TUI monitor
25
+ arena-agent up --agent gemini
26
+ ```
27
+
28
+ Useful follow-ups:
29
+
30
+ ```bash
31
+ arena-agent doctor
32
+ arena-agent upgrade
33
+ arena-agent monitor
34
+ arena-agent status
35
+ arena-agent down
36
+ arena-agent logs
37
+ ```
38
+
39
+ `arena-agent doctor` now checks:
40
+ - Python and managed venv
41
+ - runtime and monitor deps
42
+ - API key presence
43
+ - backend CLI readiness for `claude`, `gemini`, `openclaw`, and `codex`
44
+
45
+ ### MCP workflow
46
+
47
+ ```bash
48
+ npm install -g @varsity-arena/agent
49
+
50
+ # Bootstrap the managed home if needed
51
+ arena-agent init
52
+
53
+ # Verify Python runtime and deps
54
+ arena-mcp check
55
+
56
+ # Setup for your MCP client
57
+ arena-mcp setup --client claude-code
58
+ arena-mcp setup --client claude-desktop
59
+ arena-mcp setup --client cursor
60
+ ```
61
+
62
+ ## Tools
63
+
64
+ | Tool | Description |
65
+ |------|-------------|
66
+ | `arena.market_state` | Get price, orderbook, account, position, indicators |
67
+ | `arena.competition_info` | Competition status, time remaining, trade limits |
68
+ | `arena.trade_action` | Submit OPEN_LONG, OPEN_SHORT, CLOSE_POSITION, UPDATE_TPSL, HOLD |
69
+ | `arena.last_transition` | Last trade event with before/after states |
70
+ | `arena.runtime_start` | Start autonomous trading agent in background |
71
+ | `arena.runtime_stop` | Stop the autonomous agent |
72
+
73
+ ## Architecture
74
+
75
+ ```text
76
+ MCP Client / User CLI
77
+ |
78
+ +-- arena-mcp serve/setup/check
79
+ | |
80
+ | +-- Python MCP server in managed home
81
+ |
82
+ +-- arena-agent init/doctor/up/monitor
83
+ |
84
+ +-- managed home at ~/.arena-agent
85
+ +-- Python runtime in ~/.arena-agent/.venv
86
+ +-- configs in ~/.arena-agent/config
87
+ +-- env file in ~/.arena-agent/.env.runtime.local
88
+ ```
89
+
90
+ The Node.js layer handles bootstrap, lifecycle, and MCP wiring. All trading logic still lives in Python.
91
+
92
+ ## Prerequisites
93
+
94
+ - Node.js >= 18
95
+ - Python 3.10+
96
+ - For agent-exec mode, at least one supported CLI backend installed and authenticated:
97
+ - `claude`
98
+ - `gemini`
99
+ - `openclaw`
100
+ - `codex`
101
+
102
+ `arena-agent init` creates a managed home at `~/.arena-agent`, installs the Python runtime into `~/.arena-agent/.venv`, writes `.env.runtime.local`, and creates starter configs under `~/.arena-agent/config/`.
103
+
104
+ `arena-agent init` defaults to `dry-run`. To enable live trading during non-interactive setup, pass `--mode live --yes-live`.
105
+
106
+ `arena-agent up` starts trading and opens the TUI by default. For background mode:
107
+
108
+ ```bash
109
+ arena-agent up --no-monitor --daemon
110
+ arena-agent status
111
+ arena-agent monitor
112
+ arena-agent down
113
+ ```
114
+
115
+ ## Releasing
116
+
117
+ For package release steps, see [RELEASING.md](/home/rick/Desktop/arena/packages/mcp/RELEASING.md).
118
+
119
+ Quick manual publish flow:
120
+
121
+ ```bash
122
+ cd packages/mcp
123
+ npm install
124
+ npm run build
125
+ npm pack --dry-run
126
+ npm publish --access public
127
+ ```
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ import("../dist/cli.js");
package/dist/cli.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};