[{"data":1,"prerenderedAt":315},["ShallowReactive",2],{"post-experimental-webui":3},{"_path":4,"_dir":5,"_draft":6,"_partial":6,"_locale":7,"title":8,"description":9,"date":10,"author":11,"category":12,"tags":13,"image":14,"slug":15,"body":16,"_type":309,"_id":310,"_source":311,"_file":312,"_stem":313,"_extension":314},"/blog/experimental-webui","blog",false,"","Sneak Peek: The Commander & The Brain","While the Pwnity CLI brings order to the chaos of the command line, we are hard at work on the next evolution of the framework: a fully integrated visual interface.","2026-02-03","Pwnity Team","Future Tech","UI, Automation, Pro","/assets/images/screenshot3.webp","experimental-webui",{"type":17,"children":18,"toc":298},"root",[19,26,39,46,51,59,66,101,105,111,116,124,130,135,141,146,153,196,202,235,241,293],{"type":20,"tag":21,"props":22,"children":23},"element","p",{},[24],{"type":25,"value":9},"text",{"type":20,"tag":21,"props":27,"children":28},{},[29,31,37],{"type":25,"value":30},"These features are currently in ",{"type":20,"tag":32,"props":33,"children":34},"strong",{},[35],{"type":25,"value":36},"experimental development",{"type":25,"value":38}," and are planned for future Pro releases. Here is a sneak peek at what we are building.",{"type":20,"tag":40,"props":41,"children":43},"h2",{"id":42},"the-commander-web-ui",[44],{"type":25,"value":45},"The Commander: Web UI",{"type":20,"tag":21,"props":47,"children":48},{},[49],{"type":25,"value":50},"The Pwnity Web UI is designed to be the ultimate command center, providing a seamless crossover between visual management and command-line control.",{"type":20,"tag":21,"props":52,"children":53},{},[54],{"type":20,"tag":55,"props":56,"children":58},"img",{"alt":57,"src":14},"Pwnity Web UI",[],{"type":20,"tag":60,"props":61,"children":63},"h3",{"id":62},"planned-features",[64],{"type":25,"value":65},"Planned Features",{"type":20,"tag":67,"props":68,"children":69},"ul",{},[70,81,91],{"type":20,"tag":71,"props":72,"children":73},"li",{},[74,79],{"type":20,"tag":32,"props":75,"children":76},{},[77],{"type":25,"value":78},"Visual Management with \"Cards\"",{"type":25,"value":80},": An all-in-one dashboard where you can see targets, tools, and reports in one place with drag-and-drop actions.",{"type":20,"tag":71,"props":82,"children":83},{},[84,89],{"type":20,"tag":32,"props":85,"children":86},{},[87],{"type":25,"value":88},"Live Dashboards",{"type":25,"value":90},": Monitor system resources, track target uptime, and visualize connection paths in real-time.",{"type":20,"tag":71,"props":92,"children":93},{},[94,99],{"type":20,"tag":32,"props":95,"children":96},{},[97],{"type":25,"value":98},"Integrated Terminal",{"type":25,"value":100},": The full power of the Pwnity CLI directly in the browser, allowing you to mix clicks with keystrokes.",{"type":20,"tag":102,"props":103,"children":104},"hr",{},[],{"type":20,"tag":40,"props":106,"children":108},{"id":107},"the-brain-node-editor",[109],{"type":25,"value":110},"The Brain: Node Editor",{"type":20,"tag":21,"props":112,"children":113},{},[114],{"type":25,"value":115},"For complex automation, we are developing \"The Brain\" — a visual node editor that lets you build logic that adapts to data in real-time.",{"type":20,"tag":21,"props":117,"children":118},{},[119],{"type":20,"tag":55,"props":120,"children":123},{"alt":121,"src":122},"Pwnity Node Editor","/assets/images/screenshot1.webp",[],{"type":20,"tag":60,"props":125,"children":127},{"id":126},"drag-drop-dominate",[128],{"type":25,"value":129},"Drag, Drop, Dominate",{"type":20,"tag":21,"props":131,"children":132},{},[133],{"type":25,"value":134},"The goal is to turn complex attack chains into simple, reusable visual workflows. Instead of writing fragile wrapper scripts, you will visually connect data sources to tools and parsers.",{"type":20,"tag":60,"props":136,"children":138},{"id":137},"the-node-library",[139],{"type":25,"value":140},"The Node Library",{"type":20,"tag":21,"props":142,"children":143},{},[144],{"type":25,"value":145},"We are designing a comprehensive library of nodes to handle every aspect of an engagement:",{"type":20,"tag":147,"props":148,"children":150},"h4",{"id":149},"killer-nodes",[151],{"type":25,"value":152},"Killer Nodes",{"type":20,"tag":67,"props":154,"children":155},{},[156,166,176,186],{"type":20,"tag":71,"props":157,"children":158},{},[159,164],{"type":20,"tag":32,"props":160,"children":161},{},[162],{"type":25,"value":163},"Tool Node",{"type":25,"value":165},": Runs any CLI tool with dynamic placeholders.",{"type":20,"tag":71,"props":167,"children":168},{},[169,174],{"type":20,"tag":32,"props":170,"children":171},{},[172],{"type":25,"value":173},"Parser Node",{"type":25,"value":175},": Turns raw logs into structured findings.",{"type":20,"tag":71,"props":177,"children":178},{},[179,184],{"type":20,"tag":32,"props":180,"children":181},{},[182],{"type":25,"value":183},"Loop Node",{"type":25,"value":185},": Iterates over collections (IPs, Ports, etc.).",{"type":20,"tag":71,"props":187,"children":188},{},[189,194],{"type":20,"tag":32,"props":190,"children":191},{},[192],{"type":25,"value":193},"If Condition",{"type":25,"value":195},": Adds logic (e.g., \"If status == 200 then...\").",{"type":20,"tag":147,"props":197,"children":199},{"id":198},"control-flow",[200],{"type":25,"value":201},"Control Flow",{"type":20,"tag":67,"props":203,"children":204},{},[205,215,225],{"type":20,"tag":71,"props":206,"children":207},{},[208,213],{"type":20,"tag":32,"props":209,"children":210},{},[211],{"type":25,"value":212},"Start",{"type":25,"value":214},": The entry point for a workflow.",{"type":20,"tag":71,"props":216,"children":217},{},[218,223],{"type":20,"tag":32,"props":219,"children":220},{},[221],{"type":25,"value":222},"Switch & Gate",{"type":25,"value":224},": Direct flow based on input values.",{"type":20,"tag":71,"props":226,"children":227},{},[228,233],{"type":20,"tag":32,"props":229,"children":230},{},[231],{"type":25,"value":232},"Wait (Join)",{"type":25,"value":234},": Wait for multiple parallel executions to complete.",{"type":20,"tag":147,"props":236,"children":238},{"id":237},"data-manipulation",[239],{"type":25,"value":240},"Data Manipulation",{"type":20,"tag":67,"props":242,"children":243},{},[244,254,273,283],{"type":20,"tag":71,"props":245,"children":246},{},[247,252],{"type":20,"tag":32,"props":248,"children":249},{},[250],{"type":25,"value":251},"JSON",{"type":25,"value":253},": Convert between objects and strings.",{"type":20,"tag":71,"props":255,"children":256},{},[257,262,264,271],{"type":20,"tag":32,"props":258,"children":259},{},[260],{"type":25,"value":261},"Property Get/Set",{"type":25,"value":263},": Extract nested values (e.g., ",{"type":20,"tag":265,"props":266,"children":268},"code",{"className":267},[],[269],{"type":25,"value":270},"data.user.name",{"type":25,"value":272},").",{"type":20,"tag":71,"props":274,"children":275},{},[276,281],{"type":20,"tag":32,"props":277,"children":278},{},[279],{"type":25,"value":280},"Encoder",{"type":25,"value":282},": Base64, MD5, SHA-256 helpers.",{"type":20,"tag":71,"props":284,"children":285},{},[286,291],{"type":20,"tag":32,"props":287,"children":288},{},[289],{"type":25,"value":290},"Filter / Regex Extract",{"type":25,"value":292},": Extract specific data patterns.",{"type":20,"tag":21,"props":294,"children":295},{},[296],{"type":25,"value":297},"Stay tuned for more updates as we refine these powerful features!",{"title":7,"searchDepth":299,"depth":299,"links":300},2,[301,305],{"id":42,"depth":299,"text":45,"children":302},[303],{"id":62,"depth":304,"text":65},3,{"id":107,"depth":299,"text":110,"children":306},[307,308],{"id":126,"depth":304,"text":129},{"id":137,"depth":304,"text":140},"markdown","content:blog:experimental-webui.md","content","blog/experimental-webui.md","blog/experimental-webui","md",1775644156661]