DevRel newsletter — September 2026 Elastic released jina-ocr-v1, a 3.4-billion-parameter mixture-of-experts document parsing model that activates only 570 million parameters at inference and is now available through the Elastic Inference Service, the Jina API, Hugging Face under CC BY-NC 4.0, and the Jina AI Reader API. The model scores 83.4 on olmOCR-bench, the highest among models with fewer than 600 million active parameters, and 91.14 on OmniDocBench, above GPT-5.2's 86.59, while returning structured Markdown with tables as HTML and formulas as LaTeX across 100+ languages. Elastic also announced its Elastic CLI in technical preview and reported that Precomputed Knowledge Indicators stored in Elasticsearch let agents answer questions using 93% fewer tokens at a third of the latency of standard RAG over full documents. Hello from the Elastic DevRel team In this newsletter, we cover jina-ocr-v1, the latest blogs and videos, and upcoming events like Elastic{ON} https://www.elastic.co/events/elasticon?utm source=newsletter&utm medium=email&utm campaign=fy27-elasticon-series-ce&utm content=devrel . What’s new? - jina-ocr-v1 is now available as a service and on-prem with layout-aware document parsing for tables, math, handwriting, and 100+ languages in one model. - The Elastic CLI gives you a single command for every public Elasticsearch, Kibana, and Cloud API with keychain credentials, schema validation, and policy controls built in. Agent Skills have been rebuilt on top of it. - Precomputed Knowledge Indicators stored in Elasticsearch let agents answer questions using 93% fewer tokens and at a third of the latency, compared to standard retrieval augmented generation RAG over full documents. - Large language model LLM spans in Elastic APM now surface prompts, responses, and per-call token counts directly in the trace waterfall. - The Elastic Security Labs team instrumented 1,100 developer machines with Cursor hooks and collected 13 million tool call events. The post walks through what they found and how to replicate the setup with Elastic Agent. jina-ocr-v1: One model for layout, tables, math, and 100+ languages jina-ocr-v1 is now available in the Elastic Inference Service. It is an end-to-end document parser that takes scanned pages, document photos, presentation slides, and handwritten notes and returns structured Markdown in a single pass. No pipeline of separate specialist models needed. What separates it from traditional OCR is how it handles page structure. Standard OCR reads characters left to right and often scrambles multi-column layouts, sidebars, and mixed-content pages. jina-ocr-v1 understands the page layout first and then reads in the order a human would. Tables come out as HTML. Mathematical formulas come out as LaTeX. Text from embedded images book covers, logos, incidental photos is recognized but left out of the output. The model has 3.4 billion parameters total but uses a mixture-of-experts design, so only 570 million are active at inference time. It runs at the cost and speed of a 570M model while benefiting from the breadth trained across 3.4B parameters. On olmOCR-bench , jina-ocr-v1 scores 83.4, which is the highest of any model with fewer than 600 million active parameters. On OmniDocBench , it scores 91.14,which is above GPT-5.2 at 86.59. The models that beat it on both benchmarks have significantly more active parameters. Language support covers more than 100 languages, including scripts that frequently trip up single-language OCR like Arabic, Chinese, Japanese, Korean, Thai, Hindi, Greek, Cyrillic, Turkish, Czech, and more. Mixed-language pages are handled in one pass without extra configuration. There are four ways to use it: 1. Elastic Inference Service: Available now via the chat completions inference endpoint; native PDF support is coming soon 2. Jina API: Standard HTTP access with 10 million free tokens to get started 3. Local or on-prem: Download from Hugging Face under CC BY-NC 4.0, or use Jina On-Prem for commercial deployments 4. Jina AI Reader API: Add X-Respond-With: jina-ocr-v1 to the request header; this path converts PDFs and HTML pages to images automatically Architecture details, benchmark tables, and code for each access method are in the release post https://www.elastic.co/search-labs/blog/ocr-model-jina-ocr-v1-document-parsing . Elastic CLI: One command for every Elasticsearch, Kibana, and Cloud API The Elastic CLI is now in technical preview. One install gives you a single entry point for public Elasticsearch, Kibana, and Elastic Cloud API. Install it with npm install -g @elastic/cli. The design goal was a consistent CLI. Every command works the same way: JSON in via stdin or --input-file , JSON out via --json , schema validation before any request leaves your machine, and a non-zero exit code on failure. Try elastic es search and you already know how elastic kb data-views list and elastic cloud serverless projects create behave. A few things worth noting for anyone already thinking about agents: - Credentials stay in the OS keychain: Running elastic config context add writes your API key to macOS Keychain, Linux Secret Service, or Windows Credential Manager and puts a $ keychain:... reference in the config file. Keys never appear in shell history or LLM conversation transcripts. - Allowlists and blocklists: A commands.allowed or commands.blocked list in the config restricts which commands can run, globally or per context. It’s useful when you want an agent to have read access but not delete access. - Validation before sending: Every command validates its inputs against a JSON Schema before making any network request. Pass --dry-run to validate without sending anything. - Destructive commands require confirmation: In a terminal, they require you to approve. In a non-interactive session where agents run , they don’t execute unless you pass --yes explicitly. - Output can be trimmed: Use --output-fields to return only the fields you need, or --output-template for a Mustache-style template. Smaller responses mean smaller context windows for agents. The CLI also ships a few helpers for Elasticsearch patterns that have a learning curve: - elastic es helpers bulk-ingest: Load from a file, directory, or stdin NDJSON, JSON array, or CSV , with batching, concurrency, and retries handled for you. - elastic es helpers scroll-search: Stream a large result set as NDJSON with paging handled automatically. - elastic es helpers watch: Print new documents to stdout as they land — useful for piping into logging tools. Elastic Agent Skills now use the CLI as their transport Elastic Agent Skills teach AI coding agents e.g., Claude Code, Cursor, Copilot, and Gemini CLI how to work with Elasticsearch and Kibana correctly, including which fields to look at, how to stage a reindex, and which cluster health signals matter. They previously had to hardcode transport details like curl commands with embedded API keys and hostnames. Those break when credentials rotate or the endpoint changes. Skills now use the CLI. Operations are written in HTTP shorthand in the skill body, and a table at the end maps each to a CLI command: GET /{index}/ mapping - elastic es indices get-mapping --index '