Fabric Growth System — Proactive Learning
Core Concept
The Fabric doesn’t just log connections — it grows knowledge by proactively researching topics relevant to Chris’s active projects. The keyword system acts as a trigger for deep research, follow-link crawling, and knowledge synthesis.
How It Works
Active Project (e.g., "working on M5 ESP32 project")
↓
Keyword match: "ESP32", "M5Stack", "sensors"
↓
Fabric queues: "Research ESP32 Piouts, common issues, sensor integration"
↓
Background research via web search + web fetch
↓
Findings stored in wiki under relevant source file
↓
Surface when context matches active project
↓
Cross-silo connection found → notify relevant agents
Keyword Files
| File | Silo | Trigger |
|---|---|---|
keywords/2890-keywords.md | School (FRC 2890) | Swerve, CAN bus, motor control, Java/WPILib, PhotonVision, YAGSL |
keywords/play-keywords.md | Play (HHS-Hackers) | ESP32, M5Stack, sensors, Home Assistant, Pi-hole, fermentation |
keywords/psb-keywords.md | Work (PSB) | Brewing, fermentation, Toast POS, inventory, kegging |
Keyword Tiers
Priority Keywords
Trigger deep research — full web search, multiple sources, synthesis into wiki
- Example: “CAN bus” found in a source → research termination, failure modes, CTR CANcoder integration, YAGSL CAN setup
Secondary Keywords
Follow links deeper than normal, note context, add to wiki if substantial
- Example: “gear ratio” found → check if it connects to MK4i L1/L3 specs already in wiki
Growth Triggers
When scraping new sources, follow links containing these words deeper than normal
- Example: page has “PID tuning” link → follow it, add findings to relevant file
Research Queue
Maintained in memory/research-queue.md:
## Active Queue
- [ ] ESP32 Piouts — triggered by M5 project context (PLAY)
- [ ] CAN bus termination best practices — triggered by Canjector documentation (2890)
- [ ] MK4i L3 tuning notes — triggered by gear ratio image (2890)
## Completed (moved to wiki)
- [x] NEO Vortex current limits — stored in neo-vortex-motor.md
## Surface Queue (flag to Chris when active)
- "ESP32 research complete — found GPIO mapping for M5Stack Core — surface?"
Cross-Silo Connection Growth
When a keyword match appears in multiple silos:
Play: "ESP32 temperature logging" appears in 3 sources
2890: "temperature sensor integration" appears in robot code
↓
Fabric detects: "temp sensors span hobby + FRC — should cross-reference"
↓
Action: Flag connection → update both source files with cross-link
↓
Surface: "Temperature sensing shows up in both your hobby projects and FRC — want a training module on sensor basics?"
Surface Rules
When to surface proactively vs. log quietly:
| Situation | Action |
|---|---|
| New connection found | Log to connections-log.md |
| Cross-silo insight (3+ sources) | Surface to Chris via DM |
| Skill gap detected for active student | Add to student’s training recommendation |
| Anomaly (fermentation stalled, code broken) | Alert Chris immediately |
| Research complete, new info stored | Surface if project is active, otherwise log |
| Keyword match in new context | Log + optionally DM “I found something on X, want me to dig deeper?” |
Growth Goals
- 1 new connection per day (off-season) — organic, not forced
- 1 research synthesis per week — deep dive on one topic, store in wiki
- Cross-silo bridges — when same concept appears in 2+ silos, flag and cross-reference
- Student skill gaps — surface when student is working on related project
Process
- Heartbeat — check for keyword matches in new/updated wiki files
- Research — for priority keywords, run web search + fetch
- Store — findings go to relevant source file, not just memory
- Surface — use surface rules to decide what to flag vs. log
- Log connections — to connections-log.md with cross-silo notes
Status
System designed, keyword files created. Research queue initialized. First proactive research to begin when Chris approves.
Last updated: 2026-05-04