Agent Skills
› evolution-foundation/evo-nexus
› knowledge-summarize
knowledge-summarize
GitHub根据文档或知识单元ID,从向量数据库获取内容分块,拼接后调用LLM生成结构化TL;DR摘要,适用于快速了解文档核心内容。
Trigger Scenarios
用户请求特定课程、模块或PDF的摘要
用户要求用一段话解释某个文档
Install
npx skills add evolution-foundation/evo-nexus --skill knowledge-summarize -g -y
SKILL.md
Frontmatter
{
"name": "knowledge-summarize",
"description": "Generate a TL;DR summary of a specific document or learning unit in the Knowledge base. Pulls chunks from pgvector and synthesizes via Claude Haiku. Use when the user wants a quick overview ('summary of lesson 5', 'TL;DR of this PDF', 'explain document X in one paragraph')."
}
knowledge-summarize
Group: Consumption. Generate TL;DR of a document or unit using indexed chunks.
When to trigger
- "Summary of lesson 5"
- "TL;DR of this PDF"
- "Explain document X"
- "Summary of module Y"
Arguments
| Name | Type | Required | Description |
|---|---|---|---|
document_id |
str | one of two | Document UUID |
unit_id |
str | one of two | Unit UUID (aggregates all docs) |
connection |
str | no | Defaults to first ready |
max_tokens |
int | no | Limit (default 500) |
Workflow
Step 1 — Fetch chunks
from dashboard.backend.sdk_client import evo
if document_id:
doc = evo.get(f"/api/knowledge/v1/documents/{document_id}",
headers={"X-Knowledge-Connection": connection})
chunks = doc["chunks"]
title = doc["title"]
elif unit_id:
docs = evo.get(f"/api/knowledge/v1/documents?unit_id={unit_id}",
headers={"X-Knowledge-Connection": connection})
chunks = []
for d in docs:
full = evo.get(f"/api/knowledge/v1/documents/{d['id']}",
headers={"X-Knowledge-Connection": connection})
chunks.extend(full["chunks"])
title = f"Unit {unit_id} ({len(docs)} documents)"
Step 2 — Concatenate + truncate
Concatenate chunk.content separated by \n\n. If total > 40k chars: sample first/middle/last third.
Step 3 — LLM call
Model: claude-haiku-4-5-20251001.
Prompt:
Summarize the document in structured markdown. Max {max_tokens} tokens.
## {title}
**TL;DR (1 paragraph):** ...
**Key points:**
- ...
- ...
**Target audience / when to use:** (optional)
### Document
{concatenated_chunks}
Step 4 — Render
Return summary + footer Based on {N} chunks from {M} documents.
Actionable failures
- Neither
document_idnorunit_idpassed → "Pass one of the two (mutually exclusive)." - Not found → "Not found. Use
knowledge-browseto list." ANTHROPIC_API_KEYmissing → "SetANTHROPIC_API_KEYin.env."- Doc status != ready → "Not indexed (status={status}). Re-upload the document or wait for ingestion to complete."
Version History
- 7f5dd76 Current 2026-07-25 04:55


