Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Git repository analysis tool - question #228

Closed
flashdens opened this issue Dec 5, 2024 · 2 comments
Closed

Git repository analysis tool - question #228

flashdens opened this issue Dec 5, 2024 · 2 comments
Assignees
Labels
question Further information is requested

Comments

@flashdens
Copy link

I am wondering how to approach the task of making a custom agent/tool that would analyze a Git repository, so a chatbot powered by the agent would be able to retrieve documentation that's inside this repository, provide code samples etc.

I'm planning on developing one, so far my main concern is how would the agent first learn so then it would be able to retrieve information using, let's say, GitHub API.

Do you know if there a way for the agent to first learn, so then it can sit on the server and answer questions about a certain GIt repo?

@Tomas2D Tomas2D added the question Further information is requested label Dec 5, 2024
@akihikokuroda akihikokuroda self-assigned this Dec 6, 2024
@akihikokuroda
Copy link
Contributor

Here is the doc link about Tools that's probably answers your concern.

Provide a natural language description of what the tool does:

❗Important: the agent uses this description to determine when the tool should be used. It’s probably the most important aspect of your tool and you should experiment with different natural language descriptions to ensure the tool is used in the correct circumstances. You can also include usage tips and guidance for the agent in the description, but its advisable to keep the description succinct in order to reduce the probability of conflicting with other tools, or adversely affecting agent behavior.

description = "Takes X action when given Y input resulting in Z output";

Declare an input schema:

This is used to define the format of the input to your tool. The agent will formalise the natural language input(s) it has received and structure them into the fields described in the tool’s input. The input schema can be specified using Zod (recommended) or JSONSchema. It must be a function (either sync or async). Zod effects (e.g. z.object().transform(...)) are not supported. The return value of inputSchema must always be an object and pass validation by the validateSchema() function defined in schema.ts. Keep your tool input schema simple and provide schema descriptions to help the agent to interpret fields.

Here is the one example of description and input schema of the tools

@Tomas2D
Copy link
Contributor

Tomas2D commented Jan 2, 2025

Closing for inactivity.

@Tomas2D Tomas2D closed this as completed Jan 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants