fix: 强化 Hugo 公开版日报格式规则
- 编号强制使用 1. 2. 3.(禁止 ① ② ③ 等变体) - 四个 section 缺一不可:今日概览/今日重点/趋势观察/延伸阅读 - Hugo 公开版必须包含 digest-brief.json 全部 keep 文章 - IMA 沉淀为下游独立步骤,不影响 Hugo 内容 - public-digest-example.md 顶部加格式警告注释
This commit is contained in:
@@ -12,7 +12,8 @@ Run the reader-based daily digest as a fixed SOP. Treat this skill as the orches
|
|||||||
- Run `reader` as the formal upstream MCP workflow service for fetching, extraction, filtering, payload generation, result reading, and selected-article post-processing.
|
- Run `reader` as the formal upstream MCP workflow service for fetching, extraction, filtering, payload generation, result reading, and selected-article post-processing.
|
||||||
- **Daily digest production runs should default to a random article count between 5 and 10 unless the user explicitly specifies a count.**
|
- **Daily digest production runs should default to a random article count between 5 and 10 unless the user explicitly specifies a count.**
|
||||||
- Prefer MCP workflow operations over direct long-lived CLI execution. Treat CLI as debug / fallback, not the default production path.
|
- Prefer MCP workflow operations over direct long-lived CLI execution. Treat CLI as debug / fallback, not the default production path.
|
||||||
- **Operational note from validation:** a debug/test run may still complete successfully inside reader even when the synchronous MCP wrapper returns timeout. In that case, use MCP status/result query tools (`list_runs`, `get_run_report`, `get_delivery_payload`, article-summary async job status/result tools) to continue from the real run truth, rather than treating the whole flow as failed.
|
- **Main FreshRSS production runs should default to the async MCP job path**: `start_freshrss_pipeline_job` → `get_freshrss_pipeline_job_status` → `get_freshrss_pipeline_job_result`. Use the synchronous `run_freshrss_openclaw_pipeline` only for debug / light validation / fallback.
|
||||||
|
- **Operational note from validation:** before the main pipeline async job existed, a debug/test run could still complete successfully inside reader even when the synchronous MCP wrapper returned timeout. For historical/debug cases, continue from real run truth using MCP status/result query tools rather than treating the whole flow as failed.
|
||||||
- For reader run observation and result reading, prefer MCP tools such as status / payload / report queries instead of having OpenClaw or this skill hand-build reader output paths.
|
- For reader run observation and result reading, prefer MCP tools such as status / payload / report queries instead of having OpenClaw or this skill hand-build reader output paths.
|
||||||
- **For normal production runs, mark processed FreshRSS items as read. Only skip mark-read when the user explicitly says the run is debug/test/validation.**
|
- **For normal production runs, mark processed FreshRSS items as read. Only skip mark-read when the user explicitly says the run is debug/test/validation.**
|
||||||
- **For normal production runs, do not pass `debug_artifacts=true`. Only enable debug artifacts when the user explicitly says the run is debug/test/validation or when troubleshooting is the goal.**
|
- **For normal production runs, do not pass `debug_artifacts=true`. Only enable debug artifacts when the user explicitly says the run is debug/test/validation or when troubleshooting is the goal.**
|
||||||
@@ -44,6 +45,14 @@ Run the reader-based daily digest as a fixed SOP. Treat this skill as the orches
|
|||||||
|
|
||||||
In the `reader` project, run the FreshRSS pipeline and obtain a real payload.
|
In the `reader` project, run the FreshRSS pipeline and obtain a real payload.
|
||||||
|
|
||||||
|
Formal production start path:
|
||||||
|
|
||||||
|
- `start_freshrss_pipeline_job`
|
||||||
|
- `get_freshrss_pipeline_job_status`
|
||||||
|
- `get_freshrss_pipeline_job_result`
|
||||||
|
|
||||||
|
After the async job succeeds, treat the returned `run_id` as the stable handle for downstream `get_run_status` / `get_delivery_payload` / `get_run_report` reads.
|
||||||
|
|
||||||
Minimum expected artifacts:
|
Minimum expected artifacts:
|
||||||
|
|
||||||
- `outputs/freshrss/rerun/<run-id>/candidates/openclaw-delivery-payload.json`
|
- `outputs/freshrss/rerun/<run-id>/candidates/openclaw-delivery-payload.json`
|
||||||
@@ -91,6 +100,7 @@ Public digest writing rules:
|
|||||||
|
|
||||||
- Use `digest-brief.json` as the default source when available.
|
- Use `digest-brief.json` as the default source when available.
|
||||||
- Treat it as a public-only view that already excludes non-keep items.
|
- Treat it as a public-only view that already excludes non-keep items.
|
||||||
|
- **Hugo public digest must include ALL keep articles from `digest-brief.json`. Do NOT apply an additional manual filter or subset selection. The IMA deposition step (Phase 5–6) is separate and operates on a user-selected subset; Hugo always shows the full keep set.**
|
||||||
- Keep the tone suitable for public browsing and Hugo publishing.
|
- Keep the tone suitable for public browsing and Hugo publishing.
|
||||||
- Style should follow `references/public-digest-example.md` as the default public-writing example.
|
- Style should follow `references/public-digest-example.md` as the default public-writing example.
|
||||||
- Public digest is a **public reading draft / editor-style public note**, not a workflow report.
|
- Public digest is a **public reading draft / editor-style public note**, not a workflow report.
|
||||||
@@ -101,6 +111,8 @@ Public digest writing rules:
|
|||||||
- For each item under `今日重点`, include not only summary and highlights, but also one short editor-style value sentence, for example: `这篇内容更值得关注的原因在于……`.
|
- For each item under `今日重点`, include not only summary and highlights, but also one short editor-style value sentence, for example: `这篇内容更值得关注的原因在于……`.
|
||||||
- When rendering highlights in public digest, prefer a short label such as `值得关注:` followed by one item per line, instead of packing multiple points into a single long sentence.
|
- When rendering highlights in public digest, prefer a short label such as `值得关注:` followed by one item per line, instead of packing multiple points into a single long sentence.
|
||||||
- In `延伸阅读`, every item must include source attribution in the form: `- [标题](url)|来源`.
|
- In `延伸阅读`, every item must include source attribution in the form: `- [标题](url)|来源`.
|
||||||
|
- **Article numbering: MUST use `1.` `2.` `3.` (Arabic numeral + period). Do NOT use `① ② ③`,`一、二、三`,`第一条` or any other numbering variant.**
|
||||||
|
- **All four sections are required: `今日概览`, `今日重点`, `趋势观察`, `延伸阅读`. Missing any section is a format violation.**
|
||||||
|
|
||||||
Recommended **internal review digest** structure:
|
Recommended **internal review digest** structure:
|
||||||
|
|
||||||
|
|||||||
@@ -44,6 +44,15 @@ Concrete operational checklist for the `reader-digest-flow` skill.
|
|||||||
Use the formal MCP workflow path as the default production route.
|
Use the formal MCP workflow path as the default production route.
|
||||||
Prefer MCP run/status/result operations over direct path stitching. Only fall back to CLI or direct file inspection for debug / manual troubleshooting.
|
Prefer MCP run/status/result operations over direct path stitching. Only fall back to CLI or direct file inspection for debug / manual troubleshooting.
|
||||||
|
|
||||||
|
Formal production startup sequence:
|
||||||
|
|
||||||
|
1. `start_freshrss_pipeline_job`
|
||||||
|
2. `get_freshrss_pipeline_job_status`
|
||||||
|
3. `get_freshrss_pipeline_job_result`
|
||||||
|
4. after success, continue with `run_id` via `get_run_status` / `get_delivery_payload` / `get_run_report`
|
||||||
|
|
||||||
|
Treat the old synchronous `run_freshrss_openclaw_pipeline` as debug / light validation / fallback only.
|
||||||
|
|
||||||
Project root:
|
Project root:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -130,6 +139,9 @@ Public digest constraints:
|
|||||||
- Optimize for concise public readability with solid information density.
|
- Optimize for concise public readability with solid information density.
|
||||||
- For each `今日重点` item, add one short editor-style sentence explaining why the item matters in today's digest (for example: `这篇内容更值得关注的原因在于……`).
|
- For each `今日重点` item, add one short editor-style sentence explaining why the item matters in today's digest (for example: `这篇内容更值得关注的原因在于……`).
|
||||||
- Prefer rendering highlight points as a short public label such as `值得关注:` followed by one bullet per line.
|
- Prefer rendering highlight points as a short public label such as `值得关注:` followed by one bullet per line.
|
||||||
|
- **Article numbering: MUST use `1.` `2.` `3.` (Arabic numeral + period). Do NOT use `① ② ③`,`一、二、三`,`第一条` or any other variant.**
|
||||||
|
- **All four sections are required. Missing any one is a format violation.**
|
||||||
|
- **Hugo digest must include ALL keep articles from `digest-brief.json`. The IMA deposition subset is a separate downstream step.**
|
||||||
|
|
||||||
Recommended **internal review digest** structure:
|
Recommended **internal review digest** structure:
|
||||||
|
|
||||||
|
|||||||
@@ -4,6 +4,11 @@ date = 2026-04-01T16:55:00+08:00
|
|||||||
summary = "围绕 Agent 架构分层、Skills 标准化与桌面 Agent 工程实践的当日观察。"
|
summary = "围绕 Agent 架构分层、Skills 标准化与桌面 Agent 工程实践的当日观察。"
|
||||||
+++
|
+++
|
||||||
|
|
||||||
|
> ⚠️ 格式规范(生成 Hugo 时必须遵守):
|
||||||
|
> - 文章编号:`1.` `2.` `3.`(阿拉伯数字 + 点),禁止 `① ② ③` / `一、二、三` 等变体
|
||||||
|
> - 四个 section 缺一不可:`今日概览` → `今日重点` → `趋势观察` → `延伸阅读`
|
||||||
|
> - 每篇文章结构:标题来源 → 摘要段 → "值得关注:"三点 → "这篇更值得关注的理由"段
|
||||||
|
|
||||||
# 今日概览
|
# 今日概览
|
||||||
|
|
||||||
今天的公开候选主要集中在 AI Agent 的架构演进、工具化落地与工程化实践三条线索上。相比早期偏概念展示的讨论,这一批内容更强调模块化能力栈、真实部署路径与系统可维护性,说明行业关注点正在从“模型能做什么”转向“系统如何稳定落地并持续复用”。
|
今天的公开候选主要集中在 AI Agent 的架构演进、工具化落地与工程化实践三条线索上。相比早期偏概念展示的讨论,这一批内容更强调模块化能力栈、真实部署路径与系统可维护性,说明行业关注点正在从“模型能做什么”转向“系统如何稳定落地并持续复用”。
|
||||||
|
|||||||
Reference in New Issue
Block a user