Modules And Routing

Place first-party modules into hash-routed app shell locations.

5|Updated May 6, 2026
One-click install
npx skills add https://github.com/binary16labs/prime-silo --skill modules-and-routing-binary16labs
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Modules And Routing
Source: https://github.com/binary16labs/prime-silo/tree/main/app/L0/_all/mod/_core/skillset/ext/skills/development/modules-routing
Command: npx skills add https://github.com/binary16labs/prime-silo --skill modules-and-routing-binary16labs

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It solves the confusion and brittleness that comes from hardwiring features into shell code and placing modules in inconsistent paths.

Core Features & Use Cases

  • First-party module placement rules: Ensures browser modules are namespaced correctly and feature-owned code lives under the intended _core/<feature>/ location.
  • Custom pages over spaces: Guides when to create routed tool pages versus persisted user-authored spaces, including how to make a page discoverable via ext/panels/*.yaml.
  • Hash router resolution + seam-aware editing: Provides deterministic route-to-HTML resolution rules and instructs authors to edit around router seam anchors instead of directly patching shell markup.

Quick Start

Use this skill when wiring a new routed feature so its view.html and panel manifest are placed correctly, then rely on router seam anchors to connect UI and navigation.

Frequently Asked Questions about Modules And Routing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a custom routed page to an authenticated app shell without hardwiring feature logic?

To add a custom routed page, place your view.html in the correct _core/<feature>/ module root and register it via an ext/panels/*.yaml manifest, letting the deterministic hash router resolve the route instead of patching shell markup.

What is the correct module placement for first-party browser modules using a hash router?

Correct module placement requires namespacing first-party browser modules under their intended _core/<feature>/ location, ensuring feature-owned code lives separately from the shell and resolves cleanly into /mod/.../view.html targets.

How does hash router resolution handle multi-segment paths with query parameters?

Hash router resolution uses deterministic route-to-HTML rules to map multi-segment hash paths and query parameters directly to /mod/.../view.html targets, ensuring reliable UI navigation across registered dashboard panels.

When should I create a custom routed tool page versus a persisted user-authored space?

Create a custom routed tool page when building deterministic first-party features, and use persisted user-authored spaces for dynamic user content, ensuring pages are discoverable via ext/panels/*.yaml manifests.

Why should I edit around router seam anchors instead of directly patching shell markup?

Editing around router seam anchors prevents the brittleness and confusion caused by hardwiring features into shell code, keeping shells flexible while maintaining deterministic routing and reliable module resolution.

Can I register new dashboard panels without modifying the core app shell code?

Yes, you can register new dashboard panels without modifying core shell code by placing panel manifest files in the ext/panels/*.yaml directory, allowing the app shell to discover and wire them dynamically.