oo::object , a built-in Tcl command, is the root class of all objects in TclOO.
oo::object <cloned> copies aliased procedures in the origin namespace over to the new namespace as native procedures. The following method can be added to an object or a oo::class, overriding oo::object <cloned> and providing for imported procedures to end up as imported procedures in the new namespace as well.
method <cloned> sourceObject { set fromns [info object namespace $sourceObject] set myns [self namespace] foreach varname [info vars ${fromns}::*] { set tail [namespace tail $varname] set ${myns}::$tail [set $varname] } #copycommands is from https://wiki.tcl-lang.org/1489 [info object namespace $sourceObject]::copycommands $fromns [ self namespace] my }