agpod is a Rust CLI for two concrete workflows:
- minimize git diffs for LLM context
- print repository paths with Git or Jujutsu branch metadata
Agent memory (note / ask_note / forget) lives in the Go MCP server at internal/agpod-mcp.
- summarize oversized file diffs
- reduce empty-line noise while preserving patch structure
- optionally save review chunks with a
REVIEW.mdchecklist
- append branch or bookmark metadata to paths
- filter to repository paths only
- fit shell pipelines such as
zoxide,fzf, and custom prompts
git clone https://github.com/towry/agpod.git
cd agpod
cargo build --releaseBuilt binaries:
target/release/agpod
git diff | agpod diff
git diff | agpod diff --save
git diff | agpod diff --save --save-path custom/pathecho "/path/to/repo" | agpod vcs-path-info
echo "/path/to/repo" | agpod vcs-path-info -f "{path} [{branch}]"
zoxide query --list | agpod vcs-path-info --filter -f "{path} [{branch}]" | fzfGlobal config:
$XDG_CONFIG_HOME/agpod/config.toml~/.config/agpod/config.toml
Repo-local override:
.agpod.toml
Example:
version = "1"
[log]
level = "warning"
[diff]
output_dir = "llm/diff"
large_file_changes_threshold = 100
large_file_lines_threshold = 500
max_consecutive_empty_lines = 2See examples/config.toml.
Logs default to warning and are written under the platform data directory in agpod/logs/, for example ~/Library/Application Support/agpod/logs/agpod.log and agpod-mcp.log.
crates/agpod- CLI entrypointcrates/agpod-core- shared configuration helperscrates/agpod-diff- diff minimizationcrates/agpod-vcs-path- VCS path formattinginternal/agpod-mcp- Go MCP server for agent memory (note/ask_note/forget)
cargo build
cargo test
cargo clippy --all-targets --all-features -- -D warnings
cargo fmt --allMIT. See LICENSE.