This document tracks planned enhancements, features, and improvements identified during development reviews.
Last Updated: 2026-02-22
Current Branch: feat/schedule
Sections:
The factory.core/extend.tui/ directory was established on the feat/schedule branch as the home for Rich-based terminal UI extensions. Two TUI dashboards are already complete:
ObjSchedulerTUI.py — Scheduler service dashboardObjMqttTUI.py — MQTT monitor dashboardAll TUIs follow the conventions documented in resource.notes/tui-conventions.md.
box=box.HEAVY with bright colorsbox=None for clean displayLive(screen=True) with redirect_stdout=Falseself.live.refresh() in update loop_heartbeat_frames cycleLock on all shared state--no-tui flag in the Serve*.py entry pointHAS_TUI module-level flag guards the optional importWhy: _run_dispatcher already prints a Rich Table per polling cycle. The data is there; it just needs a live dashboard.
Proposed TUI panels:
New file: factory.core/extend.tui/ObjWorkflowTUI.py
Integration point: ObjWorkflow.py _run_dispatcher() and _run_worker()
Why: Tracks requests in track_mcp table, has semaphore concurrency control, Ollama model info, /gpu endpoint. Rich real-time data available.
Proposed TUI panels:
New file: factory.core/extend.tui/ObjMcpTUI.py
Integration point: ServeAI.py request handler and ObjMCP.py
Why: The watch command is a long-running file watcher — ideal for a live dashboard showing import throughput and errors.
Proposed TUI panels:
New file: factory.core/extend.tui/ObjImportTUI.py
Integration point: ServeImport.py watch() command and ObjDataImport.py
Why: Dispatcher + worker pattern mirrors ServeWorkflow.py. Shows queued, dispatched, and failed webhook calls.
Proposed TUI panels:
New file: factory.core/extend.tui/ObjWebHookTUI.py
Integration point: ServeWebHook.py dispatcher loop
Why: Runs two processes (web interface + conversation loop). A TUI would show active conversations and message throughput per platform (Discord, WhatsApp, Console).
Proposed TUI panels:
New file: factory.core/extend.tui/ObjConversationTUI.py
Note: Two-process architecture may require IPC (e.g., shared Redis or queue) to feed TUI from both processes.
| Service | Reason |
|---|---|
ServeReport.py |
Pure uvicorn HTTP server; no runtime state to display |
ServeWebsite.py |
Thin uvicorn wrapper; no runtime state |
ServeGo.py |
Thinnest wrapper; just starts uvicorn |
ServeDecision.py |
Interactive CLI simulation runner, not a long-running service |
Axion already hosts its own MCP server via ServeAI.py. The following are free, open-source external MCP servers that can be connected as clients or integrated as tools within Axion's workflow and AI layers.
Registries to browse:
These six are free, open source, pip-installable, and directly applicable to Axion's stack:
| Priority | Server | What it adds | Integration target |
|---|---|---|---|
| 1 | Memory | Knowledge graph persistent context across sessions | Workflow nodes, ObjWorkflow.py |
| 2 | Sequential Thinking | Structured multi-step reasoning chains | Complex decision nodes in workflows |
| 3 | Fetch | Web content retrieval, HTML→markdown | Report enrichment, ServeReport.py |
| 4 | Slack MCP | Read/write Slack channels from AI layer | Extend current Slack integration |
| 5 | Playwright | Headless browser automation | ObjServiceScreenshot, workflow nodes |
| 6 | Git | Repo inspection, file search, commit history | Dev automation workflows |
Source: modelcontextprotocol/servers
| Server | Description | Axion relevance |
|---|---|---|
| Filesystem | Secure file R/W with configurable access controls | File import/export pipelines |
| Git | Read, search, manipulate git repos | Dev tooling, code review automation |
| Memory | Knowledge graph persistent memory across sessions | Workflow context persistence |
| Sequential Thinking | Dynamic multi-step reasoning chains | Complex workflow decision nodes |
| Fetch | Web content retrieval optimised for LLM processing | Report enrichment, web scraping |
| Time | Timezone-aware time/date utilities | Scheduler integration |
| Server | Notes |
|---|---|
| MariaDB / MySQL | Community forks of archived official server — direct SQL execution |
| MongoDB | Document query interface — aligns with Axion's MongoDB stack |
| Redis | Cache inspection and key management |
| SQLite | No credentials required, built-in query tool |
| InfluxDB | Community server — aligns with Axion's time-series stack |
| Server | Notes |
|---|---|
| Slack | Read/write channels, search — Axion already has Slack integration |
| Discord | Aligns with ServeConversation.py Discord support |
| Email (SMTP/IMAP) | Send/receive via standardised interface |
| Server | Notes |
|---|---|
| DuckDuckGo Search | Fully free, no API key required |
| Brave Search | Free tier, no key required for basic use |
| Exa | AI-native search, generous free tier |
| Firecrawl | Web scraping + structured extraction, free tier |
| Server | Notes |
|---|---|
| Playwright / Puppeteer | Browser automation — ties into ObjServiceScreenshot |
| E2B | Sandboxed code execution — safe for workflow script evaluation |
| GitHub / GitLab | Issues, PRs, commits — community-maintained forks |
| Server | Notes |
|---|---|
| Docker | Container management and status |
| Kubernetes | Cluster state queries |
| Server | Reason |
|---|---|
| Paid/hosted-only services | Defeats the purpose — use free tiers only |
| AWS KB Retrieval | Archived from official repo, requires AWS credentials |
Source: "20180620 ODM Detailed Overview" presentation by Stephen Leonard (sleonard@adeptdecisions.com), presented to Full House Furniture. Forwarded by Denis Dell on 14 Jan 2020.
What ADEPT is: A cloud-based (SaaS) credit decisioning platform by Adept Decisions (www.adeptdecisions.com), focused on origination, collections, and account management. They operate primarily in Asia and South Africa, with credit bureau integrations through XDS and CRC.
Key features to benchmark against Axion:
Strategy Components — 4 types that Axion should match or exceed:
Champion/Challenger Testing — random group assignment, multiple test strategies, difference reports comparing approval rates, delinquency, profit. Axion's simulation engine covers some of this but lacks the A/B group management and automated comparison reporting.
Scorecard Editor — any data dictionary variable usable as a characteristic, unlimited scorecards, function-generated features. Axion's scorecard system is comparable.
Origination Process Flow — 15-step decision pipeline: data import → validation → portfolio assignment → pre-bureau rules → bureau selection → bureau retrieval → variable generation → affordability → post-bureau rules → scoring → risk strategy → fraud strategy → offer creation → output. Good template for structuring Axion's origination workflow.
Bureaux Management — multi-bureau routing, champion/challenger across bureaux, primary/secondary failover. Relevant for HomeChoice's multi-bureau setup (TransUnion, XDS).
Fraud Management — combination of rules and models, quantified fraud risk scoring, mitigation strategy allocation. Axion could add a dedicated fraud module.
Subscriber Insights — persistent performance database built from application data, enriched with outcomes (activation, usage, delinquency). Uses Elastic Stack (Kibana + Logstash + Elasticsearch) for custom reporting. Axion uses InfluxDB/Grafana — could add Elastic for this use case.
Origination Plans — action matrix with 10+ action types (accept/decline/refer, limits, APR, fees, SMS/email/USSD comms). 10 action sets × 999 plans. Useful pattern for Axion's offer engine.
Operational Variables — derived variables from the decision engine pushed directly into fulfilment systems. Axion does this through workflow outputs but could formalise it.
Management Dashboards — real-time landing page with portfolio metrics, email alerts for anomalies. Axion's TUI dashboards cover some of this; web dashboards would be the next step.
Gaps in ADEPT that Axion already fills:
Action items:
File: ~/Documents/Ashpool/20180620_ODM_Detailed_Overview.pptx (44 slides, 4.2MB)
End of Future Plans