Klayout libraries as you describe should be no more than a link to a gds file(s):
Hence, if you store gds files in “~/.klayout/libraries” they will end up in the Klayout library repositories with all the top cells as available library cells (via the “Instance” menu item). You have to restart Klayout as far as I am aware to see updates in a library file in Klayout. The cells of your present mask (the active layout in Klayout) will show up under the “Local” library (all cells, not only top cells as in the stored library case). If this is not addressing your issue, can you provide a more detailed example?