{"id":2687,"date":"2026-06-09T11:53:04","date_gmt":"2026-06-09T10:53:04","guid":{"rendered":"https:\/\/dradis.com\/blog\/?p=2687"},"modified":"2026-06-10T08:15:29","modified_gmt":"2026-06-10T07:15:29","slug":"new-in-dradis-pro-v5-1","status":"publish","type":"post","link":"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/","title":{"rendered":"New in Dradis Pro v5.1"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">v5.1 is a focused release. Echo gets its first Agent, more LLM providers, and inline grammar checking. Business Intelligence gains a date field type. Also included are a raft of bug fixes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Here&#8217;s what&#8217;s new!<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<span class=\"embed-youtube\" style=\"text-align:center; display: block;\"><iframe loading=\"lazy\" class=\"youtube-player\" width=\"625\" height=\"352\" src=\"https:\/\/www.youtube.com\/embed\/3yfEZ-7XZaY?version=3&#038;rel=1&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;fs=1&#038;hl=en-US&#038;autohide=2&#038;wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\"><\/iframe><\/span>\n<\/div><\/figure>\n\n\n\n<h1 class=\"wp-block-heading\">Writing quality checks with Roslin<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Report writing is where the work lives. The content your clients receive reflects the care your team put in, and a single typo in a critical finding can undermine that impression before they&#8217;ve finished reading it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Roslin is our first <a href=\"https:\/\/dradis.com\/support\/guides\/echo\/agents.html\" target=\"_blank\" rel=\"noreferrer noopener\">Echo Agent<\/a> \u2014 a configurable assistant that extends Echo beyond prompts and into the editing experience itself. Connect it to a <a href=\"https:\/\/languagetool.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">LanguageTool<\/a> instance (self-hosted or local) and it checks grammar, spelling, and style inline as you work. Issues are highlighted directly in the findings editor, with suggestions shown in context and one-click replacements. Dismissed suggestions are remembered per-browser, so they won&#8217;t surface again on your next visit.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The grammar and spell check side of Roslin runs entirely on LanguageTool, which means your finding content never has to leave your network to use it. If you also configure an LLM provider on the agent, Roslin picks that up for AI-assisted writing too \u2014 the two capabilities are independent and can be enabled in any combination.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To get started, visit <strong>Tools \u2192 Echo \u2192 Agents<\/strong> and click Edit next to Roslin. The <a href=\"https:\/\/dradis.com\/support\/guides\/echo\/agents.html\" target=\"_blank\" rel=\"noreferrer noopener\">Roslin setup guide<\/a> walks through the LanguageTool configuration.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1166\" height=\"1156\" src=\"https:\/\/dradis.com\/blog\/wp-content\/uploads\/2026\/06\/1.png\" alt=\"\" class=\"wp-image-2689\"\/><\/figure>\n\n\n\n<h1 class=\"wp-block-heading\">Echo for more providers<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Echo launched with Ollama \u2014 a great option for teams that want local, private LLM processing. With v5.1, you can now also connect to OpenAI, Anthropic, and Google Gemini as provider options.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Each provider is configured separately under <strong>Tools \u2192 Echo \u2192 Providers<\/strong>, giving you a named connection with its own API key, endpoint, and default model. You can have multiple providers configured at once and choose between them per agent or per use case. If you prefer to keep everything on-premises, Ollama remains fully supported.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For cloud providers, be aware that your finding content will be sent to the external service as part of each prompt. If data residency matters for your engagements, Ollama is still the right choice.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Full provider setup details are in the <a href=\"https:\/\/dradis.com\/support\/guides\/echo\/providers.html\" target=\"_blank\" rel=\"noreferrer noopener\">Echo Providers guide<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"1173\" height=\"650\" src=\"https:\/\/dradis.com\/blog\/wp-content\/uploads\/2026\/06\/2.png\" alt=\"\" class=\"wp-image-2690\"\/><\/figure>\n\n\n\n<h1 class=\"wp-block-heading\">Date fields in Business Intelligence<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Business Intelligence custom properties have supported text and numeric values since launch. v5.1 adds a dedicated date field type.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That means you can now store structured date values \u2014 engagement start dates, remediation deadlines, retest windows \u2014 as first-class BI properties rather than free-text workarounds. Date fields behave like other custom properties: they are available in your dashboards, filterable, and can be tracked across projects over time.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If you have existing date values stored as text fields, now is a good time to migrate them over to take advantage of proper date filtering.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Release Notes<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>DataTables:\n<ul class=\"wp-block-list\">\n<li>Add sticky table toolbar that tracks below the navigation bar when scrolling<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Mail:\n<ul class=\"wp-block-list\">\n<li>Add support for SMTP configuration via environment variables for Docker deployments; smtp.yml remains supported for VM deployments during the deprecation transition<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Business Intelligence:\n<ul class=\"wp-block-list\">\n<li>Add date custom property type<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Upgraded gems:\n<ul class=\"wp-block-list\">\n<li>addressable, erb, faraday, net-imap, nokogiri, rack<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Bug fixes:\n<ul class=\"wp-block-list\">\n<li>Contributors:\n<ul class=\"wp-block-list\">\n<li>Don&#8217;t show license expiry warning for contributor users in notifications view<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Field validations:\n<ul class=\"wp-block-list\">\n<li>Fix false &#8216;Field is empty&#8217; errors by ensuring Liquid drops can access associations<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Fields:\n<ul class=\"wp-block-list\">\n<li>Show a visible border on dropdown fields in the editor<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Issue Library:\n<ul class=\"wp-block-list\">\n<li>Show dropdown fields when creating entries from a template<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Projects:\n<ul class=\"wp-block-list\">\n<li>Count all user nodes instead of only root nodes on the projects index<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Liquid:\n<ul class=\"wp-block-list\">\n<li>Stop stripping comparison operators from Liquid tags in issue and evidence fields<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Echo enhancements:\n<ul class=\"wp-block-list\">\n<li>Providers: add OpenAI, Anthropic, and Google Gemini as LLM provider options alongside Ollama<\/li>\n\n\n\n<li>Add inline grammar checking via LanguageTool<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Integration enhancements:\n<ul class=\"wp-block-list\">\n<li>Audit: track when a report or kit is downloaded<\/li>\n\n\n\n<li>Gateway: track when a deliverable is downloaded<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Not using Dradis Pro?<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/dradis.com\/reporting.html\">Automated pentest reporting tool<\/a>, the cybersecurity reports you\u2019re used to, generated in a fraction of the time<\/li>\n\n\n\n<li><a href=\"https:\/\/dradis.com\/integrations\/\">Combine the output from 20+ different tools into a single report<\/a>.<\/li>\n\n\n\n<li><a href=\"https:\/\/dradis.com\/consistency.html\">Deliver consistent results<\/a>. Never forget any steps, always know what has been covered and what is still ahead.<\/li>\n\n\n\n<li><a href=\"https:\/\/dradis.com\/collaboration.html\">Pentesting collaboration: all information available across the team<\/a>.<\/li>\n<\/ul>\n\n\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dradis v4.15.0 includes automatic cross-references, custom tag ordering, and kit updates. <\/p>\n","protected":false},"author":17,"featured_media":2694,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[3,10],"tags":[],"class_list":["post-2687","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dradispro","category-release"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>New in Dradis Pro v5.1 - Dradis Framework Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"New in Dradis Pro v5.1 - Dradis Framework Blog\" \/>\n<meta property=\"og:description\" content=\"Dradis v4.15.0 includes automatic cross-references, custom tag ordering, and kit updates.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/\" \/>\n<meta property=\"og:site_name\" content=\"Dradis Framework Blog\" \/>\n<meta property=\"article:published_time\" content=\"2026-06-09T10:53:04+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-10T07:15:29+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/dradis.com\/blog\/wp-content\/uploads\/2026\/06\/roslin-01-4.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2784\" \/>\n\t<meta property=\"og:image:height\" content=\"1768\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Pavels Samoilovs\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@dradisfw\" \/>\n<meta name=\"twitter:site\" content=\"@dradisfw\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Pavels Samoilovs\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/\",\"url\":\"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/\",\"name\":\"New in Dradis Pro v5.1 - Dradis Framework Blog\",\"isPartOf\":{\"@id\":\"https:\/\/dradis.com\/blog\/#website\"},\"datePublished\":\"2026-06-09T10:53:04+00:00\",\"dateModified\":\"2026-06-10T07:15:29+00:00\",\"author\":{\"@id\":\"https:\/\/dradis.com\/blog\/#\/schema\/person\/f7fff2ff4717b645101028aecca892b6\"},\"breadcrumb\":{\"@id\":\"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/dradis.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"New in Dradis Pro v5.1\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/dradis.com\/blog\/#website\",\"url\":\"https:\/\/dradis.com\/blog\/\",\"name\":\"Dradis Framework Blog\",\"description\":\"Information management for security teams\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/dradis.com\/blog\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/dradis.com\/blog\/#\/schema\/person\/f7fff2ff4717b645101028aecca892b6\",\"name\":\"Pavels Samoilovs\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dradis.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/dfdb3e4263e43d7786a9219210375809c06ad0caa05b10c9f46923852354f88f?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/dfdb3e4263e43d7786a9219210375809c06ad0caa05b10c9f46923852354f88f?s=96&d=mm&r=g\",\"caption\":\"Pavels Samoilovs\"},\"url\":\"https:\/\/dradis.com\/blog\/author\/pavels\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"New in Dradis Pro v5.1 - Dradis Framework Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/","og_locale":"en_US","og_type":"article","og_title":"New in Dradis Pro v5.1 - Dradis Framework Blog","og_description":"Dradis v4.15.0 includes automatic cross-references, custom tag ordering, and kit updates.","og_url":"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/","og_site_name":"Dradis Framework Blog","article_published_time":"2026-06-09T10:53:04+00:00","article_modified_time":"2026-06-10T07:15:29+00:00","og_image":[{"width":2784,"height":1768,"url":"https:\/\/dradis.com\/blog\/wp-content\/uploads\/2026\/06\/roslin-01-4.png","type":"image\/png"}],"author":"Pavels Samoilovs","twitter_card":"summary_large_image","twitter_creator":"@dradisfw","twitter_site":"@dradisfw","twitter_misc":{"Written by":"Pavels Samoilovs","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/","url":"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/","name":"New in Dradis Pro v5.1 - Dradis Framework Blog","isPartOf":{"@id":"https:\/\/dradis.com\/blog\/#website"},"datePublished":"2026-06-09T10:53:04+00:00","dateModified":"2026-06-10T07:15:29+00:00","author":{"@id":"https:\/\/dradis.com\/blog\/#\/schema\/person\/f7fff2ff4717b645101028aecca892b6"},"breadcrumb":{"@id":"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/dradis.com\/blog\/2026\/06\/new-in-dradis-pro-v5-1\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dradis.com\/blog\/"},{"@type":"ListItem","position":2,"name":"New in Dradis Pro v5.1"}]},{"@type":"WebSite","@id":"https:\/\/dradis.com\/blog\/#website","url":"https:\/\/dradis.com\/blog\/","name":"Dradis Framework Blog","description":"Information management for security teams","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dradis.com\/blog\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/dradis.com\/blog\/#\/schema\/person\/f7fff2ff4717b645101028aecca892b6","name":"Pavels Samoilovs","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dradis.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/dfdb3e4263e43d7786a9219210375809c06ad0caa05b10c9f46923852354f88f?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/dfdb3e4263e43d7786a9219210375809c06ad0caa05b10c9f46923852354f88f?s=96&d=mm&r=g","caption":"Pavels Samoilovs"},"url":"https:\/\/dradis.com\/blog\/author\/pavels\/"}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/dradis.com\/blog\/wp-content\/uploads\/2026\/06\/roslin-01-4.png","jetpack_shortlink":"https:\/\/wp.me\/p3ijVs-Hl","jetpack_sharing_enabled":false,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/posts\/2687","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/comments?post=2687"}],"version-history":[{"count":3,"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/posts\/2687\/revisions"}],"predecessor-version":[{"id":2693,"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/posts\/2687\/revisions\/2693"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/media\/2694"}],"wp:attachment":[{"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/media?parent=2687"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/categories?post=2687"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dradis.com\/blog\/wp-json\/wp\/v2\/tags?post=2687"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}