agentleFS
DenchHQDenchHQ/ironclaw/skills/dench-integrations/SKILL.md

dench-integrations

Skill1.7k starsChanged 7 months agoMITView on GitHub

Connected app integration recipes for Dench Integrations (Gmail, Slack, GitHub, Notion, Google Calendar, Linear, Stripe, YouTube, and 500+ more)

1 other project uses a version of this.

Trending

Quiet since February.thin dataabout the whole repository

Dec 2025: 0 mentionsJan 2026: 0 mentionsFeb 2026: 1 mentionMar 2026: 0 mentionsApr 2026: 0 mentionsMay 2026: 0 mentionsJun 2026: 0 mentionsJul 2026: 0 mentionsAug 2026: 0 mentionsSep 2026: 0 mentionsOct 2026: 0 mentionsNov 2026: 0 mentions
Dec 2025Jun 2026Nov 2026
Mentions a month of the DenchHQ/ironclaw repository that our weekly crawl found: only 1 in all, so this is a hint, not a trend. There is no adoption data for this file yet.

Most recently taken up by

Who's talking about DenchHQ/ironclaw

The biggest 1 of 1 mention linking to the repository that our crawl found. Each line is their own headline.

The file

Show its rules and text

We split this skill into the rules it gives an agent

15 rules. About 0 are common, 4 are distinctive, and 11 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 11

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use the Dench Integrations tools for all connected third-party app tasks in DenchClaw.

    line 8
  2. Very specific:

    Call dench_search_integrations with a query with EXACT search strings of what might help you find relevant tools.

    line 17
  3. Very specific:

    Read the input_schema to understand required fields, types, and defaults.

    line 19
  4. Very specific:

    Call dench_execute_integrations with tool_slug and the correct arguments.

    line 20
  5. Very specific:

    When dench_search_integrations shows account_count > 1 for a toolkit:

    line 30
  6. Distinctive:

    Ask the user which account they want to use.

    line 33
  7. Very specific:

    When only one account is connected, the gateway auto-selects it — no connected_account_id needed.

    line 36
  8. Very specific:

    Read the returned input_schema before filling arguments.

    line 118
  9. Very specific:

    Treat the live schema from dench_search_integrations as authoritative over any recipe table below.

    line 119
  10. Very specific:

    If search returns zero gateway matches but the app is connected, results may include match_source: "static_recipe_fallback" with …

    line 120
  11. Distinctive:

    If gateway search still fails, retry with toolkit only (omit query) or a shorter query before giving up.

    line 121
  12. Distinctive:

    If a call fails on argument shape, fix the types and retry once before escalating.

    line 122
  13. Very specific:

    If the search returns availability: "connect_required", show the connect link to the user.

    line 123
  14. Very specific:

    If the response includes pagination fields (has_more, next_cursor, starting_after, etc.), keep paginating when the user asked for the full …

    line 124
  15. Very specific:

    When delegating, include: the tool_slug, the arguments object (copy shapes from the live input_schema returned by …

    line 192

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Dench Integrations

Use the Dench Integrations tools for all connected third-party app tasks in DenchClaw.

Two tools only

  1. dench_search_integrations — Search for available integration tools by query and/or toolkit slug. Returns tool slugs, descriptions, full input_schema, connection status, and connected accounts.
  2. dench_execute_integrations — Execute a tool by its tool_slug with arguments matching the input_schema. The gateway handles authentication and account selection automatically when only one account is connected.

Workflow

  1. Call dench_search_integrations with a query with EXACT search strings of what might help you find relevant tools. like "posthog project", "stripe subscription", etc. (optionally narrow with toolkit).
  2. Inspect the returned results — each has tool_slug, input_schema, is_connected, account_count, and accounts.
  3. Read the input_schema to understand required fields, types, and defaults.
  4. Call dench_execute_integrations with tool_slug and the correct arguments.

Do not use:

  • gog, shell CLIs for Gmail / Calendar / Drive / Slack / GitHub / Notion / Linear (unless you need to as last resort or if explicitly asked)
  • curl or raw gateway HTTP calls (unless explicitly asked)
  • Direct provider REST calls (unless explicitly asked)

Multi-account handling

When dench_search_integrations shows account_count > 1 for a toolkit:

  1. The accounts array lists each connected account with connected_account_id, label, and email.
  2. Ask the user which account they want to use.
  3. Pass the chosen connected_account_id to dench_execute_integrations.

When only one account is connected, the gateway auto-selects it — no connected_account_id needed.

Execute examples

Gmail — fetch recent emails

{
  "tool_slug": "GMAIL_FETCH_EMAILS",
  "arguments": {
    "label_ids": ["INBOX"],
    "max_results": 10
  }
}

Slack — send a message

{
  "tool_slug": "SLACK_SEND_MESSAGE",
  "arguments": {
    "channel": "C01ABCDEF",
    "text": "Hello from DenchClaw!"
  }
}

GitHub — list pull requests

{
  "tool_slug": "GITHUB_LIST_PULL_REQUESTS",
  "arguments": {
    "owner": "DenchHQ",
    "repo": "denchclaw",
    "state": "open"
  }
}

Stripe — list subscriptions

{
  "tool_slug": "STRIPE_LIST_SUBSCRIPTIONS",
  "arguments": {
    "limit": 100
  }
}

YouTube — list subscriptions

{
  "tool_slug": "YOUTUBE_LIST_USER_SUBSCRIPTIONS",
  "arguments": {
    "part": "snippet",
    "max_results": 50
  }
}

With explicit account selection

{
  "tool_slug": "GMAIL_SEND_EMAIL",
  "arguments": {
    "to": "user@example.com",
    "subject": "Hello",
    "body": "Test email"
  },
  "connected_account_id": "abc123-def456"
}

General rules

  • Tool names are uppercase with underscores (e.g. GMAIL_FETCH_EMAILS).
  • Pass JSON-shaped arguments as the tool schema requires: arrays are arrays, not comma-separated strings.
  • Read the returned input_schema before filling arguments. Use exact field names and types.
  • Treat the live schema from dench_search_integrations as authoritative over any recipe table below.
  • If search returns zero gateway matches but the app is connected, results may include match_source: "static_recipe_fallback" with suggested_arguments. Execute that tool immediately — do not stop the turn or switch to gog.
  • If gateway search still fails, retry with toolkit only (omit query) or a shorter query before giving up.
  • If a call fails on argument shape, fix the types and retry once before escalating.
  • If the search returns availability: "connect_required", show the connect link to the user.
  • If the response includes pagination fields (has_more, next_cursor, starting_after, etc.), keep paginating when the user asked for the full dataset.

Quick recipe tables

Gmail

IntentToolKey arguments
List recent mailGMAIL_FETCH_EMAILSlabel_ids: ["INBOX"], max_results: 10
Read one messageGMAIL_FETCH_MESSAGE_BY_MESSAGE_IDmessage_id from list results
Send mailGMAIL_SEND_EMAILto, subject, body

Gotcha: label_ids must be an array like ["INBOX"], never a single string.

Slack

IntentToolKey arguments
Send a messageSLACK_SEND_MESSAGEchannel, text
List channelsSLACK_LIST_CONVERSATIONSUse schema filters

Gotcha: channel is usually a channel ID (starts with C), not the display name.

GitHub

IntentToolKey arguments
List reposGITHUB_LIST_REPOSITORIES_FOR_THE_AUTHENTICATED_USERPagination per schema
Find pull requestsGITHUB_FIND_PULL_REQUESTSBest for broad PR search
List pull requestsGITHUB_LIST_PULL_REQUESTSowner, repo
Create issueGITHUB_CREATE_AN_ISSUEowner, repo, title, body

Notion

IntentToolKey arguments
SearchNOTION_SEARCHQuery string
Read pageNOTION_GET_PAGEPage ID
Create pageNOTION_CREATE_PAGEParent object per schema

Google Calendar

IntentToolKey arguments
List calendarsGOOGLE_CALENDAR_CALENDAR_LISTOptional params
List eventsGOOGLE_CALENDAR_EVENTS_LISTcalendar_id, time_min/time_max (RFC3339)
Create eventGOOGLE_CALENDAR_CREATE_EVENTCalendar id + event payload

Gotcha: Datetimes should be RFC3339 strings.

Linear

IntentToolKey arguments
List issuesLINEAR_LIST_ISSUESFilters per schema
Create issueLINEAR_CREATE_ISSUETeam id, title, description

Stripe

IntentToolKey arguments
List subscriptionsSTRIPE_LIST_SUBSCRIPTIONSUse schema filters
Search subscriptionsSTRIPE_SEARCH_SUBSCRIPTIONSCustomer or filter-specific
List customersSTRIPE_LIST_CUSTOMERSFor customer lookup
Retrieve balanceSTRIPE_RETRIEVE_BALANCECurrent balance snapshot

Subagent handoff

When delegating, include: the tool_slug, the arguments object (copy shapes from the live input_schema returned by dench_search_integrations), and if applicable the connected_account_id.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.