tool-connector
Tool Connector enables agents to integrate with any work tool via API or web interface, including internal systems, deployment portals, incident trackers, and commercial platforms like Slack, Jira, GitHub, and Datadog. Use this skill when setting up a new tool connection, connecting a custom-built internal system, or adding tool integrations that require minimal friction authentication such as API tokens or cached browser sessions.
git clone --depth 1 https://github.com/ZhixiangLuo/10xProductivity /tmp/tool-connector && cp -r /tmp/tool-connector/.cursor/skills/tool-connector ~/.claude/skills/tool-connectorSKILL.md
# Tool Connector — Connect Any Work Tool to Your Agent
> **Requires the repo cloned locally.** Check if it's already present (`ls setup.md`), then read `setup.md` — that is the full entry point. The sections below summarize the approach for reference.
Full methodology and pre-built recipes: https://github.com/zhixiangluo/10xProductivity
## Internal tools are first-class citizens
Internal and custom-built tools are often the most valuable to connect — deployment portals, incident trackers, internal knowledge bases, custom dashboards, HR systems, anything your company built or runs. They follow the exact same setup path as commercial tools and stay private in `personal/` (gitignored, never committed).
If a tool has an API or a web UI, it can be connected.
## Core principles
- **Ask for a URL first, not credentials** — a URL the user has open reveals the base URL, workspace, and regional variant without requiring them to know anything about auth
- **Run every command yourself** — never paste a command and ask the user to run it
- **Validate with real output before marking anything done** — no illustrative output, no copy-paste from docs
- **Zero friction** — never require the user to create an OAuth app, register redirect URIs, or configure anything outside of this flow
## Routing
| Situation | Action |
|-----------|--------|
| Tool already in `verified_connections.md` | Reverify — run its verify snippet; if it passes, done |
| Tool has a recipe in `personal/{tool}/` | Load it and try; patch in `personal/` if it fails |
| Tool has a recipe in `tool_connections/{tool}/` | Read that tool's `setup.md` and follow it |
| Tool not found anywhere | Follow `add-new-tool.md` to build a recipe from scratch |
Never edit `tool_connections/` directly — copy to `personal/{tool}/` and patch there.
## Auth priority order
| Priority | Method | User friction |
|----------|--------|---------------|
| 1 | API token | ~30s — generate in tool settings |
| 2 | Browser session (SSO, cached) | Run once — session cached for days/weeks |
| 3 | Browser session (per operation) | Playwright on every call — only if no API exists |
| 4 | Username + password | Legacy tools only |
| ✗ | OAuth requiring user to create their own app | Never — too much friction |
## Pre-built recipes available
Slack, Confluence, Jira, Linear, GitHub, Microsoft Teams, Outlook, Google Drive, Datadog, Grafana, PagerDuty, Jenkins, Backstage, Bitbucket Server, Artifactory.
Internal and custom tools follow the same path — they stay private in `personal/` (gitignored).
## Getting started
First, check if you already have the repo:
```bash
ls setup.md 2>/dev/null && echo "repo present" || echo "need to clone"
```
**Repo present** → if `python3` (or Windows `py -3`) is missing or `.venv` is not set up for Playwright, read **`setup-python.md`** first; then read **`setup.md`** — it is the full entry point for tool connections.
**Need to clone** →
```bash
git clone https://github.com/zhixiangluo/10xProductivity.git
cd 10xProductivity
```
Then read `setup.md`. It routes to pre-built recipes, your own recipes, and `add-new-tool.md` for anything new.>
Distill a colleague into a reusable AI skill (work + persona) using tool connections — Slack, Slack AI, Jira, GHE, Bitbucket, Confluence, SharePoint, Teams, Outlook, Notion, Linear, Google Docs, and more — without manual paste. Use when the user wants a colleague skill, digital twin of a coworker, or capture of someone's technical voice from workplace systems. Requires tool_connections + 10xProductivity verified_connections (or equivalent .env).
Design and build automation workflows using building blocks — clarify outcomes, decompose by dependencies, reuse prior art, verify each block before chaining, and research when stuck. Covers generic divide-and-conquer (problem framing, observable surfaces, investigation vs shipping, CLI contracts) plus human-like pacing for social and communication platforms. Use when automating multi-step processes across tools or platforms.
Walk through a UI flow once manually and capture a durable interaction map — which DOM elements to click, which network requests they trigger, and what field shapes they expose. Produces a reusable selector+endpoint reference for automation scripts. Use before writing any Playwright block for a JS-heavy SPA (LinkedIn, Figma, Notion, etc.) where selectors and API paths are not obvious from source inspection alone. Three modes: Chrome DevTools Recorder (fastest), Playwright observer (richest), Playwright codegen+trace (most structured).
Automated LinkedIn engagement workflow. The agent finds a relevant post on your chosen topic, drafts a comment with a genuine insight, gets your approval in chat, and posts it — all in one loop. You approve once before anything is posted. Use when asked to "engage on LinkedIn", "find a post to comment on", "post a LinkedIn comment", or "engage on [topic]". Requires LinkedIn session credentials in .env. Everything runs locally — credentials never leave your machine.
>