Skip to content

Commit ce04bad

Browse files
dduuggclaude
andauthored
Add AGENTS.md and CLAUDE.md for AI coding agent guidance (#177)
* Add AGENTS.md and CLAUDE.md for AI coding agent guidance * Fix inaccuracies in AGENTS.md - Remove redundant `# AGENTS.md` heading (filename already identifies it) - Remove nonexistent `Formatter` and `Pack` classes from architecture description (`Pack` comes from the `packs-specification` gem; there is no `Formatter` in lib/packs/) - Fix `spec/fixtures/` reference — this directory doesn't exist; tests use temp directories via `packs/rspec/support` - Add `lib/packs/private/` entry explaining the internal implementation layer - Note that `bin/packs` runs interactive mode when called with no arguments - List additional CLI commands (`validate`, `check`) for completeness Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
1 parent c414fec commit ce04bad

2 files changed

Lines changed: 33 additions & 0 deletions

File tree

AGENTS.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
This file provides guidance to AI coding agents when working with code in this repository.
2+
3+
## What this project is
4+
5+
`packs` is a Ruby gem that provides the development CLI for the packs packaging system — a way to modularize Ruby applications. It provides `bin/packs` commands to create packs, move files between packs, add dependencies, and manage pack configuration.
6+
7+
## Commands
8+
9+
```bash
10+
bundle install
11+
12+
# Run all tests (RSpec)
13+
bundle exec rspec
14+
15+
# Run a single spec file
16+
bundle exec rspec spec/path/to/spec.rb
17+
18+
# Lint
19+
bundle exec rubocop
20+
bundle exec rubocop -a # auto-correct
21+
22+
# Type checking (Sorbet)
23+
bundle exec srb tc
24+
```
25+
26+
## Architecture
27+
28+
- `lib/packs.rb` — public API entry point
29+
- `lib/packs/` — core library: `Configuration`, `CLI` (Thor-based command definitions), post-processors (`RubocopPostProcessor`, `CodeOwnershipPostProcessor`, `UpdateReferencesPostProcessor`), and the `UserEventLogger` interface
30+
- `lib/packs/private/` — internal implementation; `interactive_cli/` contains the interactive TUI mode
31+
- `bin/packs` — CLI executable; runs the interactive mode when called with no arguments, otherwise dispatches to `Packs::CLI` commands like `create`, `add_dependency`, `move`, `validate`, `check`
32+
- `spec/` — RSpec tests; tests use temporary directories created via `packs/rspec/support` rather than static fixtures

CLAUDE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
@AGENTS.md

0 commit comments

Comments
 (0)