Web search and fetch tools, compatible with pi, Claude Code, Codex, Cursor, and any agent that supports the open skills standard. Uses the Moonshot (Kimi) API for internet search and URL content fetching. Trigger when you need real-time information, web page retrieval, or online research.
| Skill | Description | Trigger Context |
|---|---|---|
| kimi-web-search | Web search and page fetching (Moonshot API) | Internet search, URL content retrieval, real-time info lookup |
See each skill's
SKILL.mdfor detailed API docs, usage examples, and configuration.
Recommended — via npm:
pi install npm:@zhangweiii/skillsUpdate later:
pi update npm:@zhangweiii/skillsAlternative — via git:
pi install git:github.com/zhangweiii/skillsEnable only one skill (filter out the rest):
pi config --skills # interactively choose which skills to enableOr specify exactly in ~/.pi/agent/settings.json:
{
"packages": [
{
"source": "npm:@zhangweiii/skills",
"skills": ["skills/kimi-web-search"]
}
]
}Invoke in session:
/skill:kimi-web-search
npx skills add zhangweiii/skillsOr install a specific skill only:
npx skills add zhangweiii/skills --skill kimi-web-searchRequires a Moonshot (Kimi) subscription and the following environment variables:
| Variable | Required | Default | Description |
|---|---|---|---|
KIMI_API_KEY |
Yes | — | Bearer token for Authorization. Must be set. |
SEARCH_BASE_URL |
No | https://api.kimi.com/coding/v1/search |
Search endpoint. Override for a different provider. |
FETCH_BASE_URL |
No | https://api.kimi.com/coding/v1/fetch |
Fetch endpoint. Override for a different provider. |
Set before running:
export KIMI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxOr configure in your agent's settings. If KIMI_API_KEY is missing, the skill halts with a prompt to configure it.
These endpoints are part of the Model Context Protocol (MCP) infrastructure, not standard chat-completion APIs. If you get
403 Forbidden, verify that your Moonshot account has the search/fetch service enabled.
Copy subdirectories under skills/ into your agent's skills directory:
| Agent | Path |
|---|---|
| pi | ~/.pi/agent/skills/ |
| Kimi CLI | ~/.kimi/skills/ |
| Claude Code | ~/.claude/skills/ |
| Generic | .agents/skills/ |
skills/
├── README.md # This file: repo overview and install guide
├── README.zh.md # Chinese version of this README
├── package.json # pi package manifest
├── skills/ # All skill directories
│ └── kimi-web-search/
│ └── SKILL.md # Core skill instructions (API spec, calling guide)
└── scripts/ # Repo-wide shared scripts
└── search.ts # TypeScript CLI helper
Some skills ship with standalone CLI scripts for quick testing:
TypeScript (requires Node.js 18+):
npx tsx scripts/search.ts search "Python 3.12 release notes"
npx tsx scripts/search.ts fetch "https://docs.python.org/3/whatsnew/3.12.html"- Create a new directory under
skills/, use lowercase kebab-case (e.g.my-skill) - Write a
SKILL.mdwith:- YAML frontmatter (
name+description; description must contain "Use when..." trigger conditions) - Quick start, workflows, advanced features
- YAML frontmatter (
- If it exceeds 100 lines, split into
REFERENCE.mdorEXAMPLES.md - Put deterministic operation scripts in
scripts/or the skill's ownscripts/subdir - Update the Skills table in this README
Reference: write-a-skill best practices
MIT