Skip to content

Commit a1a8544

Browse files
authored
Merge pull request #92 from vkop007/66-UptimeDevsopToolAdded
feat: add UptimeRobot platform integration with client, adapter, and …
2 parents 6f237a7 + d184782 commit a1a8544

15 files changed

Lines changed: 1979 additions & 7 deletions

File tree

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[![npm version](https://img.shields.io/npm/v/%40vk007%2Fautocli)](https://www.npmjs.com/package/@vk007/autocli)
44
[![license](https://img.shields.io/github/license/vkop007/autocli)](./LICENSE)
5-
[![providers](https://img.shields.io/badge/providers-105-blue)](#category-overview)
5+
[![providers](https://img.shields.io/badge/providers-106-blue)](#category-overview)
66
[![categories](https://img.shields.io/badge/categories-14-6f42c1)](#category-overview)
77

88
AutoCLI is a terminal automation toolkit for developers and AI agents that turns websites, LLMs, developer platforms, editors, and utilities into one reusable CLI.
@@ -18,7 +18,7 @@ What makes AutoCLI especially useful is that it does not stop at API tokens. It
1818

1919
## Why It Matters
2020

21-
- One command surface across `105` providers.
21+
- One command surface across `106` providers.
2222
- Shared browser login means less manual cookie exporting for cookie-backed platforms.
2323
- Sessions and tokens stay local, so follow-up commands are short and automation-friendly.
2424
- Category-based routing stays predictable as the tool grows: `autocli llm ...`, `autocli social ...`, `autocli developer ...`, `autocli devops ...`.
@@ -60,7 +60,7 @@ autocli llm qwen text "Summarize this changelog"
6060
| --- | --- |
6161
| Package | `@vk007/autocli` |
6262
| CLI command | `autocli` |
63-
| Providers | `105` |
63+
| Providers | `106` |
6464
| Categories | `14` |
6565
| npm install | `npm install -g @vk007/autocli` |
6666
| bun install | `bun install -g @vk007/autocli` |
@@ -221,11 +221,11 @@ autocli devops railway capabilities --json
221221
| `social` | Bluesky, Facebook, Instagram, LinkedIn, Mastodon, Pinterest, Reddit, Telegram, Threads, TikTok, WhatsApp, X, YouTube | 13 | none, cookies, or session | Public profile/thread lookup plus cookie-backed posting, Reddit discovery and write automation, federated discovery, MTProto messaging, and QR/session-backed chat control where supported | `autocli social <provider> ...` |
222222
| `shopping` | Amazon, eBay, Etsy, Flipkart | 4 | none or cookies | Product discovery plus account/cart/order surfaces where supported | `autocli shopping <provider> ...` |
223223
| `developer` | Confluence, GitHub, GitLab, Jira, Linear, Notion, Trello | 7 | cookies | Developer and workspace automation | `autocli developer <provider> ...` |
224-
| `devops` | Cloudflare, DigitalOcean, Fly.io, Netlify, Railway, Render, Supabase, Vercel | 8 | api token | Infrastructure, deployment, DNS, platform, and backend automation | `autocli devops <provider> ...` |
224+
| `devops` | Cloudflare, DigitalOcean, Fly.io, Netlify, Railway, Render, Supabase, UptimeRobot, Vercel | 9 | api token | Infrastructure, deployment, DNS, platform, backend, and uptime-monitoring automation | `autocli devops <provider> ...` |
225225
| `bot` | Discord Bot, GitHub Bot, Slack Bot, Telegram Bot | 4 | bot token or app token | Notifications, chat ops, bot messaging | `autocli bot <provider> ...` |
226226
| `tools` | Cheat, DNS, Download, Favicon, Headers, HTTP Toolkit, IP, Markdown Fetch, Metadata, oEmbed, Page Links, QR, Redirect, Robots, RSS, Screenshot, Sitemap, SSL, Time, Timezone, Translate, Uptime, Weather, Web Search, Whois | 25 | none or cookies | Public utilities, cross-site downloads, session-aware request inspection, and zero-setup helpers | `autocli tools <provider> ...` |
227227

228-
AutoCLI currently exposes `105` providers across `14` active command groups.
228+
AutoCLI currently exposes `106` providers across `14` active command groups.
229229

230230
## Access Modes
231231

skills/autocli/references/category-map.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ If the user intent is already concrete, read [recipes.md](recipes.md) first and
1919
| `llm` | prompting and generation | `chatgpt`, `gemini`, `grok`, `mistral`, `perplexity`, `qwen` | `login`, `status`, `text`, `image`, `video` |
2020
| `social` | posting, profile lookup, messaging, public social reads | `x`, `instagram`, `reddit`, `bluesky`, `mastodon`, `telegram`, `whatsapp`, `youtube` | `login`, `me`, `profile`, `posts`, `thread`, `post`, `comment`, `send` |
2121
| `developer` | code hosting, docs, issues, workspace tools | `github`, `gitlab`, `jira`, `linear`, `trello`, `confluence`, `notion` | `login`, `me`, `projects`, `issues`, `page`, `search` |
22-
| `devops` | infrastructure, deploys, DNS, and platform operations | `cloudflare`, `vercel`, `supabase`, `render`, `railway`, `netlify`, `digitalocean`, `fly` | `login`, `me`, `zones`, `projects`, `services`, `apps`, `deployments` |
22+
| `devops` | infrastructure, deploys, DNS, monitoring, and platform operations | `cloudflare`, `vercel`, `supabase`, `render`, `railway`, `netlify`, `digitalocean`, `fly`, `uptimerobot` | `login`, `me`, `zones`, `projects`, `services`, `apps`, `deployments`, `monitors` |
2323
| `editor` | local file and media editing | `image`, `video`, `audio`, `pdf`, `document`, `subtitle`, `gif`, `archive` | `info`, `convert`, `resize`, `split`, `watermark`, `ocr` |
2424
| `data` | structured data cleanup and transformation | `json`, `csv`, `yaml`, `xml`, `html`, `markdown`, `text` | `format`, `query`, `to-json`, `filter`, `text`, `replace` |
2525
| `tools` | public utilities, cross-site downloads, session-aware HTTP inspection, and web helpers | `download`, `http`, `websearch`, `translate`, `page-links`, `favicon`, `headers`, `rss`, `timezone` | `download`, `inspect`, `capture`, `request`, and other lookup-style commands |

skills/autocli/references/providers/index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,7 @@ Use these files when the main `$autocli` skill already knows the provider and ne
114114
- [Railway](./railway.md)
115115
- [Render](./render.md)
116116
- [Supabase](./supabase.md)
117+
- [UptimeRobot](./uptimerobot.md)
117118
- [Vercel](./vercel.md)
118119

119120
## bot
Lines changed: 298 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,298 @@
1+
# UptimeRobot
2+
3+
Generated from the real AutoCLI provider definition and command tree.
4+
5+
- Provider: `uptimerobot`
6+
- Category: `devops`
7+
- Command prefix: `autocli devops uptimerobot`
8+
- Aliases: none
9+
- Auth: `apiKey`
10+
- Stability: `stable`
11+
- Discovery: `supported`
12+
- Mutation: `supported`
13+
- Browser login: `unsupported`
14+
- Browser fallback: `unsupported`
15+
- Async jobs: `unsupported`
16+
17+
## Description
18+
19+
Manage UptimeRobot monitors, incidents, integrations, and uptime stats with an API token
20+
21+
## Notes
22+
23+
- Uses UptimeRobot's official v3 API with bearer-token authentication.
24+
25+
## Fast Start
26+
27+
- `autocli devops uptimerobot login --token $UPTIMEROBOT_API_KEY`
28+
- `autocli devops uptimerobot me`
29+
- `autocli devops uptimerobot monitors --status DOWN`
30+
- `autocli devops uptimerobot capabilities --json`
31+
32+
## Default Command
33+
34+
Usage:
35+
```bash
36+
autocli devops uptimerobot [command]
37+
```
38+
39+
No root-only options.
40+
41+
42+
## Commands
43+
44+
### `login`
45+
46+
Usage:
47+
```bash
48+
autocli devops uptimerobot login [options]
49+
```
50+
51+
Save a UptimeRobot API token for future CLI use
52+
53+
Options:
54+
55+
- `--token <token>`: UptimeRobot API token
56+
- `--account <name>`: Optional saved connection name
57+
58+
### `status`
59+
60+
Usage:
61+
```bash
62+
autocli devops uptimerobot status [options]
63+
```
64+
65+
Check the saved UptimeRobot token
66+
67+
Options:
68+
69+
- `--account <name>`: Optional saved connection name to inspect
70+
71+
### `me`
72+
73+
Usage:
74+
```bash
75+
autocli devops uptimerobot me [options]
76+
```
77+
78+
Aliases: `account`
79+
80+
Show the current UptimeRobot account summary
81+
82+
Options:
83+
84+
- `--account <name>`: Optional saved connection name to use
85+
86+
### `monitors`
87+
88+
Usage:
89+
```bash
90+
autocli devops uptimerobot monitors [options]
91+
```
92+
93+
List monitors with optional filtering
94+
95+
Options:
96+
97+
- `--account <name>`: Optional saved connection name to use
98+
- `--limit <number>`: Maximum monitors to return
99+
- `--group-id <id>`: Filter by monitor group ID
100+
- `--status <statuses>`: Comma-separated statuses such as UP,DOWN,PAUSED
101+
- `--name <text>`: Case-insensitive partial monitor name match
102+
- `--url <text>`: Case-insensitive partial monitor URL match
103+
- `--tags <tags>`: Comma-separated tag names to match
104+
- `--cursor <cursor>`: Pagination cursor
105+
106+
### `monitor`
107+
108+
Usage:
109+
```bash
110+
autocli devops uptimerobot monitor [options] <id>
111+
```
112+
113+
Get full details for a monitor by ID
114+
115+
Options:
116+
117+
- `--account <name>`: Optional saved connection name to use
118+
119+
### `uptime-stats`
120+
121+
Usage:
122+
```bash
123+
autocli devops uptimerobot uptime-stats [options]
124+
```
125+
126+
Get aggregated uptime stats across all monitors
127+
128+
Options:
129+
130+
- `--account <name>`: Optional saved connection name to use
131+
- `--time-frame <frame>`: DAY, WEEK, MONTH, DAYS_30, YEAR, ALL, or CUSTOM
132+
- `--start <unix>`: Custom range start timestamp in Unix seconds
133+
- `--end <unix>`: Custom range end timestamp in Unix seconds
134+
- `--log-limit <number>`: Maximum log entries to return
135+
136+
### `monitor-stats`
137+
138+
Usage:
139+
```bash
140+
autocli devops uptimerobot monitor-stats [options] <id>
141+
```
142+
143+
Aliases: `monitor-uptime`
144+
145+
Get uptime stats for a specific monitor
146+
147+
Options:
148+
149+
- `--account <name>`: Optional saved connection name to use
150+
- `--from <iso>`: Start date in ISO 8601 format
151+
- `--to <iso>`: End date in ISO 8601 format
152+
153+
### `response-times`
154+
155+
Usage:
156+
```bash
157+
autocli devops uptimerobot response-times [options] <id>
158+
```
159+
160+
Aliases: `response-time`
161+
162+
Get response time stats for a specific monitor
163+
164+
Options:
165+
166+
- `--account <name>`: Optional saved connection name to use
167+
- `--from <iso>`: Start date in ISO 8601 format
168+
- `--to <iso>`: End date in ISO 8601 format
169+
- `--time-series`: Include time series points in the response
170+
171+
### `pause`
172+
173+
Usage:
174+
```bash
175+
autocli devops uptimerobot pause [options] <id>
176+
```
177+
178+
Aliases: `stop`
179+
180+
Pause a monitor by ID
181+
182+
Options:
183+
184+
- `--account <name>`: Optional saved connection name to use
185+
186+
### `start`
187+
188+
Usage:
189+
```bash
190+
autocli devops uptimerobot start [options] <id>
191+
```
192+
193+
Aliases: `resume`
194+
195+
Start a paused monitor by ID
196+
197+
Options:
198+
199+
- `--account <name>`: Optional saved connection name to use
200+
201+
### `create-monitor`
202+
203+
Usage:
204+
```bash
205+
autocli devops uptimerobot create-monitor [options]
206+
```
207+
208+
Create a monitor from a JSON request body
209+
210+
Options:
211+
212+
- `--account <name>`: Optional saved connection name to use
213+
- `--body <json>`: JSON body, for example '{"friendlyName":"API","url":"https://example.com","type":"HTTP","interval":300}'
214+
215+
### `update-monitor`
216+
217+
Usage:
218+
```bash
219+
autocli devops uptimerobot update-monitor [options] <id>
220+
```
221+
222+
Update a monitor from a JSON request body
223+
224+
Options:
225+
226+
- `--account <name>`: Optional saved connection name to use
227+
- `--body <json>`: JSON body with the fields to patch, for example '{"friendlyName":"API (5m)","interval":300}'
228+
229+
### `incidents`
230+
231+
Usage:
232+
```bash
233+
autocli devops uptimerobot incidents [options]
234+
```
235+
236+
List incidents with optional filtering
237+
238+
Options:
239+
240+
- `--account <name>`: Optional saved connection name to use
241+
- `--cursor <cursor>`: Pagination cursor
242+
- `--monitor-id <id>`: Filter by monitor ID
243+
- `--monitor-name <text>`: Filter by partial monitor name
244+
- `--started-after <iso>`: Filter incidents that started after this ISO 8601 timestamp
245+
- `--started-before <iso>`: Filter incidents that started before this ISO 8601 timestamp
246+
247+
### `incident`
248+
249+
Usage:
250+
```bash
251+
autocli devops uptimerobot incident [options] <id>
252+
```
253+
254+
Get incident details by ID
255+
256+
Options:
257+
258+
- `--account <name>`: Optional saved connection name to use
259+
260+
### `integrations`
261+
262+
Usage:
263+
```bash
264+
autocli devops uptimerobot integrations [options]
265+
```
266+
267+
List alert integrations
268+
269+
Options:
270+
271+
- `--account <name>`: Optional saved connection name to use
272+
- `--cursor <cursor>`: Pagination cursor
273+
274+
### `integration`
275+
276+
Usage:
277+
```bash
278+
autocli devops uptimerobot integration [options] <id>
279+
```
280+
281+
Get integration details by ID
282+
283+
Options:
284+
285+
- `--account <name>`: Optional saved connection name to use
286+
287+
### `capabilities`
288+
289+
Usage:
290+
```bash
291+
autocli devops uptimerobot capabilities [options]
292+
```
293+
294+
Aliases: `caps`
295+
296+
Show machine-readable capability metadata for this provider
297+
298+
No command-specific options.

src/__tests__/platform-categories.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@ describe("platform category routing", () => {
127127
"railway",
128128
"render",
129129
"supabase",
130+
"uptimerobot",
130131
"vercel",
131132
]);
132133
});

src/core/runtime/login-result.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,9 @@ const LIST_ALIAS_KEYS = [
111111
"playlists",
112112
"artists",
113113
"comments",
114+
"monitors",
115+
"incidents",
116+
"integrations",
114117
"followers",
115118
"following",
116119
"stories",
@@ -144,6 +147,9 @@ const ENTITY_ALIAS_KEYS = [
144147
"board",
145148
"card",
146149
"list",
150+
"monitor",
151+
"incident",
152+
"integration",
147153
"team",
148154
"space",
149155
"organization",

src/platforms/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ Current examples:
115115
- Data platforms: `src/platforms/data/csv/`, `src/platforms/data/html/`, `src/platforms/data/json/`, `src/platforms/data/markdown/`, `src/platforms/data/text/`, `src/platforms/data/xml/`, `src/platforms/data/yaml/`
116116
- Local editor platforms: `src/platforms/editor/archive/`, `src/platforms/editor/audio/`, `src/platforms/editor/document/`, `src/platforms/editor/gif/`, `src/platforms/editor/image/`, `src/platforms/editor/pdf/`, `src/platforms/editor/subtitle/`, `src/platforms/editor/video/`
117117
- Developer platforms: `src/platforms/developer/confluence/`, `src/platforms/developer/github/`, `src/platforms/developer/gitlab/`, `src/platforms/developer/jira/`, `src/platforms/developer/linear/`, `src/platforms/developer/notion/`, `src/platforms/developer/trello/`
118-
- Devops platforms: `src/platforms/devops/cloudflare/`, `src/platforms/devops/digitalocean/`, `src/platforms/devops/fly/`, `src/platforms/devops/netlify/`, `src/platforms/devops/railway/`, `src/platforms/devops/render/`, `src/platforms/devops/supabase/`, `src/platforms/devops/vercel/`
118+
- Devops platforms: `src/platforms/devops/cloudflare/`, `src/platforms/devops/digitalocean/`, `src/platforms/devops/fly/`, `src/platforms/devops/netlify/`, `src/platforms/devops/railway/`, `src/platforms/devops/render/`, `src/platforms/devops/supabase/`, `src/platforms/devops/uptimerobot/`, `src/platforms/devops/vercel/`
119119
- Bot platforms: `src/platforms/bot/discordbot/`, `src/platforms/bot/githubbot/`, `src/platforms/bot/slackbot/`, `src/platforms/bot/telegrambot/`
120120
- Active browserless LLM platforms: `src/platforms/llm/chatgpt/`, `src/platforms/llm/claude/`, `src/platforms/llm/deepseek/`, `src/platforms/llm/gemini/`, `src/platforms/llm/grok/`, `src/platforms/llm/mistral/`, `src/platforms/llm/perplexity/`, `src/platforms/llm/qwen/`, `src/platforms/llm/zai/`
121121
- Finance platforms: `src/platforms/finance/crypto/`, `src/platforms/finance/currency/`, `src/platforms/finance/stocks/`

0 commit comments

Comments
 (0)