n8n Binary Data Handling
czlonkowski/n8n-skills
Explains how n8n keeps file bytes in $binary apart from structured $json data, and how to read, write and preserve binary across nodes, agent tools and chat.
Runtime protection layer for AI agents. An agent skill from ertugrulakben/cashclaw.
$ npx skills add ertugrulakben/cashclaw --skill cashclaw-guard -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install ertugrulakben/cashclaw cashclaw-guard --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/ertugrulakben/cashclaw.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/cashclaw-guard .claude/skills/cashclaw-guard && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "cashclaw-guard" agent skill from https://github.com/ertugrulakben/cashclaw/tree/main/skills/cashclaw-guard into .claude/skills/cashclaw-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cashclaw-guard", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/ertugrulakben/cashclaw/tree/main/skills/cashclaw-guardType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add ertugrulakben/cashclaw --skill cashclaw-guard -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install ertugrulakben/cashclaw cashclaw-guard --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ertugrulakben/cashclaw.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/cashclaw-guard .agents/skills/cashclaw-guard && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "cashclaw-guard" agent skill from https://github.com/ertugrulakben/cashclaw/tree/main/skills/cashclaw-guard into .agents/skills/cashclaw-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cashclaw-guard", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ertugrulakben/cashclaw --skill cashclaw-guard -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install ertugrulakben/cashclaw cashclaw-guard --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ertugrulakben/cashclaw.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/cashclaw-guard .cursor/skills/cashclaw-guard && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "cashclaw-guard" agent skill from https://github.com/ertugrulakben/cashclaw/tree/main/skills/cashclaw-guard into .cursor/skills/cashclaw-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cashclaw-guard", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/ertugrulakben/cashclaw.git --path skills/cashclaw-guard--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add ertugrulakben/cashclaw --skill cashclaw-guard -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install ertugrulakben/cashclaw cashclaw-guard --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ertugrulakben/cashclaw.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/cashclaw-guard .gemini/skills/cashclaw-guard && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "cashclaw-guard" agent skill from https://github.com/ertugrulakben/cashclaw/tree/main/skills/cashclaw-guard into .gemini/skills/cashclaw-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cashclaw-guard", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install ertugrulakben/cashclaw cashclaw-guardInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add ertugrulakben/cashclaw --skill cashclaw-guard -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/ertugrulakben/cashclaw.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/cashclaw-guard .github/skills/cashclaw-guard && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "cashclaw-guard" agent skill from https://github.com/ertugrulakben/cashclaw/tree/main/skills/cashclaw-guard into .github/skills/cashclaw-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cashclaw-guard", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add ertugrulakben/cashclaw --skill cashclaw-guard -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install ertugrulakben/cashclaw cashclaw-guard --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/ertugrulakben/cashclaw.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/cashclaw-guard .opencode/skills/cashclaw-guard && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "cashclaw-guard" agent skill from https://github.com/ertugrulakben/cashclaw/tree/main/skills/cashclaw-guard into .opencode/skills/cashclaw-guard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cashclaw-guard", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
cashclaw-guardRuntime protection layer for AI agents. An agent skill from ertugrulakben/cashclaw.
Cashclaw Guard is an agent skill from ertugrulakben/cashclaw. Runtime protection layer for AI agents. Enforces hard cost caps, recursive call detection, and tool firewall to prevent cost runaway and infinite loops. Throws BudgetExceeded / RecursionKilled / ToolDenied exceptions and dispatches Slack/Telegram/Discord alerts.
Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/guard.js`).
It works with Discord, Slack and Telegram. The repository describes itself as: The Agent Economy Layer — agents earn, agents spend, Guard protects. 13 skills, runtime cost cap, recursive kill, tool firewall. 50+ HYRVE API endpoints, job polling daemon, MPP…. The licence is MIT.
2 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit ff30cb3. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (JavaScript), which the agent can run.
Shell commands in SKILL.md call:
npmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
TELEGRAM_BOT_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Cashclaw Guard loads about 1.4k tokens when it runs. Until then it costs about 69 tokens; SKILL.md has 340 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from ertugrulakben/cashclaw at commit ff30cb3, republished under its MIT licence (© ertugrulakben). 340 words, ~1,404 tokens.
.claude/skills/cashclaw-guard/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Agent runtime protection. Stop $34K incidents in 12 lines of code.
When an AI agent runs unattended, two things can break the bank in one night:
Cloudflare lost $34,000 in 8 days to a Durable Object loop in February 2026. The fix wasn't a smarter agent — it was a runtime layer that says "no, you've spent enough."
CashClaw Guard is that layer. It plugs into any OpenClaw-compatible agent and enforces a YAML policy at every LLM call and tool invocation.
| Tool | Watches | Enforces |
|---|---|---|
| Helicone, Langfuse | ✅ | ❌ |
| Datadog, Sentry | ✅ | ❌ |
| OpenAI soft limits | ✅ (24h delay) | ⚠️ partial |
| CashClaw Guard | ✅ | ✅ real-time, hard cap |
| Tier | Scope | Price | Delivery |
|---|---|---|---|
| Audit | Policy review + recommended config for 1 agent | $19 | 24h |
| Setup | Full deploy: install, YAML policy, webhook hookup, dashboard | $49 | 48h |
| Hardening | Audit + custom rate limits + multi-agent + on-call runbook | $99 | 5d |
npm install cashclaw
cashclaw guard init
# edit ~/.cashclaw/guard-policy.yaml
cashclaw guard testimport { guard } from 'cashclaw/guard';
// Wrap any LLM call
const safeChat = guard.llm({
maxCostUsd: 5,
maxTokens: 50000,
model: 'gpt-5.5',
agentId: 'support-bot',
})(async (prompt) => {
return await openai.chat.completions.create({
model: 'gpt-5.5',
messages: [{ role: 'user', content: prompt }],
});
});
await safeChat('summarize this ticket');
// → throws BudgetExceeded if the call would push you over the cap
// → throws RecursionKilled if the same fingerprint repeats 5x in 60s
// → fires Telegram alert before throwing// Tool firewall (called before any shell / api / mcp invocation)
import { guard } from 'cashclaw/guard';
guard.tool('slack.send', { agentId: 'support-bot' });
// throws ToolDenied if slack.send isn't in the allowlist
// throws RateLimitExceeded if rate per minute/hour is hit| Command | Purpose |
|---|---|
cashclaw guard init | Write ~/.cashclaw/guard-policy.yaml from template |
cashclaw guard status | Show active policy + last 10 events |
cashclaw guard test | Dry-run 8 scenarios (cost, recursion, deny, rate) |
cashclaw guard kill <id> | Emit kill flag for a running agent |
cashclaw guard logs | Print recent Guard event ring buffer |
cashclaw guard reload | Reload YAML policy without restart |
version: 1
limits:
cost_usd_per_day: 50
cost_usd_per_call: 5
max_tokens_per_call: 50000
max_recursion_depth: 10
recursion:
fingerprint_window_seconds: 60
kill_after_repeats: 5
tools:
allowlist: [] # empty = allow all not denied
denylist: [shell, exec, eval, rm, fs.unlink]
rate_limits:
slack.send: { max_per_minute: 10 }
email.send: { max_per_hour: 50 }
webhook:
telegram:
enabled: true
on: [budget_exceeded, recursion_killed, tool_denied]
bot_token: ${TELEGRAM_BOT_TOKEN}
chat_id: ${TELEGRAM_CHAT_ID}| Exception | When | Caught by |
|---|---|---|
BudgetExceeded | Per-call or daily USD limit | error.code === 'BUDGET_EXCEEDED' |
TokenLimitExceeded | Per-call token limit | error.code === 'TOKEN_LIMIT_EXCEEDED' |
RecursionKilled | Same fingerprint repeats | error.code === 'RECURSION_KILLED' |
ToolDenied | Tool blocked by policy | error.code === 'TOOL_DENIED' |
RateLimitExceeded | Tool rate cap | error.code === 'RATE_LIMIT_EXCEEDED' |
// Agent runs every 5 minutes via Vercel Cron.
// One bad config later: agent calls itself once per second at 02:00.
// Without Guard: by 08:00 your OpenAI bill is $4,700.
// With Guard:
import { guard } from 'cashclaw/guard';
import { guard as G } from 'cashclaw/guard';
const myAgent = guard.llm({
maxCostUsd: 0.50, // never spend more than 50¢ per call
maxRecursion: 5, // never repeat the same prompt 5x in 60s
agentId: 'cron-agent',
})(actualAgentLogic);
// 27 calls in, RecursionKilled fires, Telegram alerts your phone,
// the cron is poisoned but only $0.42 has been spent.When CashClaw Guard catches a BudgetExceeded on a HYRVE order, the
order is automatically paused (not delivered) and the client is notified
through the HYRVE message thread. The agent's reputation score is
protected because the platform sees "paused for protection" rather than
"failed delivery."
MIT. Same as the rest of CashClaw.
© ertugrulakben, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (scripts) in skills/cashclaw-guard of ertugrulakben/cashclaw.
Open the folder on GitHubat commit ff30cb3
Cashclaw Guard next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Cashclaw Guard this skillertugrulakben/cashclaw | 303 | — | ~1.4k | Automated safety check: Pass | MIT | |
| n8n Binary Data Handlingczlonkowski/n8n-skills | 6.4k | — | ~3.9k | Automated safety check: Pass | MIT | |
| OpenClaw to NanoClaw Migrationnanocoai/nanoclaw | 31k | — | ~6k | Automated safety check: Notes | MIT | |
| Chat SDKdatabuddy-analytics/Databuddy | 1.2k | — | ~2.6k | Automated safety check: Pass | AGPL-3.0 | |
| Traul Message Searchdandaka/traul | 112 | — | ~3.9k | Automated safety check: Notes | AGPL-3.0 | |
| Add Channel Connect Buttonnovuhq/novu | 40k | — | ~1.6k | Automated safety check: Pass | Custom licence |
czlonkowski/n8n-skills
Explains how n8n keeps file bytes in $binary apart from structured $json data, and how to read, write and preserve binary across nodes, agent tools and chat.
nanocoai/nanoclaw
Guides a conversational migration from an OpenClaw install to NanoClaw v2, carrying over identity, channel credentials, scheduled tasks and workspace files.
databuddy-analytics/Databuddy
Build multi-platform chat bots with Chat SDK (chat npm package).
dandaka/traul
Drives the traul CLI to sync, search and monitor messages from Slack, Telegram, Discord, Linear, Gmail, WhatsApp, Claude Code sessions and Markdown files.
novuhq/novu
Build a new channel Connect button (e.g. An agent skill from novuhq/novu.
letta-ai/lettabot
Set up and run LettaBot - a multi-channel AI assistant for Telegram, Slack, Discord, WhatsApp, and Signal.
ertugrulakben/cashclaw
Handles invoice creation, payment link generation, payment status tracking, and automated reminders via Stripe API.
ertugrulakben/cashclaw
Generates qualified B2B leads through systematic research, data collection, and scoring.
ertugrulakben/cashclaw
Performs comprehensive SEO audits on websites covering technical SEO, on-page optimization, off-page signals, and performance metrics.
ertugrulakben/cashclaw
Performs competitor research and generates detailed analysis reports with market positioning insights.
ertugrulakben/cashclaw
Writes professional blog posts, social media content, and email newsletters optimized for SEO and engagement.
ertugrulakben/cashclaw
The business brain of CashClaw. An agent skill from ertugrulakben/cashclaw.
Runtime protection layer for AI agents. An agent skill from ertugrulakben/cashclaw. Cashclaw Guard is an agent skill from ertugrulakben/cashclaw. Runtime protection layer for AI agents.
Run `npx skills add ertugrulakben/cashclaw --skill cashclaw-guard -a claude-code`. Or copy the skill folder (skills/cashclaw-guard in ertugrulakben/cashclaw) into .claude/skills/cashclaw-guard in your project. Claude Code loads it when a task matches its description.
Run `npx skills add ertugrulakben/cashclaw --skill cashclaw-guard -a codex`. Or copy the skill folder (skills/cashclaw-guard in ertugrulakben/cashclaw) into .agents/skills/cashclaw-guard in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ertugrulakben/cashclaw --skill cashclaw-guard -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cashclaw-guard, .gemini/skills/cashclaw-guard, .github/skills/cashclaw-guard and .opencode/skills/cashclaw-guard in your project.
Going by SKILL.md and its folder, Cashclaw Guard needs JavaScript for the scripts in its folder, the command-line tools its instructions call (npm) and credentials named TELEGRAM_BOT_TOKEN. Our summary lists: Node.js; A credential in TELEGRAM_BOT_TOKEN.
SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Cashclaw Guard is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.4k tokens (SKILL.md is roughly 5.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Cashclaw Guard: n8n Binary Data Handling (czlonkowski/n8n-skills, 6.4k stars), OpenClaw to NanoClaw Migration (nanocoai/nanoclaw, 31k stars), Chat SDK (databuddy-analytics/Databuddy, 1.2k stars) and Traul Message Search (dandaka/traul, 112 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
ertugrulakben (a GitHub user) maintains it in ertugrulakben/cashclaw, which has 303 GitHub stars. The repository holds 13 skills in this directory. The repository was last updated on October 6, 2026.
Source: ertugrulakben/cashclaw on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.