Skip to main content

Drive any agent CLI from an agent-neutral source shape (AGENTS.md + .agents/skills), translating per harness at launch.

Project description

agedum

Latin agedum — "go on! / get going!"

Drive any agent CLI from an agent-neutral source shape, translating per harness at launch. You keep one set of sources; agedum renders them for whichever agent CLI you run.

  • Instructions live in a root AGENTS.md (plain markdown).
  • Skills live in .agents/skills/<name>/ as SKILL.md (+ optional task files, scripts, and a per-harness SKILL.<harness>.md overlay).

At launch, agedum compiles that shape to the harness's native layout in a throwaway dir, then runs your command inside a private mount namespace (bubblewrap) where the compiled files appear at their expected paths — visible only to that process, never written into your real tree or $HOME. For Claude: AGENTS.mdCLAUDE.md and .agents/skills/<name>/.claude/skills/<name>/ (the base SKILL.md merged with an optional SKILL.claude.md overlay).

Status: Claude harness, project + global scope, implemented. Each scope lands at its own Claude location — project → ./CLAUDE.md + ./.claude/skills/, global (~/.config/agents/AGENTS.md + ~/.agents/skills/) → ~/.claude/CLAUDE.md

  • ~/.claude/skills/ (honours $CLAUDE_CONFIG_DIR). They're never merged; Claude reads both. Only those two ~/.claude paths are overlaid for the child — your ~/.claude.json auth and other settings are untouched. Other harnesses are follow-ups. Linux-only; requires bwrap on PATH.

Usage

# Run any command with Claude-format virtual files injected from the project source:
agedum --claude -- claude --model sonnet -p "review this"
agedum --claude -- claude              # interactive

agedum --version

Everything after -- is the command, run verbatim; the context flag before -- (--claude) chooses the format. The two are decoupled, so one context can front any command. Injected paths must be gitignored — agedum refuses to overlay a git-tracked file (the namespace shares your real .git).

Install

pipx install agedum        # standalone CLI (once published)

Develop

make dev-install   # uv sync --all-groups
make test          # pytest
make lint          # ruff check + format --check
make run -- --version

Python ≥ 3.12, managed with uv. The version is derived from the git tag (vX.Y.Z) at build time via hatch-vcs — never committed.

Release

Tag the commit vX.Y.Z and push the tag; the release workflow builds and publishes to PyPI via OIDC trusted publishing.

License

MIT — see LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agedum-0.2.1.tar.gz (30.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agedum-0.2.1-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file agedum-0.2.1.tar.gz.

File metadata

  • Download URL: agedum-0.2.1.tar.gz
  • Upload date:
  • Size: 30.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for agedum-0.2.1.tar.gz
Algorithm Hash digest
SHA256 ab654682e684b43db4323cbd9c22d3ebbaf72e143a42d308774e7ef33d2410d7
MD5 98ca99193740e4f9282a7bb8139b3d95
BLAKE2b-256 563f91da3c9d96e90d6c2d971173c2ae77db5e243bb14b57a59ec331b0a81cc5

See more details on using hashes here.

Provenance

The following attestation bundles were made for agedum-0.2.1.tar.gz:

Publisher: release.yml on vcoeur/agedum

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file agedum-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: agedum-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for agedum-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d894b967f558c1ae18e540e15bc91d397ed875e61bca0d3626be2b4bd68da088
MD5 eb9f6c8ce5579de9bf46986ed6437100
BLAKE2b-256 e0e8f37f1ce73df184269901672c389d486e40d74813ed2d8f4d35b64f983d55

See more details on using hashes here.

Provenance

The following attestation bundles were made for agedum-0.2.1-py3-none-any.whl:

Publisher: release.yml on vcoeur/agedum

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page