-
-
Architecture of JQ
-
Landing & privacy stance & Zen— zero telemetry, runs on your own key
-
Dashboard — today's spend, running tasks, and 24h call stats at a glance
-
Submit a task in plain language — no code, no config
-
Customize subscriptions for anything you want to track.
-
Library Q&A — ask across everything archived, with cited sources
-
Morning briefing — the whole day's findings, auto-condensed
-
Human-in-the-loop approvals — risky actions pause, then resume from checkpoint
-
Append-only audit trail — model, tokens and cost for every single call
-
Telegram remote — command the agent and get briefings from your phone
-
Accessibility & Automated Deployment
-
Setting&Customization
-
Help-Q&A about the JQ
Inspiration
Every knowledge worker I know runs the same loop by hand: watch sources → triage what matters → read the important few deeply → write up a briefing. It's mechanical, it's endless, and it's exactly what an agent should do while you sleep.
People have tried automating it — but by routing everything through a frontier model, they end up paying ~$10/day per workflow and still don't trust it to run unattended. I became convinced the hard problem was never intelligence. It was economics and trust: making autonomy cheap enough to leave on, and safe enough to walk away from.
What it does
JarvisQwen is a 24/7 autopilot for knowledge work on Qwen Cloud. Point it at a topic once and it runs on its own — polling sources on a schedule, triaging with a cheap model, deep-reading only what survives with a frontier model, remembering what it learned, and delivering a briefing every morning. Your laptop can be off; it lives in the cloud.
The flagship connector tracks research literature (arXiv), but the engine is workflow-agnostic — a news-watch connector already ships in this build, and JarvisQwen even routes "is this an academic or a news query?" through qwen3.6-flash, so the model decides how to fetch, not just what to summarize.
Crucially, it's production-ready and human-in-the-loop: destructive or outbound actions never fire automatically — they pause in an approvals queue and resume seamlessly from checkpoint once you click approve. A hard budget breaker means it can run unattended without ever surprising you with a bill.
The result: ~$0.30/day, about 30× cheaper than a frontier-only pipeline, with no loss in output quality.
How I built it
The whole system runs on the Qwen family via Qwen Cloud (DashScope) and is organized as four subsystems around a single idea: a cheap always-on control plane commanding expensive, on-demand experts.
1. Cost governance — the core innovation. Every LLM call in the system passes through exactly one function: redact → semantic cache → budget guard → tier router → resilient call → audit. Nothing can bypass it. The tier router sends work to the cheapest model that can do it — qwen3.6-flash ($0.25/$1.50 per Mtok) triages 50 papers for ~$0.03, and only the ~5 that pass escalate to qwen3.7-max ($2.50/$7.50) for deep summaries at ~$0.26. Cost is metered per-token against Qwen's official price table, not estimated.
2. Orchestration. Every pipeline step checkpoints its state and emits a verifiable artifact. Crash, restart, or network drop → the task resumes from the last checkpoint; paid tokens are never spent twice. A watchdog reclaims zombie tasks; per-provider circuit breakers with exponential backoff prevent retry storms from eating quota.
3. Memory. Every task writes episodic memory; a nightly off-peak job consolidates recurring facts into long-term semantic memory, with temporal arbitration and access/recency-based forgetting so retrieval doesn't degrade as the store grows.
4. Security. A three-layer egress gateway (regex → entropy → NER) replaces PII and credentials with placeholders before any text leaves for the cloud, restoring them after the reply; external documents are wrapped as "data, not instructions" to isolate prompt injection; every call lands in an append-only audit trail.
Stack: Alibaba Cloud · DashScope · Qwen (3.6-flash / 3.7-plus / 3.7-max) · FastAPI · SQLite · Python · LiteLLM · Next.js · React Flow · TypeScript · Tailwind · Docker.
Challenges I ran into
- Exact cost metering for brand-new models LiteLLM didn't price yet — solved with a Qwen-official price table that takes priority over library estimates.
- Checkpointing that never re-bills a completed, already-paid step after a crash mid-pipeline.
- Redacting PII without wrecking summary quality — placeholders have to survive a round-trip through the model and restore cleanly.
- A subtle full-app deadlock: on SQLite, holding a write lock across a 120s network call froze every write in the system. Fixed by committing to release the lock before every outbound call — now a documented, enforced invariant.
Accomplishments that I'm proud of
A complete production loop — budget breaker, checkpoint resume, circuit breakers, watchdog, audit, approvals, memory lifecycle — actually working together, not as slideware. Plus 14 unit tests, a full end-to-end smoke test, and a dry-run mode so judges can explore the entire system with no API key and zero cost.
What I learned
That model choice is an economics problem, not an intelligence problem. Once you treat the price gradient between tiers as a design tool — and make most "agent work" cheap deterministic code instead of token-billed reasoning — autonomy stops being a luxury you babysit and becomes something you can just leave running.
What's next
More connectors (news, GitHub, inbox) on the same engine; multi-user tenant isolation; a richer memory-inspection UI; and a one-click deploy so anyone can run their own private JarvisQwen.
Built With
- alibaba-cloud
- dashscope
- docker
- fastapi
- litellm
- next.js
- python
- qwen
- qwen3.6-flash
- qwen3.7-max
- react-flow
- sqlite
- tailwindcss
- typescript

Log in or sign up for Devpost to join the conversation.