When I was initially developing the tool library system, I had another object 'Tool Palette'; so you would define your tools in your library, then include them in a palette.
Tools could be in multiple palettes with different tool numbers in each.
Although flexible, I found this added an extra layer of complication which in many cases was not needed.
The suggested alternative working method then became...
Define your tools in your master tool library (or libraries).
Create extra tool libraries to function as palettes.
Copy and paste tools from your master libraries into your palettes.
Where possible they will retain the tool number from the master library, but this may change if there are duplicates.
You can also change the tool number in the 'palette' library if needed, to reflect the order of tool use for example; The Part Code property could perhaps be used to store the reference to the original master tool library number.
In your CamBam drawings, under the 'Machining' options (or 'Part' options), you can then set the 'Tool Library' property to the 'palette' you wish to use.
Then all the tool numbers in the drawing will refer to that palette library.
The main downside to this method is; if you change tool parameters in your master library, you need to remember to delete and recopy the tool into any palettes that use it. But the positive flip side of this is the palette will contain a snapshot of the tool parameters you used to generate a job (until you re-copy the tools).
Maintaining tool lists, particularly across multiple different programs, can be a tedious business and one I think could greatly benefit from scripting or plugins. I will work on producing some example scripts as a starting point for anyone who would find this useful.
I don't want to have a tool library for every single job...
I am not sure if the method I described would lead to this... if you wanted to keep the tool numbering in the order they were used it might.
I tend to think of my palettes as specific to a 'type of job', so I have palettes for 'steel on the mill', 'PCB routing', '3D work' etc.
The tool library needs to be filled out with the tools you plan to use...
Not necessarily.
Many users find it adequate just to enter a tool diameter (or tool profile) directly into a machining operation, without the need for libraries. This can also be used to 'override' any settings from the tool library for a given tool number.
It would be interesting to hear about user's experiences working with the tool library.
The tool library system will be due some work in the next major release so any feedback, suggestions for improvements is very welcome.