[HN Gopher] Show HN: Patchwork - Open-source framework to automa...
       ___________________________________________________________________
        
       Show HN: Patchwork - Open-source framework to automate development
       gruntwork
        
       Hi HN! We're Asankhaya and Rohan and we are building Patchwork.
       Patchwork tackles development gruntwork--like reviews, docs,
       linting, and security fixes--through customizable, code-first
       'patchflows' using LLMs and modular code management steps, all in
       Python. Here's a quick overview video: https://youtu.be/MLyn6B3bFMU
       From our time building DevSecOps tools, we experienced first-hand
       the frustrations our users faced as they built complex delivery
       pipelines. Almost a third of developer time is spent on code
       management tasks[1], yet backlogs remain.  Patchwork lets you
       combine well-defined prompts with effective workflow orchestration
       to automate as much as 80% of these gruntwork tasks using LLMs[2].
       For instance, the AutoFix patchflow can resolve 82% of issues
       flagged by semgrep using gpt-4 (or 68% with llama-3.1-8B) without
       fine-tuning or providing specialized context [3]. Success rates are
       higher for text-based patchflows like PR Review and Generate
       Docstring, but lower for more complex tasks like Dependency
       Upgrades.  We are not a coding assistant or a black-box GitHub bot.
       Our automation workflows run outside your IDE via the CLI or CI
       scripts without your active involvement.  We are also not an 'AI
       agent' framework. In our experience, LLM agents struggle with
       planning and rarely identify the right execution path. Instead,
       Patchwork requires explicitly defined workflows that provide
       greater success and full control.  Patchwork is open-source so you
       can build your own patchflows, integrate your preferred LLM
       endpoints, and fully self-host, ensuring privacy and compliance for
       large teams.  As devs, we prefer to build our own 'AI-enabled
       automation' given how easy it is to consume LLM APIs. If you do,
       try patchwork via a simple 'pip install patchwork-cli' or find us
       on Github[4].  Sources:  [1] https://blog.tidelift.com/developers-
       spend-30-of-their-time-...  [2]
       https://www.patched.codes/blog/patched-rtc-evaluating-llms-f...
       [3] https://www.patched.codes/blog/how-good-are-llms  [4]
       https://github.com/patched-codes/patchwork  [Sample PRs]
       https://github.com/patched-demo/sample-injection/pulls
        
       Author : rohansood15
       Score  : 35 points
       Date   : 2024-07-26 20:34 UTC (2 hours ago)
        
 (HTM) web link (github.com)
 (TXT) w3m dump (github.com)
        
       | SOLAR_FIELDS wrote:
       | A feature comparison to https://github.com/paul-gauthier/aider
       | would be great.
       | 
       | Is this just a non interactive version of this kind of agent?
        
         | rohansood15 wrote:
         | Aider is great, but the use case is different:
         | 
         | 1. You use Aider to complete a novel task you're actively
         | working on. Patchwork completes repetitive tasks passively
         | without bothering you. For e.g. updating a function v/s fixing
         | linting errors.
         | 
         | 2. Aider is agentic, so it figures out how to do a task itself.
         | This trades accuracy in favor of flexibility. With patchwork,
         | you control exactly how the task is done by defining a
         | patchflow. This limits the set of tasks to those that you have
         | pre-defined but gives much higher accuracy for those tasks.
         | 
         | While the demo shows CLI use, the ideal use case patchwork is
         | as part of your CI or even a serverless deployment triggered
         | via event webhooks. Hope this helps? :)
        
       ___________________________________________________________________
       (page generated 2024-07-26 23:02 UTC)