Skip to main content
ToolPotion
AI Advisor
Submit a Tool (Free)

Oscar - Git at Google

Oscar is an open-source contributor agent architecture designed to reduce maintainer toil in software development. It leverages LLMs for semantic analysis and deterministic code for executing tasks, aiming to automate issue processing, documentation matching, and more, thereby improving open-source project maintenance efficiency.

View Repository
Share
View Repository
Share

Oscar, an open-source contributor agent architecture, is a project focused on enhancing open-source software development by creating automated agents for project maintenance. The core belief is that significant toil in maintaining open-source projects, both large and small, can be reduced. Large Language Models (LLMs) offer new possibilities for agents to interact smoothly with people through semantic analysis of natural language, such as issue reports and maintainer instructions, and by converting natural language instructions into program code. While LLMs are a critical component, the majority of an agent's actions will involve executing standard, deterministic code. Unlike many development-focused LLM uses, Oscar does not aim to augment or replace the code writing process. Instead, it focuses on the less engaging aspects of maintenance, such as processing incoming issues, matching questions to existing documentation, and similar tasks.

Read More

Oscar is fundamentally an experiment, with its future direction and learnings yet to be fully determined. The initial prototype, the @gabyhelp bot, has already demonstrated numerous successful interactions within the Go issue tracker. Currently developed under the Go project, Oscar may potentially be spun out into a separate project in the future. The project's concrete goals include reducing maintainer effort in resolving issues and change lists (CLs/pull requests), decreasing the effort required to address forum questions, and enabling more individuals to become productive maintainers. A key non-goal is automating coding; the focus remains on automating maintainer toil.

The approach centers on building a reusable and extensible architecture that any software project can adapt to create customized agents. Oscar aims to address maintainer toil, which is not unique to the Go project. Key identified capabilities include indexing and surfacing relevant project context during contributor interactions, using natural language to control deterministic tools, and analyzing issue reports, CLs/PRs, and group discussions to improve them in real-time, label, and route them appropriately. LLMs are integral to these capabilities due to their strength in natural language processing, while deterministic code handles the execution. The project emphasizes using LLMs for semantic analysis and natural language-to-program translation, relying on deterministic code for the rest.

One crucial capability is indexing and surfacing related project context. Software projects are complex, and maintainers cannot always retain all relevant details. Oscar uses LLM embeddings to create a project search engine, indexing documentation, issues, and discussions. When a new issue arises, an agent can use this index to find related context, such as similar past issues or relevant documentation, and reply with links. This has shown benefits like surfacing duplicate issues, providing context to contributors, and saving maintainers time by pointing them to relevant past discussions or bug reports. The agent's immediate interaction after a report is filed is also vital for engaging reporters while they are still available and engaged.

Another key capability is using natural language to control deterministic tooling. As projects grow, the number of tools increases, making it hard to track and use them. Oscar envisions facilities for editing issue comments, adding labels, or assigning people based on natural language requests. LLMs are adept at translating natural language intentions into executable forms like tool invocations. Preliminary experiments with Gemini show promise in selecting and invoking tools. This approach, which uses LLMs to convert natural language to deterministic tool use, is considered more effective than a pure LLM "magic wand" approach, as it allows for deterministic execution and easier verification.

The third important capability involves analyzing issue reports and CLs/PRs. Beyond linking related issues, Oscar plans to incorporate semantic analysis, such as identifying the primary topic of an issue for appropriate labeling (e.g., "performance"). It also aims to determine if more information is needed for a report to be useful, such as requesting a reproduction program link or inlining code. The agent could potentially run sandboxed execution tools to identify bug-containing releases or use git bisect to pinpoint bug-introducing commits. These analyses are most effective when performed immediately after a report is filed, leveraging the agent's 24/7 availability.

The first prototype, Gaby ("Go AI bot"), operates within the Go issue tracker, posting as @gabyhelp. Its source code is in internal/gaby. Gaby indexes content from Go issues, Go documentation, Gerrit code reviews, and Go project/golang-nuts discussions, enabling it to respond to new issues with relevant links. Gaby's architecture is designed for flexibility, allowing it to run on various hosting services, use different LLMs, storage layers, and vector databases. The current prototype uses GCP Cloud Run with Google's Gemini LLM and Google Cloud Firestore. The project also acknowledges the existence of @gopherbot, a long-standing deterministic agent in the Go project, and aims to eventually merge @gabyhelp into @gopherbot by rebuilding @gopherbot as an Oscar agent, seeking a lighter-weight configuration method using natural language.

  • CategoryAI Coding Assistants
  • Pricing ModelOpen Source
  • DeploymentCloud / On-premise
  • PlatformsWeb

  • Automated agent for open-source maintenance

  • Reduces maintainer toil by processing issues and requests

  • Leverages LLMs for natural language understanding and semantic analysis

  • Utilizes deterministic code for reliable task execution

  • Indexes and surfaces relevant project context (documentation, issues, discussions)

  • Enables natural language control of deterministic tools

  • Analyzes issue reports and change lists for improved routing and labeling

  • Prototype agent @gabyhelp active in Go issue tracker

  • Extensible architecture for custom agent development

  • Supports integration with various LLMs, storage layers, and vector databases

  • Aims to automate non-coding aspects of open-source maintenance

  • Facilitates faster contributor engagement through immediate responses

  1. Configure: Define agent capabilities and connect to project data sources

  2. Deploy: Host the agent on a suitable platform (e.g., cloud service)

  3. Integrate: Connect to project repositories and communication channels (e.g., GitHub webhooks)

  4. Train/Index: Allow the agent to process and index project context using LLMs

  5. Monitor: Observe agent interactions and performance in issue trackers and forums

  6. Extend: Develop new agent behaviors and integrate custom deterministic tools

  7. Optimize: Refine agent responses and analysis based on project needs and feedback

  • Issue Triage Automation
  • Documentation Assistance
  • Duplicate Issue Detection
  • Maintainer Toil Reduction
  • Contributor Support
  • Change List Analysis
  • Context Surfacing
  • Tool Integration

Popular AI Tools Like Oscar

goose

AI GitHub Repos

Goose is an open source, extensible AI agent that enhances coding by allowing users to install, execute, edit, and test with any LLM, providing a versatile tool for developers…

AI Coding Assistants

Ranked #31 in AI GitHub Repos

View Tool

AI GitHub Repos

Open source, extensible AI agent that enhances coding by allowing users to install, execute, edit, and test with any LLM, providing a versatile tool for developers…Goose is an open source, extensible AI agent that enhances coding by allowing users to install, execute, edit, and test with any LLM, providing a versatile tool for developers…

FeaturedAI Coding Assistants
Ranked #31 in AI GitHub Repos

CodeFuse-ChatBot

AI GitHub Repos

CodeFuse-ChatBot is an open-source AI assistant designed to streamline the software development lifecycle. It leverages a Multi-Agent Framework, DevOps toolkits, and RAG for code…

AI Coding Assistants

Ranked #232 in AI GitHub Repos

View Tool

AI GitHub Repos

Open-source AI assistant designed to streamline the software development lifecycle. It leverages a Multi-Agent Framework, DevOps toolkits, and RAG for code…CodeFuse-ChatBot is an open-source AI assistant designed to streamline the software development lifecycle. It leverages a Multi-Agent Framework, DevOps toolkits, and RAG for code…

AI Coding Assistants
Ranked #232 in AI GitHub Repos

Devika is an open-source AI software engineer, designed as an alternative to Devin. It understands high-level instructions, breaks them down, researches information, and writes…

AI Coding Assistants

Ranked #127 in AI GitHub Repos

View Tool

Open-source AI software engineer, designed as an alternative to Devin. It understands high-level instructions, breaks them down, researches information, and writes…Devika is an open-source AI software engineer, designed as an alternative to Devin. It understands high-level instructions, breaks them down, researches information, and writes…

AI Coding Assistants
Ranked #127 in AI GitHub Repos

OpenHands

AI GitHub Repos

OpenHands is an AI-driven development platform hosted on GitHub. It allows developers to contribute to its growth and functionality by creating an account on GitHub, fostering…

AI Coding Assistants

Ranked #16 in AI GitHub Repos

View Tool

AI GitHub Repos

AI-driven development platform hosted on GitHub. It allows developers to contribute to its growth and functionality by creating an account on GitHub, fostering…OpenHands is an AI-driven development platform hosted on GitHub. It allows developers to contribute to its growth and functionality by creating an account on GitHub, fostering…

FeaturedAI Coding Assistants
Ranked #16 in AI GitHub Repos

Aider

AI Agents

Aider is an AI pair programming tool that integrates with your terminal, allowing you to collaborate with large language models (LLMs) on new projects or existing codebases,…

AI Coding Assistants

Ranked #31 in AI Agents

View Tool

AI Agents

AI pair programming tool that integrates with your terminal, allowing you to collaborate with large language models (LLMs) on new projects or existing codebases,…Aider is an AI pair programming tool that integrates with your terminal, allowing you to collaborate with large language models (LLMs) on new projects or existing codebases,…

FeaturedAI Coding Assistants
Ranked #31 in AI Agents

TrueForge

AI GitHub Repos

TrueForge is an open-source agent harness that serves as the runtime layer to transform a large language model (LLM) into a functional agent. It is designed to streamline the…

AI Agent Builders
View Tool

AI GitHub Repos

Open-source agent harness that serves as the runtime layer to transform a large language model (LLM) into a functional agent. It is designed to streamline the…TrueForge is an open-source agent harness that serves as the runtime layer to transform a large language model (LLM) into a functional agent. It is designed to streamline the…

AI Agent Builders
See the Top 250 AI GitHub Repos

BeeAI Framework

AI GitHub Repos

BeeAI Framework is an open-source toolkit for building production-ready AI agents and multi-agent systems. It supports development in both Python and TypeScript, offering features…

AI Agent Builders

Ranked #107 in AI GitHub Repos

View Tool

AI GitHub Repos

Open-source toolkit for building production-ready AI agents and multi-agent systems. It supports development in both Python and TypeScript, offering features…BeeAI Framework is an open-source toolkit for building production-ready AI agents and multi-agent systems. It supports development in both Python and TypeScript, offering features…

AI Agent Builders
Ranked #107 in AI GitHub Repos

LangChain

AI GitHub Repos

Langchain is an agent engineering platform hosted on GitHub, allowing developers to contribute to its development. Users can engage with the project by creating an account on…

Automation & Agents

Ranked #1 in AI GitHub Repos

View Tool

AI GitHub Repos

Agent engineering platform hosted on GitHub, allowing developers to contribute to its development. Users can engage with the project by creating an account on…Langchain is an agent engineering platform hosted on GitHub, allowing developers to contribute to its development. Users can engage with the project by creating an account on…

FeaturedAutomation & Agents
Ranked #1 in AI GitHub Repos
1 of 8