Layers And Ownership

Guide asset placement and ownership across L0 firmware, L1 group customware, and L2 user customware.

1.4k|316|Updated Mar 27, 2026
One-click install
npx skills add https://github.com/agent0ai/space-agent --skill layers-and-ownership-agent0ai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Layers And Ownership
Source: https://github.com/agent0ai/space-agent/tree/main/app/L0/_all/mod/_core/skillset/ext/skills/development/layers-ownership
Command: npx skills add https://github.com/agent0ai/space-agent --skill layers-and-ownership-agent0ai

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Prevents misplacing files, misunderstanding layered overrides, and creating permission or readability issues across repo-owned (L0), group customware (L1), and user customware (L2).

Core Features & Use Cases

  • Layer placement guidance: Clarifies what belongs in L0 vs L1 vs L2, including what is durable source vs transient runtime state.
  • Group and user structure understanding: Explains canonical paths like L1/_all, L1/_admin, L2/<username>/user.yaml, and auth-related metadata.
  • Permission and resolution rules: Documents who can read/write which paths and the exact rank-based override order for module resolution.

Quick Start

Use this skill when deciding where to store new frontend assets or modules so you correctly follow the ownership, permissions, and resolution order for L0/L1/L2.

Frequently Asked Questions about Layers And Ownership

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

FAQPage Schema
How do layered overrides work for frontend assets across L0, L1, and L2?

Layered overrides resolve module paths deterministically using a rank-based ordering system. L0 firmware provides the base, L1 group customware applies intermediate overrides, and L2 user customware takes the highest precedence to determine which content wins for a given path.

What is the correct placement for frontend extension files in group customware vs user customware?

Place durable source code in L0 firmware, group-level customizations in L1 directories like _all or _admin, and user-specific runtime state in L2 paths such as <username>/user.yaml. Correct placement ensures proper file readability, writability, and permission constraints.

How do I decide where to store new frontend modules so permissions are configured correctly?

Store new frontend modules by evaluating ownership and permission constraints across L0, L1, and L2 layers. Repository-owned assets go in L0, group customware in L1, and user-specific configurations in L2 to maintain proper read and write access controls.

What's the best way to structure canonical group and user directories for customware?

Structure canonical directories using L1 paths like _all for group-wide assets and _admin for administrative metadata, while using L2 paths like <username>/user.yaml for individual user customware to ensure deterministic module resolution and proper auth-related metadata separation.

Why does my module resolution return the wrong file content when using layered overrides?

Module resolution returns incorrect content when files are misplaced across L0, L1, and L2 layers. Misunderstanding the rank-based override order or ignoring permission constraints causes readability issues, preventing the correct layer from winning the module path resolution.

Do I need to understand repository structure permissions before adding frontend assets to customware layers?

Yes, understanding repository structure permissions is required before adding frontend assets. You must know who can read and write which paths across L0, L1, and L2 to prevent permission issues and ensure layered overrides behave deterministically.