CmdForge/milestones/index.html

97 lines
30 KiB
HTML
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-milestones" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.9.2">
<title data-rh="true">Milestones | CmdForge</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://pages.brrd.tech/rob/CmdForge/milestones/"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="Milestones | CmdForge"><meta data-rh="true" name="description" content="Active"><meta data-rh="true" property="og:description" content="Active"><link data-rh="true" rel="icon" href="/rob/CmdForge/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://pages.brrd.tech/rob/CmdForge/milestones/"><link data-rh="true" rel="alternate" href="https://pages.brrd.tech/rob/CmdForge/milestones/" hreflang="en"><link data-rh="true" rel="alternate" href="https://pages.brrd.tech/rob/CmdForge/milestones/" hreflang="x-default"><script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Milestones","item":"https://pages.brrd.tech/rob/CmdForge/milestones"}]}</script><link rel="stylesheet" href="/rob/CmdForge/assets/css/styles.6095798e.css">
<script src="/rob/CmdForge/assets/js/runtime~main.f9433055.js" defer="defer"></script>
<script src="/rob/CmdForge/assets/js/main.6f2cae7a.js" defer="defer"></script>
</head>
<body class="navigation-with-keyboard">
<svg style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||(window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light")),document.documentElement.setAttribute("data-theme-choice",t||"system")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="theme-layout-navbar navbar navbar--fixed-top"><div class="navbar__inner"><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/rob/CmdForge/"><b class="navbar__title text--truncate">CmdForge</b></a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><a href="https://gitea.brrd.tech/rob/CmdForge" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">Source Code<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a><div class="toggle_vylO colorModeToggle_DEke"><button class="clean-btn toggleButton_gllP toggleButtonDisabled_aARS" type="button" disabled="" title="system mode" aria-label="Switch between dark and light mode (currently system mode)"><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP lightToggleIcon_pyhR"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP darkToggleIcon_wfgR"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP systemToggleIcon_QzmC"><path fill="currentColor" d="m12 21c4.971 0 9-4.029 9-9s-4.029-9-9-9-9 4.029-9 9 4.029 9 9 9zm4.95-13.95c1.313 1.313 2.05 3.093 2.05 4.95s-0.738 3.637-2.05 4.95c-1.313 1.313-3.093 2.05-4.95 2.05v-14c1.857 0 3.637 0.737 4.95 2.05z"></path></svg></button></div><div class="navbarSearchContainer_Bca1"></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="theme-layout-main main-wrapper mainWrapper_z2l0"><div class="docsWrapper_hBAB"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docRoot_UBD9"><aside class="theme-doc-sidebar-container docSidebarContainer_YfHR"><div class="sidebarViewport_aRkj"><div class="sidebar_njMd"><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_SIkG"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/rob/CmdForge/"><span title="CmdForge Overview" class="linkLabel_WmDU">CmdForge Overview</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/rob/CmdForge/architecture/"><span title="CmdForge Architecture" class="linkLabel_WmDU">CmdForge Architecture</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/rob/CmdForge/goals/"><span title="Goals" class="linkLabel_WmDU">Goals</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link" href="/rob/CmdForge/ideas-and-exploration/"><span title="Ideas &amp; Exploration" class="linkLabel_WmDU">Ideas &amp; Exploration</span></a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" href="/rob/CmdForge/milestones/"><span title="Milestones" class="linkLabel_WmDU">Milestones</span></a></li></ul></nav></div></div></aside><main class="docMainContainer_TBSr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/rob/CmdForge/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_YNFT"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link">Milestones</span></li></ul></nav><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_ITEo"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>Milestones</h1></header>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="active">Active<a href="#active" class="hash-link" aria-label="Direct link to Active" title="Direct link to Active" translate="no"></a></h2>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="production-readiness-and-adoption">Production Readiness and Adoption<a href="#production-readiness-and-adoption" class="hash-link" aria-label="Direct link to Production Readiness and Adoption" title="Direct link to Production Readiness and Adoption" translate="no"></a></h4>
<p><strong>Status</strong>: In progress</p>
<p>Deploy the completed M6-M9 work, restore account recovery, publish
<code>forge-tool</code> 1.1.0, validate official-tool installation from production, and
make coding-agent discovery and project-local creation easy to adopt.</p>
<h2 class="anchor anchorTargetStickyNavbar_Vzrq" id="completed">Completed<a href="#completed" class="hash-link" aria-label="Direct link to Completed" title="Direct link to Completed" translate="no"></a></h2>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="m9-the-feedback-loop">M9: The Feedback Loop<a href="#m9-the-feedback-loop" class="hash-link" aria-label="Direct link to M9: The Feedback Loop" title="Direct link to M9: The Feedback Loop" translate="no"></a></h4>
<p><strong>Target</strong>: Q2-Q3 2027
<strong>Status</strong>: Completed (2026-07-20)</p>
<p>Added prompt variation and optimization, improvement proposals, community
workflows, full integrity verification, and signed supply-chain attestation.
The cumulative non-integration suite reached 777 passing tests at completion.</p>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="m8-the-librarian">M8: The Librarian<a href="#m8-the-librarian" class="hash-link" aria-label="Direct link to M8: The Librarian" title="Direct link to M8: The Librarian" translate="no"></a></h4>
<p><strong>Target</strong>: Q1 2027
<strong>Status</strong>: Completed (2026-07-20)</p>
<p>Added input/output contracts and inference, deterministic preflight and
conformance testing, evidence-based regression analysis, schema compatibility,
explainable quality scores, reuse detection, audit evidence, deprecation, and
registry-aware discovery. Privacy-sensitive usage tracking was implemented as
an explicit local opt-in workflow. The milestone passed 710 tests before later
hardening work.</p>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="m7-architecture-modernization">M7: Architecture Modernization<a href="#m7-architecture-modernization" class="hash-link" aria-label="Direct link to M7: Architecture Modernization" title="Direct link to M7: Architecture Modernization" translate="no"></a></h4>
<p><strong>Target</strong>: Q4 2026
<strong>Status</strong>: Completed (2026-07-20)</p>
<p>Added bidirectional, stdio-based MCP integration and evolved providers into
bounded agents with validated skills, CmdForge-tool/MCP-server access policies,
and recursive delegation context. Final non-integration validation: 577 passed,
12 skipped, 12 integration tests deselected.</p>
<table><thead><tr><th>Deliverable</th><th>Status</th></tr></thead><tbody><tr><td>MCP architecture decision</td><td>Done</td></tr><tr><td>MCP client and dedicated <code>McpStep</code></td><td>Done</td></tr><tr><td>CmdForge MCP server with typed schemas and exposure policy</td><td>Done</td></tr><tr><td>Provider-attached Agent Skills</td><td>Done</td></tr><tr><td>Provider tool and MCP-server access control</td><td>Done</td></tr><tr><td>Recursive profile, skill, tool, and provider delegation</td><td>Done</td></tr></tbody></table>
<p>Streamable HTTP was completed in the later follow-up. Non-tool MCP
capabilities, registry-backed discovery, and parallel/restarting clients remain
ideas for future evaluation in the private roadmap and MCP decision record.</p>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="m6-stability--fixes">M6: Stability &amp; Fixes<a href="#m6-stability--fixes" class="hash-link" aria-label="Direct link to M6: Stability &amp; Fixes" title="Direct link to M6: Stability &amp; Fixes" translate="no"></a></h4>
<p><strong>Target</strong>: Q3 2026
<strong>Status</strong>: Completed (2026-07-19)</p>
<p>Modernized provider execution and onboarding, removed stale provider data and
dead code, extracted shared semver handling, and closed visibility model gaps.
Baseline: CmdForge commit <code>6908d8e</code> (<code>Modernize provider support</code>), validated
with 406 passing non-integration tests.</p>
<table><thead><tr><th>Deliverable</th><th>Status</th></tr></thead><tbody><tr><td>Provider audit and remediation</td><td>Done</td></tr><tr><td>Subprocess, OpenAI-compatible API, and experimental PTY provider types</td><td>Done</td></tr><tr><td>Provider discovery and first-run configuration</td><td>Done</td></tr><tr><td>Multi-step fallback chains with cycle detection</td><td>Done</td></tr><tr><td>Provider install guide updates</td><td>Done</td></tr><tr><td>Dead-code removal and semver extraction</td><td>Done</td></tr><tr><td>Tool visibility model and regression fixes</td><td>Done</td></tr></tbody></table>
<p>Deferred follow-ups are tracked explicitly in the roadmap: tool-level fallback
chain preference, PTY production hardening, and migration of still-relevant
<code>olddocs/</code> material.</p>
<hr>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="m5-testing--polish">M5: Testing &amp; Polish<a href="#m5-testing--polish" class="hash-link" aria-label="Direct link to M5: Testing &amp; Polish" title="Direct link to M5: Testing &amp; Polish" translate="no"></a></h4>
<p><strong>Target</strong>: Q1 2027
<strong>Status</strong>: Completed (100%)</p>
<p>Testing framework, theming, and version management. <strong>Project dependencies</strong> (completed): - <code>cmdforge.yaml</code> manifest format for declaring tool dependencies - <code>cmdforge install</code> to install all dependencies from manifest - <code>cmdforge add official/toolname</code> to add a dependency to manifest - <code>cmdforge remove &lt;tool&gt;</code> to remove dependencies from manifest - Automatic dependency checking before running meta-tools. <strong>Tool testing framework</strong> includes: - TestStepDialog for interactive step testing from GUI - Test button in Tool Builder to test individual steps - Variable input forms auto-detect <code>{variable}</code> references from step templates - Multiple assertion types (not_empty, contains, valid_json, matches_regex, min/max_length, etc.) - Background execution with timing metrics - Output variable display and assertion pass/fail results - Provider override for testing with mock provider</p>
<table><thead><tr><th>Deliverable</th><th>Status</th></tr></thead><tbody><tr><td>Tool testing framework</td><td>Done</td></tr><tr><td>Simple theming (external QSS files)</td><td>Done</td></tr><tr><td>Dark mode</td><td>Done</td></tr><tr><td>Tool versioning support</td><td>Done</td></tr><tr><td>Version constraints in manifests</td><td>Done</td></tr><tr><td>Project dependency system (<code>cmdforge install</code>)</td><td>Done</td></tr><tr><td><code>cmdforge add</code> command</td><td>Done</td></tr><tr><td><code>cmdforge remove</code> command</td><td>Done</td></tr><tr><td>Dependency resolution for meta-tools</td><td>Done</td></tr><tr><td>Hash verification fix</td><td>Done</td></tr><tr><td>Improved <code>add</code> UX for local tools</td><td>Done</td></tr></tbody></table>
<hr>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="m0-core-platform">M0: Core Platform<a href="#m0-core-platform" class="hash-link" aria-label="Direct link to M0: Core Platform" title="Direct link to M0: Core Platform" translate="no"></a></h4>
<p><strong>Target</strong>: December 2025
<strong>Status</strong>: Completed (100%)</p>
<p>The foundational CmdForge platform with AI-powered CLI tool builder, YAML tool definitions, web UI, offline caching, and provider abstraction.</p>
<table><thead><tr><th>Deliverable</th><th>Status</th></tr></thead><tbody><tr><td>YAML tool definition system</td><td>Done</td></tr><tr><td>CLI entry point and subcommands</td><td>Done</td></tr><tr><td>Provider abstraction layer</td><td>Done</td></tr><tr><td>Offline caching for tools</td><td>Done</td></tr><tr><td>Web UI for tool browsing</td><td>Done</td></tr><tr><td>Tool execution engine</td><td>Done</td></tr></tbody></table>
<hr>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="m1-production-ready">M1: Production Ready<a href="#m1-production-ready" class="hash-link" aria-label="Direct link to M1: Production Ready" title="Direct link to M1: Production Ready" translate="no"></a></h4>
<p><strong>Target</strong>: February 2026
<strong>Status</strong>: Completed (100%)</p>
<p>Production deployment with proper server configuration, complete documentation, and improved reliability.</p>
<table><thead><tr><th>Deliverable</th><th>Status</th></tr></thead><tbody><tr><td>Public documentation</td><td>Done</td></tr><tr><td>Systemd service setup</td><td>Done</td></tr><tr><td>Gunicorn production server</td><td>Done</td></tr><tr><td>Systemd linger for persistence</td><td>Done</td></tr><tr><td>CI/CD pipeline</td><td>Done</td></tr><tr><td>Error message improvements</td><td>Done</td></tr><tr><td>Source field display in web UI</td><td>Done</td></tr></tbody></table>
<hr>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="m2-tool-discovery">M2: Tool Discovery<a href="#m2-tool-discovery" class="hash-link" aria-label="Direct link to M2: Tool Discovery" title="Direct link to M2: Tool Discovery" translate="no"></a></h4>
<p><strong>Target</strong>: Q2 2026
<strong>Status</strong>: Completed (100%)</p>
<p>Enable users to discover, rate, and share tools through a marketplace interface with curation to maintain quality. <strong>Tool search and filtering</strong> includes: - <code>/api/v1/tags</code> endpoint for listing tags with counts - Advanced search with tag filtering (AND logic), multi-category (OR logic), owner, download range, date range - Faceted search responses with category/tag/owner counts - CLI: <code>--tag</code>, <code>--owner</code>, <code>--min-downloads</code>, <code>--popular</code>, <code>--since</code>, <code>--json</code>, <code>--show-facets</code> options - CLI: <code>registry tags</code> subcommand - Web UI: Filter sidebar with checkboxes, dropdowns, active filter chips, URL-based state <strong>PySide6 GUI conversion</strong> includes: - Modern desktop GUI replacing urwid TUI - Sidebar navigation (My Tools, Registry, Providers, Profiles) - Tool Builder with visual form for creating/editing tools - Keyboard shortcuts (Ctrl+N, Ctrl+S, Ctrl+R, Ctrl+1/2/3/4, Escape, Ctrl+Q) - Window geometry persistence <strong>GUI Registry browser</strong> includes: - Browse/search tools with category and sort filters - Star ratings display in table and details - Clickable tags for filtering - Installed indicator (✓) and update available (↑) - Pagination for large result sets - Publisher reputation info <strong>GUI Publishing</strong> includes: - Connect dialog with polling-based account pairing - Publish workflow with version selection - Full publish workflow with confirmation <strong>Infrastructure improvements</strong>: - <code>Dockerfile.test-install</code>: Fresh environment for testing installer - <code>Dockerfile.ready</code>: Pre-installed container for quick usage - <code>install.sh</code>: Interactive installer with venv, PATH setup, optional example tools - Database migration: Auto-adds missing columns on server start <strong>Registry curation system</strong> includes: - Role-based access control (user, moderator, admin) - Tool moderation workflow (pending → approved/rejected/removed) - Publisher management (ban/unban, role changes) - Private/unlisted tool visibility (auto-approved, owner-only access) - Audit logging for all moderation actions - Admin web UI pages (pending queue, publishers, reports, audit log) - Report resolution workflow <strong>App pairing/connection flow</strong> includes: - <code>cmdforge config connect &lt;username&gt;</code> CLI command - GUI Connect dialog with polling-based approval - Web UI &quot;Connections&quot; page (replaces API Tokens) - Device hostname tracking for connected apps <strong>Tool ratings/reviews</strong> includes: - 5-star rating system with review text - Average rating display on tool cards - Publisher reputation scores - Rating count and distribution <strong>Tool marketplace UI enhancements</strong> includes: - Browse all tools on page load - Category filter dropdown - Sort by popularity, rating, newest, name - Clickable tags for filtering - Installed/update indicators - Pagination controls <strong>AI persona profiles</strong> includes: - Profile dataclass with name, description, system_prompt - 8 built-in profiles (Comedian, Technical Writer, Teacher, Concise, Creative, Code Reviewer, Analyst) - Custom profile creation and storage - Profile selector in Prompt Step dialog - Profile injection during tool execution - Profiles page in GUI (Ctrl+4) <strong>AI-assisted code generation</strong> includes: - Split-view Code Step dialog (editor + AI assist panel) - Provider selector for AI calls - Smart prompt template with available variables - Background thread for non-blocking AI calls - Automatic markdown fence stripping - Python syntax checking before save</p>
<table><thead><tr><th>Deliverable</th><th>Status</th></tr></thead><tbody><tr><td>Tool search and filtering</td><td>Done</td></tr><tr><td>PySide6 GUI conversion</td><td>Done</td></tr><tr><td>GUI Registry browser</td><td>Done</td></tr><tr><td>GUI Publishing with connect flow</td><td>Done</td></tr><tr><td>Docker containers (test + ready)</td><td>Done</td></tr><tr><td>Interactive installer script</td><td>Done</td></tr><tr><td>Database migration system</td><td>Done</td></tr><tr><td>Registry curation system</td><td>Done</td></tr><tr><td>App pairing/connection flow</td><td>Done</td></tr><tr><td>Tool ratings/reviews</td><td>Done</td></tr><tr><td>Tool marketplace UI enhancements</td><td>Done</td></tr><tr><td>AI persona profiles</td><td>Done</td></tr><tr><td>AI-assisted code generation</td><td>Done</td></tr></tbody></table>
<hr>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="m3-content--automation">M3: Content &amp; Automation<a href="#m3-content--automation" class="hash-link" aria-label="Direct link to M3: Content &amp; Automation" title="Direct link to M3: Content &amp; Automation" translate="no"></a></h4>
<p><strong>Target</strong>: Q3 2026
<strong>Status</strong>: Completed (100%)</p>
<p>Automated content ingestion and quality assurance for the tool ecosystem. <strong>Import Fabric patterns</strong> includes: - Run existing <code>scripts/import_fabric.py</code> to populate registry - Automatic attribution with source fields (imported, MIT license, Daniel Miessler) - Category mapping based on pattern name prefixes - README generation with original pattern attribution <strong>Auto-vetting pipeline</strong> includes: - Integration with existing <code>scrutiny.py</code> (honesty, transparency, scope, efficiency checks) - Integration with existing <code>similarity.py</code> (duplicate detection) - Auto-approve/review/reject decision logic - Helpful suggestions for tool improvements <strong>Scheduled sync</strong> includes: - Periodic checks for Fabric repo updates - Automatic import of new patterns - Version tracking for updated patterns - Admin notifications for review queue</p>
<table><thead><tr><th>Deliverable</th><th>Status</th></tr></thead><tbody><tr><td>Import Fabric patterns (233 total)</td><td>Done</td></tr><tr><td>Scheduled Fabric repo sync</td><td>Done</td></tr><tr><td>Auto-vetting pipeline integration</td><td>Done</td></tr><tr><td>Community tool submissions workflow</td><td>Done</td></tr><tr><td>Duplicate detection automation</td><td>Done</td></tr></tbody></table>
<hr>
<h4 class="anchor anchorTargetStickyNavbar_Vzrq" id="m4-user-experience">M4: User Experience<a href="#m4-user-experience" class="hash-link" aria-label="Direct link to M4: User Experience" title="Direct link to M4: User Experience" translate="no"></a></h4>
<p><strong>Target</strong>: Q4 2026
<strong>Status</strong>: Completed (100%)</p>
<p>Visual improvements, interactive guidance, and missing registry features. <strong>Collections CLI commands</strong> includes: - <code>cmdforge collections list</code> - List available collections with tool counts - <code>cmdforge collections info &lt;name&gt;</code> - Show collection details with tool list - <code>cmdforge collections install &lt;name&gt;</code> - Install all tools in a collection - <code>--json</code> flag for machine-readable output - <code>--pinned</code> flag to use pinned versions from collection <strong>Admin collections management</strong> includes: - Admin dashboard page at <code>/dashboard/admin/collections</code> - Create/edit/delete collections via web UI - Tool reference input with version pinning - Admin API endpoints (GET/POST/PUT/DELETE) <strong>Password reset flow</strong> includes: - <code>/forgot-password</code> page with email input form - <code>/reset-password?token=xxx</code> page with new password form - API endpoints: request, validate, complete password reset - Email utility module (logs to console in dev mode, SMTP-ready for production) - Security: 1-hour token expiry, single-use tokens, rate limiting (5/hour per IP, 3/hour per email) - Session invalidation on password change - Email enumeration prevention (always returns success message) <strong>Visual node-based editor</strong> includes: - NodeGraphQt-based flow visualization (<code>flow_graph.py</code>) - Custom node types: InputNode, PromptNode, CodeNode, OutputNode - Visual connections showing data flow between steps - Double-click nodes to edit steps - Auto-layout with fit-to-view - Keyboard shortcuts (A: select all, F: fit view) - Context menu for common actions - Help banner overlay with controls <strong>Drag-and-drop step reordering</strong> includes: - Drag-drop reordering in list view - Reordering support from flow view - Variable dependency warnings when reordering breaks references - Automatic step index updates <strong>Tool visualization improvements</strong> includes: - Flow graph widget showing tool execution pipeline - Color-coded nodes by step type (indigo=prompt, green=code, purple=tool) - Input/output port visualization - Variable flow connections between steps <strong>Tool composition and chaining UI</strong> includes: - ToolStep data class for calling other tools as pipeline steps - ToolStepDialog for configuring tool steps (tool selection, input mapping, args) - &quot;Add Tool&quot; button in Tool Builder alongside Add Prompt/Add Code - ToolNode in flow graph visualization (purple node) - Input template with variable substitution from previous steps - Argument passing with variable substitution - Provider override option for nested tool calls - Recursion depth protection (max 10 levels) - Dependency checking and missing tool warnings - Auto-populate dependencies when adding ToolStep in GUI - <code>--auto-install</code> flag for automatic dependency installation at runtime <strong>Interactive walkthroughs</strong> includes: - First-time user onboarding - Guided tool creation tutorial - Feature discovery tooltips - Context-sensitive help <strong>Interactive Tool Picker</strong> includes: - <code>cf</code> command for fuzzy-search tool selection - Piping support for seamless workflow integration</p>
<table><thead><tr><th>Deliverable</th><th>Status</th></tr></thead><tbody><tr><td>Collections CLI commands</td><td>Done</td></tr><tr><td>Admin collections management UI</td><td>Done</td></tr><tr><td>Visual node-based step editor</td><td>Done</td></tr><tr><td>Interactive onboarding walkthroughs</td><td>Done</td></tr><tr><td>Tool visualization improvements</td><td>Done</td></tr><tr><td>Tool composition and chaining UI</td><td>Done</td></tr><tr><td>Drag-and-drop step reordering</td><td>Done</td></tr><tr><td>Password reset flow</td><td>Done</td></tr><tr><td>Interactive Tool Picker (<code>cf</code> command)</td><td>Done</td></tr></tbody></table>
<hr></div></article><nav class="docusaurus-mt-lg pagination-nav" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/rob/CmdForge/ideas-and-exploration/"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Ideas &amp; Exploration</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#active" class="table-of-contents__link toc-highlight">Active</a></li><li><a href="#completed" class="table-of-contents__link toc-highlight">Completed</a></li></ul></div></div></div></div></main></div></div></div><footer class="theme-layout-footer footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="theme-layout-footer-column col footer__col"><div class="footer__title">Docs</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/rob/CmdForge/">Overview</a></li></ul></div><div class="theme-layout-footer-column col footer__col"><div class="footer__title">More</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://gitea.brrd.tech/rob/CmdForge" target="_blank" rel="noopener noreferrer" class="footer__link-item">Gitea<svg width="13.5" height="13.5" aria-label="(opens in new tab)" class="iconExternalLink_nPIU"><use href="#theme-svg-external-link"></use></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">CmdForge Documentation</div></div></div></footer></div>
</body>
</html>