Skip to content

basemodo setup

Teach the agents on this computer to use Basemodo, by writing its Skills where they read them.

Terminal window
basemodo setup [OPTIONS]

A Skill is a folder of instructions an agent loads when a request calls for it (the Agent Skills format): Basemodo's say which commands exist, the rules every command follows, and where to read more.

It finds the agents on this computer by their configuration folders or their commands (Claude Code, Codex, Cursor, Gemini CLI, Antigravity, VS Code and Copilot, Windsurf or Devin, OpenCode) and writes the Skills where each reads them: .claude/skills for Claude Code, .agents/skills for most others. An agent it does not find gets nothing. With --user they are written in your home folder, for every project; with --project, in the current folder, for this project only. In a terminal without either, it asks which; anywhere else (a script, an agent, --json) one of them is needed. When the CLI is not signed in, it then signs it in at a terminal, as basemodo login does; anywhere else it says so, and that you run basemodo login.

The Skills are those of this CLI's version: run it again after an upgrade. It owns only Basemodo's Skills, the folders named basemodo or basemodo- that hold a SKILL.md, whichever version wrote them: run again it replaces them, removes one this version no longer carries, and changes nothing else; --remove deletes them (and the folders that leaves empty), whichever agents are still there.

With --mcp it adds the Local MCP (basemodo mcp, by the program's full path) instead, to the clients with no terminal of their own that start MCP servers from a configuration file: Claude Desktop, once it has been opened. It writes the entry the client's page gives and keeps every other entry and key of the file; run again it changes nothing, and --mcp --remove takes out that entry alone. A client keeps one of Basemodo's two MCPs, or its agent sees every tool twice: when it has the Remote MCP, setup explains, and in a terminal takes the Remote MCP's entry out and puts the Local MCP in its place only if you say so; anywhere else it changes nothing and says how to. Quit the client and open it again to load the change.

Arguments

  • --user: Write the Skills into your home folder, for every project, without asking.
  • --project: Write the Skills into the current folder, for this project only, without asking.
  • --remove: Remove Basemodo's Skills from where setup writes them, in your home folder (with --user) or the current folder (with --project), and nothing else; with --mcp, the Local MCP's entry from the clients setup adds it to.
  • --mcp: Add the Local MCP (basemodo mcp) to the clients on this computer with no terminal of their own (Claude Desktop), instead of writing the Skills.

Like every command, it also takes the global options --json and --api-url.

Examples

Teach the agents on this computer, asked where:

Terminal window
basemodo setup

Teach them in every project, without asking:

Terminal window
basemodo setup --user

Teach the agents that work in this folder only:

Terminal window
basemodo setup --project

Take Basemodo's Skills out of your home folder:

Terminal window
basemodo setup --remove --user

Add the Local MCP to Claude Desktop:

Terminal window
basemodo setup --mcp

Take it out again:

Terminal window
basemodo setup --mcp --remove

Output

With --json, it prints {"scope" (user or project), "skills", "agents": [{"name", "path", "changed"}], "not_found", "signed_in": {"person"}, "not_signed_in": {"message", "fix"}}, changed false for an agent whose Skills were already these, signed_in only when setup signed the CLI in, not_signed_in only when it is not signed in and nobody was at a terminal to sign in (its fix is basemodo login, the Person's to run). With --remove: {"scope", "removed": [the folder of each Skill removed]}. With --mcp: {"clients": [{"name", "path" (its configuration file), "added", "changed", "remote_mcp", "replaced" (the Remote MCP's entries taken out, when any)}], "not_found", "signed_in", "not_signed_in"}, added false when the client kept the Remote MCP instead. With --mcp --remove: {"removed": [each configuration file it was taken out of]}.

From an agent

Terminal only: it writes into the person's own folders, outside any App; an agent with a terminal runs it there.

Explained in