Files
2pac 5900e205bd docs: add RELEASING.md runbook, collapse duplicated release docs into it
The release process was restated in four places, and README still described
the pre-automation flow ("commit the version bump, run release.sh, this
creates a git tag") — which no longer exists. That is exactly how the copies
drift apart.

RELEASING.md is now the single source of truth: how to cut a release, what
fires on merge, what sync-versions owns, how to verify, how to recover when
a publish fails, and the non-obvious design constraints (GITHUB_TOKEN not
triggering tag workflows, tag-existence keying, the metadata-action value=
pin, why release.sh no longer tags, and that CI is advisory since main has
no branch protection).

Everything else links to it instead of restating:
- CLAUDE.md keeps a short pointer + the plan-facing release checklist
- DEPLOYMENT.md goes back to being about deploy targets
- README gets the corrected two-line version
- CONTRIBUTING gains a maintainers-only Releasing section and a "don't bump
  the version in your PR" note

Verified: every relative link and heading anchor across the five root docs
resolves, no stale references to the old process remain outside thoughts/
(historical by design), and the package/workflow names cited in the runbook
match the actual manifests.

Claude-Session: https://claude.ai/code/session_01VCcgVD3bXuuPtYkoVJjZM3
2026-08-06 01:31:07 +02:00

2.0 KiB

Contributing to Agent FS

Thanks for your interest in contributing to Agent FS!

Table of Contents


Development Setup

Prerequisites

  • Bun v1.2+
  • Git

Install Dependencies

git clone https://github.com/desplega-ai/agent-fs.git
cd agent-fs
bun install

Running the Project

Tests

# Run all tests
bun run test

# With coverage
bun run test:coverage

Build

# Bundle CLI for npm
bun run build

Output: packages/cli/dist/cli.js


Code Quality

Type Checking

bun run typecheck

Run this before committing to catch type errors early.


Project Structure

agent-fs/
├── packages/
│   ├── core/           # Core library — storage, search, identity, database
│   ├── cli/            # CLI binary (agent-fs)
│   ├── mcp/            # MCP server integration
│   └── server/         # HTTP server (Hono)
├── scripts/            # Release scripts
├── package.json        # Workspace root
└── tsconfig.json

Submitting Changes

  1. Fork the repo
  2. Create a branch (git checkout -b my-feature)
  3. Make your changes
  4. Run bun run typecheck and bun run test
  5. Open a PR

Don't bump the version in your PR unless you're cutting a release — see below.


Releasing

Maintainers only. Releases are automatic: a version change landing on main tags and publishes.

./scripts/release.sh 0.13.0

Never hand-edit a version in package.json — scripts/sync-versions.ts owns every place it appears, and CI fails a partial bump. Full process in RELEASING.md.


Join our Discord if you have questions or want to discuss ideas.