homelabby/.planning/research/FEATURES.md

14 KiB
Raw Blame History

Feature Research

Domain: Self-hosted AI-powered hardware inventory management (homelab) Researched: 2026-04-09 Confidence: MEDIUM-HIGH (training knowledge + web research; AI intake patterns are novel)

Feature Landscape

Table Stakes (Users Expect These)

Features users assume exist. Missing these = product feels incomplete.

Feature Why Expected Complexity Notes
Asset record CRUD Fundamental inventory operation — without this there's no product LOW Delegated to NetBox via API; HWLab provides the UI layer
Unique asset identifiers Every inventory tool assigns IDs; users expect stable references LOW HW-XXXXX scheme; NetBox asset_tag field
Asset search / filter Users need to find items by name, serial, category LOW Table search + AI natural language; NetBox query API
Asset status tracking "Available / In Use / Retired / Unknown" is baseline expectation LOW NetBox status field; surfaced in dashboard
Category / type classification Users expect grouping by device type (server, cable, SFP, etc.) LOW NetBox device types + custom tags
Manufacturer + model fields Every ITAM tool tracks make/model; users expect this LOW NetBox native fields, populated by AI intake
Serial number field Required for warranty claims, RMA, deduplication LOW NetBox native field; extracted by AI from photo
Location / rack / site tracking Physical placement is core to homelab inventory MEDIUM NetBox rack/location hierarchy; populated during intake
Attachment / photo storage Attaching a photo to a record is expected in any modern ITAM tool LOW Photo stored in NetBox attachment; used as intake source
Audit trail / history Who did what, when — expected in any system managing physical assets MEDIUM NetBox change log; surfaced in record detail
Export capability Users expect to get their data out (CSV, JSON) LOW NetBox REST API; direct export via UI or API
Label / tag printing Physical assets need physical labels — QR or barcode is standard MEDIUM PRT Qutie via USB; thermal ZPL or ESC/POS printing

Differentiators (Competitive Advantage)

Features that set the product apart. Not required, but valued.

Feature Value Proposition Complexity Notes
AI photo intake (zero-entry) Upload photo → record created — eliminates manual data entry for 8090% of items HIGH Gemma 4 via oMLX; multimodal vision + structured extraction
Three-tier AI escalation Local-first (Gemma 4) → research agent (OpenRouter) → Lab Advisor (Opus) — cost-optimal and offline-capable HIGH Tier routing logic is the novel architectural piece
Lab Advisor chat Strategic homelab Q&A backed by full inventory context — no other ITAM tool offers this HIGH Claude Opus via OpenRouter; context injection from NetBox
Cable test workflow integration Automated cable continuity results attached to cable records — unique to physical-lab use cases HIGH Treedix USB/DP/HDMI + FNIRSI FNB58; USB serial parsing
Live USB power measurement FNIRSI FNB58 readings (voltage, current, watt) captured and stored against cable/PSU records HIGH USB serial; firmware-level protocol reverse engineering
Catalog quality gate Draft → indexed → needs_research → researched → complete lifecycle prevents "garbage in, garbage out" MEDIUM State machine on NetBox custom field; AI drives transitions
SearXNG product research AI agent uses private search instance to auto-fill missing specs, EAN/part numbers, pricing MEDIUM OpenRouter agent + SearXNG JSON API already available
Natural language inventory search "Show me all SFP+ modules I haven't tested" — no SQL required MEDIUM LLM query translation → NetBox API filter; local Gemma 4
NetBox as data store (not a silo) All data lives in NetBox — reachable by existing NetBox integrations, Ansible, Terraform, etc. MEDIUM Constraint that becomes a feature; no vendor lock-in to HWLab
Fully offline operation Standard intake, search, label print work with no internet — OpenRouter only for Tier 2/3 MEDIUM Local Gemma 4 + local NetBox + USB printer; already architectured
Universal HW-XXXXX ID scheme Category-agnostic stable IDs printed on QR labels — works for cables, SFPs, servers equally LOW ID assigned at intake; encoded in QR URL

Anti-Features (Commonly Requested, Often Problematic)

Feature Why Requested Why Problematic Alternative
Multi-user / RBAC "What if someone else needs access?" Solo operator tool — RBAC adds schema, middleware, UI complexity with zero immediate payoff NetBox has RBAC if truly needed; HWLab inherits it
Real-time collaboration / chat Looks modern, like Slack for inventory Websockets, presence, conflict resolution — massive complexity for a single-operator homelab Lab Advisor chat is async and single-session; sufficient
Mobile companion app / PWA "I want to scan in the rack" Separate build pipeline, offline sync, camera API surface area — diverges from web-first Responsive web UI is good enough for homelab bench work
SNMP / network auto-discovery "Discover everything automatically" SNMP is unreliable for physical inventory; discovers only what's online; misses cables, SFPs, offline gear AI photo intake covers the full physical layer including dark equipment
Barcode scanner (USB HID) Fast intake for bulk items USB HID scanners are commodity; the value is in AI vision, not scan-gun ergonomics Photo intake is more universal; scanner can be added later as an enhancement
Bulk CSV import "I have a spreadsheet already" Creates data quality debt immediately; bypasses quality gate and AI enrichment pipeline Migrate via NetBox native import; use AI intake as the canonical path
Predictive failure / warranty alerts "Alert me when warranty expires" Date tracking is simple but alert infrastructure (email, push, cron) is disproportionate to homelab context Add expiry dates as custom fields; query via Lab Advisor when needed
Network topology auto-update Reflect cable changes in NetBox topology diagrams Topology inference from cable test results is ambiguous; NetBox topology is already manually maintained Cable test results stored as records; topology updates remain manual
Local LLM fine-tuning UI "Train it on my specific hardware" MLX fine-tuning is a separate workload; out-of-scope for an inventory tool Prompt engineering + SearXNG research agent handles novel hardware adequately

Feature Dependencies

[NetBox API connectivity]
    └──requires──> [All inventory CRUD operations]
    └──requires──> [AI intake record creation]
    └──requires──> [Natural language search]
    └──requires──> [Lab Advisor context injection]

[AI photo intake]
    └──requires──> [oMLX + Gemma 4 setup]
    └──requires──> [NetBox API connectivity]
    └──requires──> [NetBox custom fields schema]
    └──enhances──> [Catalog quality gate] (sets initial state to "indexed")

[Three-tier AI escalation]
    └──requires──> [AI photo intake] (Tier 1 base)
    └──requires──> [OpenRouter API key] (Tiers 2+3)
    └──requires──> [SearXNG connectivity] (Tier 2 research)

[QR label printing]
    └──requires──> [HW-XXXXX ID assignment] (at intake)
    └──requires──> [PRT Qutie USB driver / protocol] (hardware arrives 2026-04-13)
    └──enhances──> [AI photo intake] (print label as final intake step)

[Cable test workflow]
    └──requires──> [NetBox API connectivity] (attach results to cable records)
    └──requires──> [Treedix / FNIRSI USB serial protocol] (hardware arrives 2026-04-13)
    └──enhances──> [Catalog quality gate] (test result moves cable to "complete")

[Lab Advisor chat]
    └──requires──> [NetBox API connectivity] (inventory context)
    └──requires──> [OpenRouter API key] (Opus model)
    └──enhances──> [Natural language search] (richer Q&A vs bare search)

[Natural language search]
    └──requires──> [oMLX + Gemma 4 setup] (local query translation)
    └──requires──> [NetBox API connectivity]

[Catalog quality gate]
    └──requires──> [NetBox custom fields schema] (status field)
    └──enhances──> [AI photo intake] (drives research escalation)
    └──enhances──> [Cable test workflow] (marks completion)

Dependency Notes

  • NetBox API connectivity is the foundation: Every feature reads or writes through it. NetBox setup (custom fields, netbox-inventory plugin) must be Phase 1.
  • oMLX + Gemma 4 requires hardware verification: 26B A4B variant needs TurboQuant testing on Mac Mini M4 16GB. If it doesn't fit, fall back to E4B. This gates all AI intake features.
  • USB hardware arrives 2026-04-13: Label printing and cable testing are blocked until then. Protocol reverse engineering is a separate workload.
  • QR label printing enhances but doesn't block intake: A record can be created without a label; printing is the final step.
  • Lab Advisor requires OpenRouter — it's the only feature with a hard cloud dependency (Opus is too large for local inference).

MVP Definition

Launch With (v1)

Minimum viable to validate the core value proposition (photo → record → label, zero manual entry).

  • NetBox connectivity + custom fields schema — all features depend on this
  • AI photo intake via Gemma 4 (Tier 1) — the core differentiator, must validate
  • HW-XXXXX ID assignment at intake — required for QR label content
  • QR label printing via PRT Qutie — closes the intake loop physically
  • Catalog quality gate (draft/indexed/complete minimum) — prevents garbage records
  • Inventory dashboard with basic search — users need to find what they cataloged
  • Natural language search (basic) — validates the AI search value prop

Add After Validation (v1.x)

Add once core photo → record → label loop is validated.

  • SearXNG research agent (Tier 2) — add when Tier 1 produces records with gaps
  • Lab Advisor chat (Tier 3) — add after inventory has enough data to be useful for Q&A
  • Cable test workflow (Treedix + FNIRSI) — add once USB protocol is understood
  • Full catalog quality gate state machine (all 5 states) — add after MVP states work

Future Consideration (v2+)

  • Barcode scanner HID support — only if photo intake proves too slow for high-volume intake
  • Bulk import / migration mode — only if migrating from an existing spreadsheet becomes a real need
  • Advanced audit trail UI — NetBox change log is sufficient for v1
  • Export / reporting views — NetBox API already provides this; UI wrapper is low priority

Feature Prioritization Matrix

Feature User Value Implementation Cost Priority
NetBox API + custom fields setup HIGH LOW P1
AI photo intake (Gemma 4 Tier 1) HIGH HIGH P1
HW-XXXXX ID scheme HIGH LOW P1
QR label printing (PRT Qutie) HIGH HIGH (USB protocol) P1
Inventory dashboard + basic search HIGH MEDIUM P1
Natural language search HIGH MEDIUM P1
Catalog quality gate MEDIUM MEDIUM P1
SearXNG research agent (Tier 2) MEDIUM MEDIUM P2
Lab Advisor chat (Tier 3 / Opus) HIGH MEDIUM P2
Cable test workflow (Treedix) MEDIUM HIGH (USB protocol) P2
USB power measurement (FNIRSI) MEDIUM HIGH (USB protocol) P2
Audit trail UI LOW LOW P3
Export / reporting LOW LOW P3
Barcode scanner HID LOW LOW P3

Priority key:

  • P1: Must have for launch
  • P2: Should have, add when possible
  • P3: Nice to have, future consideration

Competitor Feature Analysis

Feature NetBox (standalone) Snipe-IT Homebox HWLab approach
Asset CRUD Yes — full API + UI Yes Yes (home focus) Delegates to NetBox
Photo intake / AI vision No No Photo attachments only AI extracts structured data from photo
Label printing No native Barcode labels No QR thermal label via PRT Qutie at intake
Natural language search No No No Local Gemma 4 query translation
AI chat / advisor No No No Lab Advisor via Opus + full inventory context
Cable test integration No No No Direct USB integration with Treedix/FNIRSI
Quality gate / lifecycle No Asset status only No 5-state AI-driven catalog lifecycle
Network documentation Full (DCIM) No No Inherits via NetBox
Self-hosted Yes Yes Yes Yes — all components local
Offline operation Yes Partial Yes Yes — Tier 1 AI + label print fully offline

Sources


Feature research for: AI-powered self-hosted homelab hardware inventory (HWLab) Researched: 2026-04-09