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 yonatangross/orchestkit --skill llm-integrationgit clone --depth 1 https://github.com/yonatangross/orchestkitWrote 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/yonatangross/orchestkit/llm-integration)<a href="https://agentmods.dev/skills/yonatangross/orchestkit/llm-integration"><img src="https://agentmods.dev/badge/skills/yonatangross/orchestkit/llm-integration/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/yonatangross/orchestkit/llm-integration"><img src="https://agentmods.dev/badge/skills/yonatangross/orchestkit/llm-integration.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.00058 | $0.02705 |
| Opus 5.5 | $0.00023 | $0.01082 |
| Sonnet 5.5 | $0.00012 | $0.00541 |
| Haiku 4.5 | $0.00006 | $0.00270 |
Grade A, and why
llm-integration 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 11d 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 — 226 lines — stays where its author put it; the contents beside it link to each section on GitHub.
LLM Integration
Patterns for integrating LLMs into production applications: tool use, streaming, local inference, and fine-tuning. Each category has individual rule files in rules/ loaded on-demand.
Quick Reference
| Category | Rules | Impact | When to Use |
|---|---|---|---|
| Function Calling | 3 | CRITICAL | Tool definitions, parallel execution, input validation |
| Streaming | 3 | HIGH | SSE endpoints, structured streaming, backpressure handling |
| Local Inference | 3 | HIGH | Ollama setup, model selection, GPU optimization |
| Fine-Tuning | 3 | HIGH | LoRA/QLoRA training, dataset preparation, evaluation |
| Context Optimization | 2 | HIGH | Window management, compression, caching, budget scaling |
| Evaluation | 2 | HIGH | LLM-as-judge, RAGAS metrics, quality gates, benchmarks |
| Prompt Engineering | 4 | HIGH | CoT, few-shot, versioning, DSPy optimization, ReAct, cost optimization |
Total: 20 rules across 7 categories
Quick Start
# Function calling: strict mode tool definition
tools = [{
"type": "function",
"function": {
"name": "search_documents",
"description": "Search knowledge base",
"strict": True,
"parameters": {
"type": "object",
"properties": {
"query": {"type": "string", "description": "Search query"},
"limit": {"type": "integer", "description": "Max results"}
},
"required": ["query", "limit"],
"additionalProperties": False
}
}
}]
# Streaming: SSE endpoint with FastAPI
@app.get("/chat/stream")
async def stream_chat(prompt: str):
async def generate():
async for token in async_stream(prompt):
yield {"event": "token", "data": token}
yield {"event": "done", "data": ""}
return EventSourceResponse(generate())
What ships with it
34 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- checklists/fine-tuning-decision.md 2.0 KB
- checklists/streaming-checklist.md 547 B
- checklists/tool-checklist.md 2.0 KB
- metadata.json 451 B
- references/model-selection.md 2.7 KB
- references/ork-delta.md 3.3 KB
- rules/_sections.md 3.0 KB
- rules/_template.md 339 B
- rules/calling-parallel.md 3.0 KB
- rules/calling-tool-definition.md 3.4 KB
- rules/calling-validation.md 4.5 KB
- rules/context-caching.md 2.3 KB
- rules/context-window-management.md 2.0 KB
- rules/evaluation-benchmarks.md 2.7 KB
- rules/evaluation-metrics.md 2.4 KB
- rules/local-gpu-optimization.md 3.9 KB
- rules/local-model-selection.md 2.8 KB
- rules/local-ollama-setup.md 3.7 KB
- rules/prompt-design.md 3.1 KB
- rules/prompt-optimization.md 4.5 KB
- rules/prompt-react-pattern.md 3.3 KB
- rules/prompt-testing.md 3.4 KB
- rules/streaming-backpressure.md 3.4 KB
- rules/streaming-sse.md 3.1 KB
- rules/streaming-structured.md 3.9 KB
- rules/tuning-dataset-prep.md 3.1 KB
- rules/tuning-evaluation.md 4.4 KB
- rules/tuning-lora.md 3.9 KB
- scripts/create-lora-config.md 1.9 KB
- scripts/dpo-training.py 12 KB runs code
- scripts/function-def.py 3.8 KB runs code
- scripts/lora-config.yaml 5.6 KB
- scripts/ollama-provider-template.py 13 KB runs code
- test-cases.json 11 KB
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.
- 11d ago Changed 79bd8fe92bc5
- 15d ago Changed · -1 lines 0cd145f6b3c5
- 21d ago Changed f113dba7e862
- 23d ago Changed · -5 lines d7c7970e577e
- 24d ago Changed · -1 lines 449d5167ab8a
- 25d ago Changed 835cc2f3aa63
- 27d ago Changed 4cb2ef667554
- 1mo ago Changed 265ba1dcf83d
- 1mo ago First seen · 233 lines · 58 tokens per session scan A 6878545224ca
llm-integration is a skill published in the GitHub repository yonatangross/orchestkit (298 stars, last pushed today), licensed MIT. It adds 58 tokens to every session and 2,705 once invoked, about $0.0002 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-09-03.
Other skills, from other repositories
natural
Render the provided prompt template with Jinja context and send it to the active NPC's LLM. The rendered text becomes the user prompt; the LLM response is placed in context['output'].
langchain
Use when building LLM applications with LangChain — LCEL chains (prompt | model | parser), tool-calling agents via createagent, @tool definitions, RAG pipelines (loaders, splitters, vector stores, retrievers), short-term memory with LangGraph checkpointers, and GIS workflows such as natural-language PostGIS queries or…
prompt-enhancer
Transform poor or overly simple prompts with expert-level framing. Use when the user explicitly asks to improve, refine, or rewrite a prompt, or wants help framing a request for another AI system. Do NOT use for authoring, reviewing, or migrating system prompts or skills targeting a specific Claude model.
ambitious-model-use
Use when the user asks to be more ambitious with an AI task: aim at the outcome behind it, work it like a field-leading expert from raw data, or bring in other fields. Do NOT use for plain prompt rewording; use prompt-enhancer.
llm-prompting-guide
Prompt format rules for generative video and music models. Use when writing or reviewing a prompt for MiniMax H3 (text/image/reference-to-video with native audio) or MiniMax Music 3 (song generation from caption plus lyrics), in ComfyUI or elsewhere. Do NOT use for chat-assistant prompts, or for generative models not…
meta-harness
Run a Meta-Harness-style optimization loop NATIVELY — automatically search over the scaffolding around a FIXED base model (memory, retrieval, context construction, prompt templates, summarization, tool-selection logic) by proposing candidate variants, scoring each on a cheap deterministic eval, and keeping a Pareto…