Skip to content

FEATURE REQUEST: Implement a General-Purpose GitHub Query Tool #98

@smokeyScraper

Description

@smokeyScraper

Is your feature request related to a problem?

  • Yes, it is related to a problem

Describe the feature you'd like

🌟 Feature Description

This feature introduces a new, advanced tool for the DevRel Agent: a General-Purpose GitHub Query Tool. Instead of using pre-defined functions, this tool understands a user's natural language question, generates the Python code needed to query the GitHub API, executes it, and returns the answer.

This allows it to handle a wide variety of questions like:

  • "What repositories does sm0kxy contribute to?"
  • "How many open issues are in the Devr.AI repository?"

🔍 Problem Statement

Creating a separate, hard-coded tool for every possible GitHub query is not scalable. A more flexible, intelligent solution is needed to handle a wide range of user questions without bloating the agent's toolkit.

🎯 Expected Outcome

The result is a single, versatile tool that acts as a natural language interface to the GitHub API. It will:

  • Increase the agent's versatility to answer ad-hoc questions.
  • Reduce the need to develop numerous, narrowly-focused tools.
  • Empower users by letting them query GitHub using plain English.

📷 Screenshots and Design Ideas

The tool functions by translating a user's question into executable Python code.

  1. Trigger: The agent receives a query like, "How many repos does 'AOSSIE-Org' have?"
  2. Code Generation: The tool uses an LLM to translate the query into a Python script that calls the GitHub API.
  3. Secure Execution: The generated script is run in a secure, isolated sandbox environment to prevent any risk to the host system.
  4. Return Result: The output from the script's execution is captured.
  5. Final Answer: The agent takes the result and formats it into a human-readable response.

📋 Additional Context

  • Security: The use of a sandboxed environment is a critical, built-in part of the tool to ensure all code execution is safe.
  • Scope: Initially, the tool should be limited to read-only (GET) operations for maximum safety.

Record

  • I agree to follow this project's Code of Conduct
  • I want to work on implementing this feature

Metadata

Metadata

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions