Mini Agent 1.7B · Strapi
A small, open-weight agent that drives Strapi through one real tool call at a time. It calls api_call(method, path, query, body), reads the response, chooses the next call, and ends with a short plain-text answer. The caller executes each call and checks its result.
Mini Agent is Omneity Labs's idea for focused agents that each know one software system. Run one alone, or use it as a specialist for a larger assistant, a Codex extension, or a subagent. This model is independent of Strapi; it is not an official Strapi product.
What it covers
Strapi is an open-source headless CMS. Its Content API lets applications manage entries in developer-defined collections. This model's verified Strapi 5 scope is:
| Group | Collections | Actions |
|---|---|---|
| Editorial | Articles, authors, categories | List, create, read, update, delete; article–author relations |
| Catalog | Products, countries | List, create, read, update, delete; product–country relations |
It reuses documentId across calls and reads relations with populate. Give it your route, field, relation, and permission details. It has not been verified for admin, auth, uploads, singleton routes, or publication controls.
Run it
Serve locally with an OpenAI-compatible vLLM server:
vllm serve omneity-labs/miniagent-1.7B-strapi \
--enable-auto-tool-choice --tool-call-parser hermes \
--default-chat-template-kwargs '{"enable_thinking": false}'
Install openai and requests, then download miniagent_client.py into your project. Set STRAPI_URL and, if needed, STRAPI_TOKEN.
from miniagent_client import MiniAgentClient
agent = MiniAgentClient.from_env()
print(agent.run("List the current articles."))
# For an authorized write: agent.run("Create an author named Ada.", allow_writes=True)
The client offers a single api_call function, accepts only one returned tool call, checks its arguments and route, sends the HTTP request, and feeds the Strapi result back to the model. Reads work by default. Writes need allow_writes=True. It stops on an HTTP error or after the call limit. Use an application-specific allowlist and state check for production writes.
For a compatible cloud endpoint, set MINIAGENT_API_BASE and MINIAGENT_API_KEY; the client code stays the same. For example, if the model appears in the Featherless catalog with function calling enabled, use its OpenAI-compatible API:
export MINIAGENT_API_BASE=https://api.featherless.ai/v1
export MINIAGENT_API_KEY="$FEATHERLESS_API_KEY"
Prompting
- State the allowed Strapi 5 collections, field types, relations, and permissions.
- Give one concrete task. For multi-step work, state the order.
- Return each real Strapi response before asking for the next call. Keep numeric
idanddocumentIddistinct. - Use non-thinking mode, deterministic decoding, one
api_callper turn, and an action limit.
The current release uses native tool_calls. The older plain-JSON interface remains in the v3-json-output tag.
Live Strapi evaluation

| BF16 checkpoint | Balanced CRUD + relations (72) | Lifecycle + relation updates (62) | Post-selection workflows (70) |
|---|---|---|---|
Qwen3-1.7B base, same api_call interface | 8/72 (11.1%) | 6/62 (9.7%) | 7/70 (10.0%) |
| Mini Agent | 70/72 (97.2%) | 58/62 (93.5%) | 63/70 (90.0%) |
Across the 204 tasks, Mini Agent passed 191 and the base passed 21. Balanced CRUD + relations covers collection and item operations. Lifecycle + relation updates puts more weight on four-call lifecycles and relation changes. Post-selection workflows repeats the full task mix after the interface and prompt were selected. The tasks span five collections, documentId handoffs, article–author and product–country relations, and populated reads. Every rollout starts with a fresh Strapi 5 instance. A pass requires a valid function call, the requested action sequence, and the expected stored state. Plain JSON action text fails the tool-call check. Results apply only to this five-collection fixture. Scores are for BF16; the quantized files have not received the full live evaluation.
Files and limits
| Path | Format |
|---|---|
| Repository root | BF16 Transformers / vLLM checkpoint |
gptq-w4a16/ | GPTQ 4-bit weights, 16-bit activations |
gguf/*-BF16.gguf, gguf/*-Q4_K_M.gguf, gguf/*-Q8_0.gguf | llama.cpp-compatible GGUF variants |
Mini Agent can still propose a wrong call or copy an identifier incorrectly. Use it for bounded workflows on known schemas. Avoid unreviewed production writes, destructive bulk work, open-ended planning, and error recovery.
Apache 2.0. See the Qwen3-1.7B model for architecture and license information. Made by Omneity Labs.