How octopusreview/octopus works
Octopus is an AI code-review product for hosted and self-hosted teams, with web, CLI, and local-agent workflows. The primary path is a code-host pull-request event, repository preparation and AI review, then a published review; users can also request reviews from the CLI. Separate capabilities include chat over repository context, dependency-risk analysis, repository knowledge, and integrations. The excerpts establish some calls and analyzer dispatch; README statements support broader product links. Several web subsystems are unsampled, so those links are marked unverified rather than inferred as detailed call chains.
Main entry points: lib Review orchestration · review.ts CLI review · route.ts Repository chat · review-repository-preparation.ts Repository preparation
Components 18
User entry points
- CLI review
apps/cli/src/commands/review.ts - CLI HTTP client
apps/cli/src/lib/api.ts
Review workflow
- GitHub webhook
apps/web/app/api/github/webhook/route.ts - Repository preparation
apps/web/lib/review-repository-preparation.ts - Review orchestration
apps/web/lib - Review results
apps/web/lib
AI and analysis
- Repository chat
apps/web/app/api/chat/route.ts - Embeddings
apps/web/lib/embeddings.ts - Dependency analysis API
apps/web/app/api/analyze-deps/route.ts - Package risk analyzer
packages/package-analyzer/src/index.ts - Risk checks
packages/package-analyzer/src
Integrations and context
- Knowledge context
apps/web/lib/knowledge-context.ts - Code-host integrations
apps/web/lib - Forgejo connector
packages/forgejo-connector/src/runner.ts - AI providers
apps/web/lib/providers
Persistence
- Application database
packages/db/src/index.ts
Other components
- Developer
- Code host
Connections 20
- Developer → CLI review: requests review
README.md - CLI review → CLI HTTP client: sends requests
apps/cli/src/commands/review.ts - CLI review → Repository preparation: indexes repository
apps/cli/src/commands/review.ts - CLI review → Review orchestration: requests review
- Code host → GitHub webhook: sends events
README.md - GitHub webhook → Review orchestration: starts review
apps/web/app/api/github/webhook/route.ts - Review orchestration → Repository preparation: prepares repository
- Repository preparation → Application database: reads and updates
apps/web/lib/review-repository-preparation.ts - Repository preparation → Review orchestration: enqueues review
apps/web/lib/review-repository-preparation.ts - Review orchestration → Review results: publishes findings
- Developer → Repository chat: asks question
- Repository chat → Embeddings: creates vectors
apps/web/app/api/chat/route.ts - Repository chat → Application database: reads and saves
apps/web/app/api/chat/route.ts - Repository chat → Knowledge context: retrieves context
- Dependency analysis API → Package risk analyzer: runs analysis
apps/web/app/api/analyze-deps/route.ts - Package risk analyzer → Risk checks: dispatches checks
packages/package-analyzer/src/index.ts - Developer → Dependency analysis API: analyzes dependencies
- Review orchestration → AI providers: requests model review
- Review orchestration → Code-host integrations: publishes review
- Forgejo connector → Code-host integrations: connects Forgejo