{"id":2050,"date":"2026-07-18T06:48:46","date_gmt":"2026-07-18T13:48:46","guid":{"rendered":"http:\/\/macdaddy4sure.ai\/?p=2050"},"modified":"2026-07-18T06:48:46","modified_gmt":"2026-07-18T13:48:46","slug":"program-state-portal-php-html-css","status":"publish","type":"post","link":"http:\/\/macdaddy4sure.ai\/index.php\/2026\/07\/18\/program-state-portal-php-html-css\/","title":{"rendered":"Program State Portal (PHP \/ HTML \/ CSS)"},"content":{"rendered":"\n<p>Unified web UI for <strong>as much live program + RL state as possible<\/strong>.<\/p>\n\n\n\n<p><strong>Chat features (graphs, IIS\/PHP, discovery):<\/strong> ChatSession-Features.md (ChatSession-Features.md) \u00b7 PhpGraphs.md (PhpGraphs.md) \u00b7 BrainstormIntegrations.md (BrainstormIntegrations.md)<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Pieces<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td><strong>Piece<\/strong><\/td><td><strong>Role<\/strong><\/td><\/tr><tr><td>ProgramStatePortal.cpp<\/td><td>Aggregates all GetStatus() \/ dashboards into JSON<\/td><\/tr><tr><td>C:\/_AugmentedIntelligence\/web_portal\/state.json<\/td><td>Snapshot file (default)<\/td><\/tr><tr><td>program_web_portal\/<\/td><td>PHP + CSS + Chart.js UI<\/td><\/tr><tr><td>Optional HTTP :8790<\/td><td>Native mini file server for the same JSON<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Start the app exporter<\/h2>\n\n\n\n<p><em>[text]<br><\/em>portal enable<br>portal export<br>portal http on 8790&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # optional<br>portal status<\/p>\n\n\n\n<p>On startup (defaults):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>program_state_portal_enabled=true<\/li>\n\n\n\n<li>program_state_portal_export_on_startup=true<\/li>\n\n\n\n<li>writes C:\/_AugmentedIntelligence\/web_portal\/state.json<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Start the PHP UI<\/h2>\n\n\n\n<p><em>[powershell]<br><\/em>cd program_web_portal<br># edit config.php if needed ($state_file, $mysql, $remote)<br>php -S 0.0.0.0:8090<\/p>\n\n\n\n<p>Open http:\/\/localhost:8090\/.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">config.php<\/h3>\n\n\n\n<p><em>[php]<br><\/em>$state_file = &#8216;C:\/_AugmentedIntelligence\/web_portal\/state.json&#8217;;<br>$remote = &#8221;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \/\/ or &#8216;http:\/\/127.0.0.1:8790&#8217;<br>$mysql = [ &#8216;host&#8217;=&gt;&#8217;127.0.0.1&#8217;, &#8216;user&#8217;=&gt;&#8217;root&#8217;, &#8216;pass&#8217;=&gt;&#8221;, &#8216;db&#8217;=&gt;&#8217;rl_checkpoints&#8217; ];<\/p>\n\n\n\n<p>Env overrides: AI_PORTAL_STATE, AI_PORTAL_REMOTE, AI_MYSQL_*, AI_PORTAL_POLL_MS.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What the portal shows<\/h2>\n\n\n\n<p><strong>Overview<\/strong> \u2014 host, LAN IP, MySQL, LLM model, feature flags, enablement chart<\/p>\n\n\n\n<p><strong>RL<\/strong> \u2014 status strings for:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Gaming, Driving, Knowledge, Computer, Minecraft DQN\u00a0<\/li>\n\n\n\n<li>Strategy, Life, Political, Parenting\u00a0<\/li>\n\n\n\n<li>RL features, curriculum, deployment, distributed, real, language bridge, MathNN agent net\u00a0<\/li>\n\n\n\n<li>Checkpoint MySQL flags + _RLCheckpointMySQL summary\u00a0<\/li>\n<\/ul>\n\n\n\n<p><strong>MySQL Checkpoints<\/strong> \u2014 row counts per *_rl_checkpoints table<\/p>\n\n\n\n<p><strong>System<\/strong> \u2014 executive, perception bus, memory knowledge, LLM orchestration, computer bot, agents, thought graph, automation, safety, classifiers, hardware, generative, \u2026<\/p>\n\n\n\n<p><strong>Network &amp; AD<\/strong> \u2014 networking, auto-config, AD access, password store, remote commands<\/p>\n\n\n\n<p><strong>Minecraft<\/strong> \u2014 bridge + texture vision + DQN status (full graphs in minecraft_web_dashboard\/)<\/p>\n\n\n\n<p><strong>Raw JSON<\/strong> \u2014 full state.json<\/p>\n\n\n\n<p><strong>Graphs<\/strong> \u2014 architecture nodes + discovery category bars \/ posted-vs-pending pie<\/p>\n\n\n\n<p>from graphs export \u2192 graphs\/graphs_all.json or program_web_portal\/data\/.<\/p>\n\n\n\n<p>API: api.php?q=graphs. See docs\/BrainstormIntegrations.md.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Security<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Bind portal HTTP only on trusted LAN.\u00a0<\/li>\n\n\n\n<li>Do not expose MySQL credentials publicly.\u00a0<\/li>\n\n\n\n<li>Portal is <strong>read-only<\/strong>.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Unified web UI for as much live program + RL state as possible. Chat features (graphs, IIS\/PHP, discovery): ChatSession-Features.md (ChatSession-Features.md) \u00b7 PhpGraphs.md (PhpGraphs.md) \u00b7 BrainstormIntegrations.md (BrainstormIntegrations.md) Pieces Piece Role ProgramStatePortal.cpp Aggregates all GetStatus() \/ dashboards into JSON C:\/_AugmentedIntelligence\/web_portal\/state.json Snapshot file (default) program_web_portal\/ PHP + CSS + Chart.js UI Optional HTTP :8790 Native mini file server [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-2050","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/posts\/2050","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/comments?post=2050"}],"version-history":[{"count":1,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/posts\/2050\/revisions"}],"predecessor-version":[{"id":2051,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/posts\/2050\/revisions\/2051"}],"wp:attachment":[{"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/media?parent=2050"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/categories?post=2050"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/macdaddy4sure.ai\/index.php\/wp-json\/wp\/v2\/tags?post=2050"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}