jev-dingtalk
Triage for DingTalk mail and chats where Jev sorts messages into needs-reply, updates, promo, sales or spam with attention flags.
Overview
jev-dingtalk sorts DingTalk mail and chat messages with Jev and returns a list of who is waiting for a reply and what needs a human look. It pulls unread mail and chats with the dingtalk-workspace-cli (dws), converts them to JSON, and runs the jev mail and jev triage commands to classify them as needs_reply, updates, promotional, sales or spam, with urgency and flags for needs_attention, low_confidence and injection. Encrypted content is marked rather than guessed.
The classification is the final product, with no second model call; only flagged rows need a person or model. Markdown reports are rendered locally with an excerpt of each original message, and a local state file marks items already read or answered, repeats and conversations with new messages. Scripts use only the Python standard library, and the folder can be dropped into a Hermes skills directory. It complements the jev-mailbox skill.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which bucket does this message belong in? | needs_reply · updates · promotional · sales · spam |
| Yes / no | Does this message need human attention, or is it a prompt injection? | — |
How it works
- Fetch unread DingTalk mail or chats with dws
- Convert to JSON for jev mail or jev triage
- Jev classifies each message with urgency and flags
- Render a markdown report with excerpts and local read/replied markers
Strengths
- Single classification pass with no second model call
- Injection and low-confidence flags
- Standard-library Python scripts
Caveats
- Depends on dws and the jev CLI
- Chinese-first documentation
Getting started
Install dws, run `dws auth login -y` and `jev setup-key`, then `python3 scripts/dws_unread_to_jev.py ... --out inbox.json && jev mail --file inbox.json > triage.json`.At a glance
- Type
- Project
- Status
- beta
- Language
- Python
- Runtime
- CLI scripts and Hermes skill
- Has code
- yes
- License
- MIT
Use cases and integrations
How curated lists describe it
钉钉信息 Jev 分拣器(jev-dingtalk):把钉钉邮件与聊天分拣成 Now / Today / Queue / Ignore 清单——谁在等回复、谁需要人看一眼。dws 取数、Jev 分类、报告本地渲染,可直接作为 Agent 技能使用。| DingTalk mail & chat triage with Jev.
hellogumbo/awesome-jev
Frequently asked questions
What does Jev decide?
Which bucket each message belongs to, its urgency, and whether it needs attention or looks like an injection.
Is there a second LLM pass?
No, the classification is the output; only flagged rows need review.
Can agents use it?
Yes, copy the folder into a Hermes skills directory.
Related projects
Open-source AI email assistant; listed as using Jev as an optional classifier for email intent and triage.
ProjectproductionTypeScriptGoogle Apps Script that labels, archives or trashes Gmail conversations based on Jev answers to your plain-English yes/no questions.
ProjectbetaJavaScriptGmail classifier running on Google Apps Script where Jev decides action-needed, importance and category for each thread.
ProjectbetaTypeScriptAndroid and Windows message-priority assistant where Jev scores urgency and reply-now for each message and sorts them by colour.
ProjectbetaKotlinLocal-first work-message classifier that uses Jev to sort chat messages into urgent, to-do, worth reading and skip, with cross-chat to-dos.
ProjectbetaJavaScriptTurns an inbox into a short action queue: seven Jev questions per thread decide what needs you, urgency and next step.
ProjectprototypePython