Labsco
getsentry logo

dotagents

βœ“ Officialβ˜… 205

by sentry Β· part of getsentry/dotagents

Manage agent skill dependencies with dotagents. Use when asked to "add a skill", "install skills", "remove a skill", "dotagents init", "agents.toml", "agents.lock", "sync skills", "list skills", "set up dotagents", "configure trust", "add MCP server", "add hook", "wildcard skills", "user scope", "dotagents doctor", or any dotagents-related task.

πŸ”₯πŸ”₯πŸ”₯βœ“ VerifiedFreeNeeds API keys
🧩 One of 5 skills in the getsentry/dotagents package β€” works on its own, and pairs well with its siblings.

This is the playbook your agent receives when the skill activates β€” you don't need to read it to use the skill, but it's here to audit before installing.

Manage dependencies declared in agents.toml. dotagents resolves skills, subagents, plugins, MCP servers, and hooks so agent tools (Claude Code, Cursor, Codex, GitHub Copilot, Grok, VS Code, OpenCode, Pi) can use shared global or project config.

References

Read the relevant reference when the task requires deeper detail:

DocumentRead When
references/cli-reference.mdFull command options, flags, examples
references/configuration.mdEditing agents.toml, source formats, trust, MCP, hooks, wildcards, scopes
references/config-schema.mdExact field names, types, and defaults

Commands

CommandDescription
npx @sentry/dotagents initInitialize global config and managed directories
npx @sentry/dotagents installInstall all dependencies from agents.toml
npx @sentry/dotagents add <specifier> [names...]Discover and add plugins, otherwise skills
npx @sentry/dotagents remove <name>Remove a skill or plugin
npx @sentry/dotagents syncReconcile state (adopt orphans, prune stale managed artifacts, repair configs)
npx @sentry/dotagents listShow declared skills, plugins, and status
npx @sentry/dotagents mcpAdd, remove, or list MCP server declarations
npx @sentry/dotagents trustAdd, remove, or list trusted sources
npx @sentry/dotagents doctorCheck global health and fix issues

All commands default to global scope (~/.agents/). --project selects the current repository (or current directory outside Git). --global is an explicit global spelling, and --user is its compatibility alias. Never combine --project with a global alias.

Adding Plugins

Use the same add command for plugins. Git and local sources are checked for plugins first; when any plugin is found, that source is treated as plugin-only. Well-known HTTPS sources remain skill-only.

# Add a plugin to this repository
npx @sentry/dotagents --project add getsentry/agent-plugins review-tools

add installs immediately, so do not follow it with a redundant install. For plugins, --all records a snapshot of every plugin currently found. For skills, --all creates a wildcard that can include future skills. Re-adding an identical declaration refreshes its installation without changing agents.toml; conflicting declarations still fail.

For full options and flags, read references/cli-reference.md.

Safe Removal and Trust

Use remove instead of manually deleting managed files or editing agents.lock. For a project dependency, keep explicit scope: npx @sentry/dotagents --project remove <name>. When a wildcard provides the skill, let remove add the name to the wildcard's exclude list so the next install does not restore it.

When trust blocks a source, inspect syntax without mutation using npx @sentry/dotagents trust add --help. Then show the exact scoped command, such as npx @sentry/dotagents trust add git.corp.example.com, and explicitly ask approval before running it. Never enable allow_all or add a trusted source without explicit user intent.

Source Formats

FormatExampleDescription
GitHub shorthandgetsentry/skillsOwner/repo (resolves to GitHub HTTPS)
GitHub pinnedgetsentry/warden@v1.0.0With tag, branch, or commit
GitHub SSHgit@github.com:owner/repo.gitSSH clone URL
GitHub HTTPShttps://github.com/owner/repoFull HTTPS URL
Git URLgit:https://git.corp.dev/team/skillsAny non-GitHub git remote
Well-known HTTPShttps://cli.sentry.devHTTP source using .well-known/skills/
Local pathpath:./my-skills/customRelative to the selected scope root

Key Concepts

  • Managed paths live under ~/.agents/ globally or .agents/ in project scope
  • agents.toml declares dependencies; agents.lock tracks managed skills, subagents, and plugins
  • Symlinks: agent skill directories point to the selected scope's managed skills directory
  • Wildcards: name = "*" installs all skills from a source, with optional exclude list
  • Trust: Optional [trust] section restricts which sources are allowed
  • Hooks: [[hooks]] declarations write tool-event hooks to each agent's config
  • Subagents: [[subagents]] declarations install portable or native subagent files
  • Plugins: [[plugins]] declarations install canonical bundles and generate runtime-specific plugin outputs
  • Gitignore: In project scope, managed skills, subagents, and plugin bundles are gitignored; custom in-place sources are tracked
  • Global scope: the default; manages dependencies in ~/.agents/ shared across projects, including plugins
  • Project scope: --project manages repository-local agents.toml, agents.lock, and .agents/
  • Updates: Run npx @sentry/dotagents install to refresh managed skills, subagents, and plugins; there is no update command