{"id":35151275,"url":"https://github.com/atkei/content-reviewer-action","last_synced_at":"2026-01-13T22:45:28.130Z","repository":{"id":330843892,"uuid":"1122536512","full_name":"atkei/content-reviewer-action","owner":"atkei","description":"A GitHub Action for reviewing written content","archived":false,"fork":false,"pushed_at":"2026-01-05T03:24:57.000Z","size":2197,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-13T22:45:26.403Z","etag":null,"topics":["doc-review","github-actions","proofreading","review"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/atkei.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":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-25T00:45:54.000Z","updated_at":"2026-01-05T03:25:00.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/atkei/content-reviewer-action","commit_stats":null,"previous_names":["atkei/content-reviewer-action"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/atkei/content-reviewer-action","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atkei%2Fcontent-reviewer-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atkei%2Fcontent-reviewer-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atkei%2Fcontent-reviewer-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atkei%2Fcontent-reviewer-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/atkei","download_url":"https://codeload.github.com/atkei/content-reviewer-action/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atkei%2Fcontent-reviewer-action/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28405125,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-13T21:51:37.118Z","status":"ssl_error","status_checked_at":"2026-01-13T21:45:14.585Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["doc-review","github-actions","proofreading","review"],"created_at":"2025-12-28T15:43:50.579Z","updated_at":"2026-01-13T22:45:28.125Z","avatar_url":"https://github.com/atkei.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Content Reviewer Action\n\n[GitHub Action](https://github.com/features/actions) for [Content Reviewer](https://github.com/atkei/content-reviewer).\n\n## Features\n\n- LLM-powered content review\n- Automatic PR review comments with inline feedback on specific lines\n- Automatically reviews only changed files in Pull Requests\n- Multilingual support\n- Structured output with severity levels (error, warning, suggestion)\n\n## Usage\n\n### Basic Usage\n\n```yaml\nname: Review Content\n\non:\n  pull_request:\n\njobs:\n  review:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v6\n\n      - name: Review Content\n        uses: atkei/content-reviewer-action@v0\n        with:\n          files: 'docs/**/*.md'\n        env:\n          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n\n      - name: Review results\n        run: echo '${{ steps.cr.outputs.results }}' | jq .\n```\n\n### PR Review Comments\n\n```yaml\nname: Review Content\n\non:\n  pull_request:\n\njobs:\n  review:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: actions/checkout@v6\n\n      - name: Review Content\n        uses: atkei/content-reviewer-action@v0\n        with:\n          files: 'docs/**/*.md'\n          comment-pr: true\n        env:\n          OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}\n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n```\n\n## Inputs\n\n| Input           | Description                                                               | Required | Default          |\n| --------------- | ------------------------------------------------------------------------- | -------- | ---------------- |\n| `files`         | Files to review (space-separated, supports glob patterns)                 | Yes      | -                |\n| `api-key`       | API key for LLM provider                                                  | No       | Uses env vars    |\n| `provider`      | LLM provider (`openai`, `anthropic`, `google`)                            | No       | `openai`         |\n| `model`         | LLM model to use                                                          | No       | Provider default |\n| `language`      | Review language (`en`, `ja`)                                              | No       | `en`             |\n| `config`        | Path to configuration file                                                | No       | -                |\n| `severity`      | Minimum severity level to report (`error`, `warning`, `suggestion`)       | No       | `warning`        |\n| `fail-on-error` | Fail the action if errors are found                                       | No       | `false`          |\n| `comment-pr`    | Post review results as PR review comments (requires `pull_request` event) | No       | `false`          |\n\n## Outputs\n\n| Output         | Description                                  |\n| -------------- | -------------------------------------------- |\n| `results`      | Review results in JSON format                |\n| `summary`      | Review summary text                          |\n| `has-errors`   | Whether errors were found (`true`/`false`)   |\n| `has-warnings` | Whether warnings were found (`true`/`false`) |\n\n## Environment Variables\n\nAPI keys can be provided via environment variables:\n\n- `OPENAI_API_KEY` - OpenAI API key\n- `ANTHROPIC_API_KEY` - Anthropic API key\n- `GOOGLE_API_KEY` - Google AI API key\n- `GITHUB_TOKEN` - Required for PR comments\n\n## Supported Providers\n\n| Provider    | Default Model      |\n| ----------- | ------------------ |\n| `openai`    | `gpt-4.1-mini`     |\n| `anthropic` | `claude-haiku-4-5` |\n| `google`    | `gemini-2.5-flash` |\n\n## Development\n\n```bash\npnpm install\npnpm build\npnpm test\n```\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatkei%2Fcontent-reviewer-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fatkei%2Fcontent-reviewer-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatkei%2Fcontent-reviewer-action/lists"}