exist — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited exist (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.

Access health and fitness tracking data from chat -- retrieve tracked attributes, discover correlations between metrics, get AI-generated insights, and manage data ownership. Powered by ClawLink for hosted OAuth.
| Step 1: Install | Step 2: Pair Account | Step 3: Connect Exist |
|---|---|---|
![]() | ![]() | App-specific connection GIF coming soon |
| Run the install command in OpenClaw | Sign in and approve the device | Open the dashboard and connect Exist |
┌─────────────────┐ ┌──────────────┐ ┌──────────────────┐
│ OpenClaw │────▶│ ClawLink │────▶│ Exist API │
│ (User Chat) │ │ (OAuth) │ │ │
└─────────────────┘ └──────────────┘ └──────────────────┘openclaw plugins install clawhub:clawlink-plugin
openclaw config set tools.alsoAllow '["clawlink-plugin"]' --strict-json
openclaw gateway restart// 1. Get your profile
clawlink_call_tool({ tool: "exist_get_user_profile", parameters: {} })
// 2. See your tracked attributes
clawlink_call_tool({ tool: "exist_get_attributes_with_values", parameters: {} })
// 3. Discover correlations
clawlink_call_tool({ tool: "exist_get_correlations", parameters: {} })ClawLink handles OAuth with Exist. No API keys needed. Connect at claw-link.dev/dashboard?add=exist. Granted OAuth scopes determine which attribute fields are returned.
// List connections
clawlink_list_integrations()
// Verify
clawlink_call_tool({ tool: "exist_get_user_profile", parameters: {} })| Tool | Description | Mode |
|---|---|---|
exist_get_user_profile | Get authenticated user profile, timezone, and preferences | Read |
exist_get_attribute_templates | Browse available attribute templates before creating data | Read |
exist_oauth2_authorize | Construct OAuth2 authorization URL for Exist.io | Read |
| Tool | Description | Mode |
|---|---|---|
exist_get_user_attributes | List user attributes without values (metadata catalog) | Read |
exist_get_attributes_with_values | Get attributes with current values and history | Read |
exist_get_owned_attributes | List attributes owned by your service | Read |
exist_get_averages | Get weekly averages with daily breakdowns (Mon-Sun) | Read |
| Tool | Description | Mode |
|---|---|---|
exist_get_insights | Get AI-generated insights about patterns in tracked data | Read |
exist_get_correlations | Discover statistical relationships between tracked attributes | Read |
| Tool | Description | Mode |
|---|---|---|
exist_acquire_attribute_ownership | Acquire ownership of attributes to write data | Write |
exist_increment_attribute_values | Increment attribute values by a delta (counters only) | Write |
exist_release_attribute_ownership | Release ownership, stopping data flow for that attribute | Write |
// Get profile and timezone
const profile = await clawlink_call_tool({
tool: "exist_get_user_profile",
parameters: {}
});
// Get attributes with values
const attrs = await clawlink_call_tool({
tool: "exist_get_attributes_with_values",
parameters: {}
});
// Get weekly averages
const averages = await clawlink_call_tool({
tool: "exist_get_averages",
parameters: { include_historical: true }
});// Find correlations between metrics
const correlations = await clawlink_call_tool({
tool: "exist_get_correlations",
parameters: {}
});
// Get AI-generated insights
const insights = await clawlink_call_tool({
tool: "exist_get_insights",
parameters: {}
});// Acquire ownership of a step count attribute
await clawlink_call_tool({
tool: "exist_acquire_attribute_ownership",
parameters: {
attribute_names: ["steps"]
}
});
// Increment step count
await clawlink_call_tool({
tool: "exist_increment_attribute_values",
parameters: {
data: [{ date: "2026-06-08", attribute: "steps", value: 500 }]
}
});clawlink_list_integrations to confirm exist is connected.clawlink_list_tools --integration exist to see the live catalog.clawlink_search_tools({ query: "correlation", integration: "exist" }) to find specific tools.READ (safe): get_user_profile → get_attributes_with_values → get_correlations → get_insights
WRITE (confirm): acquire_attribute_ownership → increment_attribute_values
DELETE (high): release_attribute_ownership| Status / Error | Meaning |
|---|---|
| 401 Unauthorized | OAuth token expired -- reconnect at dashboard |
| 403 Forbidden | Insufficient OAuth scopes for requested attributes |
| 404 Not Found | Attribute template or attribute does not exist |
| 422 Unprocessable | Invalid attribute type for increment operation |
clawlink_list_integrations to confirm pairingexist_get_attribute_templates to verify available attributesPowered by [ClawLink](https://claw-link.dev/?utm_source=clawhub&utm_medium=referral&utm_content=exist) -- an integration hub for OpenClaw

~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.