Skip to content

feat: axon list with pagination and api-client upgrade#184

Merged
alb-rl merged 7 commits intomainfrom
cursor/rl-cli-active-axons-pagination-7248
Apr 2, 2026
Merged

feat: axon list with pagination and api-client upgrade#184
alb-rl merged 7 commits intomainfrom
cursor/rl-cli-active-axons-pagination-7248

Conversation

@alb-rl
Copy link
Copy Markdown
Contributor

@alb-rl alb-rl commented Mar 27, 2026

Summary

Adds CLI support for listing active axons with cursor-style pagination (limit, starting_after, has_more), matching the updated backend contract.

Changes

  • Dependency: Bump @runloop/api-client to 1.14.1 (includes client.axons and other API updates).
  • Devbox tunnel: Replace removed createTunnel with enableTunnel and construct the V2 tunnel URL from tunnel_key and port (required for the upgraded client to compile).
  • New command: rli axon list with --limit, --starting-after, and -o/--output (text default; json/yaml supported). Default --limit 0 means fetch all pages when not using --starting-after.
  • Service: listActiveAxons passes query params via request query and reads optional has_more from the JSON response (forward-compatible until the published client types catch up).
  • Docs: README command section updated via docs:commands.

Usage

rli axon list
rli axon list --limit 50
rli axon list --starting-after <last_axon_id> --limit 100
rli axon list -o json

Testing

  • pnpm run build — pass
  • pnpm test — unit/router tests pass; e2e fails without a valid RUNLOOP_API_KEY (pre-existing environment constraint)

Slack Thread

Open in Web Open in Cursor 

Migrate devbox tunnel creation from removed createTunnel to enableTunnel
and build the V2 tunnel URL from tunnel_key and port.
Add axonService and rli axon list with --limit and --starting-after,
following the paginated GET /v1/axons contract (has_more + starting_after).
@alb-rl alb-rl requested a review from dines-rl April 1, 2026 23:56
@alb-rl alb-rl marked this pull request as ready for review April 2, 2026 00:00
- Reuse formatTimeAgo from ResourceListView like other list commands
- Inline multi-page fetch loop; drop fetchAllAxons helper
- Centralize tunnel hostname and URL pattern in utils/url (dev vs prod)
@alb-rl alb-rl requested a review from dines-rl April 2, 2026 00:08
- Mock useViewportHeight with a stable factory (restoreMocks cleared jest.fn impls,
  leaving PAGE_SIZE undefined so fetches never ran)
- Replace fixed 50ms delays with waitForFrame polling up to 10s
- Apply same viewport mock pattern in setup.ts and setup-router.ts
- Align axon list with cursor page type and pass AxonListParams to list()
- Skip benchmark outcome rows with missing scenario_run_id for Map keys
@alb-rl alb-rl merged commit dc9743e into main Apr 2, 2026
14 checks passed
@alb-rl alb-rl deleted the cursor/rl-cli-active-axons-pagination-7248 branch April 2, 2026 02:55
tode-rl pushed a commit that referenced this pull request Apr 3, 2026
🤖 I have created a release *beep* *boop*
---


##
[1.15.0](v1.14.0...v1.15.0)
(2026-04-03)


### Features

* axon list with pagination and api-client upgrade
([#184](#184))
([dc9743e](dc9743e))
* **cli:** add some (hidden) agent handling commands
([#187](#187))
([1a92f5f](1a92f5f))


### Bug Fixes

* clean stdout for --config-only when appending SSH config
([#192](#192))
([4428295](4428295))
* **cli:** account for pending scenarios in rli display
([#185](#185))
([c82d528](c82d528))
* widen VERSION column in agent list to prevent truncation
([#190](#190))
([c7eba09](c7eba09))


### Performance Improvements

* fetch total count in the background, not foreground
([#189](#189))
([0903d89](0903d89))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants