Token导航 LogoToken导航TokenDH.com
研究检索敏感数据clawhub未标认证来源可访问clear审计通过

igpt-email-askigpt 电子邮件询问

Agent Skill

igpt-email-ask 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

17,234

周安装

704

GitHub Stars

2

下载量

5,519
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:igpt-email-ask(igpt 电子邮件询问)
来源仓库:https://github.com/sammy-spk/igpt-email-ask
安装命令:
openclaw skills install igpt-email-ask
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install igpt-email-ask

简介

通过 iGPT 引擎对邮箱内容进行安全隔离推理分析。

  • 可总结线索、提取待办事项并识别沟通情绪倾向。
  • 适用于邮件归档管理与重要信息快速定位需求。
  • 仅处理授权范围内的用户私有数据绝不外泄。
  • 分析结果需结合具体业务上下文谨慎采纳。igpt-email-ask 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

name
igpt-email-ask
description
>
homepage
https://igpt.ai/hub/playground/
metadata
{"clawdbot":{"emoji":"🧠","requires":{"env":["IGPT_API_KEY"]},"primaryEnv":"IGPT_API_KEY"},"author":"igptai","version":"1.0.0","license":"MIT","tags":["email","analysis","reasoning","summarization","context-engine","productivity"]}

iGPT Email Ask

Ask questions about a user's email and get reasoned, structured answers. Powered by iGPT's Context Engine, which reconstructs conversations, decisions, ownership, and intent across time.

What This Skill Does

This skill queries iGPT's recall/ask endpoint to generate answers grounded in a user's connected email data. Unlike basic retrieval, the Context Engine:

  • Reconstructs full conversation threads across replies, forwards, and CCs
  • Identifies who decided what, who owns what, and what's still open
  • Extracts structured data (tasks, deadlines, contacts, risks) from unstructured email
  • Supports multiple quality tiers for different complexity levels
  • Returns text, JSON, or schema-validated structured output
  • Supports streaming (SSE) for real-time responses

When to Use This Skill

  • Summarize what happened in a thread or across threads
  • Extract action items, decisions, or open questions
  • Analyze sentiment or risk in deal/customer threads
  • Answer questions that require understanding context across multiple emails
  • Generate structured data from email content (JSON, schema-validated)
  • Prepare briefings before meetings based on recent correspondence

Prerequisites

  1. An iGPT API key (get one at https://igpt.ai/hub/apikeys/)
  2. A connected email datasource -- the user must have completed OAuth authorization via connectors/authorize before ask will return results. You can check connection status with datasources.list().
  3. Python >= 3.8 with the igptai package installed

Setup

pip install igptai

Set your API key as an environment variable:

export IGPT_API_KEY="your-api-key-here"

Usage

Basic: Ask a question

from igptai import IGPT
import os

igpt = IGPT(api_key=os.environ["IGPT_API_KEY"], user="user_123")

res = igpt.recall.ask(input="Summarize key risks, decisions, and next steps from this week's meetings.")
if res is not None and res.get("error"):
    print("iGPT error:", res)
else:
    print(res)

Get JSON output

Pass output_format="json" for unstructured JSON, or provide a schema for validated structured output:

# Simple JSON output
res = igpt.recall.ask(
    input="What are the open action items from this week?",
    output_format="json"
)

# Schema-validated structured output
res = igpt.recall.ask(
    input="Open action items from this week",
    quality="cef-1-normal",
    output_format={
        "strict": True,
        "schema": {
            "type": "object",
            "required": ["action_items"],
            "additionalProperties": False,
            "properties": {
                "action_items": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "required": ["title", "owner", "due_date"],
                        "properties": {
                            "title": {"type": "string"},
                            "owner": {"type": "string"},
                            "due_date": {"type": "string"}
                        }
                    }
                }
            }
        }
    }
)
print(res)

Example response:

{
    "action_items": [
        {
            "title": "Approve revised Q1 budget allocation",
            "owner": "Dvir Ben-Aroya",
            "due_date": "2026-01-15"
        },
        {
            "title": "Approve final FY2026 strategic priorities",
            "owner": "Board of Directors",
            "due_date": "2026-01-31"
        }
    ]
}

Use quality tiers

iGPT's Context Engine has three quality tiers:

# Normal: fast, good for straightforward questions
res = igpt.recall.ask(
    input="When is my next meeting with Acme Corp?",
    quality="cef-1-normal"
)

# High: deeper reasoning, better for complex multi-thread analysis
res = igpt.recall.ask(
    input="What is the current negotiation status with Acme Corp and what leverage do we have?",
    quality="cef-1-high"
)

# Reasoning: maximum depth, for complex cross-thread synthesis
res = igpt.recall.ask(
    input="Across all communication with Acme over the past quarter, what patterns suggest risk and what should we do about it?",
    quality="cef-1-reasoning"
)

Stream responses

Streaming returns parsed JSON chunks (dicts), not raw text. Extract content from each chunk:

stream = igpt.recall.ask(
    input="Walk me through the timeline of the Acme deal from first contact to now.",
    stream=True
)

for chunk in stream:
    if isinstance(chunk, dict) and chunk.get("error"):
        print("Stream error:", chunk)
        break
    # Each chunk is a parsed JSON dict
    print(chunk)

Streaming is resilient: if the connection breaks, the iterator yields an error chunk and finishes rather than throwing.

Check datasource connection before asking

# Verify user has a connected datasource
status = igpt.datasources.list()
if status is not None and not status.get("error"):
    print("Connected datasources:", status)
else:
    # Connect a datasource first
    auth = igpt.connectors.authorize(service="spike", scope="messages")
    print("Open this URL to authorize:", auth.get("url"))

Parameters

ParameterTypeRequiredDescription
inputstringYesThe prompt or question to ask.
userstringYes (or set in constructor)Unique user identifier scoping the query to their connected data. Per-call value overrides constructor default.
streambooleanNo (default: false)If true, returns a generator yielding parsed JSON dicts via SSE.
qualitystringNoContext Engine quality tier: "cef-1-normal", "cef-1-high", or "cef-1-reasoning".
output_formatstring or objectNo"text" (default), "json", or {"strict": true, "schema": <JSON Schema>} for validated structured output.

Error Handling

The SDK does not throw exceptions. It returns normalized error objects:

res = igpt.recall.ask(input="What happened in yesterday's board meeting?")

if res is not None and res.get("error"):
    error = res["error"]
    if error == "auth":
        print("Check your API key")
    elif error == "params":
        print("Check your request parameters")
    elif error == "network_error":
        print("Network issue -- the SDK retries with exponential backoff (3 attempts by default) before returning this")
else:
    print(res)

External Endpoints

This skill communicates exclusively with:

  • https://api.igpt.ai/v1/recall/ask/ -- the reasoning endpoint
  • https://api.igpt.ai/v1/connectors/authorize/ -- only during initial datasource connection setup
  • https://api.igpt.ai/v1/datasources/list/ -- to check connection status

No other external endpoints are contacted. No data is sent to any third-party service. The igptai PyPI package source is available at https://github.com/igptai/igpt-python.

Security & Privacy

  • API-key scoped: All requests authenticate via IGPT_API_KEY sent as a Bearer token over HTTPS. No shell access, no filesystem access, no system commands.
  • Per-user isolation: Every query is scoped to a specific user identifier. User A cannot access User B's email data. Isolation is enforced at the index and execution level, not as a filter layer.
  • OAuth read-only: The email datasource connection uses OAuth with read-only scopes. The skill does not send, modify, or delete emails.
  • No data retention: Prompts are discarded after execution. Memory is reconstructed on-demand, not stored.
  • Transport encryption: All communication occurs over HTTPS. No plaintext endpoints.
  • No local persistence: This skill does not write to disk, modify environment files, or create persistent configuration outside of the standard IGPT_API_KEY environment variable.
  • Built-in retries: The SDK retries failed requests with exponential backoff (default: 3 attempts, 100ms base, 2x factor) before returning a network_error.

For the full security model, see https://docs.igpt.ai/docs/security/model.

What This Skill Does NOT Do

  • Does not send, modify, forward, or delete emails
  • Does not access the filesystem or execute shell commands
  • Does not install persistent services or scheduled tasks
  • Does not contact endpoints other than api.igpt.ai
  • Does not store API keys or OAuth tokens outside the environment variable

Example Questions

These all work as natural language prompts:

  • "Summarize key risks from this week's email threads" -- cross-thread analysis
  • "What are the open action items from yesterday's board meeting?" -- task extraction
  • "What's the current status of the Acme deal?" -- deal intelligence
  • "Who owns the budget approval and when is it due?" -- ownership and deadline extraction
  • "Are there any threads where tone has shifted negatively in the last 7 days?" -- sentiment analysis
  • "Generate a briefing for my meeting with Sarah tomorrow" -- meeting prep

Resources

  • Get API Key: https://igpt.ai/hub/apikeys/
  • Documentation: https://docs.igpt.ai
  • API Reference: https://docs.igpt.ai/docs/api-reference/ask
  • Playground: https://igpt.ai/hub/playground/
  • Python SDK: https://pypi.org/project/igptai/
  • Node.js SDK: https://www.npmjs.com/package/igptai
  • GitHub: https://github.com/igptai/igpt-python

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

88.61%
按下载量换算4,890

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

未展示

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills