diff --git a/AGENTS.md b/AGENTS.md index 04b3417..5dfd9b2 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -176,6 +176,21 @@ After making ANY code change, you MUST run these commands and fix any issues: ## Project Structure Guidelines +### Workspace Structure + +This project is a Cargo workspace containing three crates: + +- **banks2ff/**: Main CLI application (source in `banks2ff/src/`) +- **firefly-client/**: Standalone Firefly III API client library (source in `firefly-client/src/`) +- **gocardless-client/**: Standalone GoCardless API client library (source in `gocardless-client/src/`) + +**Navigation Guidelines:** +- Always identify which crate contains the relevant code before searching or editing +- Use the root `Cargo.toml` workspace members to confirm crate boundaries +- For main application logic: look in `banks2ff/src/` +- For API client implementations: check `firefly-client/src/` or `gocardless-client/src/` as appropriate +- When uncertain, search across the entire workspace using tools like `grep` with appropriate paths + ### Core Module (`banks2ff/src/core/`) - **models.rs**: Domain entities (BankTransaction, Account) - **ports.rs**: Trait definitions (TransactionSource, TransactionDestination)