AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
Crawler Summary
CrewAI + Streamlit + OpenAI-compatible API 的自动报告生成项目,支持主题研究、图片识别和文献分析三种模式,可导出 Markdown / PDF / Word。 # Auto Report Agent **Language / 语言**: $1 | $1 $1 $1 $1 $1 **项目状态:实验性 / 作品展示(portfolio project)**。接口与行为可能随时调整,不建议直接用于生产环境。 一个基于 **CrewAI + Streamlit + OpenAI-compatible API** 的自动报告生成项目。用户输入主题、上传图片或上传文献后,系统会按「研究 → 写作 → 审核」流程生成高质量 Markdown 报告,并支持导出 PDF / Word。 这个项目适合作为 AI Agent / 多 Agent 协作 / 自动化研究写作方向的实习作品展示。 界面预览 专业中文 AI 报告工作台,支持主题研究、图片理解、文献综述、Agent 执行过程展示,以及 Markdown / PDF / Word 多格式交付。截图使用演示配置,不包含可用 API 凭证。 功能特性 - Capability contract not published. No trust telemetry is available yet. 2 GitHub stars reported by the source. Last updated 10/9/2026.
Freshness
Last checked 10/9/2026
Best For
auto_report_agent is best for crewai, multi-agent workflows where OpenClaw compatibility matters.
Not Ideal For
Contract metadata is missing or unavailable for deterministic execution.
Evidence Sources Checked
editorial-content, GITHUB REPOS, runtime-metrics, public facts pack
CrewAI + Streamlit + OpenAI-compatible API 的自动报告生成项目,支持主题研究、图片识别和文献分析三种模式,可导出 Markdown / PDF / Word。 # Auto Report Agent **Language / 语言**: $1 | $1 $1 $1 $1 $1 **项目状态:实验性 / 作品展示(portfolio project)**。接口与行为可能随时调整,不建议直接用于生产环境。 一个基于 **CrewAI + Streamlit + OpenAI-compatible API** 的自动报告生成项目。用户输入主题、上传图片或上传文献后,系统会按「研究 → 写作 → 审核」流程生成高质量 Markdown 报告,并支持导出 PDF / Word。 这个项目适合作为 AI Agent / 多 Agent 协作 / 自动化研究写作方向的实习作品展示。 界面预览 专业中文 AI 报告工作台,支持主题研究、图片理解、文献综述、Agent 执行过程展示,以及 Markdown / PDF / Word 多格式交付。截图使用演示配置,不包含可用 API 凭证。 功能特性 -
Public facts
5
Change events
1
Artifacts
0
Freshness
Oct 9, 2026
Capability contract not published. No trust telemetry is available yet. 2 GitHub stars reported by the source. Last updated 10/9/2026.
Trust score
Unknown
Compatibility
OpenClaw
Freshness
Oct 9, 2026
Vendor
Z Jla
Artifacts
0
Benchmarks
0
Last release
Unpublished
Key links, install path, and a quick operational read before the deeper crawl record.
Summary
Capability contract not published. No trust telemetry is available yet. 2 GitHub stars reported by the source. Last updated 10/9/2026.
Setup snapshot
Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.
Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.
Vendor
Z Jla
Protocol compatibility
OpenClaw
Adoption signal
2 GitHub stars
Handshake status
UNKNOWN
Crawlable docs
6 indexed pages on the official domain
Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.
Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.
Extracted files
0
Examples
6
Snippets
0
Languages
python
text
auto_report_agent/ ├── app.py ├── src/ │ └── auto_report_agent/ │ ├── agent_events.py │ ├── api_config.py │ ├── cache_manager.py │ ├── crew.py │ ├── document_ingest.py │ ├── docx_export.py │ ├── frontend.py │ ├── main.py │ ├── openai_web_search_tool.py │ ├── pdf_export.py │ ├── run_manager.py │ ├── settings.py │ ├── staged_literature.py │ ├── vision.py │ ├── py.typed │ └── config/ │ ├── agents.yaml │ └── tasks.yaml ├── docs/ │ └── images/ │ └── workspace-preview.png ├── output/ ├── tests/ ├── .env.example ├── .gitignore ├── LICENSE ├── pyproject.toml └── README.md
bash
git clone https://github.com/Z-jla/auto_report_agent.git cd auto_report_agent python -m venv .venv # Windows .venv\Scripts\activate # macOS / Linux # source .venv/bin/activate pip install -e .
bash
pip install -e ".[dev]"
bash
cp .env.example .env
powershell
Copy-Item .env.example .env
env
# 推荐:使用 LLM_* 命名(与 CrewAI / LiteLLM 保持一致) LLM_API_KEY=你的 API Key LLM_BASE_URL=https://你的兼容商地址/v1 LLM_MODEL=你的模型名 # 如果视觉模型和文本模型不同,可以单独配置 LLM_VISION_MODEL= # chat:普通 Chat Completions # responses:Responses API,适合 Web Search LLM_API_MODE=chat # 流式接收模型输出,默认开启;关掉容易被中转/反代按超时掐断 LLM_STREAM=true # 是否启用兼容商 Web Search ENABLE_WEB_SEARCH=false # 公共部署安全模式;本机 Ollama/私网服务请改为 local APP_DEPLOYMENT_MODE=public
Full documentation captured from public sources, including the complete README when available.
Docs source
GITHUB REPOS
Editorial quality
ready
CrewAI + Streamlit + OpenAI-compatible API 的自动报告生成项目,支持主题研究、图片识别和文献分析三种模式,可导出 Markdown / PDF / Word。 # Auto Report Agent **Language / 语言**: $1 | $1 $1 $1 $1 $1 **项目状态:实验性 / 作品展示(portfolio project)**。接口与行为可能随时调整,不建议直接用于生产环境。 一个基于 **CrewAI + Streamlit + OpenAI-compatible API** 的自动报告生成项目。用户输入主题、上传图片或上传文献后,系统会按「研究 → 写作 → 审核」流程生成高质量 Markdown 报告,并支持导出 PDF / Word。 这个项目适合作为 AI Agent / 多 Agent 协作 / 自动化研究写作方向的实习作品展示。 界面预览 专业中文 AI 报告工作台,支持主题研究、图片理解、文献综述、Agent 执行过程展示,以及 Markdown / PDF / Word 多格式交付。截图使用演示配置,不包含可用 API 凭证。 功能特性 -
项目状态:实验性 / 作品展示(portfolio project)。接口与行为可能随时调整,不建议直接用于生产环境。
一个基于 CrewAI + Streamlit + OpenAI-compatible API 的自动报告生成项目。用户输入主题、上传图片或上传文献后,系统会按「研究 → 写作 → 审核」流程生成高质量 Markdown 报告,并支持导出 PDF / Word。
这个项目适合作为 AI Agent / 多 Agent 协作 / 自动化研究写作方向的实习作品展示。
专业中文 AI 报告工作台,支持主题研究、图片理解、文献综述、Agent 执行过程展示,以及 Markdown / PDF / Word 多格式交付。截图使用演示配置,不包含可用 API 凭证。

web_search 工具,对旧版兼容商自动回退到 web_search_preview。auto_report_agent/
├── app.py
├── src/
│ └── auto_report_agent/
│ ├── agent_events.py
│ ├── api_config.py
│ ├── cache_manager.py
│ ├── crew.py
│ ├── document_ingest.py
│ ├── docx_export.py
│ ├── frontend.py
│ ├── main.py
│ ├── openai_web_search_tool.py
│ ├── pdf_export.py
│ ├── run_manager.py
│ ├── settings.py
│ ├── staged_literature.py
│ ├── vision.py
│ ├── py.typed
│ └── config/
│ ├── agents.yaml
│ └── tasks.yaml
├── docs/
│ └── images/
│ └── workspace-preview.png
├── output/
├── tests/
├── .env.example
├── .gitignore
├── LICENSE
├── pyproject.toml
└── README.md
>=3.10,<3.14web_search 或兼容的 web_search_preview 工具git clone https://github.com/Z-jla/auto_report_agent.git
cd auto_report_agent
python -m venv .venv
# Windows
.venv\Scripts\activate
# macOS / Linux
# source .venv/bin/activate
pip install -e .
开发模式:
pip install -e ".[dev]"
复制环境变量示例文件:
cp .env.example .env
Windows PowerShell:
Copy-Item .env.example .env
编辑 .env:
# 推荐:使用 LLM_* 命名(与 CrewAI / LiteLLM 保持一致)
LLM_API_KEY=你的 API Key
LLM_BASE_URL=https://你的兼容商地址/v1
LLM_MODEL=你的模型名
# 如果视觉模型和文本模型不同,可以单独配置
LLM_VISION_MODEL=
# chat:普通 Chat Completions
# responses:Responses API,适合 Web Search
LLM_API_MODE=chat
# 流式接收模型输出,默认开启;关掉容易被中转/反代按超时掐断
LLM_STREAM=true
# 是否启用兼容商 Web Search
ENABLE_WEB_SEARCH=false
# 公共部署安全模式;本机 Ollama/私网服务请改为 local
APP_DEPLOYMENT_MODE=public
兼容性:旧的
OPENAI_API_KEY、OPENAI_API_BASE、OPENAI_MODEL_NAME、OPENAI_VISION_MODEL_NAME、OPENAI_API_MODE仍然可用(作为 fallback)。同时设置时,优先读取LLM_*。
注意:不要把
.env提交到 GitHub。项目已经在.gitignore中忽略.env。
APP_DEPLOYMENT_MODE=public(默认安全策略):页面不会预填服务器 .env 中的 Key,只允许 HTTPS 公网 API 地址,并禁用手动全局缓存清理。APP_DEPLOYMENT_MODE=local:适合本机单用户使用,允许 http://localhost、Ollama、vLLM 等本地或私网接口。CREWAI_VERBOSE、CREWAI_PERSIST_TASK_OUTPUTS 覆盖默认值。.env 和 CrewAI 状态,请在启动 Python 之前通过系统、容器或服务环境设置 AUTO_REPORT_HOME;不要把它写进待迁移的 .env,因为程序必须先知道应用目录才能找到该文件。旧版曾允许单独设置 CREWAI_STORAGE_DIR;现在该值会被忽略并记录警告,请人工检查旧目录中是否遗留回放数据库。APP_ALLOWED_API_HOSTS 中的自定义主机(支持 *.example.com)。访问私网接口需要同时设置主机白名单和 APP_ALLOW_PRIVATE_API_HOSTS=true,且只应在受信环境中开启。APP_ALLOWED_API_HOSTS(本机开发直接用 APP_DEPLOYMENT_MODE=local 更省事),否则任务在组装阶段就会报「Base URL 安全校验未通过」。.env.example 中的 MAX_* 变量调整,Streamlit 服务器还有 50 MB 的请求前置上限。streamlit run app.py
打开浏览器后可以:
python -m auto_report_agent.main
或安装后运行:
auto-report-agent
不带参数时会逐项询问。也可以直接用参数调用,便于脚本化:
# 主题研究报告
auto-report-agent --mode topic --topic "AI Agent 最新进展"
# 文献分析(给了 --file 就默认按文献模式)
auto-report-agent --file a.pdf --file b.pdf --instruction "对比方法与结论"
# 自动化场景:缺参数时直接报错,不阻塞等待输入
auto-report-agent --mode topic --topic "..." --no-input
传入参数后不会再追问可选项;--no-input 时缺少必需参数会以退出码 2 结束。
每次运行使用独立目录:
output/runs/<run_id>/final_report.md
output/runs/<run_id>/run.json
前端支持下载:
final_report.mdfinal_report.pdffinal_report.docx这些生成文件默认不会被 Git 提交。Streamlit 只展示当前浏览器会话生成的历史报告,不读取其他会话的运行目录。
文献模式的写作任务会先保存草稿。如果随后的流程失败,前端默认保留可用产物供下载:已有非空审核稿时优先保留审核稿且不删除写作草稿;审核稿缺失或空白时原子恢复写作草稿。可用 PAPER_KEEP_DRAFT_ON_FAILURE=false 关闭失败产物保留。
运行目录和按会话隔离的文献缓存都会持续累积,而公共模式禁用了侧边栏的手动清理入口,因此前端和 CLI 会周期性删除超过 OUTPUT_RETENTION_DAYS(默认 7 天)的 output/runs/<run_id>/ 和文献缓存命名空间;同一进程默认最多每小时扫描一次,可用 OUTPUT_RETENTION_SWEEP_INTERVAL_SECONDS 调整。活跃缓存通过心跳保护,疑似过期时还会复查其内部文件。这是磁盘占用的兜底,不是精确缓存策略:被删缓存会在下次请求时重新生成。
OUTPUT_RETENTION_DAYS=0 只关闭运行目录和文献缓存清理。公共模式默认不使用 CrewAI 的跨会话任务回放数据库,并会清除旧版本遗留的数据库;显式启用 CREWAI_PERSIST_TASK_OUTPUTS 后,数据库记录才会按相同保留期清理。
pip install -e ".[dev]"
ruff check .
ruff format --check .
python -m compileall -q app.py src tests
mypy
pytest -q
.env、API Key、日志、缓存和生成报告。普通 Chat Completions 只负责文本生成,不等于具备联网搜索。项目优先使用 OpenAI Responses API 的 web_search 工具;对旧兼容商会回退到 web_search_preview。
只有在「后端直连接口 = responses」且「联网搜索已勾选」时,搜索工具才会挂到研究员身上;其余情况下工具会被直接摘掉,研究员改为基于自身知识作答,并在来源清单里说明无法提供实时链接。这样做是因为留着一个用不了的工具并非无害——研究员会反复调用它、反复读到同一条「已跳过」提示,白白耗掉迭代次数和 token。
网页由浏览器渲染 Markdown,PDF 由 reportlab 渲染。项目已经对标题(1-6 级)、段落、列表、表格、加粗、斜体和中文换行做了适配;行内标记不成对时会自动降级为纯文本,不会导致整份导出失败。复杂 Markdown 仍可能需要继续优化。
文献分析会分阶段读取、摘要和合并,长文档会产生多次模型调用。超过片段上限时会均匀选择首部、中部和尾部,并把覆盖比例写入综合材料;可以通过 .env 中的 PAPER_CHUNK_SIZE、PAPER_MAX_CHUNKS_PER_DOC 等参数控制成本和速度。
同一篇文献内的片段摘要互相独立,默认会并发 4 个同时分析(PAPER_STAGE_CONCURRENCY,可设 1-16)。10 个片段的文档实测约有 3 倍加速。如果你的兼容商配额较低、容易返回 429,把它调回 1 就是原来的串行行为。命中缓存的片段不占用并发额度。
片段、单篇合并、多篇合并、失败降级材料和最终 paper_context 都有字符预算,并另受程序内不可调高的硬上限约束,避免兼容接口返回异常长文本时把后续上下文撑爆。默认最终材料最多 60000 字符,可用 PAPER_CONTEXT_MAX_CHARS 调低;其余分层预算见 .env.example。发生裁剪时会公平保留各片段/文献的标签与首尾,并把覆盖说明单独保留在最终材料中。
多数情况是中转服务或反向代理把长请求掐断了。不少中转(尤其是 Cloudflare 前置的)会关闭约 120 秒内没有返回任何字节的连接,而一次报告写作经常要跑两三分钟——非流式请求在生成完成前一个字节都不发,于是连接先被关掉,客户端只看到 Connection error。SDK 默认还会重试两次,所以现象往往是「卡了六分多钟然后失败」。
项目默认已经开启流式(LLM_STREAM=true),字节持续流动就不会触发这类超时。如果你把它关掉又遇到这个报错,先把它设回 true。
需要注意:调小 max_tokens 之类的输出上限并不能绕开,模型思考期间同样不发送任何内容,超时照样触发。
若确认不是超时(例如很短的请求也失败),再检查 LLM_BASE_URL 是否可达、Key 是否有效。
MIT License
Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.
Contract coverage
Status
missing
Auth
None
Streaming
No
Data region
Unspecified
Protocol support
Requires: none
Forbidden: none
Guardrails
Operational confidence: low
curl -s "https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/snapshot"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/contract"
curl -s "https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/trust"
Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.
Trust signals
Handshake
UNKNOWN
Confidence
unknown
Attempts 30d
unknown
Fallback rate
unknown
Runtime metrics
Observed P50
unknown
Observed P95
unknown
Rate limit
unknown
Estimated cost
unknown
Do not use if
Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.
Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
The Frontend for Agents & Generative UI. React + Angular
Contract JSON
{
"contractStatus": "missing",
"authModes": [],
"requires": [],
"forbidden": [],
"supportsMcp": false,
"supportsA2a": false,
"supportsStreaming": false,
"inputSchemaRef": null,
"outputSchemaRef": null,
"dataRegion": null,
"contractUpdatedAt": null,
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Invocation Guide
{
"preferredApi": {
"snapshotUrl": "https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/snapshot",
"contractUrl": "https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/contract",
"trustUrl": "https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/trust"
},
"curlExamples": [
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/snapshot\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/contract\"",
"curl -s \"https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/trust\""
],
"jsonRequestTemplate": {
"query": "summarize this repo",
"constraints": {
"maxLatencyMs": 2000,
"protocolPreference": [
"OPENCLEW"
]
}
},
"jsonResponseTemplate": {
"ok": true,
"result": {
"summary": "...",
"confidence": 0.9
},
"meta": {
"source": "GITHUB_REPOS",
"generatedAt": "2026-10-09T19:53:52.995Z"
}
},
"retryPolicy": {
"maxAttempts": 3,
"backoffMs": [
500,
1500,
3500
],
"retryableConditions": [
"HTTP_429",
"HTTP_503",
"NETWORK_TIMEOUT"
]
}
}Trust JSON
{
"status": "unavailable",
"handshakeStatus": "UNKNOWN",
"verificationFreshnessHours": null,
"reputationScore": null,
"p95LatencyMs": null,
"successRate30d": null,
"fallbackRate": null,
"attempts30d": null,
"trustUpdatedAt": null,
"trustConfidence": "unknown",
"sourceUpdatedAt": null,
"freshnessSeconds": null
}Capability Matrix
{
"rows": [
{
"key": "OPENCLEW",
"type": "protocol",
"support": "unknown",
"confidenceSource": "profile",
"notes": "Listed on profile"
},
{
"key": "crewai",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
},
{
"key": "multi-agent",
"type": "capability",
"support": "supported",
"confidenceSource": "profile",
"notes": "Declared in agent profile metadata"
}
],
"flattenedTokens": "protocol:OPENCLEW|unknown|profile capability:crewai|supported|profile capability:multi-agent|supported|profile"
}Facts JSON
[
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Z Jla",
"href": "https://github.com/Z-jla/auto_report_agent",
"sourceUrl": "https://github.com/Z-jla/auto_report_agent",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T14:52:36.891Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-09T14:52:36.891Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "2 GitHub stars",
"href": "https://github.com/Z-jla/auto_report_agent",
"sourceUrl": "https://github.com/Z-jla/auto_report_agent",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T14:52:36.891Z",
"isPublic": true
},
{
"factKey": "docs_crawl",
"category": "integration",
"label": "Crawlable docs",
"value": "6 indexed pages on the official domain",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/crewai-z-jla-auto-report-agent/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
]Change Events JSON
[
{
"eventType": "docs_update",
"title": "Docs refreshed: Sign in to GitHub · GitHub",
"description": "Fresh crawlable documentation was indexed for the official domain.",
"href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
"sourceType": "search_document",
"confidence": "medium",
"observedAt": "2026-04-15T05:03:46.393Z",
"isPublic": true
}
]Sponsored
Ads related to auto_report_agent and adjacent AI workflows.