Skip to main content
neetodesk setup writes NeetoDesk instructions into the place your assistant already reads, so it knows which commands exist and how to call them. Run it once per project or per machine, depending on the assistant, and again after every upgrade so the instructions match the commands the new version ships.
This is not the same thing as the MCP server. setup teaches an assistant to run the CLI as a shell command using your CLI session. The MCP server exposes NeetoDesk as tools over HTTP, with its own connection and credentials. Use whichever suits the assistant in front of you, or both.

What each command writes

The project-scoped commands write into the working directory, so run them from the repository root. Each prints Wrote <path> the first time and Updated <path> afterwards. Cursor and Windsurf each get a rule file that holds nothing but the NeetoDesk instructions, so re-running overwrites it. Keep your own rules in a separate file in the same directory rather than editing this one. Copilot, Gemini and Codex share their file with your other instructions, so the CLI adds a ## NeetoDesk CLI section between <!-- neetodesk:start --> and <!-- neetodesk:end --> marker lines and leaves everything outside the markers alone. Re-running replaces the block between the markers rather than appending a second copy.

Claude Code

Claude Code installs plugins through interactive slash commands, so setup claude extracts the plugin and then tells you the two commands to run:
The plugin holds the NeetoDesk skill, a slash command that runs neetodesk doctor, and a session-start hook that reports whether the CLI is installed and signed in. The command fails if ~/.claude/ does not exist, which means Claude Code has not been run on this machine yet. Re-running clears and re-extracts the plugin directory.

Everything else

Restart the assistant, or start a new conversation, so it picks the instructions up.

Discovering commands

The instructions point the assistant at neetodesk commands, which prints the complete command catalog as JSON, including any flag added after the instructions were written. An assistant can run it whenever it needs the exact flags for a command:

Output for agents

Assistants read command output as text, and JSON spends a lot of tokens on punctuation. --toon emits the same data in a more compact encoding:
See Output formats for the other modes.