Now on npm  ·  MIT License

Your workday,
synthesized.

Workweave pulls open PRs, assigned issues, and Slack mentions into a single, prioritized plan — so you start each day with clarity, not tabs.

Get started View on GitHub
workweave synth
──────────────────────────────────────────────────────────────── Workweave Plan · Tuesday, April 15 · github, linear, slack · AI · local ──────────────────────────────────────────────────────────────── 6 tasks · 5h 40m scheduled · 2h 20m remaining · 84 events fetched 1 0:00–1:30 REVIEW Auth token expiry — 3 PRs need sign-off 94 Blocking: @dana waiting on review since yesterday ↗ github.com/emin93/api/pull/204 2 1:30–2:30 IMPLEMENT Rate-limiter refactor — branch ready to close 88 api · workweave ↗ github.com/emin93/api/pull/198 3 2:30–3:00 RESPOND Slack: infra outage discussion thread 76 #incidents · 14 replies, 2 @mentions 4 3:00–4:00 IMPLEMENT Linear P1 — fix pagination bug in search API 71 api · assigned 2d ago 5 4:00–4:45 INVESTIGATE Flaky CI in monorepo — 4 failures this week 58 ↗ github.com/emin93/monorepo/actions/runs/9912 6 4:45–5:40 FOLLOW UP Vendor migration doc — waiting on PM reply 42 ████████████████████████████████░░░░░░░░ 5h 40m / 8h (71%) ────────────────────────────────────────────────────────────────

Everything you need. Nothing you don't.

Built for developers who want signal, not noise.

Three connectors, one plan

Pull signals from GitHub, Linear, and Slack. Correlate related items across sources automatically.

🤖

AI-powered or fully offline

Use a local Llama model with no API key, or plug in Anthropic or OpenAI. Rules mode works with no internet.

🗓

Time-boxed scheduling

Tasks are fit into your available hours with context-affinity nudging — related work stays together.

🔢

Priority scoring

Items are ranked by urgency, importance, social pressure, staleness, and blocking factors — not guesswork.

🖥

Rich terminal output

Color-coded plan with time slots, category badges, source URLs, and a time-budget bar.

📦

JSON mode for automation

Pipe --json output into dashboards, scripts, or your own tools with a clean, stable schema.

How it works

A five-step pipeline from raw events to a ready-to-execute plan.

Ingest
Normalize
Correlate
Prioritize
Schedule

1 · Ingest

Connectors fetch open PRs, assigned issues, DMs, and thread mentions in parallel.

2 · Normalize

Every raw event is mapped to a common Artifact model with source, type, timestamps, and metadata.

3 · Correlate

Artifacts sharing a repo, project, or linked ID are grouped into clusters so related work stays together.

4 · Prioritize

Each cluster gets a priority score from 0–100 based on urgency, age, blocking status, and social signals.

5 · Schedule

Clusters are assigned time slots within your workday budget. Overflow goes to the backlog.

AI that runs anywhere

Pick your provider once in workweave setup — it's saved and used on every run. Override anytime with --provider.

Anthropic Claude

Uses claude-haiku-4-5. Fast, hosted. Requires an ANTHROPIC_API_KEY.

OpenAI

Uses gpt-4o-mini. Fast, hosted. Requires an OPENAI_API_KEY.

Local model

Qwen 2.5 1.5B via node-llama-cpp. Runs on CPU, fully private, no API key needed.

Connectors

Workweave pulls signals from where your work actually lives. More connectors coming.

🐙

GitHub

Open pull requests, requested reviews, assigned issues, and CI status across your repos.

📐

Linear

Assigned issues and in-progress tickets from your Linear workspace.

💬

Slack

Direct messages, thread replies, and @mentions that need your attention.

More coming

Jira, Notion, GitHub Discussions, and more. Open an issue to request a connector.

Get started in minutes

Node.js 18+ required.

# Install globally from npm $ npm install -g workweave   # Run the interactive setup wizard $ workweave setup   # Check your connectors are ready $ workweave detect   # Synthesize today's plan $ workweave synth

Available on npmjs.com/package/workweave  ·  Building from source? See the README.