Releases: tarunlnmiit/inbox-to-action
Release list
v0.2.7 — listed on the Official MCP Registry
Adds the mcp-name ownership marker to the README and publishes to the Official MCP Registry (io.github.tarunlnmiit/inbox-to-action).
v0.2.6 — .env loads from your run folder
Fixes a pip-install issue: inbox-to-action run now finds a .env in the folder you run from (previously load_dotenv() searched from site-packages and missed it, so PROVIDER/API keys looked unset). Uses find_dotenv(usecwd=True).
v0.2.5 — robust structured output
Any provider that returns a non-schema reply to a structured call (bare token, prose) no longer crashes the run.
_parse_jsondegrades: strict → salvage embedded JSON → raw string (never raises).- Classifier accepts a bare/verbose category; tasks & calendar already default on non-dict.
- Applies to all providers (claude, ollama, openrouter, nim, openai, anthropic).
v0.2.4 — claude CLI robustness
Fixes PROVIDER=claude crashing with Model did not return valid JSON: '' on machines whose claude CLI doesn't honor --json-schema (older Claude Code, or not logged in).
- Empty structured result → retry once with the schema embedded in the prompt (works across CLI versions).
- Still empty → actionable error (check
claude --version/ log in / use another PROVIDER).
v0.2.3 — task-extraction hardening
extract_tasks tolerates small-model output returning tasks as an object/string/null instead of an array (coerce lone object → list, drop others → empty, skip non-dict items). Prevents a crash on ollama/openrouter/nim.
v0.2.2 — Gmail-only
Removed the Outlook provider (Gmail + Google Workspace only; multi-account abstraction stays). Stale kind: outlook configs are silently dropped.
v0.2.1 — OpenAI-compat robustness
Guard empty choices in OpenAI-compatible providers (rate-limited 200+error body → clean LLMError, not KeyError); ruff import sort.
v0.2.0 — first PyPI release
First published release of inbox-to-action. One-pass agentic inbox triage: fetch unread Gmail → classify → summarize → extract tasks → draft replies (never sends) → flag calendar → triage-report.md.
- CLI (run / auth / mcp); providers: claude(keyless), ollama, openrouter, nim, openai, anthropic, host
- Multi-account Gmail / Workspace; configurable rules + instructions
- MCP server (4 tools) +
/inbox-to-actionskill; Telegram + Todoist - Gmail scopes
gmail.readonly+gmail.composeonly — drafts only, never send