git clone https://github.com/agentralabs/agentic-data.git
cd agentic-data
cargo test -j 1- 400-line limit per .rs file. Split by responsibility.
- All files under 400 lines. No exceptions.
- Run
cargo clippy --all -- -D warningsbefore submitting. - Run
cargo fmt --checkbefore submitting. - Run
bash scripts/check-canonical-sister.shbefore submitting.
- Create
crates/agentic-data/src/parser/<format>_parser.rs - Implement
pub fn parse(data: &str, source_name: &str) -> AdatResult<ParseResult> - Add the format to
DataFormatenum inparser/mod.rs - Add detection logic in
parser/detect.rs - Wire into
parse_as()inparser/mod.rs - Add tests (valid input, malformed input, edge cases)
- Add tool definition in the appropriate invention module under
crates/agentic-data-mcp/src/tools/ - Add match arm in the module's
execute()function - Tool descriptions must be verb-first imperative, no trailing periods
- Tool errors use
isError: truein the result - Unknown tools return JSON-RPC error code
-32803(TOOL_NOT_FOUND)
- Fork the repo and create a feature branch
- Write tests for new functionality
- Ensure all tests pass:
cargo test --all - Ensure guardrails pass:
bash scripts/check-canonical-sister.sh - Submit PR with clear description of changes