Hugging Face Daily Papers · · 4 min read

SemaPLC: A Project-Grounded, Verification-Gated Agent Harness for PLC Code Generation

Mirrored from Hugging Face Daily Papers for archival readability. Support the source by reading on the original site.

Project link:<a href=\"https://github.com/midea-ai/SemaPLC\" rel=\"nofollow\">https://github.com/midea-ai/SemaPLC</a><br>Document:<a href=\"https://midea-ai.github.io/SemaPLC/#/en/\" rel=\"nofollow\">https://midea-ai.github.io/SemaPLC/#/en/</a></p>\n<p>SemaPLC turns AI-assisted PLC programming from \"generating code\" into \"delivering verified control logic.\" It provides a browser-based IDE for generating, editing, verifying, and simulating programs, and its verification-gated agent empirically surpasses prior systems, with the widest margin in dynamic runtime behavior.</p>\n","updatedAt":"2026-08-20T02:35:21.224Z","author":{"_id":"6a8419d70147838abe580dea","avatarUrl":"/avatars/a8b3758b418f2d6cc8ccc8c79d418743.svg","fullname":"Allen","name":"Allenyltu","type":"user","isPro":false,"isHf":false,"isHfAdmin":false,"isMod":false,"isUserFollowing":false}},"numEdits":0,"identifiedLanguage":{"language":"en","probability":0.7912766933441162},"editors":["Allenyltu"],"editorAvatarUrls":["/avatars/a8b3758b418f2d6cc8ccc8c79d418743.svg"],"reactions":[],"isReport":false}}],"primaryEmailConfirmed":false,"paper":{"id":"2608.18565","authors":[{"_id":"6a866443db13816030683e84","name":"Yanlun Tu","hidden":false},{"_id":"6a866443db13816030683e85","name":"Huacan Wang","hidden":false},{"_id":"6a866443db13816030683e86","name":"Ziyue Zhou","hidden":false},{"_id":"6a866443db13816030683e87","name":"Jie Zhou","hidden":false},{"_id":"6a866443db13816030683e88","name":"Ningyan Zhu","hidden":false},{"_id":"6a866443db13816030683e89","name":"Ge Chen","hidden":false},{"_id":"6a866443db13816030683e8a","name":"Wangyi Chen","hidden":false},{"_id":"6a866443db13816030683e8b","name":"Tengfei Zhou","hidden":false},{"_id":"6a866443db13816030683e8c","name":"Yifan Zhou","hidden":false},{"_id":"6a866443db13816030683e8d","name":"Dasheng Yang","hidden":false},{"_id":"6a866443db13816030683e8e","name":"Xiaofeng Mou","hidden":false},{"_id":"6a866443db13816030683e8f","name":"Hui Zhang","hidden":false},{"_id":"6a866443db13816030683e90","name":"Yi Xu","hidden":false}],"mediaUrls":["https://cdn-uploads.huggingface.co/production/uploads/6a8419d70147838abe580dea/Y6ljictlBqBG6N-AwVEnv.gif"],"publishedAt":"2026-08-19T00:00:00.000Z","submittedOnDailyAt":"2026-08-20T00:00:00.000Z","title":"SemaPLC: A Project-Grounded, Verification-Gated Agent Harness for PLC Code Generation","submittedOnDailyBy":{"_id":"6a8419d70147838abe580dea","avatarUrl":"/avatars/a8b3758b418f2d6cc8ccc8c79d418743.svg","isPro":false,"fullname":"Allen","user":"Allenyltu","type":"user","name":"Allenyltu"},"summary":"Programmable logic controllers (PLCs) run industrial plants, and large language models can already generate independent program organization units (POUs) for them. Whether such logic integrates into an existing PLC project and then runs correctly has been checked only in limited tests. We present SemaPLC, a project-grounded and verification-gated agent harness assembled from conventional tools but governed by a strict completion rule. Rather than stopping when the model judges its own output adequate, SemaPLC declares a task complete only when logged external checks confirm it. Those checks cover the specification, the compilation, and the behavior on a live runtime. On 117 independent-POU tasks matching existing benchmarks, it attains the highest strict verified pass rate on all seven models (72.6\\% mean). On a project-context track of 65 tasks whose generated logic must compile and run inside a real project, it attains the highest mean on integrated compilation, static behavior, and dynamic behavior. Of the three layers, dynamic behavior is the most revealing. We measure it by deploying the generated and the reference logic to a live PLC runtime and comparing their executed traces. All methods fall within 10 static points of one another, whereas dynamic scores separate them sharply, from 22.4 to 31.4 for the baselines against 52.2 for SemaPLC. Overall, our verification-gated harness raises the mean at every layer and most sharply at runtime. Execution, not static scoring, is the faithful test of whether generated control logic actually works. SemaPLC is open-sourced at https://github.com/midea-ai/SemaPLC.","upvotes":58,"discussionId":"6a866443db13816030683e91","githubRepo":"https://github.com/midea-ai/SemaPLC","githubRepoAddedBy":"user","ai_summary":"SemaPLC is a verification-gated agent harness that validates generated PLC logic through external compilation and live runtime execution, achieving higher verified pass rates than baseline methods.","ai_keywords":["programmable logic controllers (PLCs)","program organization units (POUs)","SemaPLC","verification-gated agent harness","live runtime","integrated compilation","static behavior","dynamic behavior","executed traces"],"ai_summary_model":"thinkingmachines/Inkling-Small","githubStars":30,"organization":{"_id":"69dc8ba0ba9bca6e55fd1b10","name":"Midea-AIRC","fullname":"Midea AI Research Center","avatar":"https://cdn-avatars.huggingface.co/v1/production/uploads/67aab016929cde5e80e9727b/rL_SprKt4P3mwpCGjartp.png"}},"canReadDatabase":false,"canManagePapers":false,"canSubmit":false,"hasHfLevelAccess":false,"upvoted":false,"upvoters":[{"_id":"6a8419d70147838abe580dea","avatarUrl":"/avatars/a8b3758b418f2d6cc8ccc8c79d418743.svg","isPro":false,"fullname":"Allen","user":"Allenyltu","type":"user"},{"_id":"64c382691ddb38927358744f","avatarUrl":"/avatars/52421acc33cb3b8eb2b7cc6339421d78.svg","isPro":false,"fullname":"Aries Liu","user":"AriesLiu","type":"user"},{"_id":"665de5242d8dafd54d618c0f","avatarUrl":"/avatars/4c83723222792eefb513434070c7d7e8.svg","isPro":false,"fullname":"NingyanZhu","user":"IrizZ","type":"user"},{"_id":"682c6da639dfc75334140fad","avatarUrl":"https://cdn-avatars.huggingface.co/v1/production/uploads/no-auth/aJZH-iK-ar04-O0wUVafX.png","isPro":false,"fullname":"yqh","user":"ToBeJoyVanguard","type":"user"},{"_id":"6406cadb692855e65ae9ee01","avatarUrl":"/avatars/5a0a04f38a00b11b9752ad8d1fc0708e.svg","isPro":false,"fullname":"kuan li","user":"minlik","type":"user"},{"_id":"63ac5701c21e60a3e9b58aa7","avatarUrl":"https://cdn-avatars.huggingface.co/v1/production/uploads/63ac5701c21e60a3e9b58aa7/g6EX7diOpuA94R2ab-rZC.png","isPro":true,"fullname":"Dipankar Sarkar","user":"dipankarsarkar","type":"user"},{"_id":"6a867b5753e21a65a196e51d","avatarUrl":"/avatars/5938e7111001950678b39c48167aca7d.svg","isPro":false,"fullname":"Smith","user":"SmithAllen123","type":"user"},{"_id":"6a6a9506a698558ca76242e3","avatarUrl":"/avatars/0a0eff98d0336961ce4b5c0f0f2db559.svg","isPro":false,"fullname":"John Perez","user":"Ember-Wisp","type":"user"},{"_id":"6a6a9b4d726441725a3003f6","avatarUrl":"/avatars/68190a31808e25b5b25f07a003b871b9.svg","isPro":false,"fullname":"John Taylor","user":"Harbor-John","type":"user"},{"_id":"6a6c7a3d3574d63d5305cd74","avatarUrl":"/avatars/78a0b7bd8c1b9996c19966b58df44488.svg","isPro":false,"fullname":"Richard Wilson","user":"Cobalt-Richard4","type":"user"},{"_id":"6a6c9d69c4a86c3ccc0e871d","avatarUrl":"/avatars/dea73c44020faf8c2656939baf02c2db.svg","isPro":false,"fullname":"Charles Jones","user":"Cedar-Owen","type":"user"},{"_id":"6a6c8bf37e229e8df66886be","avatarUrl":"/avatars/335caa28ef1d0af046d2ff2320fe5cd1.svg","isPro":false,"fullname":"Paul Martin","user":"zenithstack","type":"user"}],"acceptLanguages":["en"],"dailyPaperRank":3,"organization":{"_id":"69dc8ba0ba9bca6e55fd1b10","name":"Midea-AIRC","fullname":"Midea AI Research Center","avatar":"https://cdn-avatars.huggingface.co/v1/production/uploads/67aab016929cde5e80e9727b/rL_SprKt4P3mwpCGjartp.png"},"markdownContentUrl":"https://huggingface.co/buckets/huggingchat/papers-content/resolve/2608/2608.18565.md","query":{}}">
Papers
arxiv:2608.18565

SemaPLC: A Project-Grounded, Verification-Gated Agent Harness for PLC Code Generation

Published on Aug 19
· Submitted by
Allen
on Aug 20
#3 Paper of the day
Authors:
,

Abstract

SemaPLC is a verification-gated agent harness that validates generated PLC logic through external compilation and live runtime execution, achieving higher verified pass rates than baseline methods.

Programmable logic controllers (PLCs) run industrial plants, and large language models can already generate independent program organization units (POUs) for them. Whether such logic integrates into an existing PLC project and then runs correctly has been checked only in limited tests. We present SemaPLC, a project-grounded and verification-gated agent harness assembled from conventional tools but governed by a strict completion rule. Rather than stopping when the model judges its own output adequate, SemaPLC declares a task complete only when logged external checks confirm it. Those checks cover the specification, the compilation, and the behavior on a live runtime. On 117 independent-POU tasks matching existing benchmarks, it attains the highest strict verified pass rate on all seven models (72.6\% mean). On a project-context track of 65 tasks whose generated logic must compile and run inside a real project, it attains the highest mean on integrated compilation, static behavior, and dynamic behavior. Of the three layers, dynamic behavior is the most revealing. We measure it by deploying the generated and the reference logic to a live PLC runtime and comparing their executed traces. All methods fall within 10 static points of one another, whereas dynamic scores separate them sharply, from 22.4 to 31.4 for the baselines against 52.2 for SemaPLC. Overall, our verification-gated harness raises the mean at every layer and most sharply at runtime. Execution, not static scoring, is the faithful test of whether generated control logic actually works. SemaPLC is open-sourced at https://github.com/midea-ai/SemaPLC.

Community

Paper submitter about 5 hours ago

Project link:https://github.com/midea-ai/SemaPLC
Document:https://midea-ai.github.io/SemaPLC/#/en/

SemaPLC turns AI-assisted PLC programming from "generating code" into "delivering verified control logic." It provides a browser-based IDE for generating, editing, verifying, and simulating programs, and its verification-gated agent empirically surpasses prior systems, with the widest margin in dynamic runtime behavior.

Upload images, audio, and videos by dragging in the text input, pasting, or clicking here.
Tap or paste here to upload images

· Sign up or log in to comment

Get this paper in your agent:

hf papers read 2608.18565
Don't have the latest CLI?
curl -LsSf https://hf.co/cli/install.sh | bash

Models citing this paper

No model linking this paper

Cite arxiv.org/abs/2608.18565 in a model README.md to link it from this page.

Datasets citing this paper

No dataset linking this paper

Cite arxiv.org/abs/2608.18565 in a dataset README.md to link it from this page.

Spaces citing this paper

No Space linking this paper

Cite arxiv.org/abs/2608.18565 in a Space README.md to link it from this page.

Collections including this paper

No Collection including this paper

Add this paper to a collection to link it from this page.

Discussion (0)

Sign in to join the discussion. Free account, 30 seconds — email code or GitHub.

Sign in →

No comments yet. Sign in and be the first to say something.

More from Hugging Face Daily Papers