Skip to content

Build reusable custom tools for Claude Code

Got a tool working in Claude Code? Keep it.

Build a tool with Claude Code and save it as a Kody package, then use it again in your next session or from another connected agent.

“Check the latest release for these repositories.”

release-lookuprepositories → release results
Claude CodeCodexOther connected agents

Your connected agents can all use the same saved tool.

Give the next agent
a tool it can call.

Try the sample lookup below. It uses example data and won’t call GitHub or create a package.

release-lookupReads data without changing it

Input

Caller

Find my saved release lookup and check this repository.

Claude Code receives

{
  "repository": "acme/website",
  "status": "released",
  "version": "v1.4.0",
  "url": "https://github.com/acme/website/releases/tag/v1.4.0"
}

The next agent gets the same result format, so it can use the tool without rebuilding it.

Give your agent code it can run again.

Keep your agent instructions for choosing the tool. Save the repeatable work in a package and explain what the tool accepts and what it returns.

Read the package-authoring guide ↗
Inputs
Decide which repositories to accept and how to handle an empty list.
Results
Return the repository, version, release URL, and publication time. Separate missing access from no releases.
State and access
Keep credentials in account integrations or secrets. Keep track of the last completed step in package storage.

Test it in a fresh conversation.

  1. Get one task working

    Connect Claude Code, load the authoring guide, and explore a small read-only task through search and execute.

  2. Save and publish

    Describe what goes in and what comes back. Check pagination, prereleases, and unavailable services before depending on it.

  3. Try a fresh conversation

    Find and call the package from a second connected agent. Review and publish later changes, using owner approval if the package is locked.

Kody has runtime and usage limits. A saved package doesn’t make every local binary or long-running server portable. See the package lifecycle ↗

Build your first
reusable tool.

Connect your agent, then give it this starting prompt.

Get started with Kody ↗

Load the Kody package-authoring guide. Build a read-only release lookup for a list of GitHub repositories. Return repository, version, release URL, and publication time. Handle missing access separately from no releases. Save and publish it as a reusable package, then show me how another connected agent can find it.