返回顶部
t

tool-calling

Deep workflow for LLM tool/function calling—schema design, validation, permissions, errors, idempotency, testing, and safe orchestration with agents. Use when wiring models to APIs, databases, or internal tools.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.0
安全检测
已通过
265
下载量
0
收藏
概述
安装方式
版本历史

tool-calling

# Tool Calling (Deep Workflow) Tool calling is **contract design** between a **probabilistic** planner (the model) and **deterministic** systems. Failures are usually **schema**, **permissions**, or **ambiguity**—not the LLM “being dumb.” ## When to Offer This Workflow **Trigger conditions:** - Designing OpenAI/Anthropic-style **functions**, **MCP tools**, or internal JSON tool protocols - Debugging wrong arguments, hallucinated parameters, or unsafe side effects - Building agents with **many** tools—selection and routing problems **Initial offer:** Use **six stages**: (1) define tool surface, (2) schema & validation, (3) authz & safety, (4) execution semantics, (5) errors & observability, (6) evaluation & regression. Confirm **side-effect class** (read-only vs write). --- ## Stage 1: Define Tool Surface **Goal:** **Minimize** tools; **maximize** clarity per tool. ### Principles - **One action** per tool when possible—avoid mega-tools with mode flags unless necessary - **Names** descriptive: `search_orders` not `do_stuff` - **Prefer** idempotent operations where writes exist; separate **read** vs **write** clearly ### Anti-patterns - Exposing **raw SQL** or **shell** to the model - **Too many** overlapping tools → routing errors **Exit condition:** Tool list with **purpose**, **inputs**, **outputs**, **side effects** table. --- ## Stage 2: Schema & Validation **Goal:** Arguments are **typed**, **constrained**, and **machine-validated** before execution. ### Practices - JSON Schema: **enums**, **min/max**, **patterns**, **required** fields - **Normalize** dates, IDs, currencies server-side—**never** trust model formatting alone - **Default** behaviors explicit in description + schema ### Descriptions - Tool and parameter **docstrings** seen by model—**precise** language; **examples** of valid args **Exit condition:** Validator rejects **invalid** args with **actionable** errors back to model or orchestrator. --- ## Stage 3: Authorization & Safety **Goal:** Every tool call runs as **some principal** with **least privilege**. ### Patterns - **User-scoped** credentials carried from session; tool implementation **re-checks** ownership (e.g., order_id belongs to user) - **Admin tools** behind **explicit** allowlists and **human approval** when needed - **Rate limits** per user + global circuit breakers ### Data exfiltration - Tools that **read** sensitive data need **output filtering** and **logging** policies **Exit condition:** **Threat brief**: “What if model is tricked into calling tool X?” answered. --- ## Stage 4: Execution Semantics **Goal:** Clear **transactionality**, **retries**, and **idempotency**. ### Design - **Idempotency keys** for writes; **dedupe** window - **Timeouts** and **cancellation** propagation - **Ordering**: parallel safe vs must be serial ### Long operations - **Async** jobs with **poll** tool vs blocking calls—prefer **non-blocking** for UX and cost **Exit condition:** Semantics documented for **retry** behavior (at-least-once delivery common). --- ## Stage 5: Errors & Observability **Goal:** Model (or orchestrator) can **recover** from failures **without** leaking internals. ### Error messages - **Structured** error codes: `ORDER_NOT_FOUND`, `PERMISSION_DENIED` - **Hints** for model on how to fix—**without** stack traces to end users ### Observability - **Trace IDs** across tool calls; **audit log** for write tools (who/when/args hash) **Exit condition:** Dashboards/alerts on **tool error rate**, **latency**, **denials**. --- ## Stage 6: Evaluation & Regression **Goal:** Tool changes are **tested** like APIs. ### Harness - **Golden** conversations with expected tool calls (args normalized) - **Adversarial** prompts attempting **privilege escalation** - **Version** tools; **deprecate** with compatibility window **Exit condition:** CI or manual **eval suite** before deploying new tools/schemas. --- ## Final Review Checklist - [ ] Minimal orthogonal tool set - [ ] Strict schema validation on server - [ ] AuthZ enforced per call; sensitive reads controlled - [ ] Idempotency and timeouts defined for writes - [ ] Structured errors + observability + eval harness ## Tips for Effective Guidance - Treat tool descriptions as **API docs the model reads**—iterate wording like UX copy. - Recommend **two-step** patterns for dangerous ops: propose → confirm (human or policy). - When using **MCP**, same discipline—**server** must validate everything. ## Handling Deviations - **Read-only RAG**: fewer semantic risks—still validate query args and **injection** into search backends. - **Local tools** (filesystem): **sandbox**, **path allowlists**, **size limits**.

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 tool-calling-1776031594 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 tool-calling-1776031594 技能

通过命令行安装

skillhub install tool-calling-1776031594

下载 Zip 包

⬇ 下载 tool-calling v1.0.0

文件大小: 3 KB | 发布时间: 2026-4-13 12:22

v1.0.0 最新 2026-4-13 12:22
- Initial release with a comprehensive workflow for safe, reliable tool/function calling with LLMs.
- Covers contract design, schema validation, permission checks, error handling, idempotency, and orchestration best practices.
- Outlines a six-stage process: tool surface definition, schema & validation, authorization & safety, execution semantics, errors & observability, and evaluation & regression.
- Provides actionable principles, anti-patterns, and exit conditions for each stage.
- Includes a final review checklist and practical tips for ensuring secure and predictable tool integrations.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部