funcoding-cli
A command line for AI coding agents: find and install Agent Skills, configure MCP servers, sync favorites, and read AI news and docs.
Put your agent to work
Send this to Claude Code, Codex or Cursor. init installs the tool globally and adds the funcoding Skill, and from then on the agent calls the tool whenever it needs to.
Run npx --yes funcoding-cli@latest init, then find and install a Skill for working with PDFs.
You can also run it yourself in a terminal (requires Node.js 18.17 or later):
Install globally and add the funcoding Skill to the current agent
npx --yes funcoding-cli@latest init
Once installed, the command is funcoding (or fun for short). Install a Skill for every agent on this machine:
fun skills add anthropics/skills/pdf --agent=all
Configure an MCP server for Cursor
fun mcp add <owner/repo> --agent=cursor
Commands
Essentials
- funcoding init
- Install the tool globally and add the funcoding Skill to your agent.
- funcoding update
- Update to the latest version and refresh the installed funcoding Skill.
- funcoding info [<field>]
- Show environment details: version, sign-in status, and the agents and Skill directories on this machine.
- funcoding help [<command>]
- Show help. Every command also accepts --help.
Skill
- funcoding skills find <query>
- Find Skills by keyword.
- funcoding skills info <id>
- Show the description, file list and full SKILL.md so the agent can review it before installing.
- funcoding skills add <id>...
- Install one or more Skills. You can also paste a detail page URL from the site.
- funcoding skills list
- List the Skills installed for each agent, in the user directory and the current project.
- funcoding skills update [<name>]
- Reinstall from the original source. With --check, only report whether updates are available.
- funcoding skills remove <name>...
- Remove Skills installed with funcoding-cli. A backup is made first.
MCP
- funcoding mcp find <query>
- Find MCP servers by keyword.
- funcoding mcp info <id>
- Show the available launch options and the environment variables or headers they need.
- funcoding mcp add <id>
- Write the server into the agent’s MCP config. Pass required values with --env or --header.
- funcoding mcp list
- List configured MCP servers.
- funcoding mcp remove <name>...
- Remove an MCP server from the config. The original file is backed up first.
Save
- funcoding auth login | logout | status
- Sign in by authorizing in the browser, sign out, or show the current account.
- funcoding favorites list
- List the Skills and MCP servers you’ve saved on the site.
- funcoding favorites sync
- Install all your favorites at once, skipping anything already installed.
News and docs
- funcoding news list
- Show trending AI news.
- funcoding news daily [<date>]
- Show the AI digest for a given day, or the latest issue if no date is given.
- funcoding docs search <query>
- Search the site’s Chinese docs. Filter by agent with --agent.
- funcoding docs fetch <agent/path>
- Read a doc in full (Markdown), with its official sources and verification date.
Conventions for agents
Every command is non-interactive; anything that needs confirmation is expressed through flags.
- With --json, stdout contains a single JSON object: { "ok": true, … } on success, or { "ok": false, "error": { "code", "message", "hint" } } on failure, where hint suggests the next command to run.
- --agent selects the target agents (claude-code, codex, cursor; comma-separated; all means every agent detected on this machine). Without it, Claude Code is the default, including when running inside Claude Code.
- --project installs into the current project so it can be committed with the repository; otherwise installs go to the user directory and apply to every project.
| Exit code | Meaning |
|---|---|
| 0 | Success |
| 1 | General error |
| 2 | Invalid arguments or missing required values |
| 3 | Not found |
| 4 | Target already exists; use --force |
| 5 | Not signed in, or the session has expired |
Install locations
Locations come from each agent’s official docs, which remain the source of truth.
| --agent | Skill | MCP |
|---|---|---|
| claude-code | ~/.claude/skills/ .claude/skills/ | claude mcp add-json --scope user .mcp.json |
| codex | ~/.agents/skills/ .agents/skills/ | ~/.codex/config.toml .codex/config.toml |
| cursor | ~/.cursor/skills/ .cursor/skills/ | ~/.cursor/mcp.json .cursor/mcp.json |
The first line is the user directory; the second is the current project (--project).
Security
- A Skill acts on the instructions in its SKILL.md and may run the scripts it contains. The funcoding Skill tells the agent to review a Skill with skills info and get your approval before installing it.
- funcoding-cli only downloads files from the Skill’s own directory on GitHub and rejects any path outside the target directory. Each Skill is limited to 200 files and 10 MB.
- Before overwriting or removing a Skill, or changing an MCP config, the original is backed up to the CLI config directory (~/.config/funcoding/ on macOS and Linux, %APPDATA%\funcoding on Windows).
- Keys required by MCP servers are passed as command arguments and written only to the agent’s config file; they are never sent to the site.