meerkat-agents 0.3.5 → 0.3.6
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +12 -2
- data/README.md +47 -48
- data/lib/meerkat/resources/signup.rb +4 -2
- data/lib/meerkat/version.rb +1 -1
- metadata +14 -44
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2402b329cac4ff6816f622c721f704f85ef8643cbdd6f96e977c17c9cf5371a0
|
|
4
|
+
data.tar.gz: 8f8c1308e57434a1f098fe2691d7789e68173764cdb8a4fbf0b266855705d7fa
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 41afc5d5dd213677aaefaca2ad8b0b12b3a98e433a4ce6f134a90e1bea713538a20a366b65ce01dac2198b45a13663da661549045f9ac55319e703941ac2a97e
|
|
7
|
+
data.tar.gz: ff6050be0d456b1b58bbf13c591ff67d5d99b25cc2ffaae96222ca6bd436d7e0cdf02498933910a124bc9147c67e4bc4aaac0142ddbdfb5fc3efd3d9688cd717
|
data/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,15 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.3.6] - 2026-07-17
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- RubyGems listing: official Meerkat Cloud SDK positioning; no private GitHub links
|
|
13
|
+
- Homepage → https://meerkatagents.com; docs → /docs/ruby; changelog → /changelog; bugs → /support
|
|
14
|
+
- README quick start creates monitors without a webhook first
|
|
15
|
+
- Signup resource accepts optional company/website
|
|
16
|
+
|
|
8
17
|
## [0.3.5] - 2026-07-17
|
|
9
18
|
|
|
10
19
|
### Changed
|
|
@@ -75,8 +84,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
75
84
|
- Webhook HMAC-SHA256 verification helpers
|
|
76
85
|
- Optional Rails railtie and webhook verification concern
|
|
77
86
|
|
|
78
|
-
[0.3.
|
|
79
|
-
[0.3.
|
|
87
|
+
[0.3.6]: https://meerkatagents.com/changelog
|
|
88
|
+
[0.3.5]: https://meerkatagents.com/changelog
|
|
89
|
+
[0.3.4]: https://meerkatagents.com/changelog
|
|
80
90
|
[0.3.3]: https://github.com/Tiny-Bubble-Company/meerkat-ruby/releases/tag/v0.3.3
|
|
81
91
|
[0.3.2]: https://github.com/Tiny-Bubble-Company/meerkat-ruby/releases/tag/v0.3.2
|
|
82
92
|
[0.3.1]: https://github.com/Tiny-Bubble-Company/meerkat-ruby/releases/tag/v0.3.1
|
data/README.md
CHANGED
|
@@ -1,61 +1,69 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Meerkat Agents
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
The official Ruby SDK for Meerkat Cloud.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
Describe what you want to monitor, run it on demand or on a schedule, and
|
|
6
|
+
receive structured change events in your dashboard or through a webhook.
|
|
7
|
+
|
|
8
|
+
## Install
|
|
8
9
|
|
|
9
10
|
```ruby
|
|
10
|
-
|
|
11
|
+
gem "meerkat-agents"
|
|
11
12
|
```
|
|
12
13
|
|
|
13
|
-
|
|
14
|
+
```bash
|
|
15
|
+
bundle install
|
|
16
|
+
```
|
|
14
17
|
|
|
15
|
-
|
|
18
|
+
## Get an API key
|
|
16
19
|
|
|
17
|
-
|
|
20
|
+
1. Sign up at [cloud.meerkatagents.com/signup](https://cloud.meerkatagents.com/signup) (email + password).
|
|
21
|
+
2. Copy your API key (shown once).
|
|
18
22
|
|
|
19
|
-
|
|
23
|
+
```bash
|
|
24
|
+
export MEERKAT_API_KEY=mk_...
|
|
25
|
+
```
|
|
20
26
|
|
|
21
|
-
|
|
27
|
+
## Create your first monitor
|
|
22
28
|
|
|
23
|
-
|
|
29
|
+
Webhook is optional — results appear in the Cloud dashboard and API.
|
|
24
30
|
|
|
25
31
|
```ruby
|
|
26
|
-
|
|
32
|
+
require "meerkat"
|
|
27
33
|
|
|
28
|
-
client.
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
34
|
+
client = Meerkat::Client.new(api_key: ENV.fetch("MEERKAT_API_KEY"))
|
|
35
|
+
|
|
36
|
+
monitor = client.monitors.create(
|
|
37
|
+
description: "Tell me when this pricing page changes",
|
|
38
|
+
input_params: { url: "https://example.com/pricing" },
|
|
39
|
+
frequency: "every 6 hours"
|
|
33
40
|
)
|
|
34
41
|
```
|
|
35
42
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
### 3. List / update / delete
|
|
43
|
+
## Run it
|
|
39
44
|
|
|
40
45
|
```ruby
|
|
41
|
-
client.monitors.
|
|
42
|
-
|
|
43
|
-
client.monitors.update(id, frequency: "every 12 hours")
|
|
44
|
-
client.monitors.pause(id)
|
|
45
|
-
client.monitors.resume(id)
|
|
46
|
-
client.monitors.delete(id)
|
|
46
|
+
run = client.monitors.run(monitor["data"]["id"])
|
|
47
|
+
puts run
|
|
47
48
|
```
|
|
48
49
|
|
|
49
|
-
|
|
50
|
+
Inspect findings in the [Cloud dashboard](https://cloud.meerkatagents.com/dashboard) under **Runs**, or:
|
|
50
51
|
|
|
51
52
|
```ruby
|
|
52
|
-
client.monitors.
|
|
53
|
-
client.monitors.retrieve_run(
|
|
54
|
-
client.monitors.artifacts(id, run_id) # structured findings from the run
|
|
55
|
-
client.monitors.run(id) # trigger an on-demand run
|
|
53
|
+
client.monitors.artifacts(monitor_id, run_id)
|
|
54
|
+
client.monitors.retrieve_run(monitor_id, run_id)
|
|
56
55
|
```
|
|
57
56
|
|
|
58
|
-
|
|
57
|
+
## Add a webhook (optional)
|
|
58
|
+
|
|
59
|
+
For production delivery to your Rails app:
|
|
60
|
+
|
|
61
|
+
```ruby
|
|
62
|
+
client.monitors.update(
|
|
63
|
+
monitor_id,
|
|
64
|
+
output_webhook: "https://myapp.com/webhooks/meerkat"
|
|
65
|
+
)
|
|
66
|
+
```
|
|
59
67
|
|
|
60
68
|
```ruby
|
|
61
69
|
class Webhooks::MeerkatController < ApplicationController
|
|
@@ -68,28 +76,19 @@ class Webhooks::MeerkatController < ApplicationController
|
|
|
68
76
|
end
|
|
69
77
|
```
|
|
70
78
|
|
|
71
|
-
Set `MEERKAT_WEBHOOK_SECRET
|
|
72
|
-
|
|
73
|
-
---
|
|
79
|
+
Set `MEERKAT_WEBHOOK_SECRET` for signature verification.
|
|
74
80
|
|
|
75
81
|
## Configuration
|
|
76
82
|
|
|
77
83
|
| Variable | Description |
|
|
78
84
|
|----------|-------------|
|
|
79
85
|
| `MEERKAT_API_KEY` | From Cloud signup |
|
|
80
|
-
| `MEERKAT_WEBHOOK_SECRET` | HMAC verification |
|
|
86
|
+
| `MEERKAT_WEBHOOK_SECRET` | HMAC verification (when using webhooks) |
|
|
81
87
|
| `MEERKAT_BASE_URL` | Optional; defaults to Cloud |
|
|
82
88
|
|
|
83
|
-
---
|
|
84
|
-
|
|
85
|
-
## Pricing
|
|
86
|
-
|
|
87
|
-
Free: 1 monitor · 1 run. Then [$20 — 5 monitors, 50 runs](https://cloud.meerkatagents.com/subscribe).
|
|
88
|
-
|
|
89
|
-
Limit hit → `Meerkat::SubscriptionRequiredError`.
|
|
90
|
-
|
|
91
|
-
---
|
|
92
|
-
|
|
93
89
|
## Docs
|
|
94
90
|
|
|
95
|
-
https://
|
|
91
|
+
- Product: https://meerkatagents.com
|
|
92
|
+
- Ruby docs: https://meerkatagents.com/docs/ruby
|
|
93
|
+
- Changelog: https://meerkatagents.com/changelog
|
|
94
|
+
- Support: https://meerkatagents.com/support
|
|
@@ -3,13 +3,15 @@
|
|
|
3
3
|
module Meerkat
|
|
4
4
|
module Resources
|
|
5
5
|
class Signup < Base
|
|
6
|
-
def create(email:, company
|
|
6
|
+
def create(email:, name: nil, company: nil, website: nil, password: nil, password_confirmation: nil)
|
|
7
7
|
client.post("/signup", body: {
|
|
8
8
|
customer: {
|
|
9
9
|
email: email,
|
|
10
10
|
name: name,
|
|
11
11
|
company: company,
|
|
12
|
-
website: website
|
|
12
|
+
website: website,
|
|
13
|
+
password: password,
|
|
14
|
+
password_confirmation: password_confirmation
|
|
13
15
|
}.compact
|
|
14
16
|
})
|
|
15
17
|
end
|
data/lib/meerkat/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: meerkat-agents
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.3.
|
|
4
|
+
version: 0.3.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Tiny Bubble Company
|
|
@@ -33,44 +33,16 @@ dependencies:
|
|
|
33
33
|
description: |
|
|
34
34
|
== Meerkat Agents
|
|
35
35
|
|
|
36
|
-
The official Ruby
|
|
36
|
+
The official Ruby SDK for Meerkat Cloud.
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
Define monitoring tasks in plain English, run them on demand or on a
|
|
39
|
+
schedule, and receive structured results through your dashboard or webhook.
|
|
39
40
|
|
|
40
|
-
|
|
41
|
+
Use it to monitor pricing pages, delivery statuses, competitor changes,
|
|
42
|
+
internal systems, APIs, database-driven workflows, and other business events
|
|
43
|
+
without building custom polling, diffing, retry, and scheduling infrastructure.
|
|
41
44
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
== How it works
|
|
45
|
-
|
|
46
|
-
1. Create a monitoring task from Ruby.
|
|
47
|
-
2. Describe what to monitor in plain English.
|
|
48
|
-
3. Provide the relevant URLs, data, or connected system inputs.
|
|
49
|
-
4. Define how often the task should run.
|
|
50
|
-
5. Meerkat checks the source repeatedly, compares the latest result with previous state, and identifies meaningful changes using your own LLM key.
|
|
51
|
-
6. When something changes, Meerkat POSTs a signed JSON event to your webhook, with automatic delivery retries.
|
|
52
|
-
|
|
53
|
-
== How it differs from Sidekiq and job queues
|
|
54
|
-
|
|
55
|
-
Sidekiq, Active Job, Good Job, Solid Queue, Delayed Job, and Resque are excellent for running your Ruby jobs on your workers.
|
|
56
|
-
|
|
57
|
-
Meerkat is not a background-job queue. It is managed infrastructure for continuously monitoring connected systems and reporting meaningful changes.
|
|
58
|
-
|
|
59
|
-
Instead of building polling jobs, comparison logic, schedulers, scraping code, LLM workflows, and webhook delivery pipelines, you describe what should be monitored and let Meerkat operate the watch loop.
|
|
60
|
-
|
|
61
|
-
== Common use cases
|
|
62
|
-
|
|
63
|
-
* Website and page-change monitoring
|
|
64
|
-
* API response monitoring
|
|
65
|
-
* Database and application-data monitoring
|
|
66
|
-
* SaaS and third-party system monitoring
|
|
67
|
-
* Competitor pricing and plan tracking
|
|
68
|
-
* Package and shipment tracking
|
|
69
|
-
* Stock and inventory availability alerts
|
|
70
|
-
* Recurring data checks with structured findings
|
|
71
|
-
* Change-detection webhooks for Rails and API backends
|
|
72
|
-
|
|
73
|
-
Documentation: https://cloud.meerkatagents.com/docs/introduction
|
|
45
|
+
Documentation: https://meerkatagents.com/docs/ruby
|
|
74
46
|
email:
|
|
75
47
|
- hello@meerkatagents.com
|
|
76
48
|
executables: []
|
|
@@ -95,15 +67,14 @@ files:
|
|
|
95
67
|
- lib/meerkat/resources/tasks.rb
|
|
96
68
|
- lib/meerkat/version.rb
|
|
97
69
|
- lib/meerkat/webhooks.rb
|
|
98
|
-
homepage: https://meerkatagents.com
|
|
70
|
+
homepage: https://meerkatagents.com
|
|
99
71
|
licenses:
|
|
100
72
|
- MIT
|
|
101
73
|
metadata:
|
|
102
|
-
homepage_uri: https://meerkatagents.com
|
|
103
|
-
documentation_uri: https://
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
bug_tracker_uri: https://github.com/Tiny-Bubble-Company/meerkat-ruby/issues
|
|
74
|
+
homepage_uri: https://meerkatagents.com
|
|
75
|
+
documentation_uri: https://meerkatagents.com/docs/ruby
|
|
76
|
+
changelog_uri: https://meerkatagents.com/changelog
|
|
77
|
+
bug_tracker_uri: https://meerkatagents.com/support
|
|
107
78
|
rubygems_mfa_required: 'true'
|
|
108
79
|
post_install_message:
|
|
109
80
|
rdoc_options: []
|
|
@@ -123,6 +94,5 @@ requirements: []
|
|
|
123
94
|
rubygems_version: 3.4.1
|
|
124
95
|
signing_key:
|
|
125
96
|
specification_version: 4
|
|
126
|
-
summary:
|
|
127
|
-
get webhooks (not Sidekiq).
|
|
97
|
+
summary: Ruby SDK for Meerkat Cloud change monitoring
|
|
128
98
|
test_files: []
|