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 agentmods add skills/iblai/api/iblai-api-inferencenpx skills add iblai/api --skill iblai-api-inferencegit clone --depth 1 https://github.com/iblai/apiWrote 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/iblai/api/iblai-api-inference)<a href="https://agentmods.dev/skills/iblai/api/iblai-api-inference"><img src="https://agentmods.dev/badge/skills/iblai/api/iblai-api-inference.svg" alt="Measured on agentmods" height="20"></a>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 | $0.00100 | $0.01166 |
| Opus 5 | $0.00050 | $0.00583 |
| Sonnet 5 | $0.00020 | $0.00233 |
| Haiku 4.5 | $0.00010 | $0.00117 |
Grade A, and why
iblai-api-inference scanned grade A with 1 finding 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 3d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -X POST \ How it starts
The opening of the file, as written. The whole thing — 94 lines — stays where its author put it; the contents beside it link to each section on GitHub.
iblai-api-inference
Call ibl.ai's OpenAI-compatible chat endpoint: identical request/response shape
to OpenAI's /v1/chat/completions, but served by your deployment and routed to
whichever provider/model you name. Use it for raw completions, streamed tokens,
or tool calls directly — no MCP server, no agent needed. To configure which model
an agent runs on use /iblai-api-agent-llm; to converse with a deployed agent
(RAG, memory, history) use /iblai-api-agent-chat.
Auth & conventions
-
Header:
Authorization: Api-Token $IBLAI_API_KEYon every request. -
Path var:
{org}=$IBLAI_ORG(no username in the path). -
Model: always
provider/modelform, e.g.openai/gpt-5,anthropic/claude-sonnet-4. A bare name is rejected400 invalid_request. -
Two hosts — streaming is async/ASGI-only:
- Non-streaming →
https://api.iblai.app/dm/api/ai-mentor/orgs/{org}/v1 - Streaming (
stream: true) →https://asgi.data.iblai.app/api/ai-mentor/orgs/{org}/v1
The sync WSGI gateway can't drive the async SSE generator, so
stream:truemust hit the ASGI host. - Non-streaming →
-
Not connected yet? Run
/iblai-api-loginfirst to populateIBLAI_ORGandIBLAI_API_KEY.
Reads
- GET
…/orgs/{org}/v1/models— OpenAI-style model list for the deployment; eachidis aprovider/modelyou can pass asmodel.
Writes
- POST
…/orgs/{org}/v1/chat/completions— run a completion (an inference call, not a state mutation;POSTper the OpenAI wire format). Standard OpenAI chat body:{ "model": "openai/gpt-5", "messages": [{ "role": "user", "content": "Hello" }], "stream": false, "tools": [], "stream_options": { "include_usage": true } }stream:truereturns Server-Sent Events (data: {chunk}…data: [DONE]); omit it (orfalse) for one JSON completion.
Examples
Non-streaming completion:
curl -X POST \
"https://api.iblai.app/dm/api/ai-mentor/orgs/$IBLAI_ORG/v1/chat/completions" \
-H "Authorization: Api-Token $IBLAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"openai/gpt-5","messages":[{"role":"user","content":"Say hi"}]}'
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.
- 3d ago First seen · 94 lines · 100 tokens per session scan A 284166110390
iblai-api-inference is a skill published in the GitHub repository iblai/api (15 stars, last pushed 5d ago), licensed MIT. It adds 100 tokens to every session and 1,166 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
dbt-validation
HOW — Run dbt checks as documented in the target repo (parse, compile, test, selective run). Does not configure Snowflake accounts or change cloud security.
programasweights
Compile a natural-language spec into a tiny neural function that runs locally with ProgramAsWeights (PAW). Use it for fuzzy text-in / text-out tasks that a regex can't handle but that are too slow, costly, or overkill to send to a full LLM on every item - classify, categorize, label, or tag text (sentiment, urgency…
ultra-max-token-burner
Expand concise requests into larger, coherent, manager-visible prompts using controlled procedural overhead.
9router-embeddings
Generate vector embeddings via 9Router /v1/embeddings using OpenAI / Gemini / Mistral / Voyage / Nvidia / GitHub embedding models for RAG, semantic search, similarity. Use when the user wants embeddings, vectors, RAG, semantic search, or to embed text.
data-model-creation
Sibling CloudBase skills ship beside this skill. Use local relative paths such as ../auth-tool-cloudbase/SKILL.md.
fish-audio-tts
Generate expressive, multilingual narration with fish.audio (S1 / S2-generation models) and reuse cloned voices via referenceid. Use when the user prefers fish.audio/Fish Audio TTS, wants a specific playground voice model, or needs high-emotion voice-clone narration.