agentpack

Crates.ioagentpack
lib.rsagentpack
version0.9.1
created_at2026-01-21 11:30:22.229553+00
updated_at2026-01-24 14:01:56.21711+00
descriptionAI-first local asset control plane for Codex/Claude tooling
homepage
repositoryhttps://github.com/liqiongyu/agentpack
max_upload_size
id2058934
size2,782,853
李琼羽 (liqiongyu)

documentation

README

Agentpack

A declarative, safe control plane for deploying coding-agent assets across tools.

Language: English | Chinese (Simplified)

Agentpack is an AI-first local “asset control plane” for managing and deploying:

  • AGENTS.md / instructions
  • Agent Skills (SKILL.md)
  • Claude Code slash commands (.claude/commands)
  • Codex custom prompts (~/.codex/prompts)

Why you might want Agentpack

  1. Cross-tool consistency
  • Deploy the same agent assets to multiple tools (Codex, Claude Code, Cursor, VSCode, …) via explicit target adapters and mappings.
  1. Reusable + rollbackable deployments
  • Preview/diff-first, then apply with snapshots + rollback; manifest-based safe deletes protect user-owned files.
  1. Multi-machine sync + auditability
  • Treat the config repo as a single source of truth, sync with git (sync --rebase), and rely on stable automation contracts (--json / MCP) when orchestrating.

One full loop (end-to-end)

agentpack update
agentpack preview --diff
agentpack deploy --apply
agentpack status
agentpack rollback --to <snapshot_id>

Notes:

  • deploy --apply and rollback are mutating commands; in automation prefer --json --yes and always run preview first.
  • In --json, deploy --apply returns data.snapshot_id which you can pass to rollback --to.

Demo (recorded)

Agentpack demo

Documentation

Why not a dotfiles manager?

Agentpack is focused on deploying agent assets into tool-specific discovery locations, not managing your entire $HOME.

See: docs/explanation/compare-dotfiles-managers.md.

Architecture (high level)

flowchart TD
  M[agentpack.yaml<br/>manifest] --> C[Compose & materialize<br/>(per module)]
  L[agentpack.lock.json<br/>lockfile] --> C
  O[overlays<br/>(global / machine / project)] --> C

  C --> R[Render desired state<br/>(per target)]
  R --> P[Plan / Diff]
  P -->|dry run| OUT[Human output / JSON envelope]
  P -->|deploy --apply| A[Apply (writes)]

  A --> MF[Write target manifest<br/>.agentpack.manifest.&lt;target&gt;.json]
  A --> SS[Create snapshot<br/>state/snapshots/]
  A --> EV[Record events<br/>state/logs/]

  SS --> RB[Rollback]

For details, see docs/explanation/architecture.md.

Installation

Cargo

cargo install agentpack --locked

If crates.io install is not available yet, install from source:

cargo install --git https://github.com/liqiongyu/agentpack --tag v0.9.1 --locked

Prebuilt binaries

GitHub Releases: https://github.com/liqiongyu/agentpack/releases

Quickstart

agentpack init
agentpack update
agentpack preview --diff
agentpack deploy --apply --yes

For a fuller walkthrough, see docs/index.md. For automation, see docs/reference/json-api.md.

Development

cargo fmt --all
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all --locked

Contributing

Start with AGENTS.md and CONTRIBUTING.md.

Commit count: 658

cargo fmt