能力标签
Synthadoc
⚙️
Agent工作流

Synthadoc

基于 Python · 无代码搭建完整 AI 自动化流程
英文名:synthadoc
⭐ 373 Stars 🍴 39 Forks 💻 Python 📄 AGPL-3.0 🏷 AI 8.0分
8.0AI 综合评分
AILLM知识编译
✦ AI Skill Hub 推荐

经 AI Skill Hub 精选评估,Synthadoc 获评「强烈推荐」。这款Agent工作流在功能完整性、社区活跃度和易用性方面表现出色,AI 评分 8.0 分,适合有一定技术背景的用户使用。

📚 深度解析

Synthadoc 是一套完整的 AI Agent 自动化工作流方案。随着 AI 能力的不断提升,基于 Agent 的自动化工作流正在成为提升个人和团队效率的核心方式。区别于传统的 RPA 自动化(模拟鼠标键盘操作),AI Agent 工作流通过理解任务意图、动态规划执行路径,能够处理更复杂的非结构化任务。

Synthadoc 工作流的设计遵循"最小配置,最大复用"原则:核心逻辑已经封装好,用户只需配置自己的 API Key 和业务参数即可快速上手。工作流内置错误处理和重试机制,在网络波动或 API 限速等情况下仍能稳定运行,适合作为生产环境的自动化基础设施。

在实际部署时,建议先在测试环境中运行 3-5 次,验证各个环节的输出结果符合预期,再部署到生产环境。AI Skill Hub 评分 8.0 分,是同类 Agent 工作流中的精选推荐。

📋 工具概览

Synthadoc 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。

GitHub Stars
⭐ 373
开发语言
Python
支持平台
Windows / macOS / Linux
维护状态
轻量级项目,按需更新
开源协议
AGPL-3.0
AI 综合评分
8.0 分
工具类型
Agent工作流
Forks
39

📖 中文文档

以下内容由 AI Skill Hub 根据项目信息自动整理,如需查看完整原始文档请访问底部「原始来源」。

Synthadoc 是一套完整的 AI Agent 自动化工作流方案。通过可视化的节点编排,将复杂的多步骤任务拆解为清晰的自动化流程,实现全程无人值守的智能处理。支持与数百种外部服务和 API 无缝集成,适合构建数据处理管线、业务自动化和 AI 辅助决策系统。

📌 核心特色
  • 可视化 Agent 工作流编排,无需编写复杂代码
  • 支持多步骤自动化任务链,实现全流程无人值守
  • 与外部 API、数据库和第三方服务无缝集成
  • 内置错误处理与自动重试机制,保障稳定运行
  • 提供可复用的自动化模板,快速在同类场景部署
🎯 主要使用场景
  • 自动化日常重复性工作,将精力集中于创造性任务
  • 构建数据采集 → 处理 → 输出的完整自动化管线
  • 实现跨平台、跨系统的数据流转和业务协同
以下安装命令基于项目开发语言和类型自动生成,实际以官方 README 为准。
安装命令
# 方式一:pip 安装(推荐)
pip install synthadoc

# 方式二:虚拟环境安装(推荐生产环境)
python -m venv .venv
source .venv/bin/activate  # Windows: .venv\Scripts\activate
pip install synthadoc

# 方式三:从源码安装(获取最新功能)
git clone https://github.com/axoviq-ai/synthadoc
cd synthadoc
pip install -e .

# 验证安装
python -c "import synthadoc; print('安装成功')"
📋 安装步骤说明
  1. 访问 GitHub 仓库获取工作流文件
  2. 在对应平台(Dify / Flowise / Make 等)中找到「导入工作流」功能
  3. 上传工作流文件
  4. 按照提示配置必要的环境变量和 API Key
  5. 运行测试确认流程正常后投入使用
以下用法示例由 AI Skill Hub 整理,涵盖最常见的使用场景。
常用命令 / 代码示例
# 命令行使用
synthadoc --help

# 基本用法
synthadoc input_file -o output_file

# Python 代码中调用
import synthadoc

# 示例
result = synthadoc.process("input")
print(result)
以下配置示例基于典型使用场景生成,具体参数请参照官方文档调整。
配置示例
# synthadoc 配置文件示例(config.yml)
app:
  name: "synthadoc"
  debug: false
  log_level: "INFO"

# 运行时指定配置文件
synthadoc --config config.yml

# 或通过环境变量配置
export SYNTHADOC_API_KEY="your-key"
export SYNTHADOC_OUTPUT_DIR="./output"
📑 README 深度解析 真实文档 完整度 100/100 查看 GitHub 原文 →
以下内容由系统直接从 GitHub README 解析整理,保留代码块、表格与列表结构。

Synthadoc

      .-+###############+-.
    .##                   ##.
   ##    .----.   .----.    ##
  ##    /######\ /######\    ##
  ##    |######| |######|    ##
  ##    | [SD] | | wiki |    ##
  ##    |######| |######|    ##
  ##    \######/ \######/    ##
   ##    '----'   '----'    ##
    '##                   ##'
      '-+###############+-'

       S Y N T H A D O C
    Community Edition  v0.7.0
  ────────────────────────────────
  Domain-agnostic LLM wiki engine

CI Coverage License Python Skills Hooks CLI Obsidian Version

Document version: v0.7.0

Engineered for solo users and enterprises alike, providing a domain-specific knowledge base that scales seamlessly while maintaining accuracy through autonomous self-optimization.

Built for individuals, small teams, and large organizations who need a knowledge base that stays accurate as documents accumulate.

Synthadoc reads your raw source documents — PDFs, spreadsheets, PPTs, web pages, images, videos, Word files, TXTs — and uses an LLM to synthesize them into a persistent, structured wiki. Cross-references are built automatically, contradictions are detected and surfaced, orphan pages are flagged, and every answer cites its sources. Outputs are stored as local Markdown files, ensuring seamless integration and autonomous management within Obsidian or any wiki-compliant ecosystem.

---

Watch the Synthadoc demo

Watch the demo on YouTube

---

What's Included

See docs/design.md — Appendix A: Release Feature Index for a full feature list by version.

---

Prerequisites

RequirementVersionNotes
Python3.11+
Node.js18+Obsidian plugin build only
Gitany
LLM API keyAt least one required — unless using Claude Code or Opencode (see below)
Tavily API keyOptional — web search feature only

LLM API key — at least one required (unless using Claude Code or Opencode — see the last two rows below):

ProviderFree tierVisionGet key
**Gemini Flash**Yes — 15 RPM / 1M tokens/day, no credit cardYes[aistudio.google.com](https://aistudio.google.com/app/apikey)
GroqYes — rate-limitedNo[console.groq.com](https://console.groq.com/keys)
OllamaYes — runs locally, no keyModel-dependent[ollama.com](https://ollama.com)
MiniMaxNo — pay-per-tokenYes[platform.minimax.io](https://platform.minimax.io/)
DeepSeekNo — pay-per-token (very cheap text rates)No[platform.deepseek.com](https://platform.deepseek.com/api_keys)
AnthropicNoYes[console.anthropic.com](https://console.anthropic.com/)
OpenAINoYes[platform.openai.com](https://platform.openai.com/api-keys)
**Claude Code**Included with subscription — no API keyNoSetprovider = "claude-code" in config.toml
**Opencode**Included with subscription — no API keyNoSetprovider = "opencode" in config.toml

Tavily API key (optional — enables web search): Get a free key at tavily.com. Without it, web search jobs will fail but all other features work normally.

---

Set a wiki as the default so -w is not required for any subsequent command

synthadoc use my-wiki

Requires TAVILY_API_KEY to be set.

#

4. LLM-compiled content can be overconfident; Synthadoc audits it

An LLM synthesising source documents naturally produces confident prose — but may overstate claims, omit caveats, or accept a source's framing uncritically. The adversarial lint pass runs a concurrent second-LLM review of every page: it plays devil's advocate to surface issues the primary model accepted too readily — contested estimates, unsupported superlatives, and claims that contradict well-established facts. Warnings are stored in page frontmatter and surfaced in both the CLI report and the Obsidian lint modal. The reviewer is calibrated to flag only high-confidence issues, producing a useful signal without noise. For the strongest signal, point the adversarial pass at a different model family: a distinct model is far more likely to challenge assumptions than the same model reviewing its own output.

Installation

Step 1 — Clone and install

git clone https://github.com/paulmchen/synthadoc.git
cd synthadoc
pip install -e ".[dev]"

If you already have Synthadoc wikis installed, upgrade the Obsidian plugin in all registered wikis to keep them in sync:

synthadoc plugin upgrade

Step 6 — Install a demo wiki, then start the engine

A wiki is a self-contained, structured knowledge base — a folder of Markdown pages linked by topic, maintained and cross-referenced automatically by Synthadoc. Think of it as a living document that grows smarter with every source you feed it: each ingest pass adds new pages, updates existing ones, and flags contradictions. For your own work, you can build and grow a domain-specific wiki — whether that's market research, a technical knowledge base, or a team handbook — and query it in plain English or other languages at any time.

A wiki must be installed before the engine can serve it. The fastest way to get started is the History of Computing demo, which ships with 13 pre-built pages and sample source files — no LLM API key required to browse it.

First time — install the demo wiki:

```bash

Install the demo (includes pre-built pages and raw sources — no LLM call needed)

synthadoc install history-of-computing --target ~/wikis --demo

Sync new source files into an existing demo install (additive only, no overwrites)

synthadoc demo sync history-of-computing

Install the Obsidian plugin directly into the active Obsidian vault

synthadoc plugin install history-of-computing ```

Then uninstall — two-step confirmation required, no --yes escape

synthadoc uninstall my-wiki ```

For Obsidian plugin commands see Appendix A — Obsidian Plugin Command Reference in the Quick-Start Guide.

---

Quick-Start Guide

The History of Computing demo includes 13 pre-built pages, raw source files covering clean-merge, contradiction, and orphan scenarios, and a full walkthrough of key Synthadoc feature.

Full step-by-step walkthrough: docs/user-quick-start-guide.md

The guide covers:

  1. Verify the demo server started (banner, health check)
  2. Install Dataview in Obsidian
  3. Install the Synthadoc plugin and open the vault
  4. Review wiki structure and key files (index, purpose, AGENTS.md, dashboard)
  5. Query the pre-built wiki — including knowledge gap detection
  6. Batch ingest all demo source files
  7. Run lint — auto-promote clean pages to active
  8. Manage page lifecycle — 5-state machine (draft → active → stale/contradicted/archived), manual transitions, immutable audit trail
  9. Resolve a contradiction
  10. Fix an orphan page
  11. Run the adversarial lint pass — flag overstated claims across all pages
  12. Web search ingestion with automatic decomposition
  13. Ingest a YouTube video
  14. Enrich the wiki with scaffold (regenerate/update index, purpose, AGENTS.md)
  15. Audit features (token cost, history, events)
  16. Schedule recurring operations
  17. Set up query-scoped routing with ROUTING.md
  18. Stage and review candidate pages before promoting them
  19. Build a context pack for grounded LLM prompts
  20. Verify claim provenance — source-line citations, broken citation audit, global provenance table
  21. Export your wiki — llms.txt, llms-full.txt, GraphML wikilink graph, agent-ready JSON with provenance and lifecycle history
  22. Use the web chat UI — streaming answers, session-aware hint chips, citations in-browser
  23. Query caching — understand how answers are cached and how to bypass with --no-cache

---

Command Reference by Use Case

Example sources.txt:

Token usage: totals + daily breakdown

synthadoc audit cost -w my-wiki # last 30 days synthadoc audit cost --days 7 -w my-wiki # last 7 days

List available demo templates

synthadoc demo list

Configuration

You do not need to configure anything to run the demo. The demo wiki ships with its own settings and sensible built-in defaults cover everything else. Set your API key env var, run synthadoc serve, and go.

For the full configuration reference — layer precedence, global vs. per-project config, all keys and defaults — see Appendix E — Configuration in the Quick-Start Guide, or docs/design.md — Configuration for the complete technical reference.

---

Setting up a wiki

```bash

See docs/design.md § "schedule sub-commands" for the config.toml format

synthadoc schedule apply -w my-wiki

Port is per-wiki — check [server] port in <wiki-root>/.synthadoc/config.toml

~/.synthadoc/config.toml

[observability] exporter = "otlp" otlp_endpoint = "http://localhost:4317" ```

Check for configuration problems

synthadoc status -w my-wiki # prints pre-flight warnings

Step 4 — Set your API keys

At least one LLM API key is required — unless you use Claude Code or Opencode as your provider, in which case no separate API key is needed (see Coding tool CLI providers).

Synthadoc defaults to Gemini Flash as the LLM provider — it's free, requires no credit card, and offers 1 million tokens per day. Get a key at aistudio.google.com/app/apikey (click "Create API key").

Web search uses Tavily (TAVILY_API_KEY) — optional, only needed for synthadoc ingest "search for: …" jobs.

```bash

Create a new empty wiki (LLM scaffold runs automatically if API key is set)

synthadoc install my-wiki --target ~/wikis --domain "Machine Learning"

Start HTTP API + job worker (foreground — terminal stays attached)

synthadoc serve -w my-wiki

YouTube video — transcript extracted automatically, no API key needed.

Open the browser-based chat interface for a wiki

synthadoc web -w my-wiki ```

This opens your browser to a local chat interface at http://localhost:{port}/app. The Web UI is local-only and is not accessible from the network — authentication and authorisation are not yet available in the Community Edition.

The UI detects whether you are new to the wiki, exploring, or a returning user and shows contextual hint chips. Ask questions in the text box; answers stream in as the LLM generates them. Citations appear below each answer; knowledge-gap callouts suggest ingesting more content when the wiki lacks coverage.

Administrative Reference

Step 3 — Test the Obsidian plugin

The pre-built main.js is committed to the repo — you do not need to rebuild it unless you modify the plugin source code. To run the plugin unit tests:

cd obsidian-plugin
npm install
npm test         # runs Vitest unit tests

If you modify src/main.ts, rebuild the bundle before installing:

npm run build    # produces main.js

Knowledge gap workflow

When a query returns thin or empty results, the wiki doesn't yet cover the topic. Fill the gap with a targeted web search ingest, wait for jobs, then re-query. Each ingest cycle makes the wiki denser — future queries need the web less.

See docs/design.md — Knowledge gap workflow for the full pattern.

See docs/design.md for a full description of how ingest, contradiction detection, and orphan tracking work under the hood.

---

OpenTelemetry integration

By default, traces and metrics are written to <wiki-root>/.synthadoc/logs/traces.jsonl. To send to any OTLP backend (Jaeger, Grafana Tempo, Honeycomb, Datadog):

```toml

Key differentiators vs. RAG

RAG chunks documents and retrieves them at query time. Synthadoc compiles knowledge: every new source is synthesized into the existing wiki graph at ingest time.

  • Contradictions are caught, not blended. When two sources disagree, Synthadoc flags the page — RAG silently averages both claims.
  • Knowledge is linked, not scattered. [[wikilinks]] connect related pages into a navigable graph visible in Obsidian and queryable with Dataview.
  • The artifact outlives the tool. Close the server, open the wiki folder in any Markdown editor — the knowledge is all there, human-readable, no proprietary format.
  • Cost-efficient at scale. Two-step ingest with cached analysis means repeated ingest of similar sources costs near-zero tokens. Three cache layers stack for lint and query too.
  • Ingest is durable, not fragile. Every ingest request becomes a queued job with automatic retry and a persistent audit record. Batch a hundred documents and resume after a crash — no work is lost.

---

Bulk-register all jobs declared in [[schedule.jobs]] in config.toml (alternative to schedule add)

Ask a question — answer streams token-by-token as the LLM generates it

synthadoc query "What is Moore's Law?" -w my-wiki

🎯 aiskill88 AI 点评 A 级 2026-06-08

高质量的自动化文档处理工具

⚡ 核心功能

👥 适合人群

自动化工程师和运维人员项目经理和业务分析师希望减少重复性工作的专业人士数字化转型团队

🎯 使用场景

  • 自动化日常重复性工作,将精力集中于创造性任务
  • 构建数据采集 → 处理 → 输出的完整自动化管线
  • 实现跨平台、跨系统的数据流转和业务协同

⚖️ 优点与不足

✅ 优点
  • +大幅减少重复性人工操作
  • +可视化流程,清晰直观
  • +可扩展性强,支持复杂场景
⚠️ 不足
  • 初始配置和调试需投入一定时间
  • 强依赖外部服务的稳定性
  • 复杂场景需具备一定技术基础
⚠️ 使用须知

该工具使用 AGPL-3.0 协议,商用场景请仔细阅读协议条款,必要时咨询法律意见。

AI Skill Hub 为第三方内容聚合平台,本页面信息基于公开数据整理,不对工具功能和质量作任何法律背书。

建议在沙箱或测试环境中充分验证后,再部署至生产环境,并做好必要的安全评估。

📄 License 说明

⚠️ AGPL 3.0 — 最严格的 Copyleft,网络服务端使用也需开源,SaaS 使用受限。

🔗 相关工具推荐

🧩 你可能还需要
基于当前 Skill 的能力图谱,自动补全的工具组合

❓ 常见问题 FAQ

Synthadoc是一个开源LLM知识编译引擎
💡 AI Skill Hub 点评

AI Skill Hub 点评:Synthadoc 的核心功能完整,质量优秀。对于自动化工程师和运维人员来说,这是一个值得纳入个人工具库的选择。建议先在非生产环境试用,再逐步推广。

⬇️ 获取与下载
⬇ 下载源码(GPL)
⚠️ 本工具使用 AGPL-3.0 协议。您可以自由下载和使用,但衍生作品必须以相同协议开源,不可商业闭源。使用前请确认符合协议要求。
📚 深入学习 Synthadoc
查看分步骤安装教程和完整使用指南,快速上手这款工具
🌐 原始信息
原始名称 synthadoc
原始描述 开源AI工作流:Synthadoc: An open-source LLM knowledge compilation engine that turns raw docume。⭐373 · Python
Topics AILLM知识编译
GitHub https://github.com/axoviq-ai/synthadoc
License AGPL-3.0
语言 Python
🔗 原始来源
🐙 GitHub 仓库  https://github.com/axoviq-ai/synthadoc

收录时间:2026-06-08 · 更新时间:2026-06-08 · License:AGPL-3.0 · AI Skill Hub 不对第三方内容的准确性作法律背书。