Files
Arcrun/registry/examples/daily-digest/workflow.yaml
Leo 388c193ae7 docs(registry): seed 10 examples + 5 skills (LI SDD M3.1 + M3.3)
對應 .agents/specs/llm-interface/ Milestone 3.1 + 3.3。

registry/examples/ — 10 個可直接 push 的 workflow 範本:
  starter:    webhook-to-http
  common:     cron-watcher, llm-classify, rag-search-answer, daily-digest
  external:   email-summary (gmail+claude+telegram), pdf-to-blocks,
              github-issue-bot
  advanced:   parallel-fanout (trigger_workflow fan-out),
              error-retry (try_catch+wait pattern)

  每個含:workflow.yaml(可直接 push)+ description.md(解決什麼問題 /
  改成你自己的 / 學到什麼)+ tags.json(搜尋用)

registry/skills/ — 5 個 AI playbook(markdown):
  build_watcher_workflow            — cron + filter + trigger 模式
  debug_paused_workflow             — claude_api callback paused 怎麼追
  migrate_http_to_trigger_workflow  — 從 self-fetch 換 trigger_workflow
  rag_with_arcrun                   — KBDB + claude_api 組裝 RAG
  add_new_wasm_component            — TinyGo 寫 + 部署全流程

兩者差異:
  examples = 可直接拿來改的 YAML
  skills = 面對 X 問題該怎麼想 + 該用哪個 example

兩者後續:CI 自動同步進 KBDB(type=workflow-example / type=agent-skill),
MCP arcrun_search_examples / arcrun_list_skills 走 KBDB semantic search。
(CI sync 是 M3.4 工作)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-16 16:33:54 +08:00

63 lines
1.8 KiB
YAML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
name: daily_digest
description: 每天早上聚合多源資料 (KBDB / RSS / GitHub trending) → claude 摘要 → telegram
flow:
- "morning_cron >> ON_SUCCESS >> fetch_kbdb_yesterday"
- "morning_cron >> ON_SUCCESS >> fetch_rss"
- "morning_cron >> ON_SUCCESS >> fetch_github_trending"
- "fetch_kbdb_yesterday >> ON_SUCCESS >> compose_digest"
- "fetch_rss >> ON_SUCCESS >> compose_digest"
- "fetch_github_trending >> ON_SUCCESS >> compose_digest"
- "compose_digest >> ON_SUCCESS >> push_digest"
config:
morning_cron:
component: cron
cron_expr: "0 0 * * *" # UTC 00:00 = 台灣 08:00
fetch_kbdb_yesterday:
component: kbdb_get
api_key: "{{api_key}}"
type: "note"
source: "km-writer-direct"
limit: 50
fetch_rss:
component: http_request
url: "https://hnrss.org/frontpage?count=10"
method: GET
fetch_github_trending:
component: http_request
url: "https://api.github.com/search/repositories?q=created:>{{_yesterday}}+stars:>500&sort=stars&order=desc&per_page=5"
method: GET
headers:
Accept: "application/vnd.github+json"
# compose 收三條 fan-incypher-executor 自動等三個 source 都完成才跑)
compose_digest:
component: claude_api
timeout_ms: 60000
_recipe_output_format: text
prompt: |
整理 leo 今天的「晨間訊息摘要」。三部分各取重點 5-8 條:
## 我昨天寫的(KBDB notes
{{fetch_kbdb_yesterday.blocks}}
## Hacker News
{{fetch_rss.data}}
## GitHub 熱門新 repo
{{fetch_github_trending.data}}
格式:markdown bullets,每條 < 30 字,標明來源。
push_digest:
component: telegram
chat_id: "{{secret.LEO_TELEGRAM_CHAT_ID}}"
text: |
☀️ 早安 {{_today}}
{{compose_digest.data.text}}