Documentation
Ribix: product documentation
Ribix automatically enriches new GitHub Issues with a likely cause, suspect change ranking, severity, candidate files, related history, and suggested owner as a structured comment. Your team keeps the same workflow; intelligence shows up where people already triage.
The GitHub comment is the front door, not the whole product. The live platform also includes dashboard review surfaces, CLI workflows, PR intelligence, Linkroot incident analysis, and team-memory views that widen the same evidence chain when a bug becomes a broader engineering decision.
Ribix is in public beta.
Self-serve onboarding is live for GitHub-connected teams, but some enterprise controls, advanced routing integrations, and full account-deletion automation are still maturing. Use support for rollout help or unsupported cases.
Overview
When a new issue is opened in a connected repository, Ribix receives the event via the GitHub App webhook. It parses the issue body for error messages, stack traces, and file paths, then combines that with git history, related issue history, candidate-file ranking, and repository context to identify the strongest explanation or next check. The result is a structured comment posted back to the issue, usually containing a primary diagnosis, severity, suggested owner, candidate files, related history, and one next engineering step.
Ribix is designed to compress the first 5–15 minutes of triage: reading the issue, checking git blame, searching for duplicates, and assigning priority. You still own all decisions; Ribix gives you a head start every time.
Quickstart
- Create an Account. Go to the Ribix dashboard and create an account. The dashboard currently supports email/password sign-in and GitHub OAuth.
- Install the GitHub App. During onboarding, click "Connect GitHub" to install the Ribix GitHub App on your GitHub organization or personal account. Choose the repositories you want to grant access to. You can restrict access to specific repos or grant org-wide access.
- Select repositories. Back in the Ribix dashboard, toggle on the repositories where you want automatic enrichment. Enrichment is opt-in per repository.
- Set a routing default. Choose a fallback routing rule for cases where ownership can't be determined from git history (e.g., on-call owner, support triage, or repo maintainers).
- File a bug. Open a new GitHub Issue in a connected repository. Ribix will post an enrichment comment within 60 seconds.
That's it. No configuration files, no YAML, no training runs. Ribix works from your existing git history from the first issue.
CLI & VS Code
Ribix uses the same workspace account model across the dashboard, CLI, and VS Code extension. Normal users do not need installation IDs or service tokens to get started.
- CLI sign-in. Install the CLI with
npm install -g @ribix/cli, then runribix login. The browser auth flow stores your access token, refresh token, and active workspace locally. - Workspace switching. Use
ribix workspace lsto list linked workspaces andribix workspace use <id>to switch without re-authenticating. - VS Code sign-in. Install the
ribix.ribix-vscodemarketplace package, open the Bug Session view, and runRibix: Sign In. The extension uses the same OAuth issuer and workspace model as the CLI. - Fallback when no workspace exists. If login succeeds but no workspaces are linked, finish web onboarding first by connecting the GitHub App and activating at least one repository.
Who it's for
Ribix is designed for engineering teams that track bugs in GitHub Issues and want faster, more consistent triage. It is most useful when:
- Bug reporters are not the engineers who know the codebase. Support escalations, external bug reports, and automated crash reporters often lack context. Ribix bridges the gap.
- Multiple engineers share on-call duty. The enrichment comment gives on-call engineers a starting point without requiring deep familiarity with every part of the codebase.
- The codebase has significant history. The more commits and closed issues Ribix can reference, the higher quality the semantic search and blame attribution signals.
- Triage speed matters. Teams with SLAs on first response or P1 MTTR see the most direct impact from reducing time-to-context.
GitHub App & permissions
The Ribix GitHub App uses a minimal permission set. Below is every permission requested, why it is needed, and what Ribix does with it.
Ribix is GitHub-first, but not GitHub-event-only.
The product starts from GitHub Issues, then combines issue text, commit history, blame signals, repository context, and related issue history needed to rank likely causes, suspect changes, candidate files, and owners.
| Permission | Access level | Why it's needed |
|---|---|---|
| Issues | Read & write | Read issue content to trigger enrichment; write to post the enrichment comment. |
| Contents | Read-only | Access commit history, blame signals, and repository context used during enrichment. |
| Metadata | Read-only | Required by GitHub for all Apps; provides repo name, visibility, and description. |
Webhook events. The GitHub App lifecycle currently includes issues, installation, installation_repositories, push, and pull_request events. GitHub is still the primary issue-enrichment entry point, but Ribix also uses repository lifecycle and recent-change signals to keep workspace intelligence fresh.
Anatomy of an enrichment
Every enrichment comment is decision-first. In practice it usually includes these sections:
Diagnosis
A likely cause, primary hypothesis, or first place to check based on issue text, repository history, and the strongest code-change signals Ribix can support.
The checkout timeout most likely starts in TokenSession.validate() after the refresh fallback was removed.
Severity
A P1 / P2 / P3 recommendation with short rationale so triage can decide urgency quickly without reconstructing impact from scratch.
P1 for now. Checkout critical path affected and the report looks like a recent regression.
Suggested owner
The engineer Ribix thinks is closest to the affected area, weighted toward substantive ownership signals rather than drive-by commits.
@maria, authored the strongest blame-linked change and has the most recent substantive work in the token session module.
Candidate files
The first files and functions worth inspecting. These are repository-specific hints, not generic stack-trace echoes.
src/auth/tokenSession.ts -> TokenSession.validate()
Next step and related history
A concrete first engineering check plus similar past issues from the same repository when Ribix finds relevant prior fixes or regressions.
Review the token refresh fallback removal first, then compare against #1734 for the last fix in this area.
End-to-end workflow
- A new issue is opened in GitHub Issues.
- GitHub sends an
issues.openedwebhook event to Ribix. - Ribix queues the event and begins parsing the issue body for error messages, exception types, stack trace frames, and file path references.
- Ribix collects git and repository context for the affected area, including blame-linked commits, recent PRs, recent repository activity, and candidate files or functions when the report is weak.
- Ribix ranks likely causes, suspect changes, candidate files, and owner signals from that evidence.
- The issue text and the strongest supporting signals are sent to an AI model to draft the decision-first narrative.
- Vector search over your closed issue history surfaces semantically similar bugs and their resolutions.
- Severity and next-step guidance are composed from both deterministic signals and model output.
- Ownership is assigned from git blame, falling back to your configured routing default if no clear owner exists.
- Ribix posts the enrichment as a comment on the GitHub Issue, then may refine that same comment if stronger evidence becomes available.
The enrichment comment is a GitHub comment authored by ribix-bot and is visually distinct from human comments. It will appear in your standard GitHub notification flow just like any other comment.
Dashboard walkthrough
The Ribix dashboard gives you visibility into enrichment activity and control over configuration. Key sections:
- Overview. A summary of enrichments processed today, average confidence score, and recent enrichment activity. Includes a quick-access list of the most recently enriched issues across all connected repositories.
- Repositories. A list of all repositories accessible via the GitHub App. Toggle auto-enrichment on or off per repository, and see how many enrichments each repository has generated.
- Enrichments. A searchable feed of posted enrichments with severity, owner, status, confidence-oriented ranking signals, and links back to GitHub Issues.
- Linkroot. Cross-platform incident analysis that can correlate GitHub, Slack, Discord, Linear, and Jira signals when those integrations are configured.
- Debug, PR conflicts, Live Feed, and Quality. Operator views for traces, recording sessions, queue activity, live enrichment events, pull-request conflict analysis, and enrichment-quality evaluation.
- CLI, Org Knowledge, and Garden. Workspace views for terminal onboarding, knowledge exports, reviewed garden notes, and Linkroot-generated drafts.
- Dead Letters. A stale-issue surface for unresolved bug patterns detected across active repositories.
- Settings, Billing, and Usage. Manage workspace access, GitHub App connection, profile/avatar, integration status, plan state, and usage visibility.
Ownership routing
Ribix determines suggested owners using a multi-step process:
- Git blame attribution. For each file path in the stack trace, Ribix identifies which engineers last modified the relevant lines. Authors of recent, substantive commits are weighted higher than drive-by refactors or automated commits.
- CODEOWNERS. If a
CODEOWNERSfile exists, it is used as a secondary signal to validate or supplement blame attribution. - Fallback routing. If git blame and CODEOWNERS produce no clear owner, Ribix falls back to your configured routing default:
- On-call owner – route to whoever is currently on-call in your rotation (requires a supported on-call integration, coming soon).
- Support triage – route to a designated support or triage team for initial human review before engineering assignment.
- Repo maintainers – default to repository administrators or CODEOWNERS catch-all entries.
The routing default is set during onboarding and can be changed at any time in dashboard Settings.
Configuration & settings
- Per-repository enrichment toggle. Enable or disable auto-enrichment for any individual repository without uninstalling the GitHub App. Useful for gradually rolling out Ribix across your organization.
- Routing default. Choose which fallback routing rule applies when no clear code owner can be identified (see Ownership routing above).
- Workspace access. Invite teammates, review seats, and manage access from the dashboard without changing the GitHub App installation itself.
- GitHub App connection state. Reconnect the GitHub App, review repository availability, and verify whether the workspace is linked to the backend successfully.
- Integrations and operator tooling. The dashboard also exposes integration status, CLI activity, debug traces, and other workspace-level tools where enabled.
Integrations
GitHub Issues is the primary issue-enrichment entry point, delivered through the Ribix GitHub App.
- New GitHub Issues trigger enrichment.
- Installation lifecycle and repository activation stay synchronized through GitHub App events.
- Recent push and pull request signals help keep repository intelligence current.
Beyond GitHub-first enrichment, Linkroot and workspace intelligence can correlate additional systems when configured for a workspace:
- Slack – slash commands, events, and conversation context.
- Discord – slash commands and message event context.
- Linear – ticket and webhook context for cross-system analysis.
- Jira – ticket and webhook context for cross-system analysis.
Data handling
What Ribix stores. Ribix stores account and workspace records, connected repository metadata, issue content for connected repositories, enrichment records, embeddings for related-issue retrieval, and operational metadata needed to power the dashboard, CLI, and incident tooling.
Repository access in practice. The backend may maintain a local clone cache for connected repositories so it can compute blame, candidate files, CODEOWNERS context, recent-change signals, and short snippets relevant to a bug report. The product is not built as a general-purpose code browser, the dashboard does not expose raw source files, and the primary persistent records are issue, enrichment, knowledge, and operational data rather than a browsable copy of your repository.
Retention. Workspace data is retained for the life of your Account and deleted within 90 days of Account closure. See our Privacy Policy for full retention schedules.
If your organization requires a formal Data Processing Agreement (DPA) or custom retention schedule, start with our Security pages, then contact mindcore.official.dev@gmail.com.
Accuracy & limits
Enrichments are probabilistic and will be wrong in some cases. Known failure modes:
- Vague or underspecified issues. Issues with minimal detail ("it's broken"), no stack traces, or no file path references produce weaker evidence and lower-confidence ranking. Encourage reporters to include error messages, reproduction steps, and stack traces.
- Shallow git history. Repositories with fewer than a few weeks of history or very few commits will produce less accurate blame attribution and no semantic search results until more issues accumulate.
- Noisy commit history. Repositories with many automated commits (dependency bumps, generated code, reformatters) may produce misleading attribution if the strongest suspect change is buried in noise. This improves as Ribix learns your repository's commit patterns.
- Stack traces pointing to the wrong layer. If the error surfaces in a library or framework rather than your application code, blame attribution will point to the wrong place. Ribix's confidence score will be lower in these cases.
- New repositories or infrequently touched areas. Less blame and issue history means weaker signals. Quality improves over time as more issues accumulate.
Confidence and ranking signals. Ribix tracks confidence-oriented signals internally and surfaces them in dashboard tooling, but they should be treated as triage guidance, not ground truth.
Use Ribix as a triage accelerator, not a replacement. Enrichments are a starting point, not a verdict. Always verify the suggested commit, reproduce the issue, and exercise engineering judgment before taking action.
Troubleshooting
- Enrichment comment not appearing on my issue. Wait up to 2 minutes; processing can take longer if the repository is large or the queue is busy. If no comment appears after 5 minutes: (1) confirm that the repository is toggled on in the Ribix dashboard under Repositories; (2) confirm the GitHub App is still installed on the organization (check GitHub > Settings > Applications); (3) check that the issue was not opened by a bot or automated account (Ribix skips enrichments on issues opened by other bots by default).
- Dashboard shows "Not connected" for GitHub. The GitHub App may have been revoked or the installation ID has changed. Go to Settings > GitHub App in the dashboard and click "Reconnect." This will restart the OAuth and App install flow.
- Dashboard shows "No repositories found." If you just connected the GitHub App, wait 30-60 seconds and refresh; repository sync can take a moment. If no repositories appear after a minute, check that you granted the App access to at least one repository (not "No repositories") during the GitHub App installation flow. You can adjust repository access from GitHub > Settings > Applications > Ribix > Repository access.
- Getting 401 errors in the dashboard. Your session may have expired. Sign out and sign back in with your usual method, either email/password or GitHub OAuth. If the problem persists, clear your browser's cookies for ribix.dev and try again.
- The CLI says there are no workspaces. Complete dashboard onboarding first: create a workspace, connect the GitHub App, and activate a repository. Then rerun
ribix workspace ls. - The VS Code extension signs in but shows no bug-session context. Confirm the current folder is a git repository linked to a Ribix workspace and that you signed in with the same account used in the dashboard.
- Enrichment quality is low on a specific repository. Check that issues include stack traces or file paths. Enrichment quality also improves as more issues accumulate in the repository's history. Review the confidence score on recent enrichments in the dashboard for a signal on overall quality.
- ribix-bot is posting duplicate comments. This is a known edge case if the webhook event is replayed by GitHub due to a delivery timeout. Contact us at mindcore.official.dev@gmail.com and we can remove the duplicate and prevent recurrence for your installation.
FAQ
Does Ribix read my source code?
Ribix may read relevant repository files from a local clone cache to derive blame, candidate files, CODEOWNERS context, and short snippets related to an issue. It is not presented as a code-browsing product in the dashboard, and its primary persistent records are issue, enrichment, knowledge, and workspace data.
Does Ribix work on private repositories?
Yes. When you install the GitHub App and grant access to a private repository, Ribix can access its issues and repository context with the same permissions that govern the App installation. Private-repo processing may also use the backend clone cache for enrichment and analysis. All workspace data is treated as confidential.
Can I use Ribix on a personal account (not an org)?
Yes. The GitHub App can be installed on a personal account. All functionality is the same as for organizations.
Is there a free plan?
Yes. Workspaces start on Free, and paid tiers upgrade inside the dashboard as usage and feature access expand. See the Pricing page for the current plan structure.
How does Ribix handle issues with no stack trace?
Ribix will still generate an enrichment, but suspect-change ranking and candidate-file confidence may be weaker. Related issues, routing hints, and severity assessment can still work from the issue text alone.
Can Ribix train on my data to improve my specific repository?
We use aggregated, anonymized feedback signals to improve global model quality, but we do not fine-tune models on a per-customer basis without explicit agreement. Contact us if you are interested in a custom model program.
What happens when I disconnect a repository?
Ribix will stop processing new issues from that repository. Existing enrichment comments on GitHub Issues remain because they are GitHub comments. Clone-cache and related backend records are cleaned up through the normal lifecycle and retention paths described in the Privacy Policy.
Does Ribix post comments on existing (old) issues?
No. Ribix only enriches new issues at the moment they are opened. It does not retroactively analyze your backlog. Historical enrichment is a planned feature.
Can I configure Ribix to skip certain issues?
Today the main control is repository activation: you can enable or disable enrichment per repository from the dashboard. Fine-grained skip rules are not the primary control surface in the current product.
How do I delete my Ribix account and all associated data?
Email mindcore.official.dev@gmail.com with your account or workspace details and we will process the request under the Privacy Policy. Account and workspace deletion requests are currently handled through support rather than a full self-serve closure flow.
Legal & support
Site usage, dashboard activity, and beta onboarding data are covered by our Privacy Policy and Terms of Service. Public trust material for the live product also includes our Security page. For questions not covered here, reach out:
- Product & integration questions: mindcore.official.dev@gmail.com
- Privacy & data requests: mindcore.official.dev@gmail.com
- Legal & compliance: mindcore.official.dev@gmail.com
- Security vulnerabilities: mindcore.official.dev@gmail.com