-
Notifications
You must be signed in to change notification settings - Fork 0
Guides
Jonathan D.A. Jewell edited this page Mar 28, 2026
·
1 revision
- Add a panel ID to
src/model/PanelSwitcherModel.res - Add metadata to
src/modules/PanelRegistry.res(name, icon, category) - Create the panel module in
src/modules/panels/ - Register in the Panel Switcher
- Run
just testto verify
| Kind | Purpose | Examples |
|---|---|---|
ai |
AI/ML panels | LLM Coding, Agent Coordination |
bridge |
Cross-panel integrations | Typing Bridge, Protocol Bridge |
builder |
Build and test tools | Build Dashboard, Release Manager |
database |
Data management | VeriSimDB, QuandleDB |
directive |
Governance | Contractile Manager, K9 Manager |
loader |
Repository loading | RepoLoader, Farm |
meta |
System panels | Help, Observatory |
network |
Networking | Aerie, Traffic Conditioner |
scanner |
Analysis tools | Hypatia, panic-attack |
terminal |
Terminal/scripting | Valence Shell, Script Gist |
viewer |
Visualization | Wiring Inspector, TangleViz |
PanLL panels can call BoJ cartridges for tool access:
// In your panel's update function
let handleToolCall = (cartridgeName, method, params) => {
PanelBus.emit(BojRequest(cartridgeName, method, params))
}The database panel connects to VeriSimDB for cross-modal data:
// Query via VQL-UT
let query = "FIND octads WHERE type = 'scan' AND severity = 'critical'"
DatabaseModule.executeQuery(~instance="hypatia", ~query)just doctor # Check panel health
just test # Run all panel tests
deno task dev # Dev server with hot reloadUse the Wiring Inspector panel to visualize panel dependencies and lifecycle state.
To promote a panel from Draft to Completable (D → C):
- Ensure core functionality works end-to-end
- Add integration tests
- Wire CI pipeline
- Update CRG grade in panel metadata
- Run
just test— all must pass