Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add product-on-purpose/thinking-framework-skills --skill think-affinity-mappinggit clone --depth 1 https://github.com/product-on-purpose/thinking-framework-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/product-on-purpose/thinking-framework-skills/think-affinity-mapping)<a href="https://agentmods.dev/skills/product-on-purpose/thinking-framework-skills/think-affinity-mapping"><img src="https://agentmods.dev/badge/skills/product-on-purpose/thinking-framework-skills/think-affinity-mapping/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/product-on-purpose/thinking-framework-skills/think-affinity-mapping"><img src="https://agentmods.dev/badge/skills/product-on-purpose/thinking-framework-skills/think-affinity-mapping.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00098 | $0.01333 |
| Opus 5 | $0.00049 | $0.00666 |
| Sonnet 5 | $0.00020 | $0.00267 |
| Haiku 4.5 | $0.00010 | $0.00133 |
Grade A, and why
think-affinity-mapping scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 65 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Affinity Mapping
Affinity mapping takes a pile of many individual items - raw notes, observations, quotes, data points - and groups them bottom-up by felt similarity until a small set of emergent themes appears, then names each theme so the names become the structure. The load-bearing move is deferred, bottom-up categorization: you do not sort items into predefined buckets, you let the categories surface from the items themselves. This externalizes comparison so patterns hidden in a linear list become visible, resists the frame you walked in with, and compresses many items into a few themes while keeping every item traceable to its theme. The output is a clustered theme map, not a discussion.
When to Use
- When dozens to hundreds of existing items - user-research notes, interview quotes, support tickets, survey free-text, retro stickies, workshop output - need to become a few themes.
- When the right structure is not known in advance and should emerge from the data rather than be imposed.
- When the items already exist and the job is synthesis, not generation.
- When traceability matters: you want each theme to point back to the specific items that support it.
When NOT to Use
- When there are only a handful of items. With a dozen or fewer you can reason about them directly; the clustering ceremony adds overhead without insight.
- When you need a top-down logical structure - a question decomposed into MECE sub-questions or a hypothesis tree. That is top-down decomposition from a question; use an issue-tree skill. Affinity mapping is bottom-up, from items.
- When you need to generate ideas or options. Affinity mapping only organizes items that already exist and produces no new ideas. Use an ideation skill (for example brainwriting) to create the items first, then affinity-map them.
- When the categories are already fixed and authoritative (a required taxonomy, a compliance schema). Then you are coding into known buckets, not discovering emergent themes.
- As a ritual - grouping into a few buckets and slapping confident names on them with no traceability is cargo-cult synthesis, not insight.
What ships with it
5 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 65 lines · 98 tokens per session scan A 82f5b92d3c55
think-affinity-mapping is a skill published in the GitHub repository product-on-purpose/thinking-framework-skills (15 stars, last pushed 22d ago), licensed Apache-2.0. It adds 98 tokens to every session and 1,333 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
ops-demo
CocoOps demo mode activator — populates .cocoplus/ops/demo/ with realistic mock data and sets cocoplus.toml [demo] enabled = true. Invoked via $ops demo.
add-analytics
Add Google Analytics 4 tracking to any project. Detects framework, adds tracking code, sets up events, and configures privacy settings.
agent-teams-simplify-and-harden
Implementation + audit loop using parallel agent teams with structured simplify, harden, and document passes. Spawns implementation agents to do the work, then audit agents to find complexity, security gaps, and spec deviations, then loops until code compiles cleanly, all tests pass, and auditors find zero issues or…
acl-rule-analysis
Vendor-agnostic ACL and firewall rule analysis with shadowed rule detection, overly permissive rule identification, unused rule discovery, redundant rule flagging, and rule ordering optimization. Covers ACLs (Cisco/JunOS/EOS) and firewall policies (PAN-OS/FortiGate/CheckPoint).
agent-team-orchestration
Orchestrate multi-agent teams with defined roles, task lifecycles, handoff protocols, and review workflows. Use when: (1) Setting up a team of 2+ agents with different specializations, (2) Defining task routing and lifecycle (inbox → spec → build → review → done), (3) Creating handoff protocols between agents, (4)…
agent-bom-enforce
Enforce security policies on MCP tool calls and block dangerous operations at runtime. Use when: "block risky calls", "apply policy", "proxy", "runtime protection", "policy enforcement", "intercept MCP calls".