package config // CapabilityPrefs holds per-item defaults and per-session overrides. An absent // value is enabled. Keys are skill names, instruction IDs, or MCP server names. type CapabilityPrefs struct { Global map[string]map[string]bool `json:"global,omitempty"` Sessions map[string]map[string]map[string]bool `json:"sessions,omitempty"` } func (p CapabilityPrefs) Enabled(session, kind, name string) bool { if groups := p.Sessions[session]; groups != nil { if state, ok := groups[kind][name]; ok { return state } } if state, ok := p.Global[kind][name]; ok { return state } return true }