Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add CrestApps/CrestApps.AgentSkills --skill crestapps-core-document-processinggit clone --depth 1 https://github.com/CrestApps/CrestApps.AgentSkillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/crestapps/crestapps.agentskills/crestapps-core-document-processing)<a href="https://agentmods.dev/skills/crestapps/crestapps.agentskills/crestapps-core-document-processing"><img src="https://agentmods.dev/badge/skills/crestapps/crestapps.agentskills/crestapps-core-document-processing/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/crestapps/crestapps.agentskills/crestapps-core-document-processing"><img src="https://agentmods.dev/badge/skills/crestapps/crestapps.agentskills/crestapps-core-document-processing.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00026 | $0.00687 |
| Opus 5.5 | $0.00010 | $0.00275 |
| Sonnet 5.5 | $0.00005 | $0.00137 |
| Haiku 4.5 | $0.00003 | $0.00069 |
Grade A, and why
crestapps-core-document-processing scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 77 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CrestApps.Core Document Processing - Prompt Templates
Add Document Processing
You are a CrestApps.Core expert. Generate code and guidance for document ingestion and document RAG in CrestApps.Core.
Guidelines
- Use
CrestApps.Core.AI.Documentsfor the document pipeline. - Add OpenXml and Pdf support explicitly because they are opt-in packages.
- Add Markdown normalization explicitly when Markdig-backed normalization is needed.
- Provide stores on the document-processing builder.
- Use
AddReferenceDownloads()plusAddDownloadAIDocumentEndpoint()when citations should become downloadable links. AddChatApiEndpoints()is internal MVC and Blazor sample-host composition. Custom hosts should mapAddDownloadAIDocumentEndpoint()directly and add their own chat and upload endpoints as needed.
Builder Registration
builder.Services.AddCrestAppsCore(crestApps => crestApps
.AddAISuite(ai => ai
.AddMarkdown()
.AddChatInteractions()
.AddDocumentProcessing(documentProcessing => documentProcessing
.AddEntityCoreStores()
.AddOpenXml()
.AddPdf()
.AddReferenceDownloads()
)
.AddOpenAI()
)
.AddEntityCoreSqliteDataStore("Data Source=app.db")
);
app.AddDownloadAIDocumentEndpoint();
AddDownloadAIDocumentEndpoint() maps GET ai/documents/{documentId}/download and authorizes access to the referenced document. It is the shared document endpoint; the sample hosts' chat endpoints are not required to register it.
Built-in Reader Coverage
| Reader | Formats |
|---|---|
| Plain text reader | .txt, .md, .json, .xml, .html, .htm, .log, .yaml, .yml, .csv |
| OpenXml reader | .docx, .pptx, .xlsx |
| Pdf reader | .pdf |
Built-in Document Tools
Document retrieval
SearchDocumentsTool— semantic/keyword search across ingested documents.ReadDocumentTool— reads the full text of an ingested document.GetDocumentMetadataTool— returns stored metadata for a document.InspectImageTool— inspects/describes an image document.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 77 lines · 26 tokens per session scan A 42631a1ee929
crestapps-core-document-processing is a skill published in the GitHub repository CrestApps/CrestApps.AgentSkills (13 stars, last pushed 4d ago), licensed MIT. It adds 26 tokens to every session and 687 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
powerpoint-mcp
Use the configured PowerPoint MCP server to inspect or edit presentations on Windows. Covers session safety, live tool discovery, saving, and visual verification; not general presentation design. Triggers: PowerPoint MCP, presentation tools, edit a PowerPoint deck.
powerpoint-cli
Discover and use the PowerPoint CLI plugin to automate a live PowerPoint desktop session. Use for terminal, PowerShell, batch, and coding-agent tasks; not general presentation design. Triggers: pptcli, PowerPoint command line, presentation automation script.
powerpoint-deck-design
Plan or improve the visual design of a PowerPoint presentation: layout, typography, color, hierarchy, accessibility, and consistency. Use when the user asks to create, redesign, or review how a deck looks; not for general PowerPoint automation or content-only edits.
publish-release
Releases a new McpOrchestrator version end to end — version bump PR, tag, and the automated deploy to GitHub Releases, NuGet, and the MCP Registry. Use when asked to release, publish, deploy, ship, or bump the version of McpOrchestrator.
release-notes
Writes user-facing release notes from a git commit range. Use when asked to draft release notes, a changelog entry, or "what's new" text for a release.
home-memory-documentation
Do not load unless the request or established context explicitly identifies Home Memory (HM) and requires a documentation decision about record boundaries, relationships or information placement. If the product is ambiguous, ask whether the user means Home Memory or Smartconstruct and load neither product skill first.…