{"id":50943306,"url":"https://github.com/asim/careem","last_synced_at":"2026-06-17T17:05:15.545Z","repository":{"id":364633594,"uuid":"1268593630","full_name":"asim/careem","owner":"asim","description":null,"archived":false,"fork":false,"pushed_at":"2026-06-13T20:00:14.000Z","size":22,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-13T21:25:06.591Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/asim.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2026-06-13T18:02:57.000Z","updated_at":"2026-06-13T20:00:20.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/asim/careem","commit_stats":null,"previous_names":["asim/careem"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/asim/careem","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asim%2Fcareem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asim%2Fcareem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asim%2Fcareem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asim%2Fcareem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/asim","download_url":"https://codeload.github.com/asim/careem/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asim%2Fcareem/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34457745,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-17T02:00:05.408Z","response_time":127,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2026-06-17T17:05:14.906Z","updated_at":"2026-06-17T17:05:15.528Z","avatar_url":"https://github.com/asim.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🔍 Smart Code Reviewer\n\nAn AI assistant that gives code a **structured first-pass review** — for\nreadability, structure, and maintainability — *before* it reaches a human\nreviewer. People then spend their attention on judgment calls, not nitpicks.\n\nBuilt for the Careem \"AI savviness\" challenge (Challenge #1, which also contains\nChallenge #3's prompt). Written in **Go, standard library only** — no external\ndependencies.\n\n\u003e See [`examples/sample-review.md`](examples/sample-review.md) for a sample of\n\u003e the output, and [`PROMPT.md`](PROMPT.md) for the reviewing prompt itself.\n\n## What it does\n\nPaste a snippet (or pipe a file) and get back:\n\n- a one-line **health summary** and a **1–10 score**,\n- the **three highest-impact improvements**, each tagged with\n  *category* (readability / structure / maintainability / correctness /\n  performance / security), *severity*, *location*, and a **concrete fix**,\n- **one genuine positive note**, and\n- (CLI) a Markdown report.\n\n## Why it's built this way\n\n- **Senior-engineer prompt** framed as a *pre-human review*, so feedback stays\n  high-signal instead of becoming a linter dump. See [`PROMPT.md`](PROMPT.md).\n- **Structured output via a Claude tool schema** — the model returns the review\n  through a forced `submit_review` tool call, so the result is always valid,\n  renderable JSON (no fragile text scraping). See\n  [`reviewer/reviewer.go`](reviewer/reviewer.go).\n- **Anti-quota guardrails** (\"be proportionate\", \"don't invent problems\") keep\n  it from manufacturing weak findings just to reach three.\n- **A mandatory positive note** keeps reviews constructive and trustworthy for\n  the human author.\n\n## Run it\n\nRequires Go 1.24+ and an Anthropic API key.\n\n```bash\nexport ANTHROPIC_API_KEY=sk-ant-...\n\n# Web app — then open http://localhost:8080\ngo run ./cmd/server\n\n# CLI — review a file or pipe via stdin\ngo run ./cmd/review examples/sample.go\ncat main.go | go run ./cmd/review\n```\n\nSet `REVIEWER_MODEL=claude-opus-4-8` for the deepest analysis; the default\n`claude-sonnet-4-6` is the fast/quality sweet spot. The server port defaults to\n`8080` (override with `PORT`).\n\nBuild standalone binaries:\n\n```bash\ngo build -o review  ./cmd/review\ngo build -o server  ./cmd/server\n```\n\n## Project layout\n\n| Path | Purpose |\n|------|---------|\n| `reviewer/reviewer.go` | Core logic, prompt, the `submit_review` tool schema, Markdown rendering |\n| `cmd/server/` | `net/http` web UI (`html/template`, no JS deps) |\n| `cmd/review/` | Terminal entry point (file arg or stdin) |\n| `PROMPT.md` | Standalone copy-paste prompt (Challenge #3) |\n| `SUMMARY.md` | 100-word summary of the idea and approach |\n| `examples/` | A rough sample snippet and an illustrative review |\n\n## Run with Docker\n\nThe server is a static binary on a distroless base (tiny image, no shell, runs\nas non-root):\n\n```bash\ndocker build -t smart-code-reviewer .\ndocker run --rm -p 8080:8080 -e ANTHROPIC_API_KEY=sk-ant-... smart-code-reviewer\n# open http://localhost:8080\n```\n\n## Deploy a public link\n\nThe image is a single static binary, so it deploys anywhere that runs a\ncontainer (Fly.io, Render, Cloud Run, a VM). Set `ANTHROPIC_API_KEY` and `PORT`\nin the environment.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasim%2Fcareem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fasim%2Fcareem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasim%2Fcareem/lists"}