dotagentsOne Config for Your Coding Agents
agents.toml. dotagents installs shared dependencies and writes each tool's local config.version = 1
agents = ["claude", "cursor", "codex", "vscode", "opencode"]
[trust]
github_orgs = ["getsentry"]
[[skills]]
name = "find-bugs"
source = "getsentry/skills"
[[skills]]
name = "commit"
source = "getsentry/skills"
[[subagents]]
name = "code-reviewer"
source = "getsentry/agent-pack"
targets = ["claude", "codex", "opencode"]
[[plugins]]
name = "review-tools"
source = "getsentry/agent-plugins"
path = "plugins/review-tools"
targets = ["claude", "cursor", "codex", "opencode"]What dotagents manages
Use one global config for your personal setup, or commit one project config for your team. dotagents keeps generated agent state in the right scope.
SKILL.md directories from GitHub, GitLab, git URLs, well-known HTTPS sources, or local paths.MCP serversDeclare stdio and HTTP servers once, including environment variables and headers.HooksGenerate hook config for supported agents and refresh local state after pulls.SubagentsDeclare custom Claude, Cursor, Codex, and OpenCode subagents once and generate native runtime files.PluginsInstall canonical plugin bundles and project supported skills, agents, manifests, and marketplaces into runtime-native locations.Trust policyRestrict skill, subagent, and plugin sources before dotagents performs any network operation.Quick Start: Global by Default
Run init from any directory to create global config under ~/.agents/. Add --project to every command when you want repository-local config instead.
$ npx @sentry/dotagents init
$ npx @sentry/dotagents add getsentry/skills find-bugs
$ npx @sentry/dotagents add getsentry/agent-plugins review-toolsSupported Agents
The agents array tells dotagents which tools to configure. Grok and Pi are plugin-only targets; Pi also reads .agents/skills/ directly.
| Agent | Config Dir | MCP Config | Hooks | Subagents |
|---|---|---|---|---|
claude |
.claude |
.mcp.json |
.claude/settings.json |
.claude/agents/*.md |
cursor |
.cursor |
.cursor/mcp.json |
.cursor/hooks.json |
.cursor/agents/*.md |
codex |
.codex |
.codex/config.toml |
None | .codex/agents/*.toml |
vscode |
.vscode |
.vscode/mcp.json |
.claude/settings.json |
None |
opencode |
.opencode |
.opencode/opencode.jsonc |
None | .opencode/agents/*.md |
OpenCode reuses existing project config from .opencode/opencode.jsonc, .opencode/opencode.json, opencode.jsonc, or opencode.json, in that order. New projects use .opencode/opencode.jsonc.
Adding Dependencies
dotagents checks git and local sources for plugins first, then falls back to skills. Pass dependency names when a source contains more than one.
# Add a single skill from a GitHub repodotagents add getsentry/skills find-bugs
# Add all skills from a repodotagents add getsentry/skills --all
# Add a plugindotagents add getsentry/agent-plugins review-tools
# Pin to a specific refdotagents add getsentry/warden@v1.0.0
# Add from GitLabdotagents add https://gitlab.com/group/repo find-bugs
# From a well-known HTTPS sourcedotagents add https://cli.sentry.dev error-trackingShorthand owner/repo resolves using defaultRepositorySource in agents.toml (default: github).