{"id":6689,"date":"2026-07-21T10:56:30","date_gmt":"2026-07-21T10:56:30","guid":{"rendered":"https:\/\/lockitsoft.com\/?p=6689"},"modified":"2026-07-21T10:56:30","modified_gmt":"2026-07-21T10:56:30","slug":"local-models-for-agentic-coding-a-deep-dive-into-practical-viability","status":"publish","type":"post","link":"https:\/\/lockitsoft.com\/?p=6689","title":{"rendered":"Local Models for Agentic Coding: A Deep Dive into Practical Viability"},"content":{"rendered":"<p>This article details the recent experiences of a developer in running small language models locally on their machine for agentic coding tasks, building upon a previous discussion of influential factors such as hardware, model selection, runtime, and harness. This follow-up focuses on concrete user experiences, including specific tasks assigned to the models, the observed outcomes, and the author&#8217;s final conclusions regarding the practical viability of such setups.<\/p>\n<p>The investigation centers on &quot;agentic&quot; coding, which extends beyond simple auto-completion to encompass more autonomous task execution by AI agents. The hardware used for this evaluation comprised two Apple Silicon machines: an M3 Max with 48GB of RAM and an M5 Pro with 64GB of RAM. These machines represent high-end developer workstations, providing a robust platform for testing the capabilities of locally deployed AI models.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/lockitsoft.com\/?p=6689\/#The_Viability_Funnel_Navigating_the_Challenges_of_Local_Model_Evaluation\" >The Viability Funnel: Navigating the Challenges of Local Model Evaluation<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/lockitsoft.com\/?p=6689\/#A_Rollercoaster_Journey_The_Unpredictable_Nature_of_Agentic_Coding\" >A Rollercoaster Journey: The Unpredictable Nature of Agentic Coding<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/lockitsoft.com\/?p=6689\/#Task_Design_The_Crucial_Determinant_of_Model_Performance\" >Task Design: The Crucial Determinant of Model Performance<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/lockitsoft.com\/?p=6689\/#Task_1_Sorting_and_Cumulating_an_Existing_Bar_Chart\" >Task 1: Sorting and Cumulating an Existing Bar Chart<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/lockitsoft.com\/?p=6689\/#Task_2_Creating_a_Bar_Chart_of_Countries_Based_on_Access_Log_Data\" >Task 2: Creating a Bar Chart of Countries Based on Access Log Data<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/lockitsoft.com\/?p=6689\/#Day-to-Day_Use_Integrating_Local_Models_into_Workflow\" >Day-to-Day Use: Integrating Local Models into Workflow<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/lockitsoft.com\/?p=6689\/#Task_Characteristics_and_Reflections\" >Task Characteristics and Reflections<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/lockitsoft.com\/?p=6689\/#Back_to_Basics_A_Detox_from_Over-Autonomy\" >Back to Basics: A Detox from Over-Autonomy<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/lockitsoft.com\/?p=6689\/#A_Second_Perspective_Real-World_Adoption_and_Harness_Enhancement\" >A Second Perspective: Real-World Adoption and Harness Enhancement<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/lockitsoft.com\/?p=6689\/#To_Sum_Up_A_Promising_Yet_Evolving_Landscape\" >To Sum Up: A Promising, Yet Evolving Landscape<\/a><\/li><\/ul><\/nav><\/div>\n<h3><span class=\"ez-toc-section\" id=\"The_Viability_Funnel_Navigating_the_Challenges_of_Local_Model_Evaluation\"><\/span>The Viability Funnel: Navigating the Challenges of Local Model Evaluation<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The process of evaluating small language models for agentic coding is acknowledged as a fundamentally tedious endeavor. This stems from several inherent challenges, including the significant time required for model downloads, particularly on internet connections that are not fiber-optic based, as experienced in Berlin. Following the download, each new model necessitates configuration within a specific &quot;harness&quot; \u2013 the software framework used to interact with and deploy the model. Subsequently, the model is tested on various tasks, and the results require careful interpretation.<\/p>\n<p>The author conceptualizes this evaluation process as a &quot;viability funnel,&quot; a metaphor illustrating the progressive refinement and selection of models based on their performance and suitability for specific agentic coding tasks. This funnel implies a gradual elimination of less capable or less suitable models as the evaluation progresses, moving from a broad pool of candidates to a select few that demonstrate practical utility.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"A_Rollercoaster_Journey_The_Unpredictable_Nature_of_Agentic_Coding\"><\/span>A Rollercoaster Journey: The Unpredictable Nature of Agentic Coding<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The author describes the journey of evaluating these local models as a &quot;roller coaster,&quot; an observation that itself highlights a key characteristic of this emerging field: unpredictability. This inherent volatility suggests that outcomes are not always consistent and can be influenced by a multitude of subtle factors, making definitive conclusions challenging to draw.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Task_Design_The_Crucial_Determinant_of_Model_Performance\"><\/span>Task Design: The Crucial Determinant of Model Performance<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>A significant revelation from the evaluation is the profound impact of task design on model performance. The author emphasizes that the choice of task is one of the most critical factors influencing the viability of small, locally run models. This underscores the importance of setting realistic expectations for what these models can achieve. The complexity of a task, specifically its demand on the model&#8217;s reasoning capabilities, and the estimated number of files the agent will need to interact with (read and write), directly correlate with the model&#8217;s success. These latter aspects are intrinsically linked to the model&#8217;s tool-calling proficiency and the size of its context window \u2013 the amount of information it can process and retain at any given time.<\/p>\n<figure class=\"article-inline-figure\"><img decoding=\"async\" src=\"https:\/\/martinfowler.com\/articles\/exploring-gen-ai\/donkey-card.png\" alt=\"Experiences with local models for coding\" class=\"article-inline-img\" loading=\"lazy\" \/><\/figure>\n<p>The systematic comparison primarily involved JavaScript\/TypeScript tasks, indicating a focus on web development environments. However, less systematic testing also included shell scripts and Python scripts, which were reported to perform adequately. This suggests that while the primary evaluation focused on a specific tech stack, the underlying capabilities might extend to other programming languages.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Task_1_Sorting_and_Cumulating_an_Existing_Bar_Chart\"><\/span>Task 1: Sorting and Cumulating an Existing Bar Chart<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>One of the specific tasks involved modifying an existing frontend bar chart titled &quot;Messages per anonymous poster.&quot; The desired changes were:<\/p>\n<ul>\n<li><strong>Title Revision:<\/strong> To change the title to &quot;Messages per poster,&quot; removing the &quot;anonymous&quot; qualifier.<\/li>\n<li><strong>Bar Sorting:<\/strong> To sort the bars in descending order of message count, with the highest bar positioned on the left.<\/li>\n<li><strong>X-Axis Labeling:<\/strong> To replace numerical labels (e.g., &quot;#75&quot;) on the x-axis with percentage values representing each bar&#8217;s contribution to the overall message count. Specifically, if the first 10 bars summed to 240 messages out of a total of 1000, the 10th bar should display &quot;24%&quot;. This percentage display was requested for every 10th bar.<\/li>\n<\/ul>\n<p><strong>Phase 1: Manual Evaluation<\/strong><\/p>\n<p>This task was initially tested manually with several models, including Qwen3.6 35B, Gemma 4 31B, Gemma 4 26B, and Qwen Coder Next 80B MoE. Two harnesses were used: OpenCode and Pi. The manual evaluation, while not detailed in terms of specific outcomes for each model\/harness combination, serves as the initial qualitative assessment before more rigorous automated testing. The accompanying image (task-bar-chart-doom.png) suggests that visual representation of the outcomes, potentially indicating errors or unexpected results, was part of this phase.<\/p>\n<p><strong>Phase 2: Automated Evaluation<\/strong><\/p>\n<p>The automated evaluation phase yielded results that diverged frustratingly from the manual experience. Gemma 4 26B consistently failed to produce a functionally correct solution in three separate attempts, primarily struggling with the custom x-axis labeling. In contrast, Qwen3 35B MoE succeeded in two out of two attempts. The primary failure mode observed was the incorrect implementation of the x-axis labels, which were either omitted entirely or displayed inaccurately.<\/p>\n<p>A crucial caveat for this automated evaluation is the &quot;one-shot&quot; approach, where the agent is expected to solve the problem in a single attempt. This is noted as not fully realistic for practical agentic coding scenarios. While the agent was granted browser access as a sensor for self-correction, it failed to utilize this capability. The author suggests that expanding the available sensors and improving their utilization could enhance self-correction mechanisms, thereby increasing the viability of such systems in real-world applications. This points to a broader challenge in current agentic AI: the gap between theoretical capabilities and practical, autonomous problem-solving.<\/p>\n<figure class=\"article-inline-figure\"><img decoding=\"async\" src=\"https:\/\/martinfowler.com\/articles\/exploring-gen-ai\/task-posters-bar-chart.png\" alt=\"Experiences with local models for coding\" class=\"article-inline-img\" loading=\"lazy\" \/><\/figure>\n<h4><span class=\"ez-toc-section\" id=\"Task_2_Creating_a_Bar_Chart_of_Countries_Based_on_Access_Log_Data\"><\/span>Task 2: Creating a Bar Chart of Countries Based on Access Log Data<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>The second task involved adding a horizontal bar chart to a visualization to display the countries from which website requests originated. The specific requirements were:<\/p>\n<ul>\n<li><strong>Chart <\/strong> &quot;Countries.&quot;<\/li>\n<li><strong>Data Display:<\/strong> Show the top 10 countries, sorted by the number of requests in descending order (most requests at the top).<\/li>\n<li><strong>&quot;Other&quot; Category:<\/strong> Group all other countries into an &quot;Other&quot; category at the bottom of the chart.<\/li>\n<li><strong>Handling Missing Data:<\/strong> Entries without a country value should be included in the &quot;Other&quot; category, not displayed as a separate category.<\/li>\n<\/ul>\n<p>The input data format was provided as an example: <code>\"ts\": \"2026-05-24T01:10:41+02:00\", \"ip\": \"x.x.x.x\", \"status\": 200, \"ref\": \"https:\/\/the-referer.com\", \"country\": \"Malta\"<\/code>. The task was confined to modifying a single file, <code>@scripts\/visualise_access_logs.mjs<\/code>, which processes multiple <code>*.ndjson<\/code> files containing access log entries.<\/p>\n<p><strong>Phase 1: Manual Evaluation<\/strong><\/p>\n<p>This task proved surprisingly challenging during manual evaluation with Gemma 4 31B and Qwen 35B. The author observed significant increases in memory usage, prolonged reasoning chains, and slow attempts to edit the target file. Despite trying variations such as refactoring into smaller files with a larger model and using different harnesses (OpenCode and Pi), the results were consistently poor. The author&#8217;s notes from this phase included entries like &quot;Gave up after 11 minutes,&quot; &quot;Gave up after 12 minutes,&quot; and &quot;Stopped after 8 minutes,&quot; indicating considerable frustration and a lack of perceived complexity in the task itself that would warrant such delays.<\/p>\n<p>Intriguingly, a &quot;back to basics&quot; approach yielded a working solution. By initiating a plain chat with a model in LM Studio, without any harness, and pasting the entire file content, the author successfully generated the desired chart. However, this manual process still took approximately 6 minutes, with a substantial portion of that time spent by the model regurgitating the existing 450 lines of code plus the newly added lines for the chart. This highlights a potential inefficiency in how models process and modify existing codebases, even when provided with the full context.<\/p>\n<p><strong>Phase 2: Automated Evaluation<\/strong><\/p>\n<p>In the automated setup, Qwen 35B MoE was run seven times for this task. It failed to properly solve the problem in five of those instances. The consistent failure point was the absence of country labels on the bars.<\/p>\n<figure class=\"article-inline-figure\"><img decoding=\"async\" src=\"https:\/\/martinfowler.com\/articles\/exploring-gen-ai\/task-bar-chart-doom.png\" alt=\"Experiences with local models for coding\" class=\"article-inline-img\" loading=\"lazy\" \/><\/figure>\n<p>A significant and unexpected discovery occurred when the evaluations were re-run on the M5 machine with 64GB of RAM. The task failed only once on this machine, a stark contrast to the M3 Max&#8217;s performance. This difference in output quality with identical model settings was surprising, as the expectation was primarily for speed differences, not such a substantial variance in correctness. This outcome remains an unexplained mystery for the author, suggesting that subtle hardware or system-level interactions might be at play, or perhaps variations in how the underlying software stack interacts with the hardware. The accompanying image (local-models_comparison.png) likely visually represents this performance disparity.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"Day-to-Day_Use_Integrating_Local_Models_into_Workflow\"><\/span>Day-to-Day Use: Integrating Local Models into Workflow<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>Beyond structured comparisons, the author integrated Qwen3.6 35B MoE into regular day-to-day tasks, encompassing both professional and personal coding projects. This ongoing usage provided further insights into the practical application of these models.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Task_Characteristics_and_Reflections\"><\/span>Task Characteristics and Reflections<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>The author&#8217;s reflections on task selection in daily usage reveal a nuanced understanding of what works best with smaller, locally run models. The choice of task is paramount, with simpler, more self-contained tasks demonstrating higher success rates. For instance, tasks involving code refactoring, documentation generation, or minor bug fixes were more amenable to local model assistance. Conversely, complex architectural changes or tasks requiring deep understanding of a large, interconnected codebase proved more challenging.<\/p>\n<p>The author notes that the models exhibit a higher sensitivity to changes in the setup, which, while demanding, also provides more granular feedback on what optimizations are effective. This heightened sensitivity can be seen as a benefit, offering a clearer signal about the system&#8217;s behavior and limitations. Furthermore, the reduced temptation to &quot;check out&quot; and blindly accept the model&#8217;s output encourages a more thorough review process. This contrasts with the experience of using larger, more autonomous models, which can sometimes lead to surprises and extensive rework at later stages. The slower, more deliberate pace enforced by smaller models fosters a greater sense of care and comprehension in the present moment, deferring less of the cognitive load to the future.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"Back_to_Basics_A_Detox_from_Over-Autonomy\"><\/span>Back to Basics: A Detox from Over-Autonomy<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>The experience of returning to smaller, less capable models is described as a &quot;detox&quot; from the over-autonomy often associated with more powerful AI systems. This &quot;detox&quot; offers a welcome return to a more hands-on, investigative approach to coding. The increased sensitivity of small models to the setup&#8217;s nuances provides valuable learning opportunities, revealing what factors contribute to success and what hinders it. This direct feedback loop is crucial for building intuition about the capabilities and limitations of local AI agents. The author finds that the lower autonomy of these models necessitates more careful review and understanding of their outputs, a practice that can prevent the costly surprises and rework often encountered with more advanced AI assistants that are given significant leeway. This methodical approach, while slower, cultivates a deeper understanding and more reliable outcomes.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"A_Second_Perspective_Real-World_Adoption_and_Harness_Enhancement\"><\/span>A Second Perspective: Real-World Adoption and Harness Enhancement<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>The insights from the author&#8217;s personal evaluation are complemented by a perspective from a colleague, Jigar Jani. Jani regularly utilizes Qwen 35B MoE (4-bit quantized version) on a 48GB MacBook for nearly all his coding tasks within a substantial Python and React codebase. His experience highlights the importance of continuously enhancing the &quot;harness&quot; \u2013 the software framework used to interact with the AI model. Jani has found tools like Graphify and Understand Anything particularly valuable for improving the models&#8217; capabilities in code search and comprehension. While Jani perceives significant utility and ongoing improvements as he refines his harness, he strongly emphasizes the indispensable role of rigorous code review, even when employing advanced AI assistance. This corroborates the author&#8217;s findings that human oversight remains critical in the agentic coding workflow.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"To_Sum_Up_A_Promising_Yet_Evolving_Landscape\"><\/span>To Sum Up: A Promising, Yet Evolving Landscape<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>The overall experience of evaluating small models for agentic coding has been characterized by frustration and sometimes perplexing results, indicating that this technology is far from being a &quot;plug-and-play&quot; solution. However, the author has gained a clearer understanding of the types of tasks that hold potential for success with locally deployed models. The author is actively incorporating Qwen 3.6 into their workflow to further hone their intuition about when to leverage these tools effectively.<\/p>\n<figure class=\"article-inline-figure\"><img decoding=\"async\" src=\"https:\/\/martinfowler.com\/articles\/exploring-gen-ai\/task-countries-bar-chart.png\" alt=\"Experiences with local models for coding\" class=\"article-inline-img\" loading=\"lazy\" \/><\/figure>\n<p>Despite the current limitations, the potential for agentic coding with local models is undeniable. However, the author explicitly states that the current capabilities are &quot;very far away&quot; from the level of sophistication achieved with larger, cloud-based models. This gap in performance highlights the ongoing research and development needed to bridge the divide between smaller, accessible models and their more powerful counterparts.<\/p>\n<p>At the time of publication, the author&#8217;s default setup reflects a pragmatic approach to leveraging AI in their workflow, likely involving a combination of local and cloud-based tools, with a clear understanding of the trade-offs involved in each. The specific components of this default setup would offer further insight into the author&#8217;s current best practices.<\/p>\n<p>The journey into local agentic coding reveals a landscape ripe with potential but also fraught with developmental challenges. While the technology is not yet mature enough for seamless, autonomous coding, the continuous refinement of models, harnesses, and evaluation methodologies suggests a future where developers can increasingly leverage localized AI for enhanced productivity and innovation. The insights gained from this extensive evaluation serve as a valuable guide for others venturing into this rapidly evolving domain.<\/p>\n<!-- RatingBintangAjaib -->","protected":false},"excerpt":{"rendered":"<p>This article details the recent experiences of a developer in running small language models locally on their machine for agentic coding tasks, building upon a previous discussion of influential factors such as hardware, model selection, runtime, and harness. This follow-up focuses on concrete user experiences, including specific tasks assigned to the models, the observed outcomes, &hellip;<\/p>\n","protected":false},"author":8,"featured_media":6688,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[136],"tags":[292,138,371,372,1265,20,3138,139,137,3139],"class_list":["post-6689","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-software-development","tag-agentic","tag-coding","tag-deep","tag-dive","tag-local","tag-models","tag-practical","tag-programming","tag-software","tag-viability"],"_links":{"self":[{"href":"https:\/\/lockitsoft.com\/index.php?rest_route=\/wp\/v2\/posts\/6689","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lockitsoft.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/lockitsoft.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/lockitsoft.com\/index.php?rest_route=\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/lockitsoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6689"}],"version-history":[{"count":0,"href":"https:\/\/lockitsoft.com\/index.php?rest_route=\/wp\/v2\/posts\/6689\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/lockitsoft.com\/index.php?rest_route=\/wp\/v2\/media\/6688"}],"wp:attachment":[{"href":"https:\/\/lockitsoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6689"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/lockitsoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=6689"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/lockitsoft.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=6689"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}