Docs menu

Core Concepts

Import your existing setup

Keep the instructions and skills you already have. Midas reads AGENTS.md natively and imports files written for other coding agents: CLAUDE.md, Gemini, Cursor, Windsurf, Cline, and Copilot, plus their skill folders.

Preview, then apply

Start from the project root. Run midas sync with no action and it does a dry run: it finds the sources and prints the plan without touching a file.

midas sync              # preview the plan
midas sync apply        # write the import
midas sync --json       # print the plan as JSON

Use --dir to scan a project other than the current directory.

midas sync --dir ~/work/api

Inside a session, /sync opens the same import in one dialog. It lists what it detected, and Enter imports every detected source at once, so look at the list before you confirm. Esc cancels. Midas also offers the import once per workspace after the first session, and remembers that it asked.

What it reads

  • CLAUDE.mdMerged into AGENTS.md as a marked section, keyed by the source path.
  • GEMINI.mdMerged into AGENTS.md the same way.
  • .cursorrulesMerged into AGENTS.md as a Cursor rules section.
  • .cursor/rules/**/*.mdcMerged into AGENTS.md, one section per rule file. Only .mdc files are read.
  • .windsurfrulesMerged into AGENTS.md as a Windsurf rules section.
  • .clinerulesMerged into AGENTS.md as a Cline rules section.
  • .github/copilot-instructions.mdMerged into AGENTS.md as a Copilot instructions section.
  • .claude/skills/**/SKILL.mdCopied into .midas/skills/<name>/, including the rest of the skill directory.
  • .agents/skills/**/SKILL.mdCopied into .midas/skills/<name>/, including the rest of the skill directory.
AGENTS.md is not an import source. It is the file Midas already reads, so sync leaves it alone except for the marked sections it manages. There is no separate skills.md source: skills are read from the skill folders above. Detection is rooted at the workspace, not at parent directories.

What it writes

Instruction files become sections in AGENTS.md, wrapped in markers:

<!-- midas:sync:begin source="CLAUDE.md" -->
...imported content...
<!-- midas:sync:end source="CLAUDE.md" -->

Each section is keyed by its source path. On a later run, a source that already has a section is replaced in place. A new source is appended. Your own headings and prose elsewhere in AGENTS.md are left as they are. Editing inside the markers means the next import overwrites that change, so put lasting project instructions outside them.

Skills are copied to .midas/skills/<name>/ as a whole directory, including SKILL.md. The name comes from the frontmatter name, or the directory name when there is none.

Midas records what it imported in .midas/sync.json, with the source, target, content hash, and time. If a source has not changed, Midas skips it, so repeated runs are fast.

Bring your memory too

If another assistant exported a memory file, import it instead of retyping it:

midas sync --memory memory.md
cat export.txt | midas sync --memory -

The import reads category sections and the lines under them. Lines in the form [YYYY-MM-DD] - text become memory records.

  • instructionsImported as preference memory.
  • preferencesImported as preference memory.
  • identityImported as fact memory.
  • careerImported as fact memory.
  • projectsImported as fact memory.
  • other sectionsImported as general memory.

After the import

  • Open AGENTS.md and check the merged sections. Move anything you want to keep permanently outside the sync markers.
  • Review the copied skills in .midas/skills. A skill becomes a slash command with its own name.
  • Run /init if you want Midas to draft or refresh AGENTS.md from the project itself.
  • Keep the same files in the repository if your team uses several agents. Sync is safe to run again, and each tool keeps its own source.

Next steps