Ivy-Interactive / Ivy-Interactive/Rusty-Framework

[Subsystem] Implement Agent Database Query Engine (Port of Ivy.Agent.EfQuery)

Open
#114 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
3
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Problem Statement

The original C# Ivy-Framework features Ivy.Agent.EfQuery, which integrates with Entity Framework Core to allow AI agents to reflect database schemas dynamically, execute SQL queries safely, and populate DataTable components.

Currently, Rusty-Framework lacks an equivalent database reflection and ORM integration layer (such as SQLx or Diesel integration). As a result, AI agents built on rusty cannot inspect database schemas or execute structured database queries out of the box.

Missing Functionality

  • Database schema reflection & metadata extraction (tables, columns, data types, primary/foreign keys).
  • Parameterized SQL query execution engine tailored for AI agent tool calling.
  • Automatic serialization of database query result sets into rusty DataTable model structures.
  • Schema context provider for AI agent prompts.

Proposed Architecture & Design

  1. Create a database query abstraction (e.g., rusty-db crate or rusty-server::db module) supporting popular engines (PostgreSQL, SQLite, MySQL) via sqlx.
  2. Implement schema inspection tools that produce structured JSON metadata for AI agent system prompts.
  3. Expose dynamic query execution functions that validate, sanitize, and execute query parameters.
  4. Provide integration helpers to bind query outputs directly into rusty::widgets::DataTable.

Acceptance Criteria

  • Schema reflection extracts complete metadata (tables, columns, relationships) into structured Rust types.
  • Safe execution engine permits parameterized SQL queries with proper error handling.
  • Query results convert seamlessly into DataTable components.
  • Comprehensive documentation and example usage with AI agent tool calling.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing the proposed rusty-db crate or rusty-server::db module with the existing Rusty-Framework structure, then review the rusty::widgets::DataTable model and the referenced Ivy.Agent.EfQuery behavior. Done means schema metadata, parameterized query execution, DataTable conversion, documentation, and an AI agent tool-calling example are all covered.

Written by the indexing model from the issue text.

Assessment

Tech stack
mysql, postgresql, rust, sqlite
Domain
ai, backend-api-design, databases
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.