{"id":18952307,"url":"https://github.com/step-security/ai-codewise","last_synced_at":"2025-04-16T01:33:34.803Z","repository":{"id":163577097,"uuid":"638731741","full_name":"step-security/ai-codewise","owner":"step-security","description":"AI-Powered Code Reviews for Best Practices \u0026 Security Issues Across Languages","archived":false,"fork":false,"pushed_at":"2023-08-16T07:08:30.000Z","size":363,"stargazers_count":18,"open_issues_count":14,"forks_count":8,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-29T05:11:37.795Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/step-security.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-10T01:44:40.000Z","updated_at":"2025-02-17T13:02:34.000Z","dependencies_parsed_at":"2024-06-21T17:42:13.868Z","dependency_job_id":"7775c8a4-f8b2-4a5d-bc77-7fa4f4711651","html_url":"https://github.com/step-security/ai-codewise","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/step-security%2Fai-codewise","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/step-security%2Fai-codewise/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/step-security%2Fai-codewise/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/step-security%2Fai-codewise/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/step-security","download_url":"https://codeload.github.com/step-security/ai-codewise/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249182531,"owners_count":21226084,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T13:32:42.741Z","updated_at":"2025-04-16T01:33:34.480Z","avatar_url":"https://github.com/step-security.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AI-CodeWise\n\n\u003cp align=\"center\"\u003e\n  \u003cimg  src=\"images/banner.png\" width=\"400\"\u003e\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![Maintained by stepsecurity.io](https://img.shields.io/badge/maintained%20by-stepsecurity.io-blueviolet)](https://stepsecurity.io/?utm_source=github\u0026utm_medium=organic_oss\u0026utm_campaign=ai-codewise)\n[![License: Apache 2.0](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://raw.githubusercontent.com/step-security/ai-codewise/main/LICENSE)\n\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n🦉 AI-Powered Code Reviews for Best Practices \u0026 Security Issues Across Languages\n\u003c/p\u003e\n\n---\n\nAI-CodeWise GitHub Action: Your AI-powered Code Reviewer!\n\n- 🧠 Triggers on pull requests, sending code diffs to StepSecurity API \u0026 using Azure OpenAI API for code analysis\n\n- 🔒 Pull request comments via StepSecurity bot, pinpointing issues to enhance code quality \u0026 tackle security risks\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"images/sequence-diagram.png\" alt=\"Sequence diagram\"\u003e\n\u003c/p\u003e\n\n## Usage\n\nTo use AI-CodeWise, add this GitHub Actions workflow to your repositories\n\n```yaml\nname: Code Review\non:\n  pull_request:\npermissions:\n  contents: read\njobs:\n  code-review:\n    runs-on: ubuntu-latest\n    permissions:\n      contents: read\n      pull-requests: read\n    steps:\n      - name: Harden Runner\n        uses: step-security/harden-runner@128a63446a954579617e875aaab7d2978154e969 # v2.4.0\n        with:\n          disable-sudo: true\n          egress-policy: block\n          allowed-endpoints: \u003e\n            api.github.com:443\n\n      - name: Code Review\n        uses: step-security/ai-codewise@v1\n```\n\nWhen you create a pull request in the repository, the workflow will get triggered and add a pull request comment. The comment will be added even if the pull request is from a fork. Here is an screenshot of what the comment will look like:\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"images/sample-code-comment.png\" width=\"600\"\u003e\n\u003c/p\u003e\n\nThe bot solely generates code comments, it does not approve or block PRs based on its suggestions. The action passes once the code comments are posted in the PR discussion.\n\n## Comparison with existing SAST and IaC scanners\n\n🌟 AI-CodeWise: Outshining rule-based scanners with:\n\n1. All-in-One Review 🌐: Detects code smells, best practice violations, \u0026 security issues across languages for versatile code review.\n\n2. Unforeseen Issue Detection 🎯: AI-powered for discovering issues that rule-based systems might miss, ensuring thorough code analysis.\n\n3. Fix Suggestions 🔧: Offers code change suggestions directly in PR comments, empowering devs to resolve issues efficiently, boosting code quality \u0026 security.\n\n## Examples\n\nHere are a few example pull requests with PR comments from AI-CodeWise\n\n1. [Terraform file](https://github.com/step-security/ai-codewise-demo/pull/2) with multiple security issues\n2. [Java code](https://github.com/step-security/ai-codewise-demo/pull/5) vulnerable to XML external entities attacks\n3. [JavaScript code](https://github.com/step-security/ai-codewise-demo/pull/3) vulnerable to open redirect\n4. [Python code](https://github.com/step-security/ai-codewise-demo/pull/4) vulnerable to server-side request forgery (SSRF)\n5. [C# code](https://github.com/step-security/ai-codewise-demo/pull/1) vulnerable to command injection\n\nTo try it out, you can also create a pull request in our demo repository.\nhttps://github.com/step-security/ai-codewise-demo \n\n\n## Support for private repositories\n\nTo use AI-CodeWise on a private repository, please [join the beta](https://www.stepsecurity.io/contact).\n\n## Limitations\n\n- AI-CodeWise will only review changes if the total number of file changes in a pull request is less than 10.\n- AI-CodeWise will only review changes in a file if the total characters in the diff is less than approximately 10K.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstep-security%2Fai-codewise","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstep-security%2Fai-codewise","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstep-security%2Fai-codewise/lists"}