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 rhtevan/agentfs --skill hosted-model-ctlgit clone --depth 1 https://github.com/rhtevan/agentfsWrote 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/rhtevan/agentfs/hosted-model-ctl)<a href="https://agentmods.dev/skills/rhtevan/agentfs/hosted-model-ctl"><img src="https://agentmods.dev/badge/skills/rhtevan/agentfs/hosted-model-ctl/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/rhtevan/agentfs/hosted-model-ctl"><img src="https://agentmods.dev/badge/skills/rhtevan/agentfs/hosted-model-ctl.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00060 | $0.02207 |
| Opus 5.5 | $0.00024 | $0.00883 |
| Sonnet 5.5 | $0.00012 | $0.00441 |
| Haiku 4.5 | $0.00006 | $0.00221 |
Grade A, and why
hosted-model-ctl 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 5d 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 — 210 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Hosted Model Control
Deploy, manage, and test self-hosted LLM model containers on NVIDIA GPUs via Podman. All deployments use profiles — curated, VRAM-validated configurations. No individual model aliases.
Hardware
| Host | SSH | GPUs | VRAM | Bandwidth | Port |
|---|---|---|---|---|---|
| rhtevan-work | rhtevan-work |
1× RTX A500 | 4 GB | 128 GB/s | 10000 |
| rhel-ai | rhel-ai |
4× NVIDIA L4 | 88 GB | 1,200 GB/s | 9000 |
Deployment Profiles
One profile active per host at a time (mutual exclusion). All profiles on the same host share a port — deploying a new profile automatically stops the current one.
Full details in references/deployment-profiles.md.
rhtevan-work (port 10000)
| Profile | Model | Engine | Context | Speed | Default |
|---|---|---|---|---|---|
g3b-16k |
Granite 3B Q4_K_M | llama.cpp | 16K | 37 tok/s | ✅ |
g350m-2k |
Granite 4.0 350M FP16 | vLLM | 2K | 44 tok/s |
rhel-ai (port 9000)
| Profile | Model | Engine | TP | Context | Speed | Default |
|---|---|---|---|---|---|---|
g8b-fp8-spec-128k |
Granite 4.2 8B FP8 + 3B FP8 draft | vLLM spec | 4 | 128K | ~50 tok/s | ✅ |
g8b-spec-128k |
Granite 4.2 8B BF16 + 3B BF16 draft | vLLM spec | 4 | 128K | 19-25 tok/s |
Speculative Decoding
The g8b-spec-* profiles use draft model speculation:
a Granite 3B model generates candidate tokens, then the 8B target
verifies them in a single forward pass — converting wasted GPU compute
into useful token verification (2-6× speedup).
- g8b-fp8-spec-128k: FP8 weights + CUDA graphs (recommended, ~70 tok/s)
- g8b-spec-128k: BF16 weights +
--enforce-eager(safe fallback, ~20 tok/s)
Specification
| ID | Capability | Verifiable By |
|---|---|---|
| S1 | List all profiles with container status | scripts/list.sh → table output |
| S2 | Pre-check host readiness | scripts/pre-check.sh HOST → pass/fail report |
| S3 | Deploy profile (idempotent) | scripts/setup.sh PROFILE → container created, API HTTP 200 |
| S4 | Start existing profile (mutual exclusion) | scripts/start.sh PROFILE → running |
| S5a | Stop profile | scripts/stop.sh PROFILE → stopped, state cleared |
| S5b | Stop all containers across both hosts | scripts/stop.sh all → all exited |
| S6 | Show status (includes active profile) | scripts/status.sh [PROFILE] → status report |
| S7 | Test running model | scripts/test.sh PROFILE → 4 tests pass |
| S8 | Generate platform report | scripts/report.sh [HOST] → markdown report |
| S9 | Set default profile for a host | scripts/set-default.sh PROFILE → persisted, shown in list/status |
What ships with it
16 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.
- CHANGELOG.md 9.5 KB
- references/benchmark-report.md 41 KB
- references/deployment-profiles.md 13 KB
- references/fitting-guide.md 4.9 KB
- references/memory-budget.md 4.8 KB
- references/model-landscape.md 13 KB
- scripts/common.sh 12 KB runs code
- scripts/list.sh 2.9 KB runs code
- scripts/pre-check.sh 2.7 KB runs code
- scripts/report.sh 17 KB runs code
- scripts/set-default.sh 1.4 KB runs code
- scripts/setup.sh 7.0 KB runs code
- scripts/start.sh 2.6 KB runs code
- scripts/status.sh 1.9 KB runs code
- scripts/stop.sh 3.1 KB runs code
- scripts/test.sh 2.8 KB runs code
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.
- 5d ago Changed 53846d237363
- 6d ago Changed · +2 lines · +9 tokens per session 967d9586c6b2
- 1mo ago Changed · +13 lines · +3 tokens per session a18dcd2da9f6
- 1mo ago Changed · +11 lines 1dfe7d65c3f5
- 1mo ago First seen · 184 lines · 48 tokens per session scan A 661d4b111284
hosted-model-ctl is a skill published in the GitHub repository rhtevan/agentfs (2 stars, last pushed yesterday), licensed Apache-2.0. It adds 60 tokens to every session and 2,207 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-08-31.
Other skills, from other repositories
kermt-monitor
Check progress for a detached KERMT run (pretrain, finetune, or any kermtrundetached invocation). Reads run.json, queries docker for container state, tails the pretrain/finetune log, and parses progress lines (epoch, step, val loss).
kermt-setup
Bootstrap the KERMT agent environment — verify host docker + nvidia-container-toolkit, build the kermt:latest image from the repo's Dockerfile if it doesn't yet exist, and run a GPU smoke test inside the container. Every other kermt- skill depends on this; invoke it first.
harbor
CLI toolkit for managing containerized LLM services. Use when the user wants to start, stop, configure, or manage AI/LLM services like Ollama, Open WebUI, llama.cpp, vLLM, LiteLLM, ComfyUI, and 250+ others. Triggers on requests to "run a model", "start ollama", "set up an LLM", "configure harbor", "manage services"…
vss-deploy-video-embedding
Use this skill when deploying, operating, integrating, or customizing the VSS RT-Embed Video Embedding microservice. Covers standalone Docker Compose deployment, the /v1 REST API for text/video embeddings and live streams, Redis/Kafka/OTel integration, troubleshooting, and bring-your-own-model (BYOM) custom embedding…
etl-integration-nifi
Apache NiFi specialist for flow-based data integration, routing, and provenance tracking. Deep expertise in processors, FlowFiles, connections, process groups, clustering, record-oriented processing, and NiFi 2.x modernization. WHEN: \"Apache NiFi\", \"NiFi\", \"NiFi processor\", \"FlowFile\", \"process group\"…
senior-ml-engineer
Skill de engenharia de ML para colocar modelos em produção, construir pipelines MLOps e integrar LLMs. Cobre implantação de modelos, feature stores, monitoramento de drift, sistemas RAG e otimização de custos. Use quando o usuário perguntar sobre implantar modelos de ML em produção, configurar infraestrutura MLOps…