Skip to content

Conversation

amansinghoriginal
Copy link
Member

Summary

Implements a hierarchical AGENTS.md standard across the drasi-core repository to provide explicit, machine-readable instructions for AI coding agents. This follows the emerging open standard adopted by Gemini CLI, GitHub Copilot, and other AI assistants.

Changes

  • 32 files added with comprehensive agent context at multiple levels:
    • Root-level AGENTS.md with complete architecture overview and development workflows
    • Crate-level files for each major component (core, middleware, storage backends, etc.)
    • Module-level files for core subsystems (evaluation, interface, path solver, etc.)
  • Symbolic links (CLAUDE.md) created for each AGENTS.md file for Claude Code compatibility
  • Updated .gitignore to ignore agent settings

Architecture

Uses a layered approach where higher-level files explain overall architecture while lower-level files detail component-specific setup, build commands, and testing procedures. This helps agents narrow context to relevant scope for better code completion and refactoring.

Benefits Tested

Based on testing with Gemini CLI and Claude Code, this provides:

  • 12x reduction in tool calls (Gemini CLI: 1 vs 12 calls)
  • 2.4x faster agent response times
  • 80% reduction in token usage
  • Improved accuracy by providing explicit architectural context and conventions

Gemini-CLI comparison

Task: Review Collect Function PR and Diff

Metric With AGENTS.md Without AGENTS.md
Tool Calls 1 12
Agent Active Time 49.2s 1m 37s
API Time 45.2s 1m 28s
Tool Time 4.0s 8.8s
Gemini-2.5-pro Requests 3 14
Gemini-2.5-pro Input Tokens 73.1K 395.0K
Gemini-2.5-pro Output Tokens 1K 5K
Gemini-2.5-flash Requests 1 1
Gemini-2.5-flash Input Tokens 11.7K 4.3K
Gemini-2.5-flash Output Tokens 443 620
Savings by cache 40,379 (47.6%) 321.4K (80%)

Claude Code

Task: PR Description & Requirements Review

Metric With CLAUDE.md Without CLAUDE.md
Tool Uses 12 37
Tokens 53.2K 116.6K
Time 1m 39.8s 4m 01s

Task: PR Diff Review

Metric With CLAUDE.md Without CLAUDE.md
Tool Uses Not reported Not reported
Tokens Not reported Not reported
Time Not reported Not reported


## Key Design Decisions & Data Mapping Strategy

* **Serialization with `bincode`**: `bincode` was chosen for its high performance in Rust-to-Rust scenarios. As an embedded store, cross-language compatibility was not a primary concern.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not accurate.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants