Skip to content
Productivity
Skill

/new-tool

Add a new tool to Waku the right way — schema, safe execution, deterministic eval, honest output. Use when adding or modifying agent tools or when the user asks for a new capability.

From plugin
waku-agent
2.2k14 skills

Claude Code

$ npx -y skills add ShenSeanChen/waku-agent --skill new-tool --agent claude-code

SKILL.md

new-tool.SKILL.md
name: new-tool
description: Add a new tool to Waku the right way — schema, safe execution, deterministic eval, honest output. Use when adding or modifying agent tools or when the user asks for a new capability.

Procedure

1. One file per tool in `waku/tools/`, exposing `make_tool(...) -> Tool`. Copy the shape of `waku/tools/calendar.py` (the reference implementation). 2. The tool function must be:

  • **Idempotent** where repeat calls could occur (check-before-insert, like

create_event's title+start guard).

  • **Honest in its return string**: say exactly where the artifact went

(file path, table) and how the user can see it. Never imply effects the tool doesn't have.

  • **Local-first by default**: write to `.waku/` or state.db; real external

services go behind env-gated adapters. 3. Register it in `waku/tools/__init__.py:build_registry`. 4. Add deterministic eval coverage in `evals/deterministic/`:

  • offline: scripted client fires the tool → assert the artifact (DB row/file)
  • a dataset case in `evals/dataset.jsonl` for the live tier

5. If the tool needs usage guidance, add a rule to DEFAULT_SOUL (`waku/runtime/session.py`) or a skill in `skills/`. 6. Check scope first: the repo ships flagship-task tools only. New capabilities beyond scheduling/notes/messages should be discussed before building.

@shenseanchen
Ships withwaku-agent

Your own AI assistant. On your laptop. In code you can read in an afternoon. Meet Waku — a local-first personal assistant that shows the four pillars behind every serious agent: Harness · Loop · Memory · Eval/LLM-Ops. No frameworks hiding the good parts.

Stars on GitHub

Momentum

stars in total
2.2k
Star history of ShenSeanChen/waku-agent on GitHub, a chart by star-history.com

Other skills on waku-agent.

excalidraw

excalidraw

Generate an Excalidraw whiteboard in Sean's hand-drawn video style (Excalifont, roughness 1, green signature, socials +…

pr-worktree

pr-worktree

Create and tear down the throwaway git worktrees used to test community PRs for waku-agent, without leaking API keys or leaving…

release

release

Cut a waku-agent release when main is ahead of the last tag. Check the gap, bump the version, tag, confirm PyPI, announce. Use…

review-pr

review-pr

Walk Sean through an incoming waku-agent PR or issue and present it his way — four fixed sections: what this is, why it matters,…

ship

ship

Commit and push the current work properly — lint, run the release gate, write a detailed commit message, push to GitHub. Use…

pokedex

pokedex

Look up any Pokemon's types, base stats, and abilities from the public PokeAPI. Use whenever the user mentions a specific Pokemon…

More skills from other plugins.

i-have-adhd

i-have-adhd

Shape output for a reader with ADHD: lead with the next action, number multi-step work, restate state across turns, suppress…

@ayghri@ayghriInstall Skill
ab-test-analysis

ab-test-analysis

Analyze A/B test results with statistical significance, sample size validation, confidence intervals, and ship/extend/stop…

@phuryn@phurynInstall Skill
distilly

distilly

Set up the owner profile so a personal agent knows who it works for (first-run setup, \"get to know me\"), or distill colleague,…

Questions about new-tool.

Which coding agents can use new-tool?
new-tool installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.