agentpool-cli 0.1.0__py3-none-any.whl

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 (60) hide show
  1. agentpool/__init__.py +3 -0
  2. agentpool/agent_io.py +134 -0
  3. agentpool/artifacts.py +151 -0
  4. agentpool/cli.py +1199 -0
  5. agentpool/config.py +373 -0
  6. agentpool/docs/agentpool-skill.md +85 -0
  7. agentpool/docs/onboarding.md +169 -0
  8. agentpool/event_detection.py +150 -0
  9. agentpool/fixtures/__init__.py +1 -0
  10. agentpool/fixtures/fake_agents/__init__.py +1 -0
  11. agentpool/fixtures/fake_agents/fake_approval_agent.py +16 -0
  12. agentpool/fixtures/fake_agents/fake_common.py +44 -0
  13. agentpool/fixtures/fake_agents/fake_completed_agent.py +13 -0
  14. agentpool/fixtures/fake_agents/fake_idle_agent.py +16 -0
  15. agentpool/fixtures/fake_agents/fake_limit_agent.py +14 -0
  16. agentpool/fixtures/fake_agents/fake_patch_agent.py +17 -0
  17. agentpool/fixtures/fake_agents/fake_question_agent.py +16 -0
  18. agentpool/git_worktree.py +144 -0
  19. agentpool/mcp/__init__.py +1 -0
  20. agentpool/mcp/resources.py +64 -0
  21. agentpool/mcp/tools.py +259 -0
  22. agentpool/mcp_server.py +487 -0
  23. agentpool/models.py +310 -0
  24. agentpool/onboarding.py +1279 -0
  25. agentpool/policy.py +63 -0
  26. agentpool/provider_model_catalog.json +997 -0
  27. agentpool/providers/__init__.py +3 -0
  28. agentpool/providers/base.py +411 -0
  29. agentpool/providers/registry.py +139 -0
  30. agentpool/redaction.py +30 -0
  31. agentpool/runtimes/__init__.py +3 -0
  32. agentpool/runtimes/base.py +36 -0
  33. agentpool/runtimes/tmux.py +133 -0
  34. agentpool/session_manager.py +1061 -0
  35. agentpool/stats/__init__.py +6 -0
  36. agentpool/stats/card.py +74 -0
  37. agentpool/stats/compute.py +496 -0
  38. agentpool/stats/queries.py +138 -0
  39. agentpool/stats/render.py +103 -0
  40. agentpool/stats/window.py +85 -0
  41. agentpool/store.py +478 -0
  42. agentpool/usage/__init__.py +1 -0
  43. agentpool/usage/_common.py +223 -0
  44. agentpool/usage/ccusage.py +130 -0
  45. agentpool/usage/claude.py +23 -0
  46. agentpool/usage/codex.py +210 -0
  47. agentpool/usage/codexbar.py +186 -0
  48. agentpool/usage/combine.py +71 -0
  49. agentpool/usage/copilot.py +146 -0
  50. agentpool/usage/devin.py +265 -0
  51. agentpool/usage/parsers.py +41 -0
  52. agentpool/usage/probes.py +52 -0
  53. agentpool/usage/provider_parsers.py +276 -0
  54. agentpool/usage/summary.py +166 -0
  55. agentpool/utils.py +59 -0
  56. agentpool_cli-0.1.0.dist-info/METADATA +292 -0
  57. agentpool_cli-0.1.0.dist-info/RECORD +60 -0
  58. agentpool_cli-0.1.0.dist-info/WHEEL +4 -0
  59. agentpool_cli-0.1.0.dist-info/entry_points.txt +2 -0
  60. agentpool_cli-0.1.0.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,292 @@
1
+ Metadata-Version: 2.4
2
+ Name: agentpool-cli
3
+ Version: 0.1.0
4
+ Summary: Local MCP-exposed control plane for live coding-agent sessions.
5
+ Author: AgentPool contributors
6
+ License-Expression: MIT
7
+ License-File: LICENSE
8
+ Requires-Python: >=3.11
9
+ Requires-Dist: mcp<2,>=1.27
10
+ Requires-Dist: pydantic>=2
11
+ Requires-Dist: pyyaml>=6
12
+ Requires-Dist: rich>=13
13
+ Requires-Dist: typer>=0.12
14
+ Provides-Extra: card
15
+ Requires-Dist: pillow>=10; extra == 'card'
16
+ Provides-Extra: dev
17
+ Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
18
+ Requires-Dist: pytest>=8; extra == 'dev'
19
+ Description-Content-Type: text/markdown
20
+
21
+ # AgentPool
22
+
23
+ <!-- mcp-name: io.github.sidduhere/agentpool -->
24
+
25
+ AgentPool is a local Python CLI and MCP server for explicitly controlling coding-agent CLIs as worker sessions.
26
+
27
+ It is a control plane, not an auto-router. AgentPool exposes live provider, model,
28
+ session, artifact, lease, and best-effort usage/capacity state. The primary
29
+ agent or human still chooses the provider and model explicitly.
30
+
31
+ The v0.1 alpha posture is conservative:
32
+
33
+ - tmux is the required runtime.
34
+ - Provider selection is explicit; `provider=auto` is rejected.
35
+ - Usage/capacity summaries are confidence-tagged and keyed by provider id.
36
+ - CodexBar and ccusage are optional usage helpers when installed or configured.
37
+ - AgentPool does not store provider credentials, scrape browser usage pages,
38
+ rank models, merge code, or push code.
39
+
40
+ ## Requirements
41
+
42
+ - Python 3.11 or newer.
43
+ - tmux on `PATH`.
44
+ - Git for worktree isolation and diff collection.
45
+ - macOS or Linux. Windows is not a v0.1 target except through WSL-like shells.
46
+
47
+ ## Install
48
+
49
+ AgentPool publishes to PyPI as `agentpool-cli`; the installed command is
50
+ `agentpool`.
51
+
52
+ ```bash
53
+ uv tool install agentpool-cli # recommended
54
+ pipx install agentpool-cli # fallback
55
+ uvx agentpool-cli --help # zero-install try
56
+ ```
57
+
58
+ Then:
59
+
60
+ ```bash
61
+ agentpool setup codex
62
+ agentpool doctor --deep --privacy
63
+ ```
64
+
65
+ The `agentpool-cli` package installs on macOS, Linux, and Windows, but the
66
+ runtime requires `tmux`, so the supported runtime is macOS or Linux (Windows
67
+ via WSL).
68
+
69
+ Install from source:
70
+
71
+ ```bash
72
+ git clone https://github.com/sidduHERE/agentpool.git
73
+ cd agentpool
74
+ uv tool install --force .
75
+ ```
76
+
77
+ Or run from a development checkout:
78
+
79
+ ```bash
80
+ uv venv
81
+ uv pip install -e ".[dev]"
82
+ ```
83
+
84
+ A GitHub release install (wheel pinned to a tag, no PyPI required) is also
85
+ supported:
86
+
87
+ ```bash
88
+ scripts/install.sh latest
89
+ ```
90
+
91
+ See [docs/install.md](docs/install.md) for first-run, upgrade, and MCP setup
92
+ notes.
93
+
94
+ ## Quickstart
95
+
96
+ ```bash
97
+ agentpool init
98
+ agentpool setup cursor
99
+ agentpool config validate
100
+ agentpool doctor --deep --privacy
101
+ agentpool setup all
102
+ agentpool smoke --provider fake-question --repo . --json
103
+ agentpool inventory --json
104
+ ```
105
+
106
+ Start an explicitly selected read-only worker:
107
+
108
+ ```bash
109
+ agentpool spawn \
110
+ --provider <provider-id> \
111
+ --repo . \
112
+ --task "Inspect the project and ask one clarifying question." \
113
+ --isolation read_only
114
+
115
+ agentpool observe <session-id> --wait-for completed,error,question,approval_prompt --timeout 120 --json
116
+ agentpool send <session-id> "Continue with the smallest useful check."
117
+ agentpool artifacts <session-id> --json
118
+ agentpool transcript <session-id> --tail-lines 80 --json
119
+ agentpool sessions --recent 10 --json
120
+ agentpool collect <session-id> --json
121
+ agentpool terminate <session-id> --json
122
+ ```
123
+
124
+ `spawn` defaults `--initial-prompt-mode` to `provider_default`. For Codex CLI
125
+ this resolves to `arg`, which passes the first task as the Codex prompt argument
126
+ instead of relying on a paste-and-submit startup cycle. Codex workers also
127
+ accept process-local overrides such as `--reasoning-effort high` and
128
+ `--service-tier fast`; AgentPool does not edit your Codex config.
129
+
130
+ For AgentPool-created edit isolation, choose worktrees explicitly:
131
+
132
+ ```bash
133
+ agentpool spawn \
134
+ --provider <provider-id> \
135
+ --repo . \
136
+ --task "Make the small patch." \
137
+ --role implementer \
138
+ --isolation worktree
139
+
140
+ agentpool worktrees list --repo .
141
+ agentpool worktrees cleanup --session-id <session-id>
142
+ ```
143
+
144
+ Worktree isolation is not forced by default. Users often have their own
145
+ worktree setup and cleanup rules, so AgentPool only creates a worktree when
146
+ requested through `--isolation worktree` or policy configuration.
147
+
148
+ ## Usage And Capacity
149
+
150
+ ```bash
151
+ agentpool usage-summary --refresh --json
152
+ agentpool stats --since 7d --json
153
+ agentpool usage-summary --refresh --backend codexbar --json
154
+ agentpool usage-summary --refresh --backend ccusage --provider claude-code --json
155
+ ```
156
+
157
+ `usage-summary` returns a `providers` object keyed by provider id. It is not
158
+ ordered and it is not a recommendation list. Each row includes `usable`,
159
+ `unusable_reason`, quota windows, confidence, staleness, and reset timing when
160
+ the provider exposes it. The older CLI `capacity-summary` command is retained
161
+ as a human convenience alias; the MCP surface only exposes `get_usage_snapshot`
162
+ and the opt-in `get_usage_summary` tool.
163
+
164
+ The default buffer is `policy.min_remaining_percent = 10`. If any reported
165
+ quota window is below that buffer, the provider row is marked unusable for the
166
+ summary. AgentPool still does not pick an alternative provider for you.
167
+
168
+ ## Provider Matrix
169
+
170
+ | Provider id | Command | Usage status in v0.1 | Model pinning |
171
+ | --- | --- | --- | --- |
172
+ | `codex-cli` | `codex` | native local app-server rate-limit probe; CodexBar optional | `--model` |
173
+ | `cursor-cli` | `agent` or `cursor-agent` | optional CodexBar Cursor usage; native CLI usage is interactive `/usage` only | `--model` + read-only `--mode ask` |
174
+ | `claude-code` | `claude` | temporary `/usage` probe; ccusage telemetry optional | `--model` |
175
+ | `devin-cli` | `devin` | Devin/Windsurf plan-status API from existing CLI auth, with `/usage` fallback | `--model` |
176
+ | `copilot-cli` | `gh copilot` | GitHub Copilot usage API from env or `gh auth token` | forwarded `--model` |
177
+ | `droid-cli` | `droid` | unknown unless surfaced by future safe probe | process-local settings file |
178
+ | `opencode` | `opencode` | configured adapter; usage unknown in this alpha | catalog-driven |
179
+
180
+ Compatibility note: the PRD calls Factory's coding product `factory-droid`, but
181
+ AgentPool exposes it as `droid-cli` because the installed command is `droid`.
182
+ Do not add a duplicate `factory-droid` inventory row unless a distinct harness
183
+ appears.
184
+
185
+ ## Privacy Posture
186
+
187
+ AgentPool is local-first, but usage probes can still be sensitive because they
188
+ read existing CLI auth state and may call provider APIs on explicit refresh.
189
+
190
+ AgentPool does not:
191
+
192
+ - store provider credentials;
193
+ - read browser cookies by default;
194
+ - scrape browser dashboards;
195
+ - trigger login flows;
196
+ - silently accept paid overage.
197
+
198
+ AgentPool does store:
199
+
200
+ - SQLite session, event, usage snapshot, artifact, and lease metadata;
201
+ - transcript and artifact files under `~/.agentpool/artifacts` by default;
202
+ - generated runtime settings that are not credentials.
203
+
204
+ Run:
205
+
206
+ ```bash
207
+ agentpool doctor --privacy --json
208
+ ```
209
+
210
+ See [SECURITY.md](SECURITY.md) and
211
+ [docs/usage-detection.md](docs/usage-detection.md).
212
+
213
+ ## MCP
214
+
215
+ Start the MCP server:
216
+
217
+ ```bash
218
+ agentpool mcp
219
+ agentpool mcp --toolsets default,stats
220
+ AGENTPOOL_MCP_LOCKDOWN=1 agentpool mcp
221
+ ```
222
+
223
+ Example host config:
224
+
225
+ ```bash
226
+ agentpool mcp-config --client generic
227
+ ```
228
+
229
+ ```json
230
+ {
231
+ "mcpServers": {
232
+ "agentpool": {
233
+ "command": "agentpool",
234
+ "args": ["mcp"]
235
+ }
236
+ }
237
+ }
238
+ ```
239
+
240
+ Verified install helpers (deeplink or one-liner shell command):
241
+
242
+ ```bash
243
+ agentpool mcp-config --client cursor --absolute-command --install
244
+ agentpool mcp-config --client claude-code --absolute-command --install
245
+ agentpool mcp-config --client codex --absolute-command --install
246
+ agentpool mcp-config --client copilot-cli --absolute-command --install
247
+ ```
248
+
249
+ Raw config generators:
250
+
251
+ ```bash
252
+ agentpool mcp-config --client claude-code --json
253
+ agentpool mcp-config --client codex
254
+ agentpool mcp-config --client cursor
255
+ agentpool mcp-config --client claude-desktop --json
256
+ ```
257
+
258
+ Use `--absolute-command` if the MCP host does not inherit your shell `PATH`.
259
+ Verified per-host steps live in [docs/mcp-clients.md](docs/mcp-clients.md).
260
+ Team templates: [.cursor/mcp.json.example](.cursor/mcp.json.example),
261
+ [.mcp.json.example](.mcp.json.example), and [docs/examples/README.md](docs/examples/README.md).
262
+ MCP Registry draft metadata: [server.json](server.json). It intentionally omits
263
+ package entries until `agentpool-cli` exists on PyPI. Release checklist:
264
+ [docs/release.md](docs/release.md).
265
+ Provider setup guides:
266
+ [Cursor](docs/setup-cursor.md),
267
+ [Cursor Agent CLI](docs/setup-cursor-cli.md),
268
+ [Codex](docs/setup-codex.md),
269
+ [Claude Code](docs/setup-claude-code.md),
270
+ [Copilot](docs/setup-copilot.md),
271
+ [Droid](docs/setup-droid.md), and
272
+ [Devin](docs/setup-devin.md).
273
+
274
+ MCP-connected agents should read these once on connect:
275
+
276
+ - `agentpool://onboarding`
277
+ - `agentpool://skill.md`
278
+
279
+ Then use tools for live operations. The default MCP toolset is deliberately
280
+ small: inventory, usage snapshot, provider models, spawn, observe, send,
281
+ interrupt, collect, artifact manifest, transcript paging, and terminate. Add
282
+ opt-in toolsets with `agentpool mcp --toolsets default,stats,sessions,leases,worktrees`.
283
+
284
+ Coding agents with shell access should prefer the CLI path. It is more
285
+ token-efficient because large worker output stays in artifact files and
286
+ `observe`/`collect` return compact manifests by default. MCP remains first-class
287
+ for MCP-native hosts and no-shell environments. See
288
+ [docs/agent-cli-and-mcp.md](docs/agent-cli-and-mcp.md).
289
+
290
+ ## Development Checks
291
+
292
+ Development and CI checks are documented in [CONTRIBUTING.md](CONTRIBUTING.md).
@@ -0,0 +1,60 @@
1
+ agentpool/__init__.py,sha256=5WG9f-hE7frK7VQqjclM0SJy40Oq22W_FHCH_LMj_SE,66
2
+ agentpool/agent_io.py,sha256=iwpdIAe8j_-vpZbaEghsGwR-w4ZbscaQztwbSZTDbl4,4512
3
+ agentpool/artifacts.py,sha256=7jnPRWOgh-1IVfyJQBDicTEAH4uLWZGd1zPSgQnd4bo,5933
4
+ agentpool/cli.py,sha256=Bv8Kjpibaswc_MiplozB34tLXkv8PgxXhAKtNMlFnJU,46781
5
+ agentpool/config.py,sha256=2YD82HzWVqqldTs14OaW--PS09rILex4-Q9Tuv0EJVs,15427
6
+ agentpool/event_detection.py,sha256=lB_hW-9D1C0SU6CE-_5GnZi4X1KzBlaLshDtCYk9SNM,5472
7
+ agentpool/git_worktree.py,sha256=5ZDN7vb_AhTW1EnmBFsF36T8LxjYRR5Q0rCxdfGDa9Y,5195
8
+ agentpool/mcp_server.py,sha256=KYuBPrcg5uyOx0x3dHaFeXRbIaGDnvJEQuHAFLSQB3Y,20468
9
+ agentpool/models.py,sha256=X2qemGScKq8e_7shQg2WJSbmTR0nMQPiGaM0S0BrB5U,9222
10
+ agentpool/onboarding.py,sha256=wxWocczyvyvNDHq5lqYMp3ZcT17zX_17qrLPjBX69hE,50805
11
+ agentpool/policy.py,sha256=LtiZ7crL4kqJR1I86Hc47RjX7CzCCllKa4U2rZkumDk,2492
12
+ agentpool/provider_model_catalog.json,sha256=Ih7BP09JIkVAIYhN6ytyAgQWRDfXd47wx1khZcAdcVo,25151
13
+ agentpool/redaction.py,sha256=MSFzhrJkYwKTWuJge_af18AOKE7hTR7sj662JWrubGQ,1360
14
+ agentpool/session_manager.py,sha256=ZvD8-ew37IMFxVGQdxfCHRtJrvwokuyPN58gYBnZV3s,45988
15
+ agentpool/store.py,sha256=7JN5NW7Vo4B3xamM8sTQJ3KMV1CMwivBu9APi16IbyM,17440
16
+ agentpool/utils.py,sha256=d84IqAKcOn4qQpN1PaLm0Y4Yl2ClWNGxOp-BYjjvEr4,1671
17
+ agentpool/fixtures/__init__.py,sha256=6I_ogEO1X_VPElwInR8CCoY6QQFsQWlZvPkvEg3IVr0,55
18
+ agentpool/fixtures/fake_agents/__init__.py,sha256=XyLNrIe4iPkDnvsMuy-ciKVnNa2MScTY_W2EEzMSZt4,67
19
+ agentpool/fixtures/fake_agents/fake_approval_agent.py,sha256=aXFoumcWVizuooZGkh20bgQ42ePozJR_36Wa1YLTdUU,356
20
+ agentpool/fixtures/fake_agents/fake_common.py,sha256=UN3AenYOKPS4APYFur3cIOOJS7JYWd7g33EY22CVEgI,1001
21
+ agentpool/fixtures/fake_agents/fake_completed_agent.py,sha256=dr5_UbhDmgnjt3G4BxzTC5FB5ZqGWex-SRzUIZkIexg,266
22
+ agentpool/fixtures/fake_agents/fake_idle_agent.py,sha256=YS72OanxGveZveeeAZKE1lmvaTZIwp9d5C6tE5my5WM,260
23
+ agentpool/fixtures/fake_agents/fake_limit_agent.py,sha256=Ju1riY-nJ1HoUF4vuKdU4qYbWcmmaGSrLrlzrge99FI,314
24
+ agentpool/fixtures/fake_agents/fake_patch_agent.py,sha256=Xxd-CysGX8IlHNrNT8ejA5W7bh8wyDzNqV_FtDpXUR8,425
25
+ agentpool/fixtures/fake_agents/fake_question_agent.py,sha256=Pz_Ju-zu4BlAJtlNI5TF4pTnnmS0azErVO9ae38BLLg,440
26
+ agentpool/mcp/__init__.py,sha256=hOkLtiNCELJe6do0Ravo5bMQZiAL248KCq-npEuQD7o,33
27
+ agentpool/mcp/resources.py,sha256=Bx9_BoqQYT7-gEZiNQeDr-BuWPSlbexVQyFYkLHquDU,2571
28
+ agentpool/mcp/tools.py,sha256=w2Nhp7WSmcQ9g5Tj89GiQpumXKnfwFEikYFB4KMDX1c,8234
29
+ agentpool/providers/__init__.py,sha256=EEgO9tiQaC5hGxalc_X9M-9crDWkqXz_yrNMcK6PzLA,124
30
+ agentpool/providers/base.py,sha256=KafQihIAqZTmvjafhu7M0yn0FSbPDdIeQhXgDs3_P_U,15077
31
+ agentpool/providers/registry.py,sha256=4Krp39MkMrGU4PCZ93-QrogQ81vjoEANI59I4faDYHs,5235
32
+ agentpool/runtimes/__init__.py,sha256=AuwAxrR5juwO8qkRHGi_EYCIUB9EyyIgD30XWvD9sGs,75
33
+ agentpool/runtimes/base.py,sha256=RjJnEChmMrV2OBvBc9EAVAl-T_ROPwnsMh4uZzQcR-4,871
34
+ agentpool/runtimes/tmux.py,sha256=TCXLatnMo21kYr2olMHTxtz3y669vW0QESnnI6dq4aI,4671
35
+ agentpool/stats/__init__.py,sha256=ZMNqlytG0cJYPQe8meukx2AoBP4s2QA0aL4kOWH5Ico,220
36
+ agentpool/stats/card.py,sha256=gg_7oRir_JFzSWQpnvHkzsypUNUl0F1FiAGfVDVAU00,2673
37
+ agentpool/stats/compute.py,sha256=t3fzpn4sZFLjNqRs5TlOEZX5mbwEX6zwPnY0oB41cWQ,17225
38
+ agentpool/stats/queries.py,sha256=wILrH6o9T5b7tXpmz11EH01s4JrmH2QP1kCnLAzEYDc,4849
39
+ agentpool/stats/render.py,sha256=U2-yV0bXnjD_3KEuNQbsyLSyBl7t6oghdWolQpPSo18,3777
40
+ agentpool/stats/window.py,sha256=WjMMzhy488SvpJebVMK4teg8Nqt0zR3TpeNdcHrswm8,2823
41
+ agentpool/usage/__init__.py,sha256=sjEwKbbywxlvYREnDaejDfUZu-TWQw6-i8IcGT31c4M,30
42
+ agentpool/usage/_common.py,sha256=TQOhRj90raLFG9KM6hlZMlpMt3QllZVRiGQU5ZY2sxs,7420
43
+ agentpool/usage/ccusage.py,sha256=83n2xHvHB_5sNQhfI1_Od4qVPqWuGl7nwv-L_GvVVaE,5104
44
+ agentpool/usage/claude.py,sha256=05i6WesSBfmZCrNLi42dDchCilnxqoeve5JO6035AJY,805
45
+ agentpool/usage/codex.py,sha256=NdG10-Cz27Vu0jsmZXIKF3TUxiLqzLLikEdeJxWZH88,7656
46
+ agentpool/usage/codexbar.py,sha256=gOXOzQG7IjJWHK_aZg1BZScGXMWJ9-LHwgOgrUlfFIY,6676
47
+ agentpool/usage/combine.py,sha256=srYsFzYGnmbIT042ARg1QMUMZp1bE5m4bq9XhagwR4U,3237
48
+ agentpool/usage/copilot.py,sha256=oUJk-Uv3YmlAUcSQWT9vPMDpvj0j_IleU6X9_PfSysM,5513
49
+ agentpool/usage/devin.py,sha256=ZPFKLb6JWfN5HFNplsDJMoQHdBym-A-qqp8tCrv6E20,10751
50
+ agentpool/usage/parsers.py,sha256=Sw3ea5REW6dWoJuFtricog-kTmMrDpLpIPf02IYRUsU,1391
51
+ agentpool/usage/probes.py,sha256=ws1mBUSjfbdy2CoxUOn8236MFmuFaKEZLb4GmkqpvFk,1707
52
+ agentpool/usage/provider_parsers.py,sha256=94_g4YfnT9HdwpR58xceCurV2S1jSt85-a5MZXnj_NQ,10523
53
+ agentpool/usage/summary.py,sha256=jBon09R8cxBZZ98RAaSIr3Ex2lGTbxnDJLqfOHNPVJo,7164
54
+ agentpool/docs/agentpool-skill.md,sha256=QnOZudAklb274zIid2BX1YyvtQ5B57Y-JnsXfmx403Y,3779
55
+ agentpool/docs/onboarding.md,sha256=hyPi3D0Dq1dbLXp4zOeYWZSDp3nY2rVOC1Guu8NTBJ8,5374
56
+ agentpool_cli-0.1.0.dist-info/METADATA,sha256=-tLmYNx8wNZs_9pXoGA_9pkd-4qqFksmIuGaYTYiFIM,9523
57
+ agentpool_cli-0.1.0.dist-info/WHEEL,sha256=QccIxa26bgl1E6uMy58deGWi-0aeIkkangHcxk2kWfw,87
58
+ agentpool_cli-0.1.0.dist-info/entry_points.txt,sha256=9hCreP_0QfS0kDjC0EOWtmiLJhM5DabwjMd4_spgz40,48
59
+ agentpool_cli-0.1.0.dist-info/licenses/LICENSE,sha256=IeRCTpTJE5smTxSJ2Z59iCGmhxQsyO7tlpa3oIqdyyM,1079
60
+ agentpool_cli-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.29.0
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ agentpool = agentpool.cli:app
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 AgentPool contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.