One AGENTS.md
A single AGENTS.md works across every agent that follows the agents.md standard. Agent-specific files only reference it.
Rust CLI · agents.md standard · MIT · v23.1.2 · 2026-08-29
One AGENTS.md, ten coding agents, zero drift. slopctl installs, updates, and synchronizes agent instructions and skills across every workspace you touch.
Every agent invents its own instruction files. slopctl keeps one source of truth and routes it to wherever each agent looks.
A single AGENTS.md works across every agent that follows the agents.md standard. Agent-specific files only reference it.
Define skills per agent, per language, or top-level. Local directories and full GitHub URLs both work, routed to the right folder for each agent.
Agents and languages are entries in YAML. Add a new one by editing templates.yml. No rebuild required.
Reconcile customized files with updated templates using OpenAI, Anthropic, Ollama, or Mistral. Never a blind overwrite.
UPDATES.md keeps a "Recent Updates & Decisions" history below a changelog marker that init, update, and merge never overwrite.
Every destructive operation requires explicit human confirmation. --dry-run previews any command first.
From a clean checkout to a configured workspace in under a minute.
Build from source with Cargo.
git clone https://github.com/heikopanjas/slopctl.git
cd slopctl
cargo build --release
sudo cp target/release/slopctl /usr/local/bin/
# or: cargo install --path .Fetches templates.yml and every template into your global cache.
slopctl templates --updateChoose a language, an agent, or both. One init call installs AGENTS.md, UPDATES.md, config files and skills under .agents/skills/.
cd your-project
slopctl init --lang rust --agent claude # Rust conventions + Claude prompts
slopctl init --agent cursor # agent only, no language filesPull catalog changes into the workspace, or merge customized files with an LLM.
slopctl templates --update && slopctl update
slopctl merge --previewOpen any unit for usage, options, examples and behavior.
A single AGENTS.md works with every agent following the agents.md standard. Claude Code, Cursor and Copilot also get a slim redirect stub, since each auto-loads its own file first. Session prompts use native folders where agents have them and an init-session skill where they don't.
c-coding-conventions cmake-build-commands
cpp-coding-conventions cmake-build-commands
rust-coding-conventions rust-build-commands
shell-coding-conventions shell-build-commands
swift-coding-conventions swift-build-commands swift-concurrency-pro swift-testing-pro
all Swift skills swiftui-pro
Everything slopctl installs is described in templates.yml. Point --from at your own repo or a local folder and add agents, languages or Agent Skills without touching the CLI. Skill sources can be local directories or full GitHub URLs, cached with one tarball download per repository. The default catalog lives in slopctl-templates.
# templates.yml (excerpt)
languages:
rust:
skills:
- source: https://github.com/you/skills/tree/main/rust-style
- source: skills/rust-build-commands # local path$HOME/.cache/slopctl/templates/ on every platform. $XDG_CACHE_HOME is honored if set.AGENTS.md when updating. Use --force to override, or slopctl merge to combine.--from to templates --update with a local path or GitHub URL. The source needs a templates.yml.--dry-run to any command, for example slopctl init --lang rust --dry-run.--mission "text" with init, or --mission @mission.md to read it from a file.slopctl init --agent <new-agent>. The language is read from the file tracker, so switching from Cursor to Claude keeps your Rust setup.AGENTS.md, UPDATES.md and the top-level skills, just no language conventions or config files. Good for docs repos and polyglot projects.slopctl remove --agent claude, --lang rust, --all (keeps AGENTS.md) or --purge (everything).slopctl doctor to list issues and slopctl doctor --fix to repair them. --smart adds LLM linting of AGENTS.md..agents/skills/. Native-only agents (claude, vibe, kiro, cline) get a copy in their own folder, such as .claude/skills/.Install once, init anywhere, and let every agent read the same instructions.