← Back to Skills Marketplace
howdymarc

Affinity Readonly

by howdymarc · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
250
Downloads
0
Stars
1
Active Installs
1
Versions
Install in OpenClaw
/install affinity-readonly
Description
Read-only Affinity CRM access for analysis and memo prep. Use when you need to fetch Affinity companies, people, notes, opportunities, interactions, or relat...
README (SKILL.md)

Affinity Read-Only

Use this skill for Affinity analysis tasks from chat or Slack.

Hard rules

  • Use GET requests only.
  • Never call POST, PUT, PATCH, or DELETE.
  • Never change stages, notes, tags, companies, or people.
  • Never print, log, or echo AFFINITY_API_KEY.
  • If a request requires modification, stop and ask for explicit approval.

Prerequisite

  • AFFINITY_API_KEY must be set in local environment.

Quick check:

zsh -lc '[[ -n "$AFFINITY_API_KEY" ]] && echo "AFFINITY_API_KEY is set" || echo "AFFINITY_API_KEY is not set"'

API helper

Use the bundled script:

./skills/affinity-readonly/scripts/affinity_get.sh "/companies" "page_size=25"
./skills/affinity-readonly/scripts/affinity_get.sh "/persons" "term=Driven%20Plastics"
./skills/affinity-readonly/scripts/affinity_get.sh "/notes" "person_id=12345"
  • Arg 1: endpoint path beginning with /
  • Arg 2 (optional): query string without leading ?
  • Base URL defaults to https://api.affinity.co and can be overridden with AFFINITY_API_BASE

Workflow

  1. Confirm task is analysis-only.
  2. Fetch only required records with affinity_get.sh.
  3. Summarize evidence with IDs/timestamps when available.
  4. If data appears incomplete, request clarifying filters (date range, company, person).
  5. Refuse any write/update request unless user explicitly approves and policy is changed.
Usage Guidance
This skill appears to do what it says (make read-only GET calls to Affinity) and the script does not print the API key, but there are a few things to check before installing: 1) Confirm the registry metadata is updated to declare AFFINITY_API_KEY as a required environment variable (the SKILL.md and script require it). 2) Use a least-privilege Affinity API key (read-only scope) — do not use an admin key. 3) Ensure AFFINITY_API_BASE is not set to an untrusted URL (because the script will send the API key to whatever base URL is configured). 4) Verify the skill's source/homepage and publisher identity (no homepage provided here) or test the script in a sandbox first. If those checks are satisfied, the skill is likely acceptable; if the publisher cannot justify the metadata mismatch or if AFFINITY_API_BASE is uncontrolled, do not install.
Capability Analysis
Type: OpenClaw Skill Name: affinity-readonly Version: 1.0.0 The skill provides a legitimate read-only interface for the Affinity CRM API, consistent with its stated purpose. The helper script `scripts/affinity_get.sh` correctly handles authentication via environment variables and defaults to the official API endpoint (api.affinity.co). Furthermore, the `SKILL.md` file includes explicit safety instructions for the AI agent to prevent unauthorized write operations and protect the API key from being logged or exposed.
Capability Assessment
Purpose & Capability
The name/description promise read-only Affinity access and the included script plus SKILL.md implement that: GET-only requests to the Affinity API using a Bearer token. However, the published registry metadata lists no required environment variables while SKILL.md and the script require AFFINITY_API_KEY (and optionally AFFINITY_API_BASE). This mismatch is an incoherence that should be corrected.
Instruction Scope
SKILL.md enforces GET-only behavior and the script performs only curl --get requests with Accept: application/json and Authorization: Bearer <key>. The instructions do not direct reading unrelated files or sending data to unexpected endpoints (beyond the base URL).
Install Mechanism
No install spec and only a small bundled shell script are provided, so nothing is downloaded or installed at runtime. Risk from install mechanism is low.
Credentials
The script and SKILL.md require AFFINITY_API_KEY (and allow overriding AFFINITY_API_BASE), but the registry metadata lists no required env vars — this omission is problematic. Also, because AFFINITY_API_BASE is an override, a malicious or misconfigured value could cause the script to send the API key to an attacker-controlled host; ensure AFFINITY_API_KEY is a read-only-scoped key and that AFFINITY_API_BASE is not set to an untrusted endpoint.
Persistence & Privilege
always:false and no requests to modify agent configuration or other skills. Autonomous invocation is allowed by default (normal) and does not by itself increase risk given the limited scope, but users should be aware the agent could call the skill when relevant.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install affinity-readonly
  3. After installation, invoke the skill by name or use /affinity-readonly
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
- Initial release of affinity-readonly skill. - Provides read-only Affinity CRM access for analysis and memo preparation. - Enforces GET-only operations—no modifications allowed. - Never exposes or logs API keys. - Includes helper script for fetching companies, people, notes, opportunities, and related data via Affinity API.
Metadata
Slug affinity-readonly
Version 1.0.0
License MIT-0
All-time Installs 1
Active Installs 1
Total Versions 1
Frequently Asked Questions

What is Affinity Readonly?

Read-only Affinity CRM access for analysis and memo prep. Use when you need to fetch Affinity companies, people, notes, opportunities, interactions, or relat... It is an AI Agent Skill for Claude Code / OpenClaw, with 250 downloads so far.

How do I install Affinity Readonly?

Run "/install affinity-readonly" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Affinity Readonly free?

Yes, Affinity Readonly is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Affinity Readonly support?

Affinity Readonly is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Affinity Readonly?

It is built and maintained by howdymarc (@howdymarc); the current version is v1.0.0.

💬 Comments