AGENTS.md

Project Identity

Project Name: ratatui_ruby

Description: A high-performance Ruby wrapper for the Ratatui TUI library.

Architecture:

Stability & Compatibility

1. Standards

STRICT REQUIREMENTS

Tools

Ruby Standards

Rust Standards

2. Directory Structure Convention

The project follows a standard Gem layout with an ext/ directory for Rust code and examples/ for example application-level code.

3. Configuration & Tooling

Development Environment

Documentation

4. Committing

5. Changelog

6. Definition of Done (DoD)

Before considering a task complete and returning control to the user, you MUST ensure:

  1. Production Ready: RBS types are complete and accurate (no untyped), errors are handled with good DX, documentation follows guidelines, high code quality (no “pre-existing debt” excuses).

  2. Default Rake Task Passes: Run bin/agent_rake (no args). Confirm it passes with ZERO errors or warnings.

  3. You will save time if you run bin/agent_rake rubocop:autocorrect first.

  4. If you think the rake is looking for deleted files, STOP EVERYTHING and tell the user.

  5. Documentation Updated: If public APIs or observable behavior changed, update relevant RDoc, rustdoc, doc/ files, README.md, and/or ratatui_ruby-wiki files.

  6. Changelog Updated: If public APIs, observable behavior, or gemspec dependencies have changed, update CHANGELOG.md’s Unreleased section.

  7. Commit Message Suggested: You MUST ensure the final message to the user includes a suggested commit message block. This is NOT optional.

  8. You MUST also check git log -n1 to see the current standard AI footer (“Generated with” and “Co-Authored-By”) and include it in your suggested message.