Skip to main content

CLI tool for scaffolding and syncing AI agent workspace configuration files

Project description

AgentsMD

CLI tool for scaffolding and syncing AI agent workspace configuration files.

Installation

pip install agentsmd

Quick Start

# First, authenticate (get a token from https://agentsmd.live)
agentsmd login --token <your-token>

# Create a new workspace in the current folder
agentsmd init

# Push your workspace to the cloud
agentsmd sync

On another machine

agentsmd login --token <same-token>
agentsmd init                    # pick your workspace from the list

Features

  • Import-or-Generate Initagentsmd init detects existing agent files (CLAUDE.md, .cursor/rules/, .claude/, .cursorrules, .windsurfrules, copilot-instructions.md, CONVENTIONS.md, .clinerules, .continue/, AGENTS.md, .rules, KIMI.md…) and imports them. If none are present, it asks one question (which tool?) and scans your repo (package.json scripts, framework, README) to generate a single high-quality config file.
  • Multi-Machine Sync — Push and pull workspaces across machines with a single token
  • Cross-Tool Sync — Convert between AI tool config formats (Claude Code, Cursor, Copilot, Windsurf)
  • Format Migration — Migrate existing config files between formats
  • Reconciliation — Re-derive all tool formats from a single source of truth

How workspaces work

A workspace is a named set of agent config files that lives in your AgentsMD cloud account. Each local folder is bound to one workspace, so commands like sync know what to push and pull.

You can rename or move the folder freely. The binding follows the directory. Free accounts get 1 workspace; Pro unlocks unlimited.

Commands

Command Description
agentsmd login --token <X> Authenticate via API token
agentsmd logout Clear local credentials
agentsmd init Show workspace picker (clone existing or create new)
agentsmd init --name NAME Create a new workspace (shortcut when no cloud workspaces exist)
agentsmd init --from <name> Clone an existing workspace by name
agentsmd init --directory <dir> Target directory when cloning with --from
agentsmd init --force Overwrite a target file in generate-mode if it already exists
agentsmd init --no-push Skip the automatic cloud upload at the end of init
agentsmd init --no-hide-ide Don't auto-hide .agentsmd/ from VS Code / Cursor / Zed / Sublime / JetBrains
agentsmd list List your cloud workspaces
agentsmd link <name> Bind the current folder to an existing workspace
agentsmd link --remove Remove the local binding (cloud workspace is preserved)
agentsmd delete <name> Delete a cloud workspace and all its files
agentsmd delete <name> --force Skip confirmation when deleting
agentsmd up Upload local changes to the cloud
agentsmd down Download cloud changes to local
agentsmd sync Bidirectional sync with the cloud (uses your saved conflict strategy)
agentsmd sync --interactive Per-conflict prompt: [L]ocal / [C]loud / [B]oth / [M]erge
agentsmd sync --auto Newest-mtime wins; rejected version saved under .agentsmd/conflicts/
agentsmd status Show sync status for the current workspace
agentsmd restore Undo the last sync/up/down by restoring backed-up files
agentsmd restore --dry-run Preview what restore would do without writing
agentsmd resolve <path> Redo the most recent conflict for a single file
agentsmd config get <key> Print a stored preference (e.g. conflict.strategy)
agentsmd config set <key> <val> Store a preference (e.g. conflict.strategy interactive)
agentsmd config unset <key> Remove a preference (restores default behavior)
agentsmd config list Show every stored preference
agentsmd convert --reconcile Re-derive all tool config formats from the source of truth
agentsmd convert --from <fmt> Convert between AI tool config formats
agentsmd convert --from <fmt> --to <fmt> Convert to a specific target format
agentsmd convert --from <fmt> --dry-run Print conversion output without writing files

Supported AI Tools

agentsmd init detects and syncs config from any of these. Generate-mode picks one as the target.

Tool Files
Claude Code CLAUDE.md, .claude/
Cursor .cursorrules, .cursor/rules/*.mdc
GitHub Copilot .github/copilot-instructions.md, .github/instructions/
Windsurf .windsurfrules, .windsurf/rules/
OpenCode / Codex AGENTS.md
Aider CONVENTIONS.md, .aider.conf.yml
Cline .clinerules
Continue .continue/
Zed .rules
Kimi CLI KIMI.md, .kimi/

Requirements

  • Python 3.9+

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agentsmd-1.2.3.tar.gz (49.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agentsmd-1.2.3-py3-none-any.whl (72.1 kB view details)

Uploaded Python 3

File details

Details for the file agentsmd-1.2.3.tar.gz.

File metadata

  • Download URL: agentsmd-1.2.3.tar.gz
  • Upload date:
  • Size: 49.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for agentsmd-1.2.3.tar.gz
Algorithm Hash digest
SHA256 d8e7cf3c72df3de8d366370a7ecbf6063b2486abdc6b4ddbe7af9d3963153885
MD5 7363cb049a55e10bddf626c3bc29e85c
BLAKE2b-256 fd619e403ed308dd5ba75310778a2bc05ac860cb193ecedc0094dcf7a7bff067

See more details on using hashes here.

File details

Details for the file agentsmd-1.2.3-py3-none-any.whl.

File metadata

  • Download URL: agentsmd-1.2.3-py3-none-any.whl
  • Upload date:
  • Size: 72.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for agentsmd-1.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 93f82fcf57e00ebd462ebc0bebd92829d6253e4f542eba709cce4617588f4af9
MD5 b5f3d79654895ece395f04168dab374c
BLAKE2b-256 0368a5114f46111bb865eb6c1367d8f322867f3ff2604138d10f2b310664e8e5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page