GitHub is already your issue tracker. It should be your support tool too.

Scitor turns customer emails into GitHub Issues. Your team replies without leaving GitHub. No Zendesk. No context switching. No per-seat pricing.

< 5 min setup  ·  Free plan available  ·  No credit card required

Cannot export invoices as PDF

#204
Open opened 2 hours ago
Scitor bot
scitor-customerops bot

From: Rachel Nguyen ( rachel@brightlabs.io )

Hi, when I click "Export to PDF" on the invoices page, the button spins for a few seconds and then nothing happens. No file downloads. This is blocking our monthly accounting close.

I tried Chrome and Firefox, same result on both. The CSV export works fine.

📎 Attachments

  • console-errors.png

🤖 AI analysisnegative · bug-report

Customer cannot export invoices as PDF. The export button loads but does not download a file. CSV export works. Blocking their monthly accounting close.

Labels

category:bug-report priority:high sentiment:negative spam:clean

Assignees

unassigned
scitor-customerops added category:bug-report priority:high sentiment:negative spam:clean

For teams that already live in GitHub

Whether you maintain an open-source project, run a dev tool startup, or support internal platform users — if GitHub is where your work happens, Scitor keeps support there too.

Your tickets live in your repository. Your team uses GitHub permissions. Your workflows run in GitHub Actions. Scitor adds the one thing GitHub doesn't have out of the box: a way for customers to email you into it.

Built for email-based support — the primary channel for developer tool and SaaS customers.

Developer support without the learning curve

Set up your GitHub helpdesk in five minutes

1

Install the GitHub App

Install Scitor from the GitHub Marketplace and pick which repositories should receive support requests. Scitor posts setup instructions with your unique email address.

2

Forward your support email

Set up forwarding from your existing address (e.g. support@yourcompany.com) to the Scitor address. You can also embed a support form on your website with a single JavaScript snippet.

3

Reply from GitHub

When a customer emails you, it appears as a GitHub Issue. AI adds a summary and labels. Your team writes a response, adds /send, and the customer gets a professional email.

Read the full walkthrough of email to GitHub Issues

Not just GitHub-connected. GitHub-native.

You own your data

Your support conversations are GitHub Issues in your own repository — not rows in a third-party database. If you stop using Scitor, your full ticket history stays in GitHub exactly as it was. No export, no migration, no lock-in.

No separate user management

Access is tied to your GitHub repository permissions. Anyone with triage access can sign in with GitHub — no invites, no separate accounts. Remove someone from GitHub and they lose support access within a minute. Offboarding is automatic.

A ticket is one click from the code that caused it

When a customer reports a bug, the Issue sits right next to the PR that introduced it. Label it, link it to a milestone, reference a commit — without leaving GitHub. The connection between "customer complained" and "this line of code" is never broken.

Automation runs on infrastructure you already own

Scitor's agentic workflows run natively in GitHub Actions. Auto-triage, draft replies, detect frustrated customers, generate weekly reports — on the CI/CD pipeline your team already uses. No automation platform to buy or maintain.

Two ways to work. One source of truth.

Scitor is fully functional from GitHub alone — that's not a limitation, it's the point. Your support tickets are Issues. Your team replies with /send. Everything stays in your repo.

The app adds a support-team-shaped view on top of the same data, for when you want it.

Work from GitHub

Always free

Emails arrive as Issues. AI labels and summarises them. Your team replies with /send. Workflows run in GitHub Actions. No other tool required, ever.

Work from the app

Included with all plans

Open app.scitor.io for a proper support inbox: WYSIWYG editor, AI drafting, SLA timers, customer history, keyboard shortcuts (j/k/r/c). Your tickets still live in GitHub — the app is just a faster way to work them.

Switch between them anytime. Your data is always in GitHub.

Open app.scitor.io

See the app in action

A proper support inbox on top of your GitHub data. Keyboard-navigable, fast, and built for teams that move quickly.

app.scitor.io
Scitor ticket inbox showing prioritised support tickets with SLA indicators, priority labels, and assignees

Sort by priority, SLA, or date. Assign tickets, add labels, and jump to GitHub in one click.

GitHub-native customer support

One tool for code and customer support

Pricing

Simple, transparent pricing

Start free. Upgrade when you need AI triage, a knowledge base, or CRM features.

Free to start · Installs in under 5 minutes · No credit card required

Free

$0 /month

Everything you need to run customer support from GitHub. No credit card required.

Pro Popular

$9 /month

AI-powered triage, a hosted knowledge base, and higher limits for growing teams.

Enterprise

$19 /month

CRM-lite features, customer history, and unlimited outbound for teams that need full visibility.

Why I built this

I was building a developer tool and needed a way to handle customer support. I looked at Zendesk — over $100/agent/month at full features, a separate login, a separate user list, a separate place for conversations that were all about code that lived in GitHub.

The context switching wasn't just annoying. It broke the connection between a customer's complaint and the code that caused it. Every time I answered a ticket, I was copying issue numbers between two systems that should have been one.

So I built Scitor: a layer that turns email into GitHub Issues and lets you reply without leaving the tool you're already in. No new tool to learn. No separate database. No per-seat pricing.

— Michiel, founder

Frequently asked questions

What do I need to get started?

A GitHub repository with Issues enabled. We recommend a dedicated support repository so your product code stays separate. Install the Scitor GitHub App, and you'll receive a unique email address to forward your support emails to.

What happens to my data if I stop using Scitor?

Your support conversations are GitHub Issues in your own repository — they don't live on our servers, and uninstalling the app doesn't touch them. Your full ticket history stays exactly where it is, in GitHub, with no export needed. Everything Scitor itself holds — attachments, CSAT responses, contact profiles, and usage metrics — is deleted when you uninstall the GitHub App, so download any attachments you need before you do. Full detail: scitor.io/security.

How does Scitor compare to Jira Service Management?

Jira Service Management is built for internal IT support — managing requests from employees, not customers. It's optimised for the Atlassian ecosystem (Jira, Confluence) and requires significant setup. Scitor is built for customer-facing support on GitHub. Your customers email you, tickets arrive as GitHub Issues, and your team replies without leaving GitHub. No Atlassian dependency, no per-agent pricing, and setup takes under five minutes.

How do I reply to a customer?

Write a comment on the Issue with your response, then add /send on its own line. Scitor converts your Markdown to HTML and emails it to the customer. Use /sendall to reply to all participants in the thread.

Can I send emails from my own domain?

Yes. Configure a custom sending domain through your email provider so replies come from your brand address instead of a Scitor address. This improves deliverability and looks professional to your customers.

What happens to email attachments?

Incoming attachments are uploaded to secure cloud storage and linked directly in the Issue body. When replying, drag and drop files into your GitHub comment — images will be inlined and other files attached to the outgoing email.

How does the AI triage work?

Scitor runs every incoming message through AI at the edge to generate a one-line summary, detect sentiment (positive, negative, neutral), and classify the category (bug report, feature request, billing, etc.). It then creates and applies GitHub labels automatically so you can filter and prioritize without reading every message.

How is spam handled?

You can block specific senders with the /block-sender command on any Issue. Future emails from that sender are silently dropped. Your email provider's built-in spam filtering also applies before messages reach Scitor.

Does Scitor store my emails?

No. Email content passes through Scitor to create the GitHub Issue, but the message body is not stored on our servers. Only attachments are persisted in cloud storage. Your actual support conversations live in your GitHub repository — not in a third-party database. Full breakdown of what's stored and for how long: scitor.io/security.

Can I use Discussions instead of Issues?

Yes. Add a .github/scitor.yaml file to your repository with integration: discussions. Incoming messages will create Discussions instead of Issues, which is better for Q&A-style threads where community members can also help answer.

What commands are available?

Core commands: /send (reply to sender), /sendall (reply to all), /reply (send a saved reply template), /block-sender, /unblock-sender, /create-form (generate an embeddable web form), /generate-report (monthly metrics with charts), /skip-success-comment (hide confirmation messages), and /set-from-address (custom sender).

Is there a web dashboard, or do I have to use GitHub?

Both. GitHub Issues stays the source of truth — your team can keep working from the GitHub UI and everything still works. We also ship app.scitor.io, an optional support-team-shaped view: WYSIWYG reply editor with a slash menu, AI drafting, SLA timers, CRM panel showing the customer's previous tickets, and an Insights page with response time, CSAT, and SLA pass rates. Use whichever fits the moment.

How does the AI handle our customer data?

We never train on it. AI features are paid-plan only and optional — you can disable them with ai: { enabled: false } in scitor.yaml. Each AI call runs on Cloudflare Workers AI, processed at whichever Cloudflare location is handling the request rather than a fixed or guaranteed region, sends a bounded slice of context (the ticket plus a handful of retrieved knowledge-base excerpts and the agent's instruction), and the request body is not retained. See scitor.io/ai for the full transparency page, or scitor.io/security for data handling overall.

What does 'Scitor' mean?

Scitor is a Latin word meaning 'to seek to know; to ask, inquire.' It seemed fitting for a platform that helps people ask questions and find answers.

Your customers deserve fast answers. Your developers deserve focus.

Scitor lets both happen. No new tool to learn, no tickets to manage outside of GitHub, no context switching. Install the GitHub helpdesk your team actually wants to use.