MyGit
๐Ÿšฉๆ”ถๅˆฐGitHubไป“ๅบ“็š„ๆ›ดๆ–ฐ้€š็Ÿฅ

irgolic/AutoPR

Fork: 72 Star: 1118 (ๆ›ดๆ–ฐไบŽ 1970-01-01 00:00:00)

license: MIT

Language: Python .

Bring your codebase to life

ๆœ€ๅŽๅ‘ๅธƒ็‰ˆๆœฌ๏ผš v0.2.0 ( 2023-11-05 23:03:37)

ๅฎ˜ๆ–น็ฝ‘ๅ€ GitHub็ฝ‘ๅ€

โœจๅ…่ดน็”ณ่ฏท็ฝ‘็ซ™SSL่ฏไนฆ๏ผŒๆ”ฏๆŒๅคšๅŸŸๅๅ’Œๆณ›ๅŸŸๅ๏ผŒ็‚นๅ‡ปๆŸฅ็œ‹
AutoPR logo

๐ŸŒณ AutoPR ๐ŸŒณ

Discord Docs

Breathe life into your codebase

๐ŸŒŸ Features

๐ŸŒณ Living summaries of your code in nested READMEs
๐Ÿ“ TODOs kept track of in issues
โณ Keep history of an API call's result in git
๐Ÿ“„ Summarize changes by adding a "summarize" label to a PR
๐Ÿซต Custom actions configured in YAML

๐Ÿš€ Getting Started

Please see the installation guide.


Below is an example of AutoPR's Living README:

๐ŸŒณ Living Summary

This folder contains various files and directories related to automating tasks in a pull request workflow. The Dockerfile sets up a Docker image and installs dependencies using Poetry. The LICENSE.md file contains the MIT License for the software. The Makefile defines targets for formatting, type checking, testing, and more. The action.yml file configures an automatic pull request workflow. The autopr directory contains Python files and directories for actions, services, workflows, and configurations. The entrypoint.sh file is a shell script that sets up Git configuration. The poetry.lock file provides an overview of the project's dependencies. The pyproject.toml file is a configuration file for the Python project. The strict_workflow_schema.json and trigger_schema.json files define schemas for strict workflows and triggers. The workflow_schema.json file defines a schema for workflow definitions.

Dockerfile

๐Ÿ—๏ธ Sets up a Docker image based on the duffn/python-poetry:3.9-bullseye image
๐Ÿ”ง Installs git from the bullseye-backports repository
๐Ÿ“ฅ Copies an entrypoint script and makes it executable
๐Ÿ“ฅ Copies the pyproject.toml and poetry.lock files
๐Ÿ”ง Activates the virtual environment and installs the project dependencies using Poetry
๐Ÿ“ฅ Copies the rest of the files to the /app directory
๐Ÿ”ง Installs the application using Poetry
๐Ÿš€ Sets the entrypoint to /entrypoint.sh for running the app

LICENSE.md

๐Ÿ“„ This file contains the MIT License.
๐Ÿ”’ The license grants permission to use, modify, and distribute the software.
๐Ÿ“ The license requires the copyright notice and permission notice to be included in all copies.
๐Ÿšซ The software is provided "as is" without warranty.
๐Ÿ“… The license is valid until 2023.
๐Ÿ’ผ The license is owned by Raphael Francis Ltd.

Makefile

๐Ÿ“ This file is a makefile-like configuration file.
๐Ÿ”ง It defines various targets and their associated commands.
๐Ÿ’ป The targets are: format, type, test, schema, and all.
๐Ÿ”ง The format target runs a command to format code using the black tool.
๐Ÿ”ง The type target runs a command to perform type checking using pyright.
๐Ÿ”ง The test target runs pytest on the autopr/tests directory.
๐Ÿ”ง The schema target runs a command to generate configuration entrypoints using autopr.models.config.
๐Ÿ”ง The all target runs all the targets in sequence: format, type, test, and schema.
๐Ÿ”ง This file is meant to automate common development tasks and ensure code quality.

action.yml

๐Ÿ“„ This file is a configuration file for an automatic pull request workflow.
๐Ÿ”ง It specifies the details for running the workflow, such as the Docker image to use.
๐ŸŽจ It also includes branding information, such as the icon and color to use.
๐Ÿ”‘ The file defines inputs required for the workflow, such as the GitHub token and base branch.
๐ŸŽฅ It includes a default loading GIF URL to display while the pull request is being generated.
๐ŸŒฟ The file defines a template for the name of the target branch.
๐Ÿ”„ It specifies whether to overwrite existing branches and pull requests when creating from issues.

autopr/

This folder contains a collection of Python files and directories that provide various actions, services, workflows, and configurations for automating tasks in a pull request workflow. The files include actions for running commands, generating choices, publishing comments on GitHub issues, committing changes, searching for keywords, making API calls, and more. There are also files for managing logging, defining triggers and workflows, configuring services, and defining data models. The directories contain additional files for managing and running actions, defining workflows, and handling events. Overall, this folder provides a comprehensive set of tools and functionalities for automating tasks in a pull request workflow.

entrypoint.sh

๐Ÿ“ The file is a shell script
๐Ÿ”ง It sets the Git configuration for a specific directory
โœ‰๏ธ It sets the user email and name for Git commits
๐Ÿ“ฆ It activates a virtual environment
๐Ÿ It runs a Python module called autopr.gh_actions_entrypoint

poetry.lock

๐Ÿ“„ This file is an executive summary of a project or report
๐Ÿ” It provides a high-level overview of the main points
๐Ÿ“ It highlights key findings, conclusions, and recommendations
๐Ÿ“Š It may include a summary of data or analysis
๐Ÿ‘ฅ It is intended for someone who is new to the project or report
๐Ÿšซ It does not include trivial details or technical explanations
๐Ÿ’ก It gives a clear understanding of the purpose and scope of the project
๐Ÿ‘€ It provides a quick glance at the content without going into depth
๐Ÿ’ผ It serves as a starting point for further exploration or discussion
๐Ÿ“Œ It is concise and easy to read, even if the file is empty

pyproject.toml

๐Ÿ“‹ This file is a configuration file for a Python project using Poetry.
๐Ÿ” It contains information about the project's name, version, and authors.
๐Ÿ“„ The license of the project is specified as MIT.
๐Ÿ“ฆ It lists the packages and their dependencies required for the project.
๐Ÿงช There are separate dependencies for testing and development.
๐Ÿ”ง The build system used is Poetry.
๐Ÿ” The file also includes configuration for the Pyright static type checker.
๐Ÿ” It specifies the line length and target version for the Black code formatter.

strict_workflow_schema.json

๐Ÿ“„ The file is a JSON schema describing a strict workflow definition.
๐Ÿ” It defines various actions that can be performed within the workflow.
๐Ÿ”€ Actions include commenting, setting issue titles, walking files, making API calls, running bash commands, and more.
๐Ÿ“ Each action has its own set of inputs and outputs.
๐Ÿ”„ The workflow steps are defined as an array of actions.
๐Ÿ“š The schema also includes definitions for various data types and declarations used within the actions.
๐Ÿ“ The purpose of the file is to provide a standardized structure for defining and executing strict workflows.
๐Ÿ—‚๏ธ The schema can be used to validate and ensure the correctness of workflow definitions.
๐Ÿงฉ It allows for easy integration with other tools and systems that support the schema.
๐Ÿ“š The file can serve as a reference for understanding the structure and capabilities of strict workflows.

trigger_schema.json

๐Ÿ“„ This file is a JSON schema definition for a configuration file.
๐Ÿท๏ธ It defines various action models and trigger models.
๐Ÿ”€ The action models represent different actions that can be performed in a workflow.
๐Ÿ”„ The trigger models represent different triggers that can initiate a workflow.
๐Ÿ”– The schema provides a structure for defining inputs, outputs, and other properties for each action and trigger.
๐Ÿ“ It also defines different types of declarations and templates that can be used within the actions and triggers.
๐Ÿ”€ The "TopLevelTriggerConfig" object is the main configuration object that contains an array of triggers.
๐Ÿ“Œ Each trigger can be of type "label", "comment", "push", or "cron".
๐ŸŒ Overall, this file provides a standardized structure for defining workflows and their triggers and actions.

workflow_schema.json

๐Ÿ“„ This file is a JSON schema definition for a workflow definition.
๐Ÿ”ง It defines various types and properties for different actions and declarations used in the workflow.
๐Ÿ“ The schema includes definitions for actions like commenting, setting issue title, walking files, making API calls, running bash commands, etc.
๐Ÿ“š It also defines different types of declarations like template, variable, constant, and lambda declarations.
๐Ÿ“‹ The workflow definition includes a name, description, inputs, and outputs.
๐Ÿ”ข It consists of a list of steps which can be actions, workflow invocations, or conditional statements.
๐Ÿ”€ Conditional statements can have if-else branches and support different conditions like lambda expressions and context checks.
๐Ÿ”„ Workflow invocations can be either regular or iterable.
๐Ÿ”‘ Overall, this file provides a structured definition for creating and executing workflows with various actions and conditions.

ๆœ€่ฟ‘็‰ˆๆœฌๆ›ดๆ–ฐ:(ๆ•ฐๆฎๆ›ดๆ–ฐไบŽ 1970-01-01 00:00:00)

2023-11-05 23:03:37 v0.2.0

2023-09-24 03:21:49 v0.1.2

2023-03-25 07:23:43 v0.1.1

2023-03-18 21:55:31 v0.1.0

ไธป้ข˜(topics):

action, actions, ai, chatgpt, github-action, github-actions, gpt, gpt-3, gpt-4, llm, openai

irgolic/AutoPRๅŒ่ฏญ่จ€ Pythonๆœ€่ฟ‘ๆ›ดๆ–ฐไป“ๅบ“

2024-05-14 01:02:07 linruowuyin/Fhoe-Rail

2024-05-12 22:10:31 Team-Neptune/DeepSea

2024-05-11 17:41:09 xorbitsai/inference

2024-05-11 16:17:39 VinciGit00/Scrapegraph-ai

2024-05-11 11:16:52 BerriAI/litellm

2024-05-11 03:21:02 rigetti/pyquil